summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorspag <spag@golwen.net>2013-02-08 10:41:18 +0100
committerspag <spag@golwen.net>2013-02-08 10:41:18 +0100
commit9e723519982c3b442aa90f3728bfddd4025d4a69 (patch)
tree928c98fab134d0f3106119c6a094e3606a6727af /lib
parentcd909970e8443ca86ad0be09b26cf5fb616ea303 (diff)
softkey-call_forward relation polymorphic
Diffstat (limited to 'lib')
-rw-r--r--lib/tasks/gs_cluster.rake8
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