From f6bf17897da60a4210dc802287ecf587ac9e422e Mon Sep 17 00:00:00 2001 From: Ilyaaaaaaaaaaaaa Zhitomirskiy Date: Mon, 11 Jul 2011 16:52:14 -0700 Subject: [PATCH] actually displaying the facebook results(first time connection), updating attributes instead of discarding the changes --- app/models/services/facebook.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/models/services/facebook.rb b/app/models/services/facebook.rb index 7f2182b9072..18a37ad018a 100644 --- a/app/models/services/facebook.rb +++ b/app/models/services/facebook.rb @@ -23,6 +23,7 @@ def finder(opts = {}) Rails.logger.debug("event=friend_finder type=facebook sender_id=#{self.user_id}") if self.service_users.blank? self.save_friends + self.service_users.reload else Resque.enqueue(Job::UpdateServiceUsers, self.id) end @@ -42,8 +43,8 @@ def save_friends response = Faraday.get(url) data = JSON.parse(response.body)['data'] data.each{ |p| - ServiceUser.find_or_create_by_service_id_and_uid(:service_id => self.id, :name => p["name"], - :uid => p["id"], :photo_url => p["picture"]) + su = ServiceUser.find_or_initialize_by_service_id_and_uid(:service_id => self.id, :uid => p["id"]) + su.update_attributes({:name => p["name"], :photo_url => p["picture"]}) } end end