comparison lib/redmine.rb @ 22:40f7cfd4df19

* Update to SVN trunk rev 4173
author Chris Cannam <chris.cannam@soundsoftware.ac.uk>
date Fri, 24 Sep 2010 14:06:04 +0100
parents 1d32c0a0efbf
children 94944d00e43c
comparison
equal deleted inserted replaced
14:1d32c0a0efbf 22:40f7cfd4df19
42 fields.register Redmine::CustomFieldFormat.new('bool', :label => :label_boolean, :order => 7) 42 fields.register Redmine::CustomFieldFormat.new('bool', :label => :label_boolean, :order => 7)
43 end 43 end
44 44
45 # Permissions 45 # Permissions
46 Redmine::AccessControl.map do |map| 46 Redmine::AccessControl.map do |map|
47 map.permission :view_project, {:projects => [:show, :activity]}, :public => true 47 map.permission :view_project, {:projects => [:show], :activities => [:index]}, :public => true
48 map.permission :search_project, {:search => :index}, :public => true 48 map.permission :search_project, {:search => :index}, :public => true
49 map.permission :add_project, {:projects => :add}, :require => :loggedin 49 map.permission :add_project, {:projects => [:new, :create]}, :require => :loggedin
50 map.permission :edit_project, {:projects => [:settings, :edit]}, :require => :member 50 map.permission :edit_project, {:projects => [:settings, :edit, :update]}, :require => :member
51 map.permission :select_project_modules, {:projects => :modules}, :require => :member 51 map.permission :select_project_modules, {:projects => :modules}, :require => :member
52 map.permission :manage_members, {:projects => :settings, :members => [:new, :edit, :destroy, :autocomplete_for_member]}, :require => :member 52 map.permission :manage_members, {:projects => :settings, :members => [:new, :edit, :destroy, :autocomplete_for_member]}, :require => :member
53 map.permission :manage_versions, {:projects => :settings, :versions => [:new, :edit, :close_completed, :destroy]}, :require => :member 53 map.permission :manage_versions, {:projects => :settings, :versions => [:new, :create, :edit, :update, :close_completed, :destroy]}, :require => :member
54 map.permission :add_subprojects, {:projects => :add}, :require => :member 54 map.permission :add_subprojects, {:projects => [:new, :create]}, :require => :member
55 55
56 map.project_module :issue_tracking do |map| 56 map.project_module :issue_tracking do |map|
57 # Issue categories 57 # Issue categories
58 map.permission :manage_categories, {:projects => :settings, :issue_categories => [:new, :edit, :destroy]}, :require => :member 58 map.permission :manage_categories, {:projects => :settings, :issue_categories => [:new, :edit, :destroy]}, :require => :member
59 # Issues 59 # Issues
60 map.permission :view_issues, {:projects => :roadmap, 60 map.permission :view_issues, {:issues => [:index, :show],
61 :issues => [:index, :show],
62 :auto_complete => [:issues], 61 :auto_complete => [:issues],
63 :context_menus => [:issues], 62 :context_menus => [:issues],
64 :versions => [:show, :status_by], 63 :versions => [:index, :show, :status_by],
65 :journals => :index, 64 :journals => :index,
66 :queries => :index, 65 :queries => :index,
67 :reports => [:issue_report, :issue_report_details]} 66 :reports => [:issue_report, :issue_report_details]}
68 map.permission :add_issues, {:issues => [:new, :create, :update_form]} 67 map.permission :add_issues, {:issues => [:new, :create, :update_form]}
69 map.permission :edit_issues, {:issues => [:edit, :update, :bulk_edit, :bulk_update, :update_form], :journals => [:new]} 68 map.permission :edit_issues, {:issues => [:edit, :update, :bulk_edit, :bulk_update, :update_form], :journals => [:new]}
86 map.project_module :time_tracking do |map| 85 map.project_module :time_tracking do |map|
87 map.permission :log_time, {:timelog => :edit}, :require => :loggedin 86 map.permission :log_time, {:timelog => :edit}, :require => :loggedin
88 map.permission :view_time_entries, :timelog => [:details, :report] 87 map.permission :view_time_entries, :timelog => [:details, :report]
89 map.permission :edit_time_entries, {:timelog => [:edit, :destroy]}, :require => :member 88 map.permission :edit_time_entries, {:timelog => [:edit, :destroy]}, :require => :member
90 map.permission :edit_own_time_entries, {:timelog => [:edit, :destroy]}, :require => :loggedin 89 map.permission :edit_own_time_entries, {:timelog => [:edit, :destroy]}, :require => :loggedin
91 map.permission :manage_project_activities, {:projects => [:save_activities, :reset_activities]}, :require => :member 90 map.permission :manage_project_activities, {:project_enumerations => [:update, :destroy]}, :require => :member
92 end 91 end
93 92
94 map.project_module :news do |map| 93 map.project_module :news do |map|
95 map.permission :manage_news, {:news => [:new, :edit, :destroy, :destroy_comment]}, :require => :member 94 map.permission :manage_news, {:news => [:new, :create, :edit, :update, :destroy], :comments => [:destroy]}, :require => :member
96 map.permission :view_news, {:news => [:index, :show]}, :public => true 95 map.permission :view_news, {:news => [:index, :show]}, :public => true
97 map.permission :comment_news, {:news => :add_comment} 96 map.permission :comment_news, {:comments => :create}
98 end 97 end
99 98
100 map.project_module :documents do |map| 99 map.project_module :documents do |map|
101 map.permission :manage_documents, {:documents => [:new, :edit, :destroy, :add_attachment]}, :require => :loggedin 100 map.permission :manage_documents, {:documents => [:new, :edit, :destroy, :add_attachment]}, :require => :loggedin
102 map.permission :view_documents, :documents => [:index, :show, :download] 101 map.permission :view_documents, :documents => [:index, :show, :download]
103 end 102 end
104 103
105 map.project_module :files do |map| 104 map.project_module :files do |map|
106 map.permission :manage_files, {:projects => :add_file}, :require => :loggedin 105 map.permission :manage_files, {:files => [:new, :create]}, :require => :loggedin
107 map.permission :view_files, :projects => :list_files, :versions => :download 106 map.permission :view_files, :files => :index, :versions => :download
108 end 107 end
109 108
110 map.project_module :wiki do |map| 109 map.project_module :wiki do |map|
111 map.permission :manage_wiki, {:wikis => [:edit, :destroy]}, :require => :member 110 map.permission :manage_wiki, {:wikis => [:edit, :destroy]}, :require => :member
112 map.permission :rename_wiki_pages, {:wiki => :rename}, :require => :member 111 map.permission :rename_wiki_pages, {:wiki => :rename}, :require => :member
135 map.permission :delete_messages, {:messages => :destroy}, :require => :member 134 map.permission :delete_messages, {:messages => :destroy}, :require => :member
136 map.permission :delete_own_messages, {:messages => :destroy}, :require => :loggedin 135 map.permission :delete_own_messages, {:messages => :destroy}, :require => :loggedin
137 end 136 end
138 137
139 map.project_module :calendar do |map| 138 map.project_module :calendar do |map|
140 map.permission :view_calendar, :calendars => :show 139 map.permission :view_calendar, :calendars => [:show, :update]
141 end 140 end
142 141
143 map.project_module :gantt do |map| 142 map.project_module :gantt do |map|
144 map.permission :view_gantt, :gantts => :show 143 map.permission :view_gantt, :gantts => [:show, :update]
145 end 144 end
146 end 145 end
147 146
148 Redmine::MenuManager.map :top_menu do |menu| 147 Redmine::MenuManager.map :top_menu do |menu|
149 menu.push :home, :home_path 148 menu.push :home, :home_path
183 menu.push :info, {:controller => 'admin', :action => 'info'}, :caption => :label_information_plural, :last => true 182 menu.push :info, {:controller => 'admin', :action => 'info'}, :caption => :label_information_plural, :last => true
184 end 183 end
185 184
186 Redmine::MenuManager.map :project_menu do |menu| 185 Redmine::MenuManager.map :project_menu do |menu|
187 menu.push :overview, { :controller => 'projects', :action => 'show' } 186 menu.push :overview, { :controller => 'projects', :action => 'show' }
188 menu.push :activity, { :controller => 'projects', :action => 'activity' } 187 menu.push :activity, { :controller => 'activities', :action => 'index' }
189 menu.push :roadmap, { :controller => 'projects', :action => 'roadmap' }, 188 menu.push :roadmap, { :controller => 'versions', :action => 'index' }, :param => :project_id,
190 :if => Proc.new { |p| p.shared_versions.any? } 189 :if => Proc.new { |p| p.shared_versions.any? }
191 menu.push :issues, { :controller => 'issues', :action => 'index' }, :param => :project_id, :caption => :label_issue_plural 190 menu.push :issues, { :controller => 'issues', :action => 'index' }, :param => :project_id, :caption => :label_issue_plural
192 menu.push :new_issue, { :controller => 'issues', :action => 'new' }, :param => :project_id, :caption => :label_issue_new, 191 menu.push :new_issue, { :controller => 'issues', :action => 'new' }, :param => :project_id, :caption => :label_issue_new,
193 :html => { :accesskey => Redmine::AccessKeys.key_for(:new_issue) } 192 :html => { :accesskey => Redmine::AccessKeys.key_for(:new_issue) }
194 menu.push :gantt, { :controller => 'gantts', :action => 'show' }, :param => :project_id, :caption => :label_gantt 193 menu.push :gantt, { :controller => 'gantts', :action => 'show' }, :param => :project_id, :caption => :label_gantt
197 menu.push :documents, { :controller => 'documents', :action => 'index' }, :param => :project_id, :caption => :label_document_plural 196 menu.push :documents, { :controller => 'documents', :action => 'index' }, :param => :project_id, :caption => :label_document_plural
198 menu.push :wiki, { :controller => 'wiki', :action => 'index', :page => nil }, 197 menu.push :wiki, { :controller => 'wiki', :action => 'index', :page => nil },
199 :if => Proc.new { |p| p.wiki && !p.wiki.new_record? } 198 :if => Proc.new { |p| p.wiki && !p.wiki.new_record? }
200 menu.push :boards, { :controller => 'boards', :action => 'index', :id => nil }, :param => :project_id, 199 menu.push :boards, { :controller => 'boards', :action => 'index', :id => nil }, :param => :project_id,
201 :if => Proc.new { |p| p.boards.any? }, :caption => :label_board_plural 200 :if => Proc.new { |p| p.boards.any? }, :caption => :label_board_plural
202 menu.push :files, { :controller => 'projects', :action => 'list_files' }, :caption => :label_file_plural 201 menu.push :files, { :controller => 'files', :action => 'index' }, :caption => :label_file_plural, :param => :project_id
203 menu.push :repository, { :controller => 'repositories', :action => 'show' }, 202 menu.push :repository, { :controller => 'repositories', :action => 'show' },
204 :if => Proc.new { |p| p.repository && !p.repository.new_record? } 203 :if => Proc.new { |p| p.repository && !p.repository.new_record? }
205 menu.push :settings, { :controller => 'projects', :action => 'settings' }, :last => true 204 menu.push :settings, { :controller => 'projects', :action => 'settings' }, :last => true
206 end 205 end
207 206