Module: RFacebook::Rails::ModelExtensions::ActsAsFacebookUser::InstanceMethods
- Defined in:
- lib/rfacebook_on_rails/model_extensions.rb
Class Method Summary collapse
-
.included(base) ⇒ Object
:nodoc:.
Instance Method Summary collapse
-
#facebook_session ⇒ Object
TODO: to help developers stay within the TOS, we should have a method in here like “with_facebook_scope(fbsession)…”.
- #facebook_session=(sess) ⇒ Object
- #has_infinite_session_key? ⇒ Boolean
Class Method Details
.included(base) ⇒ Object
:nodoc:
175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 |
# File 'lib/rfacebook_on_rails/model_extensions.rb', line 175 def self.included(base) # :nodoc: ActsAsFacebookUser::ACTORS << base ActsAsFacebookUser::FIELDS.each do |fieldname| base.class_eval <<-EOF def #{fieldname} if facebook_session.is_ready? return facebook_session.cached_users_getInfo( :uids => [facebook_uid], :fields => ActsAsFacebookUser::FIELDS).user.send(:#{fieldname}) else return nil end end EOF end end |
Instance Method Details
#facebook_session ⇒ Object
TODO: to help developers stay within the TOS, we should have a method in here like “with_facebook_scope(fbsession)…”
152 153 154 155 156 157 158 159 160 161 162 |
# File 'lib/rfacebook_on_rails/model_extensions.rb', line 152 def facebook_session if !@facebook_session @facebook_session = FacebookWebSession.new(self.facebook_api_key, self.facebook_api_secret) begin @facebook_session.activate_with_previous_session(self.facebook_session_key, self.facebook_uid) rescue # not a valid facebook session, should we nil it out? end end return @facebook_session end |
#facebook_session=(sess) ⇒ Object
164 165 166 167 168 |
# File 'lib/rfacebook_on_rails/model_extensions.rb', line 164 def facebook_session=(sess) @facebook_session = sess self.facebook_session_key = @facebook_session.session_key self.facebook_uid = @facebook_session.session_user_id end |
#has_infinite_session_key? ⇒ Boolean
170 171 172 173 |
# File 'lib/rfacebook_on_rails/model_extensions.rb', line 170 def has_infinite_session_key? # TODO: this check should really look at expires return self.facebook_session_key != nil end |