mmangino-facebooker 1.0.7 → 1.0.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -86,7 +86,9 @@ module Facebooker
86
86
 
87
87
  #use __blank instead of nil so that this is cached
88
88
  cache_key = flid||"__blank"
89
- @friends_hash[cache_key] ||= @session.post('facebook.friends.get', (flid.nil? ? {} : {:flid => flid})).map do |uid|
89
+ options = {:uid=>@id}
90
+ options[:flid] = flid unless flid.nil?
91
+ @friends_hash[cache_key] ||= @session.post('facebook.friends.get', options,false).map do |uid|
90
92
  User.new(uid, @session)
91
93
  end
92
94
  @friends_hash[cache_key]
@@ -71,23 +71,33 @@ module Facebooker
71
71
  !session[:facebook_session].blank? && (params[:fb_sig_session_key].blank? || session[:facebook_session].session_key == facebook_params[:session_key])
72
72
  end
73
73
  end
74
+
75
+ def clear_fb_cookies!
76
+ domain_cookie_tag = "base_domain_#{Facebooker.api_key}"
77
+ cookie_domain = ".#{cookies[domain_cookie_tag]}" if cookies[domain_cookie_tag]
78
+ fb_cookie_names.each {|name| cookies.delete(name, :domain=>cookie_domain)}
79
+ cookies.delete Facebooker.api_key
80
+ end
81
+
82
+ def fb_cookie_prefix
83
+ Facebooker.api_key+"_"
84
+ end
85
+
86
+ def fb_cookie_names
87
+ fb_cookie_names = cookies.keys.select{|k| k.starts_with?(fb_cookie_prefix)}
88
+ end
74
89
 
75
90
  def secure_with_cookies!
76
- api_key = ENV['FACEBOOK_API_KEY']
77
- prefix = api_key+"_"
78
91
  parsed = {}
79
-
80
- #find all str s.t. !cookies[key_str].nil, set param[str] = cookies[key_str]
81
- cookies.keys.select{|k| k[0, prefix.size] == prefix}.each{ |k|
82
- parsed[k[prefix.size,k.size]] = cookies[k]
83
- }
92
+
93
+ fb_cookie_names.each { |key| parsed[key[fb_cookie_prefix.size,key.size]] = cookies[key] }
84
94
 
85
95
  #returning gracefully if the cookies aren't set or have expired
86
96
  return unless parsed['session_key'] && parsed['user'] && parsed['expires'] && parsed['ss']
87
97
  return unless Time.at(parsed['expires'].to_f) > Time.now
88
98
 
89
99
  #if we have the unexpired cookies, we'll throw an exception if the sig doesn't verify
90
- verify_signature(parsed,cookies[api_key])
100
+ verify_signature(parsed,cookies[Facebooker.api_key])
91
101
 
92
102
  @facebook_session = new_facebook_session
93
103
  @facebook_session.secure_with!(parsed['session_key'],parsed['user'],parsed['expires'],parsed['ss'])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mmangino-facebooker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chad Fowler