Initial Redmine tooling and local plugin forks
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
class HelpdeskTicketsController < ApplicationController
|
||||
unloadable
|
||||
|
||||
before_filter :find_issue, :except => :destroy
|
||||
before_filter :find_helpdesk_ticket, :only => :destroy
|
||||
before_filter :authorize
|
||||
|
||||
helper :helpdesk
|
||||
|
||||
def edit
|
||||
@show_form = "true"
|
||||
respond_to do |format|
|
||||
format.js
|
||||
end
|
||||
end
|
||||
|
||||
def update
|
||||
@helpdesk_ticket.attributes = params[:helpdesk_ticket]
|
||||
@helpdesk_ticket.cc_address = params[:helpdesk_ticket][:cc_address].reject(&:empty?).join(',') if params[:helpdesk_ticket][:cc_address]
|
||||
@helpdesk_ticket.issue = @issue
|
||||
@helpdesk_ticket.from_address = @helpdesk_ticket.customer.primary_email if @helpdesk_ticket.customer
|
||||
|
||||
if @helpdesk_ticket.save
|
||||
flash[:notice] = l(:notice_successful_update)
|
||||
respond_to do |format|
|
||||
format.html { redirect_back_or_default({:controller => 'issues', :action => 'show', :id => @issue}) }
|
||||
format.api { render_api_ok }
|
||||
end
|
||||
else
|
||||
flash[:error] = @helpdesk_ticket.errors.full_messages.flatten.join("\n")
|
||||
respond_to do |format|
|
||||
format.html { redirect_back_or_default({:controller => 'issues', :action => 'show', :id => @issue}) }
|
||||
format.api { render_validation_errors(@helpdesk_ticket) }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def destroy
|
||||
if @helpdesk_ticket.destroy
|
||||
flash[:notice] = l(:notice_successful_delete)
|
||||
respond_to do |format|
|
||||
format.html { redirect_back_or_default({:controller => 'issues', :action => 'show', :id => @issue}) }
|
||||
format.api { render_api_ok }
|
||||
end
|
||||
else
|
||||
flash[:error] = l(:notice_unsuccessful_save)
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
def find_helpdesk_ticket
|
||||
@helpdesk_ticket = HelpdeskTicket.find(params[:id])
|
||||
@issue = @helpdesk_ticket.issue
|
||||
@project = @issue.project if @issue
|
||||
rescue ActiveRecord::RecordNotFound
|
||||
render_404
|
||||
end
|
||||
|
||||
def find_issue
|
||||
@issue = Issue.find(params[:issue_id])
|
||||
@project = @issue.project
|
||||
@helpdesk_ticket = @issue.helpdesk_ticket || HelpdeskTicket.new(:ticket_date => Time.now, :issue => @issue)
|
||||
rescue ActiveRecord::RecordNotFound
|
||||
render_404
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user