Wiki abilities

This commit is contained in:
Dmitriy Zaporozhets 2012-02-20 21:16:55 +03:00
parent bdc42488e9
commit 49d58492f2
3 changed files with 41 additions and 17 deletions

View file

@ -15,21 +15,26 @@ class Ability
rules << [
:read_project,
:read_wiki,
:read_issue,
:read_snippet,
:read_team_member,
:read_merge_request,
:read_note
] if project.allow_read_for?(user)
rules << [
:read_note,
:write_project,
:write_issue,
:write_snippet,
:write_merge_request,
:write_note,
:write_note
] if project.guest_access_for?(user)
rules << [
:download_code,
] if project.report_access_for?(user)
rules << [
:write_wiki
] if project.allow_write_for?(user)
] if project.dev_access_for?(user)
rules << [
:modify_issue,
@ -40,18 +45,16 @@ class Ability
:admin_snippet,
:admin_team_member,
:admin_merge_request,
:admin_note
] if project.allow_admin_for?(user)
:admin_note,
:admin_wiki
] if project.master_access_for?(user)
rules << [
:download_code,
] if project.allow_pull_for?(user)
rules.flatten
end
class << self
[:issue, :note, :snippet, :merge_request, :wiki].each do |name|
[:issue, :note, :snippet, :merge_request].each do |name|
define_method "#{name}_abilities" do |user, subject|
if subject.author == user
[