Class: FBTether

Inherits:
Object
  • Object
show all
Defined in:
lib/magis/auths/fb.rb

Class Method Summary collapse

Class Method Details

.friends(user) ⇒ Object



57
58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/magis/auths/fb.rb', line 57

def self.friends(user)
  graph = Koala::Facebook::API.new(user["accessToken"])

  friends = Magis.db["friends"].find(userId: user["_id"]).first
  fb_friends = graph.get_connections("me", "friends")
  
  if friends
   friends_list = Magis.db["friends"].update({userId: user["_id"]}, {"$set" => {friends: fb_friends}})
else
   	Magis.db["friends"].insert({userId: user["_id"], friends: fb_friends})
  end
 
  Magis.db["friends"].find(userId: user["_id"]).first["friends"]
end

.store(user_params) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/magis/auths/fb.rb', line 2

def self.store(user_params)
  user_raw = user_params["extra"]["raw_info"]
  user = Magis.db["users"].find(email: user_raw["email"]).first
  
   = Hash.new
  
  if user_raw["email"]
    [:email] = user_raw["email"]
  end
  
  if user_raw["first_name"]
    [:firstName] = user_raw["first_name"]
  end
  
  if user_raw["last_name"]
    [:lastName] = user_raw["last_name"]
  end
  
  if user_raw["gender"]
    [:gender] = user_raw["gender"]
  end
  
  
  if user_params["info"]["image"]
    [:image] = user_params["info"]["image"]
  end
  
  if user_raw["id"]
    [:uid] = user_raw["id"]
  end
  
  if user_raw["locale"] 
    [:locale] = user_raw["locale"]
  end
  
  if user_raw["timezone"]
      [:timezone] = user_raw["timezone"]
  end
  
  if user_params["credentials"]["token"]
    [:accessToken] = user_params["credentials"]["token"]
  end
  
  [:provider] = :facebook
  
  if user
    Magis.db["users"].update({"_id" => user["_id"]}, {"$set" => })
  else
    Magis.db["users"].insert()
  	user = Magis.db["users"].find(email: user_raw["email"]).first
  end
  
  user
end