Mercurial > hg > soundsoftware-site
comparison lib/redmine.rb @ 1115:433d4f72a19b redmine-2.2
Update to Redmine SVN revision 11137 on 2.2-stable branch
author | Chris Cannam |
---|---|
date | Mon, 07 Jan 2013 12:01:42 +0000 |
parents | cbb26bc654de |
children | bb32da3bea34 3e4c3460b6ca |
comparison
equal
deleted
inserted
replaced
929:5f33065ddc4b | 1115:433d4f72a19b |
---|---|
11 require 'redmine/notifiable' | 11 require 'redmine/notifiable' |
12 require 'redmine/wiki_formatting' | 12 require 'redmine/wiki_formatting' |
13 require 'redmine/scm/base' | 13 require 'redmine/scm/base' |
14 | 14 |
15 begin | 15 begin |
16 require_library_or_gem 'RMagick' unless Object.const_defined?(:Magick) | 16 require 'RMagick' unless Object.const_defined?(:Magick) |
17 rescue LoadError | 17 rescue LoadError |
18 # RMagick is not available | 18 # RMagick is not available |
19 end | 19 end |
20 | 20 |
21 if RUBY_VERSION < '1.9' | 21 if RUBY_VERSION < '1.9' |
22 require 'faster_csv' | 22 require 'fastercsv' |
23 else | 23 else |
24 require 'csv' | 24 require 'csv' |
25 FCSV = CSV | 25 FCSV = CSV |
26 end | 26 end |
27 | 27 |
32 Redmine::Scm::Base.add "Bazaar" | 32 Redmine::Scm::Base.add "Bazaar" |
33 Redmine::Scm::Base.add "Git" | 33 Redmine::Scm::Base.add "Git" |
34 Redmine::Scm::Base.add "Filesystem" | 34 Redmine::Scm::Base.add "Filesystem" |
35 | 35 |
36 Redmine::CustomFieldFormat.map do |fields| | 36 Redmine::CustomFieldFormat.map do |fields| |
37 fields.register Redmine::CustomFieldFormat.new('string', :label => :label_string, :order => 1) | 37 fields.register 'string' |
38 fields.register Redmine::CustomFieldFormat.new('text', :label => :label_text, :order => 2) | 38 fields.register 'text' |
39 fields.register Redmine::CustomFieldFormat.new('int', :label => :label_integer, :order => 3) | 39 fields.register 'int', :label => :label_integer |
40 fields.register Redmine::CustomFieldFormat.new('float', :label => :label_float, :order => 4) | 40 fields.register 'float' |
41 fields.register Redmine::CustomFieldFormat.new('list', :label => :label_list, :order => 5) | 41 fields.register 'list' |
42 fields.register Redmine::CustomFieldFormat.new('date', :label => :label_date, :order => 6) | 42 fields.register 'date' |
43 fields.register Redmine::CustomFieldFormat.new('bool', :label => :label_boolean, :order => 7) | 43 fields.register 'bool', :label => :label_boolean |
44 fields.register Redmine::CustomFieldFormat.new('user', :label => :label_user, :only => %w(Issue TimeEntry Version Project), :edit_as => 'list', :order => 8) | 44 fields.register 'user', :only => %w(Issue TimeEntry Version Project), :edit_as => 'list' |
45 fields.register Redmine::CustomFieldFormat.new('version', :label => :label_version, :only => %w(Issue TimeEntry Version Project), :edit_as => 'list', :order => 9) | 45 fields.register 'version', :only => %w(Issue TimeEntry Version Project), :edit_as => 'list' |
46 end | 46 end |
47 | 47 |
48 # Permissions | 48 # Permissions |
49 Redmine::AccessControl.map do |map| | 49 Redmine::AccessControl.map do |map| |
50 map.permission :view_project, {:projects => [:show], :activities => [:index]}, :public => true | 50 map.permission :view_project, {:projects => [:show], :activities => [:index]}, :public => true, :read => true |
51 map.permission :search_project, {:search => :index}, :public => true | 51 map.permission :search_project, {:search => :index}, :public => true, :read => true |
52 map.permission :add_project, {:projects => [:new, :create]}, :require => :loggedin | 52 map.permission :add_project, {:projects => [:new, :create]}, :require => :loggedin |
53 map.permission :edit_project, {:projects => [:settings, :edit, :update]}, :require => :member | 53 map.permission :edit_project, {:projects => [:settings, :edit, :update]}, :require => :member |
54 map.permission :close_project, {:projects => [:close, :reopen]}, :require => :member, :read => true | |
54 map.permission :select_project_modules, {:projects => :modules}, :require => :member | 55 map.permission :select_project_modules, {:projects => :modules}, :require => :member |
55 map.permission :manage_members, {:projects => :settings, :members => [:new, :edit, :destroy, :autocomplete_for_member]}, :require => :member | 56 map.permission :manage_members, {:projects => :settings, :members => [:index, :show, :create, :update, :destroy, :autocomplete]}, :require => :member |
56 map.permission :manage_versions, {:projects => :settings, :versions => [:new, :create, :edit, :update, :close_completed, :destroy]}, :require => :member | 57 map.permission :manage_versions, {:projects => :settings, :versions => [:new, :create, :edit, :update, :close_completed, :destroy]}, :require => :member |
57 map.permission :add_subprojects, {:projects => [:new, :create]}, :require => :member | 58 map.permission :add_subprojects, {:projects => [:new, :create]}, :require => :member |
58 | 59 |
59 map.project_module :issue_tracking do |map| | 60 map.project_module :issue_tracking do |map| |
60 # Issue categories | 61 # Issue categories |
64 :auto_complete => [:issues], | 65 :auto_complete => [:issues], |
65 :context_menus => [:issues], | 66 :context_menus => [:issues], |
66 :versions => [:index, :show, :status_by], | 67 :versions => [:index, :show, :status_by], |
67 :journals => [:index, :diff], | 68 :journals => [:index, :diff], |
68 :queries => :index, | 69 :queries => :index, |
69 :reports => [:issue_report, :issue_report_details]} | 70 :reports => [:issue_report, :issue_report_details]}, |
70 map.permission :add_issues, {:issues => [:new, :create, :update_form]} | 71 :read => true |
71 map.permission :edit_issues, {:issues => [:edit, :update, :bulk_edit, :bulk_update, :update_form], :journals => [:new]} | 72 map.permission :add_issues, {:issues => [:new, :create, :update_form], :attachments => :upload} |
73 map.permission :edit_issues, {:issues => [:edit, :update, :bulk_edit, :bulk_update, :update_form], :journals => [:new], :attachments => :upload} | |
72 map.permission :manage_issue_relations, {:issue_relations => [:index, :show, :create, :destroy]} | 74 map.permission :manage_issue_relations, {:issue_relations => [:index, :show, :create, :destroy]} |
73 map.permission :manage_subtasks, {} | 75 map.permission :manage_subtasks, {} |
74 map.permission :set_issues_private, {} | 76 map.permission :set_issues_private, {} |
75 map.permission :set_own_issues_private, {}, :require => :loggedin | 77 map.permission :set_own_issues_private, {}, :require => :loggedin |
76 map.permission :add_issue_notes, {:issues => [:edit, :update], :journals => [:new]} | 78 map.permission :add_issue_notes, {:issues => [:edit, :update], :journals => [:new], :attachments => :upload} |
77 map.permission :edit_issue_notes, {:journals => :edit}, :require => :loggedin | 79 map.permission :edit_issue_notes, {:journals => :edit}, :require => :loggedin |
78 map.permission :edit_own_issue_notes, {:journals => :edit}, :require => :loggedin | 80 map.permission :edit_own_issue_notes, {:journals => :edit}, :require => :loggedin |
79 map.permission :move_issues, {:issue_moves => [:new, :create]}, :require => :loggedin | 81 map.permission :view_private_notes, {}, :read => true, :require => :member |
82 map.permission :set_notes_private, {}, :require => :member | |
83 map.permission :move_issues, {:issues => [:bulk_edit, :bulk_update]}, :require => :loggedin | |
80 map.permission :delete_issues, {:issues => :destroy}, :require => :member | 84 map.permission :delete_issues, {:issues => :destroy}, :require => :member |
81 # Queries | 85 # Queries |
82 map.permission :manage_public_queries, {:queries => [:new, :create, :edit, :update, :destroy]}, :require => :member | 86 map.permission :manage_public_queries, {:queries => [:new, :create, :edit, :update, :destroy]}, :require => :member |
83 map.permission :save_queries, {:queries => [:new, :create, :edit, :update, :destroy]}, :require => :loggedin | 87 map.permission :save_queries, {:queries => [:new, :create, :edit, :update, :destroy]}, :require => :loggedin |
84 # Watchers | 88 # Watchers |
85 map.permission :view_issue_watchers, {} | 89 map.permission :view_issue_watchers, {}, :read => true |
86 map.permission :add_issue_watchers, {:watchers => :new} | 90 map.permission :add_issue_watchers, {:watchers => :new} |
87 map.permission :delete_issue_watchers, {:watchers => :destroy} | 91 map.permission :delete_issue_watchers, {:watchers => :destroy} |
88 end | 92 end |
89 | 93 |
90 map.project_module :time_tracking do |map| | 94 map.project_module :time_tracking do |map| |
91 map.permission :log_time, {:timelog => [:new, :create]}, :require => :loggedin | 95 map.permission :log_time, {:timelog => [:new, :create]}, :require => :loggedin |
92 map.permission :view_time_entries, :timelog => [:index, :show], :time_entry_reports => [:report] | 96 map.permission :view_time_entries, {:timelog => [:index, :report, :show]}, :read => true |
93 map.permission :edit_time_entries, {:timelog => [:edit, :update, :destroy, :bulk_edit, :bulk_update]}, :require => :member | 97 map.permission :edit_time_entries, {:timelog => [:edit, :update, :destroy, :bulk_edit, :bulk_update]}, :require => :member |
94 map.permission :edit_own_time_entries, {:timelog => [:edit, :update, :destroy,:bulk_edit, :bulk_update]}, :require => :loggedin | 98 map.permission :edit_own_time_entries, {:timelog => [:edit, :update, :destroy,:bulk_edit, :bulk_update]}, :require => :loggedin |
95 map.permission :manage_project_activities, {:project_enumerations => [:update, :destroy]}, :require => :member | 99 map.permission :manage_project_activities, {:project_enumerations => [:update, :destroy]}, :require => :member |
96 end | 100 end |
97 | 101 |
98 map.project_module :news do |map| | 102 map.project_module :news do |map| |
99 map.permission :manage_news, {:news => [:new, :create, :edit, :update, :destroy], :comments => [:destroy]}, :require => :member | 103 map.permission :manage_news, {:news => [:new, :create, :edit, :update, :destroy], :comments => [:destroy]}, :require => :member |
100 map.permission :view_news, {:news => [:index, :show]}, :public => true | 104 map.permission :view_news, {:news => [:index, :show]}, :public => true, :read => true |
101 map.permission :comment_news, {:comments => :create} | 105 map.permission :comment_news, {:comments => :create} |
102 end | 106 end |
103 | 107 |
104 map.project_module :documents do |map| | 108 map.project_module :documents do |map| |
105 map.permission :manage_documents, {:documents => [:new, :edit, :destroy, :add_attachment]}, :require => :loggedin | 109 map.permission :manage_documents, {:documents => [:new, :create, :edit, :update, :destroy, :add_attachment]}, :require => :loggedin |
106 map.permission :view_documents, :documents => [:index, :show, :download] | 110 map.permission :view_documents, {:documents => [:index, :show, :download]}, :read => true |
107 end | 111 end |
108 | 112 |
109 map.project_module :files do |map| | 113 map.project_module :files do |map| |
110 map.permission :manage_files, {:files => [:new, :create]}, :require => :loggedin | 114 map.permission :manage_files, {:files => [:new, :create]}, :require => :loggedin |
111 map.permission :view_files, :files => :index, :versions => :download | 115 map.permission :view_files, {:files => :index, :versions => :download}, :read => true |
112 end | 116 end |
113 | 117 |
114 map.project_module :wiki do |map| | 118 map.project_module :wiki do |map| |
115 map.permission :manage_wiki, {:wikis => [:edit, :destroy]}, :require => :member | 119 map.permission :manage_wiki, {:wikis => [:edit, :destroy]}, :require => :member |
116 map.permission :rename_wiki_pages, {:wiki => :rename}, :require => :member | 120 map.permission :rename_wiki_pages, {:wiki => :rename}, :require => :member |
117 map.permission :delete_wiki_pages, {:wiki => :destroy}, :require => :member | 121 map.permission :delete_wiki_pages, {:wiki => [:destroy, :destroy_version]}, :require => :member |
118 map.permission :view_wiki_pages, :wiki => [:index, :show, :special, :date_index] | 122 map.permission :view_wiki_pages, {:wiki => [:index, :show, :special, :date_index]}, :read => true |
119 map.permission :export_wiki_pages, :wiki => [:export] | 123 map.permission :export_wiki_pages, {:wiki => [:export]}, :read => true |
120 map.permission :view_wiki_edits, :wiki => [:history, :diff, :annotate] | 124 map.permission :view_wiki_edits, {:wiki => [:history, :diff, :annotate]}, :read => true |
121 map.permission :edit_wiki_pages, :wiki => [:edit, :update, :preview, :add_attachment] | 125 map.permission :edit_wiki_pages, :wiki => [:edit, :update, :preview, :add_attachment] |
122 map.permission :delete_wiki_pages_attachments, {} | 126 map.permission :delete_wiki_pages_attachments, {} |
123 map.permission :protect_wiki_pages, {:wiki => :protect}, :require => :member | 127 map.permission :protect_wiki_pages, {:wiki => :protect}, :require => :member |
124 end | 128 end |
125 | 129 |
126 map.project_module :repository do |map| | 130 map.project_module :repository do |map| |
127 map.permission :manage_repository, {:repositories => [:edit, :committers, :destroy]}, :require => :member | 131 map.permission :manage_repository, {:repositories => [:new, :create, :edit, :update, :committers, :destroy]}, :require => :member |
128 map.permission :browse_repository, :repositories => [:show, :browse, :entry, :annotate, :changes, :diff, :stats, :graph] | 132 map.permission :browse_repository, {:repositories => [:show, :browse, :entry, :raw, :annotate, :changes, :diff, :stats, :graph]}, :read => true |
129 map.permission :view_changesets, :repositories => [:show, :revisions, :revision] | 133 map.permission :view_changesets, {:repositories => [:show, :revisions, :revision]}, :read => true |
130 map.permission :commit_access, {} | 134 map.permission :commit_access, {} |
135 map.permission :manage_related_issues, {:repositories => [:add_related_issue, :remove_related_issue]} | |
131 end | 136 end |
132 | 137 |
133 map.project_module :boards do |map| | 138 map.project_module :boards do |map| |
134 map.permission :manage_boards, {:boards => [:new, :edit, :destroy]}, :require => :member | 139 map.permission :manage_boards, {:boards => [:new, :create, :edit, :update, :destroy]}, :require => :member |
135 map.permission :view_messages, {:boards => [:index, :show], :messages => [:show]}, :public => true | 140 map.permission :view_messages, {:boards => [:index, :show], :messages => [:show]}, :public => true, :read => true |
136 map.permission :add_messages, {:messages => [:new, :reply, :quote]} | 141 map.permission :add_messages, {:messages => [:new, :reply, :quote]} |
137 map.permission :edit_messages, {:messages => :edit}, :require => :member | 142 map.permission :edit_messages, {:messages => :edit}, :require => :member |
138 map.permission :edit_own_messages, {:messages => :edit}, :require => :loggedin | 143 map.permission :edit_own_messages, {:messages => :edit}, :require => :loggedin |
139 map.permission :delete_messages, {:messages => :destroy}, :require => :member | 144 map.permission :delete_messages, {:messages => :destroy}, :require => :member |
140 map.permission :delete_own_messages, {:messages => :destroy}, :require => :loggedin | 145 map.permission :delete_own_messages, {:messages => :destroy}, :require => :loggedin |
141 end | 146 end |
142 | 147 |
143 map.project_module :calendar do |map| | 148 map.project_module :calendar do |map| |
144 map.permission :view_calendar, :calendars => [:show, :update] | 149 map.permission :view_calendar, {:calendars => [:show, :update]}, :read => true |
145 end | 150 end |
146 | 151 |
147 map.project_module :gantt do |map| | 152 map.project_module :gantt do |map| |
148 map.permission :view_gantt, :gantts => [:show, :update] | 153 map.permission :view_gantt, {:gantts => [:show, :update]}, :read => true |
149 end | 154 end |
150 end | 155 end |
151 | 156 |
152 Redmine::MenuManager.map :top_menu do |menu| | 157 Redmine::MenuManager.map :top_menu do |menu| |
153 menu.push :home, :home_path | 158 menu.push :home, :home_path |
157 menu.push :help, Redmine::Info.help_url, :last => true | 162 menu.push :help, Redmine::Info.help_url, :last => true |
158 end | 163 end |
159 | 164 |
160 Redmine::MenuManager.map :account_menu do |menu| | 165 Redmine::MenuManager.map :account_menu do |menu| |
161 menu.push :login, :signin_path, :if => Proc.new { !User.current.logged? } | 166 menu.push :login, :signin_path, :if => Proc.new { !User.current.logged? } |
162 menu.push :register, { :controller => 'account', :action => 'register' }, :if => Proc.new { !User.current.logged? && Setting.self_registration? } | 167 menu.push :register, :register_path, :if => Proc.new { !User.current.logged? && Setting.self_registration? } |
163 menu.push :my_account, { :controller => 'my', :action => 'account' }, :if => Proc.new { User.current.logged? } | 168 menu.push :my_account, { :controller => 'my', :action => 'account' }, :if => Proc.new { User.current.logged? } |
164 menu.push :logout, :signout_path, :if => Proc.new { User.current.logged? } | 169 menu.push :logout, :signout_path, :if => Proc.new { User.current.logged? } |
165 end | 170 end |
166 | 171 |
167 Redmine::MenuManager.map :application_menu do |menu| | 172 Redmine::MenuManager.map :application_menu do |menu| |
179 menu.push :workflows, {:controller => 'workflows', :action => 'edit'}, :caption => :label_workflow | 184 menu.push :workflows, {:controller => 'workflows', :action => 'edit'}, :caption => :label_workflow |
180 menu.push :custom_fields, {:controller => 'custom_fields'}, :caption => :label_custom_field_plural, | 185 menu.push :custom_fields, {:controller => 'custom_fields'}, :caption => :label_custom_field_plural, |
181 :html => {:class => 'custom_fields'} | 186 :html => {:class => 'custom_fields'} |
182 menu.push :enumerations, {:controller => 'enumerations'} | 187 menu.push :enumerations, {:controller => 'enumerations'} |
183 menu.push :settings, {:controller => 'settings'} | 188 menu.push :settings, {:controller => 'settings'} |
184 menu.push :ldap_authentication, {:controller => 'ldap_auth_sources', :action => 'index'}, | 189 menu.push :ldap_authentication, {:controller => 'auth_sources', :action => 'index'}, |
185 :html => {:class => 'server_authentication'} | 190 :html => {:class => 'server_authentication'} |
186 menu.push :plugins, {:controller => 'admin', :action => 'plugins'}, :last => true | 191 menu.push :plugins, {:controller => 'admin', :action => 'plugins'}, :last => true |
187 menu.push :info, {:controller => 'admin', :action => 'info'}, :caption => :label_information_plural, :last => true | 192 menu.push :info, {:controller => 'admin', :action => 'info'}, :caption => :label_information_plural, :last => true |
188 end | 193 end |
189 | 194 |
202 menu.push :wiki, { :controller => 'wiki', :action => 'show', :id => nil }, :param => :project_id, | 207 menu.push :wiki, { :controller => 'wiki', :action => 'show', :id => nil }, :param => :project_id, |
203 :if => Proc.new { |p| p.wiki && !p.wiki.new_record? } | 208 :if => Proc.new { |p| p.wiki && !p.wiki.new_record? } |
204 menu.push :boards, { :controller => 'boards', :action => 'index', :id => nil }, :param => :project_id, | 209 menu.push :boards, { :controller => 'boards', :action => 'index', :id => nil }, :param => :project_id, |
205 :if => Proc.new { |p| p.boards.any? }, :caption => :label_board_plural | 210 :if => Proc.new { |p| p.boards.any? }, :caption => :label_board_plural |
206 menu.push :files, { :controller => 'files', :action => 'index' }, :caption => :label_file_plural, :param => :project_id | 211 menu.push :files, { :controller => 'files', :action => 'index' }, :caption => :label_file_plural, :param => :project_id |
207 menu.push :repository, { :controller => 'repositories', :action => 'show' }, | 212 menu.push :repository, { :controller => 'repositories', :action => 'show', :repository_id => nil, :path => nil, :rev => nil }, |
208 :if => Proc.new { |p| p.repository && !p.repository.new_record? } | 213 :if => Proc.new { |p| p.repository && !p.repository.new_record? } |
209 menu.push :settings, { :controller => 'projects', :action => 'settings' }, :last => true | 214 menu.push :settings, { :controller => 'projects', :action => 'settings' }, :last => true |
210 end | 215 end |
211 | 216 |
212 Redmine::Activity.map do |activity| | 217 Redmine::Activity.map do |activity| |