# File lib/facebooker/rails/controller.rb, line 29 def create_facebook_session secure_with_facebook_params! || secure_with_cookies! || secure_with_token! end
this is used to proxy a connection through a rails app so the facebook secret key is not needed iphone apps use this
# File lib/facebooker/rails/controller.rb, line 35 def create_facebook_session_with_secret secure_with_session_secret! end
# File lib/facebooker/rails/controller.rb, line 55 def facebook_params @facebook_params ||= verified_facebook_params end
# File lib/facebooker/rails/controller.rb, line 21 def facebook_session @facebook_session end
# File lib/facebooker/rails/controller.rb, line 25 def facebook_session_parameters {:fb_sig_session_key=>params[:fb_sig_session_key]} end
# File lib/facebooker/rails/controller.rb, line 80 def redirect_to(*args) if request_is_for_a_facebook_canvas? and !request_is_facebook_tab? render :text => fbml_redirect_tag(*args) else super end end
# File lib/facebooker/rails/controller.rb, line 39 def set_facebook_session # first, see if we already have a session session_set = session_already_secured? # if not, see if we can load it from the environment unless session_set session_set = create_facebook_session session[:facebook_session] = @facebook_session if session_set end if session_set capture_facebook_friends_if_available! Session.current = facebook_session end return session_set end
Redirects the top window to the given url if the content is in an iframe, otherwise performs a normal #redirect_to call.
# File lib/facebooker/rails/controller.rb, line 61 def top_redirect_to(*args) if request_is_facebook_iframe? @redirect_url = url_for(*args) render :layout => false, :inline => <<-HTML <html><head> <script type="text/javascript"> window.top.location.href = <%= @redirect_url.to_json -%>; </script> <noscript> <meta http-equiv="refresh" content="0;url=<%=h @redirect_url %>" /> <meta http-equiv="window-target" content="_top" /> </noscript> </head></html> HTML else redirect_to(*args) end end
# File lib/facebooker/rails/controller.rb, line 8 def self.included(controller) controller.extend(ClassMethods) controller.before_filter :set_facebook_request_format controller.helper_attr :facebook_session_parameters controller.helper_method :request_comes_from_facebook? end
# File lib/facebooker/rails/controller.rb, line 15 def initialize *args @facebook_session = nil @installation_required = nil super end