diff options
author | spag <spag@golwen.net> | 2013-02-08 10:41:18 +0100 |
---|---|---|
committer | spag <spag@golwen.net> | 2013-02-08 10:41:18 +0100 |
commit | 9e723519982c3b442aa90f3728bfddd4025d4a69 (patch) | |
tree | 928c98fab134d0f3106119c6a094e3606a6727af /lib/tasks | |
parent | cd909970e8443ca86ad0be09b26cf5fb616ea303 (diff) |
softkey-call_forward relation polymorphic
Diffstat (limited to 'lib/tasks')
-rw-r--r-- | lib/tasks/gs_cluster.rake | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/tasks/gs_cluster.rake b/lib/tasks/gs_cluster.rake index 7b49ebb..c248c32 100644 --- a/lib/tasks/gs_cluster.rake +++ b/lib/tasks/gs_cluster.rake @@ -201,10 +201,14 @@ namespace :gs_cluster do remote_objects(remote_site, local_node_id, last_sync, Softkey).each do |remote_object| attributes = make_hash(remote_object.attributes) attributes[:sip_account_id] = SipAccount.where(:uuid => attributes[:sip_account_uuid]).first.try(:id) - attributes[:call_forward_id] = CallForward.where(:uuid => attributes[:call_forward_uuid]).first.try(:id) + + if ! attributes[:softkeyable_uuid].blank? + attributes[:softkeyable_id] = attributes[:softkeyable_type].constantize.where(:uuid => attributes[:softkeyable_uuid]).first.try(:id) + end + attributes[:softkey_function_id] = SoftkeyFunction.where(:name => attributes[:function]).first.try(:id) attributes.delete(:sip_account_uuid) - attributes.delete(:call_forward_uuid) + attributes.delete(:softkeyable_uuid) attributes.delete(:softkey_function) process_object(Softkey, Softkey, Softkey.where(:uuid => attributes[:uuid]).first, attributes) end |