##// END OF EJS Templates
Don't add the inclusion error when tracker is not set, the blank error is enough....
Don't add the inclusion error when tracker is not set, the blank error is enough. git-svn-id: http://svn.redmine.org/redmine/trunk@15492 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r15084:c4fd1750f703
r15110:90d14b71b365
Show More
context_menus_controller.rb
97 lines | 3.4 KiB | text/x-ruby | RubyLexer
/ app / controllers / context_menus_controller.rb
Jean-Philippe Lang
Copyright update....
r9453 # Redmine - project management software
Jean-Philippe Lang
Updates copyright for 2016....
r14856 # Copyright (C) 2006-2016 Jean-Philippe Lang
Jean-Philippe Lang
Copyright update....
r9453 #
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 class ContextMenusController < ApplicationController
helper :watchers
Jean-Philippe Lang
Warn about subtasks before deleting a parent issue (#6562)....
r5375 helper :issues
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/context_menus_controller.rb....
r6677
Jean-Philippe Lang
Use #find_issues as before filter for issues context menu....
r11731 before_filter :find_issues, :only => :issues
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 def issues
if (@issues.size == 1)
@issue = @issues.first
end
Jean-Philippe Lang
Compute issue ids array only once....
r9779 @issue_ids = @issues.map(&:id).sort
Jean-Philippe Lang
Code cleanup....
r8706
Jean-Philippe Lang
Use #reduce instead of #inject for getting the intersection of arrays....
r8707 @allowed_statuses = @issues.map(&:new_statuses_allowed_to).reduce(:&)
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892
Jean-Philippe Lang
Adds permission to edit and delete issues by role/tracker (#285)....
r15084 @can = {:edit => @issues.all?(&:attributes_editable?),
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 :log_time => (@project && User.current.allowed_to?(:log_time, @project)),
Jean-Philippe Lang
Adds a :copy_issues permission (#18855)....
r13603 :copy => User.current.allowed_to?(:copy_issues, @projects) && Issue.allowed_target_projects.any?,
Jean-Philippe Lang
Allow addition of watchers via bulk edit context menu (#5754)....
r14929 :add_watchers => User.current.allowed_to?(:add_issue_watchers, @projects),
Jean-Philippe Lang
Adds permission to edit and delete issues by role/tracker (#285)....
r15084 :delete => @issues.all?(&:deletable?)
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 }
if @project
Jean-Philippe Lang
Author should be displayed as assignable on a single issue right click menu (#7136)....
r6190 if @issue
@assignables = @issue.assignable_users
else
@assignables = @project.assignable_users
end
Jean-Baptiste Barth
Added ability to edit issues from different project through contextual menu (#5332)...
r4128 else
#when multiple projects, we only keep the intersection of each set
Jean-Philippe Lang
Use #reduce instead of #inject for getting the intersection of arrays....
r8707 @assignables = @projects.map(&:assignable_users).reduce(:&)
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 end
Jean-Philippe Lang
Adds Issue#allowed_target_trackers (#7839)....
r15048 @trackers = @projects.map {|p| Issue.allowed_target_trackers(p) }.reduce(:&)
Jean-Philippe Lang
Show shared versions when editing issues from different projects with the context menu (#11345)....
r9778 @versions = @projects.map {|p| p.shared_versions.open}.reduce(:&)
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/context_menus_controller.rb....
r6677
Jean-Baptiste Barth
Do not show inactive issue priorities where not necessary (#8573)....
r5950 @priorities = IssuePriority.active.reverse
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 @back = back_url
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/context_menus_controller.rb....
r6677
Jean-Philippe Lang
Bulk-edit custom fields through context menu (#6296)....
r8704 @options_by_custom_field = {}
if @can[:edit]
Jean-Philippe Lang
Field set as read-only still available in the issues list context menu (#16755)....
r12849 custom_fields = @issues.map(&:editable_custom_fields).reduce(:&).reject(&:multiple?)
Jean-Philippe Lang
Bulk-edit custom fields through context menu (#6296)....
r8704 custom_fields.each do |field|
values = field.possible_values_options(@projects)
Jean-Philippe Lang
Removed hardcoded formats for right-click edit....
r12127 if values.present?
Jean-Philippe Lang
Bulk-edit custom fields through context menu (#6296)....
r8704 @options_by_custom_field[field] = values
end
end
end
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 @safe_attributes = @issues.map(&:safe_attribute_names).reduce(:&)
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 render :layout => false
end
Toshi MARUYAMA
add controller for bulk edit time entries (#7996)....
r5192
def time_entries
Jean-Philippe Lang
Cleanup of finders with :conditions option....
r11733 @time_entries = TimeEntry.where(:id => params[:ids]).preload(:project).to_a
Jean-Philippe Lang
Respond with 404 when params[:ids] is missing (#12898)....
r10996 (render_404; return) unless @time_entries.present?
Jean-Philippe Lang
Add time entries custom fields to the context menu for quick bulk edit (#17484)....
r12981 if (@time_entries.size == 1)
@time_entry = @time_entries.first
end
Jean-Philippe Lang
Respond with 404 when params[:ids] is missing (#12898)....
r10996
Toshi MARUYAMA
add controller for bulk edit time entries (#7996)....
r5192 @projects = @time_entries.collect(&:project).compact.uniq
@project = @projects.first if @projects.size == 1
@activities = TimeEntryActivity.shared.active
Jean-Philippe Lang
Can't bulk edit own time entries with "Edit own time entries" (#18580)....
r13860
edit_allowed = @time_entries.all? {|t| t.editable_by?(User.current)}
@can = {:edit => edit_allowed, :delete => edit_allowed}
Toshi MARUYAMA
add controller for bulk edit time entries (#7996)....
r5192 @back = back_url
Jean-Philippe Lang
Add time entries custom fields to the context menu for quick bulk edit (#17484)....
r12981
@options_by_custom_field = {}
if @can[:edit]
custom_fields = @time_entries.map(&:editable_custom_fields).reduce(:&).reject(&:multiple?)
custom_fields.each do |field|
values = field.possible_values_options(@projects)
if values.present?
@options_by_custom_field[field] = values
end
end
end
Toshi MARUYAMA
add controller for bulk edit time entries (#7996)....
r5192 render :layout => false
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/context_menus_controller.rb....
r6677 end
Eric Davis
Refactor: move IssuesController#context_menu to a new controller....
r3892 end