1
0
mirror of https://github.com/meineerde/redmine.git synced 2026-03-11 03:33:07 +00:00

Make issue categories inheritable on subprojects (can be disabled in Admin -> Settings -> Projects).

git-svn-id: http://redmine.rubyforge.org/svn/branches/work@1060 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2008-01-13 10:53:12 +00:00
parent 75f6463c18
commit 13c17c2ad5
7 changed files with 19 additions and 7 deletions

View File

@ -43,7 +43,7 @@ class ReportsController < ApplicationController
render :template => "reports/issue_report_details"
when "category"
@field = "category_id"
@rows = @project.issue_categories
@rows = @project.assignable_categories
@data = issues_by_category
@report_title = l(:field_category)
render :template => "reports/issue_report_details"
@ -63,7 +63,7 @@ class ReportsController < ApplicationController
@trackers = @project.trackers
@versions = @project.assignable_versions
@priorities = Enumeration::get_values('IPRI')
@categories = @project.issue_categories
@categories = @project.assignable_categories
@authors = @project.members.collect { |m| m.user }
@subprojects = @project.active_children
issues_by_tracker

View File

@ -164,10 +164,16 @@ class Project < ActiveRecord::Base
def assignable_versions
v = versions
v += parent.versions if Setting.subprojects_inherit_versions? && parent
v += parent.versions if Setting.subprojects_inherit_versions? && parent
v.sort
end
def assignable_categories
c = issue_categories
c += parent.issue_categories if Setting.subprojects_inherit_categories? && parent
c.sort
end
# Returns the mail adresses of users that should be always notified on project events
def recipients
members.select {|m| m.mail_notification? || m.user.mail_notification?}.collect {|m| m.user.mail}

View File

@ -155,7 +155,7 @@ class Query < ActiveRecord::Base
if project
# project specific filters
@available_filters["category_id"] = { :type => :list_optional, :order => 6, :values => @project.issue_categories.collect{|s| [s.name, s.id.to_s] } }
@available_filters["category_id"] = { :type => :list_optional, :order => 6, :values => @project.assignable_categories.collect{|s| [s.name, s.id.to_s] } }
@available_filters["fixed_version_id"] = { :type => :list_optional, :order => 7, :values => @project.assignable_versions.collect{|s| [s.name, s.id.to_s] } }
unless @project.active_children.empty?
@available_filters["subproject_id"] = { :type => :list_one_or_more, :order => 13, :values => @project.active_children.collect{|s| [s.name, s.id.to_s] } }

View File

@ -9,7 +9,7 @@
<label><%= l(:field_priority) %>:
<%= select_tag('priority_id', "<option value=\"\">#{l(:label_no_change_option)}</option>" + options_from_collection_for_select(Enumeration.get_values('IPRI'), :id, :name)) %></label>
<label><%= l(:field_category) %>:
<%= select_tag('category_id', "<option value=\"\">#{l(:label_no_change_option)}</option>" + options_from_collection_for_select(@project.issue_categories, :id, :name)) %></label>
<%= select_tag('category_id', "<option value=\"\">#{l(:label_no_change_option)}</option>" + options_from_collection_for_select(@project.assignable_categories, :id, :name)) %></label>
</p>
<p>
<label><%= l(:field_assigned_to) %>:
@ -17,7 +17,7 @@
content_tag('option', l(:label_nobody), :value => 'none') +
options_from_collection_for_select(@project.assignable_users, :id, :name)) %></label>
<label><%= l(:field_fixed_version) %>:
<%= select_tag('fixed_version_id', "<option value=\"\">#{l(:label_no_change_option)}</option>" + options_from_collection_for_select(@project.versions, :id, :name)) %></label>
<%= select_tag('fixed_version_id', "<option value=\"\">#{l(:label_no_change_option)}</option>" + options_from_collection_for_select(@project.assignable_versions, :id, :name)) %></label>
</p>
<p>

View File

@ -10,7 +10,7 @@
<p><%= f.select :priority_id, (@priorities.collect {|p| [p.name, p.id]}), :required => true %></p>
<p><%= f.select :assigned_to_id, (@issue.assignable_users.collect {|m| [m.name, m.id]}), :include_blank => true %></p>
<p><%= f.select :category_id, (@project.issue_categories.collect {|c| [c.name, c.id]}), :include_blank => true %>
<p><%= f.select :category_id, (@project.assignable_categories.collect {|c| [c.name, c.id]}), :include_blank => true %>
<%= prompt_to_remote(l(:label_issue_category_new),
l(:label_issue_category_new), 'category[name]',
{:controller => 'projects', :action => 'add_issue_category', :id => @project},

View File

@ -8,6 +8,10 @@
<p><label><%= l(:setting_subprojects_inherit_versions) %></label>
<%= check_box_tag 'settings[subprojects_inherit_versions]', 1, Setting.subprojects_inherit_versions? %>
<%= hidden_field_tag 'settings[subprojects_inherit_versions]', 0 %></p>
<p><label><%= l(:setting_subprojects_inherit_categories) %></label>
<%= check_box_tag 'settings[subprojects_inherit_categories]', 1, Setting.subprojects_inherit_categories? %>
<%= hidden_field_tag 'settings[subprojects_inherit_categories]', 0 %></p>
</div>
<%= submit_tag l(:button_save) %>

View File

@ -109,3 +109,5 @@ subprojects_inherit_members:
default: 1
subprojects_inherit_versions:
default: 1
subprojects_inherit_categories:
default: 1