Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit a39b700

Browse files
author
Robert Chady
committedFeb 8, 2010
Added ability to set which user to use as the default assignee for new projects and some code cleanup
1 parent 9e14160 commit a39b700

File tree

5 files changed

+68
-22
lines changed

5 files changed

+68
-22
lines changed
 
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<fieldset>
2+
<%= content_tag(:legend, l(:default_assign_text_settings)) %>
3+
<%= content_tag(:p, l(:default_assign_settings_help)) %>
4+
5+
<p>
6+
<%= content_tag(:label, l(:label_user)) %>
7+
8+
<%-
9+
users = User.all(:order => "firstname ASC")
10+
selected = @settings['default_assignee_id'] unless @settings['default_assignee_id'].blank?
11+
selected ||= []
12+
-%>
13+
14+
<% unless users.empty? %>
15+
<%=
16+
select_tag("settings[default_assignee_id]",
17+
content_tag(:option, '') +
18+
options_from_collection_for_select(users, :id, :name, selected ),
19+
:multiple => false,
20+
:size => 5)
21+
%>
22+
<% else %>
23+
<%= link_to(l(:default_assign_missing_users), :controller =>
24+
'users', :action => 'index') %>
25+
<% end %>
26+
</fieldset>

‎config/locales/en.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
# English strings go here for Rails i18n
22
en:
33
field_default_assignee: "Default Assignee"
4+
default_assign_text_settings: "Options"
5+
default_assign_settings_help: "Default assign for new projects"
6+
label_user: "User"
7+

‎init.rb

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1 @@
1-
require 'redmine'
2-
3-
require 'default_assign_issue_patch'
4-
require 'default_assign_project_patch'
5-
require 'default_assign/hooks/external_signup_hooks'
6-
require 'default_assign/hooks/default_assign_projects_hooks'
7-
8-
require 'dispatcher'
9-
10-
Dispatcher.to_prepare do
11-
require_dependency 'project'
12-
require_dependency 'issue'
13-
Project.send(:include, DefaultAssignProjectPatch)
14-
Issue.send(:include, DefaultAssignIssuePatch)
15-
end
16-
17-
Redmine::Plugin.register :redmine_default_assign do
18-
name 'Default Assign plugin'
19-
author 'Robert Chady'
20-
description 'Plugin implementing Douglas Campos\' ticket-482 code as a plugin'
21-
version '0.0.1'
22-
end
1+
require File.dirname(__FILE__) + "/rails/init"

‎lib/default_assign_project_patch.rb

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,22 @@
11
module DefaultAssignProjectPatch
22
def self.included(base)
3+
base.extend(ClassMethods)
4+
base.send(:include, InstanceMethods)
5+
36
base.class_eval do
47
unloadable
58

69
belongs_to :default_assignee, :class_name => "User"
10+
before_save :set_default_assignee
11+
end
12+
end
13+
14+
module ClassMethods
15+
end
16+
17+
module InstanceMethods
18+
def set_default_assignee
19+
self.default_assignee_id ||= Setting.plugin_redmine_default_assign['default_assignee_id']
720
end
821
end
922
end

‎rails/init.rb

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
require 'redmine'
2+
require 'dispatcher'
3+
4+
require 'default_assign_issue_patch'
5+
require 'default_assign_project_patch'
6+
require 'default_assign/hooks/default_assign_projects_hooks'
7+
8+
9+
Dispatcher.to_prepare do
10+
require_dependency 'project'
11+
require_dependency 'issue'
12+
Project.send(:include, DefaultAssignProjectPatch)
13+
Issue.send(:include, DefaultAssignIssuePatch)
14+
end
15+
16+
Redmine::Plugin.register :redmine_default_assign do
17+
name 'Default Assign plugin'
18+
author 'Robert Chady'
19+
description 'Plugin implementing Douglas Campos\' ticket-482 code as a plugin'
20+
version '0.1.0'
21+
22+
settings :default => {'default_assignee_id' => nil}, :partial => 'settings/default_assign'
23+
24+
end

0 commit comments

Comments
 (0)
Failed to load comments.