From 188e21d3e7bcff0bd50dfb377959d6e8bc94e7cc Mon Sep 17 00:00:00 2001 From: Martin Edenhofer Date: Wed, 10 Sep 2014 09:45:30 +0200 Subject: [PATCH] Fixed new Ticket::ScreenOptions.attributes_to_change() --- app/controllers/tickets_controller.rb | 9 ++++++--- lib/sessions/backend/ticket_create.rb | 27 +++++++++++++-------------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/app/controllers/tickets_controller.rb b/app/controllers/tickets_controller.rb index cd0887e8f..69a619abf 100644 --- a/app/controllers/tickets_controller.rb +++ b/app/controllers/tickets_controller.rb @@ -296,8 +296,8 @@ class TicketsController < ApplicationController # get attributes to update attributes_to_change = Ticket::ScreenOptions.attributes_to_change( :user => current_user, - # :ticket_id => params[:ticket_id], - # :article_id => params[:article_id] + :ticket_id => params[:ticket_id], + :article_id => params[:article_id] ) assets = attributes_to_change[:assets] @@ -318,7 +318,10 @@ class TicketsController < ApplicationController render :json => { :split => split, :assets => assets, - :form_meta => attributes_to_change, + :form_meta => { + :filter => attributes_to_change[:filter], + :dependencies => attributes_to_change[:dependencies], + } } end diff --git a/lib/sessions/backend/ticket_create.rb b/lib/sessions/backend/ticket_create.rb index e950b2e83..f17769a7f 100644 --- a/lib/sessions/backend/ticket_create.rb +++ b/lib/sessions/backend/ticket_create.rb @@ -8,9 +8,9 @@ class Sessions::Backend::TicketCreate def load - # get whole collection + # get attributes to update ticket_create_attributes = Ticket::ScreenOptions.attributes_to_change( - :current_user_id => @user.id, + :user => @user.id, ) # no data exists @@ -38,32 +38,31 @@ class Sessions::Backend::TicketCreate # set new timeout Sessions::CacheIn.set( self.client_key, true, { :expires_in => 25.seconds } ) - create_attributes = self.load + ticket_create_attributes = self.load + + return if !ticket_create_attributes - return if !create_attributes - users = {} - create_attributes[:owner_id].each {|user_id| - if !users[user_id] - users[user_id] = User.find(user_id).attributes - end - } data = { - :users => users, - :edit_form => create_attributes, + :assets => ticket_create_attributes[:assets], + :form_meta => { + :filter => ticket_create_attributes[:filter], + :dependencies => ticket_create_attributes[:dependencies], + } } + if !@client return { :collection => 'ticket_create_attributes', - :data => create_attributes, + :data => data, } end @client.log 'notify', "push ticket_create for user #{ @user.id }" @client.send({ :collection => 'ticket_create_attributes', - :data => create_attributes, + :data => data, }) end