project-select.patch

Greg T, 2016-10-26 15:46

Download (2.1 KB)

View differences:

redmine-3.2.1/app/controllers/issues_controller.rb 2016-06-09 17:53:20.482524185 +0200
42 42
  include SortHelper
43 43
  helper :timelog
44 44

  
45
  def find_optional_project
46
    @project = Project.find(params[:project_id]) unless params[:project_id].blank?
47
    allowed = User.current.allowed_to?({:controller => params[:controller], :action => params[:action]}, @project, :global => true)
48

  
49
    if ! allowed and ! @project.nil?
50
      @project.children.each do |subproject|
51
        if User.current.allowed_to?({:controller => params[:controller], :action => params[:action]}, subproject, :global => true)
52
          @project = subproject
53
          return true;
54
        end
55
      end
56

  
57
      @project = nil
58
      allowed = User.current.allowed_to?({:controller => params[:controller], :action => params[:action]}, @project, :global => true)
59
    end
60

  
61
    allowed ? true : deny_access
62
  rescue ActiveRecord::RecordNotFound
63
    render_404
64
  end
65

  
45 66
  def index
46 67
    retrieve_query
47 68
    sort_init(@query.sort_criteria.empty? ? [['id', 'desc']] : @query.sort_criteria)
redmine-3.2.1/app/views/issues/_form.html.erb 2016-06-08 16:36:32.921088980 +0200
8 8
</p>
9 9
<% end %>
10 10

  
11
<% if @issue.safe_attribute?('project_id') && (!@issue.new_record? || @project.nil? || @issue.copy?) %>
11
<% if @issue.safe_attribute?('project_id') #&& (!@issue.new_record? || @project.nil? || @issue.copy?)
12
%>
12 13
<p><%= f.select :project_id, project_tree_options_for_select(@issue.allowed_target_projects, :selected => @issue.project), {:required => true},
13 14
                :onchange => "updateIssueFrom('#{escape_javascript update_issue_form_path(@project, @issue)}', this)" %></p>
14 15
<% end %>