From 9715383b655d4577fd40f2f11a6c3508194915d5 Mon Sep 17 00:00:00 2001 From: Martin Edenhofer Date: Thu, 19 Jul 2012 22:53:52 +0200 Subject: [PATCH] Added change customer dialog. --- .../agent_ticket_customer.js.coffee | 33 +++++++++++++++++++ .../controllers/agent_ticket_zoom.js.coffee | 5 +++ .../app/views/agent_ticket_customer.jst.eco | 12 +++++++ .../app/views/agent_ticket_zoom.jst.eco | 1 + 4 files changed, 51 insertions(+) create mode 100644 app/assets/javascripts/app/controllers/agent_ticket_customer.js.coffee create mode 100644 app/assets/javascripts/app/views/agent_ticket_customer.jst.eco diff --git a/app/assets/javascripts/app/controllers/agent_ticket_customer.js.coffee b/app/assets/javascripts/app/controllers/agent_ticket_customer.js.coffee new file mode 100644 index 000000000..cb3c76142 --- /dev/null +++ b/app/assets/javascripts/app/controllers/agent_ticket_customer.js.coffee @@ -0,0 +1,33 @@ +class App.TicketCustomer extends App.ControllerModal + constructor: -> + super + @render() + + render: -> + configure_attributes = [ +# { name: 'customer_id', display: 'Customer', tag: 'autocompletion', type: 'text', limit: 100, null: false, relation: 'User', class: 'span7', autocapitalize: false, help: 'Select the customer of the Ticket or create one.', link: '»', callback: @userInfo }, + { name: 'customer_id', display: 'Customer', tag: 'autocompletion', type: 'text', limit: 100, null: false, relation: 'User', class: 'span5', autocapitalize: false, help: 'Select the new customer of the Ticket.', }, + ] + + @html App.view('agent_ticket_customer')( +# head: 'New User', + form: @formGen( model: { configure_attributes: configure_attributes, className: 'update' } ), + ) + @modalShow() + + submit: (e) => + e.preventDefault() + + params = @formParam(e.target) + + # update ticket + ticket = App.Ticket.find(@ticket_id) + ticket.updateAttributes( + customer_id: params['customer_id'] + ) + + # close modal + @modalHide() + + # reload zoom view + @zoom.render() diff --git a/app/assets/javascripts/app/controllers/agent_ticket_zoom.js.coffee b/app/assets/javascripts/app/controllers/agent_ticket_zoom.js.coffee index 006844949..9f4e58b86 100644 --- a/app/assets/javascripts/app/controllers/agent_ticket_zoom.js.coffee +++ b/app/assets/javascripts/app/controllers/agent_ticket_zoom.js.coffee @@ -9,6 +9,7 @@ class Index extends App.Controller 'click [data-type=internal]': 'public_internal', 'click [data-type=history]': 'history_dialog', 'click [data-type=merge]': 'merge_dialog', + 'click [data-type=customer]': 'customer_dialog', 'change [name="ticket_article_type_id"]': 'form_update', 'click .show_toogle': 'show_toogle', @@ -234,6 +235,10 @@ class Index extends App.Controller e.preventDefault() new App.TicketMerge( ticket_id: @ticket_id ) + customer_dialog: (e) -> + e.preventDefault() + new App.TicketCustomer( ticket_id: @ticket_id, zoom: @ ) + public_internal: (e) -> e.preventDefault() article_id = $(e.target).parents('[data-id]').data('id') diff --git a/app/assets/javascripts/app/views/agent_ticket_customer.jst.eco b/app/assets/javascripts/app/views/agent_ticket_customer.jst.eco new file mode 100644 index 000000000..318133c5e --- /dev/null +++ b/app/assets/javascripts/app/views/agent_ticket_customer.jst.eco @@ -0,0 +1,12 @@ +
+ + + +
\ No newline at end of file diff --git a/app/assets/javascripts/app/views/agent_ticket_zoom.jst.eco b/app/assets/javascripts/app/views/agent_ticket_zoom.jst.eco index 0279dae30..0475a6ad5 100644 --- a/app/assets/javascripts/app/views/agent_ticket_zoom.jst.eco +++ b/app/assets/javascripts/app/views/agent_ticket_zoom.jst.eco @@ -90,6 +90,7 @@