##// END OF EJS Templates
When copying issues, let the status be changed to default or left unchanged....
When copying issues, let the status be changed to default or left unchanged. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9404 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r9040:036b81abfd55
r9270:09375960d69d
Show More
issue_categories_controller.rb
119 lines | 4.2 KiB | text/x-ruby | RubyLexer
/ app / controllers / issue_categories_controller.rb
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/issue_categories_controller.rb....
r6783 # Redmine - project management software
# Copyright (C) 2006-2011 Jean-Philippe Lang
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 #
# 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.
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/issue_categories_controller.rb....
r6783 #
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 # 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.
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/issue_categories_controller.rb....
r6783 #
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 # 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.
Jean-Philippe Lang
Initial commit...
r2 class IssueCategoriesController < ApplicationController
Jean-Philippe Lang
Highlight the current item of the main menu....
r1062 menu_item :settings
Eric Davis
Refactor: Change the different find_object filters to share a common method....
r3483 model_object IssueCategory
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 before_filter :find_model_object, :except => [:index, :new, :create]
before_filter :find_project_from_association, :except => [:index, :new, :create]
Jean-Philippe Lang
Use #find_project_by_project_id from super-class....
r9040 before_filter :find_project_by_project_id, :only => [:index, :new, :create]
Jean-Philippe Lang
Moves ProjectsController#add_issue_category to IssueCategoriesController#new....
r3435 before_filter :authorize
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 accept_api_auth :index, :show, :create, :update, :destroy
def index
respond_to do |format|
format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'categories', :id => @project }
format.api { @categories = @project.issue_categories.all }
end
end
def show
respond_to do |format|
format.html { redirect_to :controller => 'projects', :action => 'settings', :tab => 'categories', :id => @project }
format.api
end
end
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/issue_categories_controller.rb....
r6783
Jean-Philippe Lang
Moves ProjectsController#add_issue_category to IssueCategoriesController#new....
r3435 def new
Jean-Philippe Lang
Prevent mass-assignment when adding/updating an issue category (#10390)....
r9011 @category = @project.issue_categories.build
@category.safe_attributes = params[:issue_category]
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 end
def create
Jean-Philippe Lang
Prevent mass-assignment when adding/updating an issue category (#10390)....
r9011 @category = @project.issue_categories.build
@category.safe_attributes = params[:issue_category]
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 if @category.save
respond_to do |format|
format.html do
flash[:notice] = l(:notice_successful_create)
redirect_to :controller => 'projects', :action => 'settings', :tab => 'categories', :id => @project
Jean-Philippe Lang
Moves ProjectsController#add_issue_category to IssueCategoriesController#new....
r3435 end
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 format.js do
# IE doesn't support the replace_html rjs method for select box options
render(:update) {|page| page.replace "issue_category_id",
Jean-Philippe Lang
Use content_tag for empty option....
r8880 content_tag('select', content_tag('option') + options_from_collection_for_select(@project.issue_categories, 'id', 'name', @category.id), :id => 'issue_category_id', :name => 'issue[category_id]')
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 }
end
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 format.api { render :action => 'show', :status => :created, :location => issue_category_path(@category) }
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 end
else
respond_to do |format|
format.html { render :action => 'new'}
format.js do
render(:update) {|page| page.alert(@category.errors.full_messages.join('\n')) }
Jean-Philippe Lang
Moves ProjectsController#add_issue_category to IssueCategoriesController#new....
r3435 end
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 format.api { render_validation_errors(@category) }
Jean-Philippe Lang
Moves ProjectsController#add_issue_category to IssueCategoriesController#new....
r3435 end
end
end
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/issue_categories_controller.rb....
r6783
Jean-Philippe Lang
Initial commit...
r2 def edit
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 end
def update
Jean-Philippe Lang
Prevent mass-assignment when adding/updating an issue category (#10390)....
r9011 @category.safe_attributes = params[:issue_category]
if @category.save
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 respond_to do |format|
format.html {
flash[:notice] = l(:notice_successful_update)
redirect_to :controller => 'projects', :action => 'settings', :tab => 'categories', :id => @project
}
format.api { head :ok }
end
Jean-Philippe Lang
Resourcified issue categories (#9553)....
r7761 else
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 respond_to do |format|
format.html { render :action => 'edit' }
format.api { render_validation_errors(@category) }
end
Jean-Philippe Lang
Initial commit...
r2 end
end
def destroy
Jean-Philippe Lang
A category with assigned issue can now be deleted. 2 options are proposed:...
r722 @issue_count = @category.issues.size
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 if @issue_count == 0 || params[:todo] || api_request?
reassign_to = nil
if params[:reassign_to_id] && (params[:todo] == 'reassign' || params[:todo].blank?)
reassign_to = @project.issue_categories.find_by_id(params[:reassign_to_id])
end
Jean-Philippe Lang
A category with assigned issue can now be deleted. 2 options are proposed:...
r722 @category.destroy(reassign_to)
Jean-Philippe Lang
REST API for issue categories (#9553)....
r7762 respond_to do |format|
format.html { redirect_to :controller => 'projects', :action => 'settings', :id => @project, :tab => 'categories' }
format.api { head :ok }
end
Toshi MARUYAMA
Fix potential Execution After Redirect bugs....
r5491 return
Jean-Philippe Lang
A category with assigned issue can now be deleted. 2 options are proposed:...
r722 end
@categories = @project.issue_categories - [@category]
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 end
Jean-Philippe Lang
Initial commit...
r2
Jean-Philippe Lang
added svn:eol-style native property on /app files...
r330 private
Eric Davis
Refactor: Change the different find_object filters to share a common method....
r3483 # Wrap ApplicationController's find_model_object method to set
# @category instead of just @issue_category
def find_model_object
super
@category = @object
Toshi MARUYAMA
remove trailing white-spaces from app/controllers/issue_categories_controller.rb....
r6783 end
Jean-Philippe Lang
Initial commit...
r2 end