Created
February 19, 2010 04:01
-
-
Save cbaclig/308403 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
C:\InstantRails\rails_apps\test-gem-bundles>gem list | grep bundler | |
bundler (0.9.6, 0.9.5) | |
C:\InstantRails\rails_apps\test-gem-bundles>cat Gemfile | |
source 'http://gemcutter.org' | |
source 'http://gems.github.com' | |
gem 'rails', '2.3.5', :require => nil | |
gem 'facebooker' | |
group :development do | |
gem 'mysql' | |
end | |
C:\InstantRails\rails_apps\test-gem-bundles> | |
C:\InstantRails\rails_apps\test-gem-bundles>bundle lock | |
The bundle is now locked. Use `bundle show` to list the gems in the environment. | |
C:\InstantRails\rails_apps\test-gem-bundles>ruby script/runner 'p ApplicationController.new.respond_to?("set_facebook_session")' | |
false | |
[[[ After adding config.gem 'facebooker' to environment.rb ]]] | |
C:\InstantRails\rails_apps\test-gem-bundles>bundle lock | |
The bundle is now locked. Use `bundle show` to list the gems in the environment. | |
C:\InstantRails\rails_apps\test-gem-bundles>ruby script/runner 'p ApplicationController.new.respond_to?("set_facebook_session")' | |
true | |
========= Facebooker files ============== | |
facebooker/init.rb | |
# Added support to the Facebooker.yml file for switching to the new profile design.. | |
# Config parsing needs to happen before files are required. | |
facebook_config = "#{RAILS_ROOT}/config/facebooker.yml" | |
require 'facebooker' | |
FACEBOOKER = Facebooker.load_configuration(facebook_config) | |
# enable logger before including everything else, in case we ever want to log initialization | |
Facebooker.logger = RAILS_DEFAULT_LOGGER if Object.const_defined? :RAILS_DEFAULT_LOGGER | |
require 'net/http_multipart_post' | |
if defined? Rails | |
require 'facebooker/rails/backwards_compatible_param_checks' | |
require 'facebooker/rails/controller' | |
require 'facebooker/rails/facebook_url_rewriting' | |
require 'facebooker/rails/facebook_session_handling' if Rails.version < '2.3' | |
require 'facebooker/rails/facebook_request_fix' if Rails.version < '2.3' | |
require 'facebooker/rails/facebook_request_fix_2-3' if Rails.version >= '2.3' | |
require 'facebooker/rails/routing' | |
require 'facebooker/rails/facebook_pretty_errors' rescue nil | |
require 'facebooker/rails/facebook_url_helper' | |
require 'facebooker/rails/extensions/rack_setup' if Rails.version > '2.3' | |
require 'facebooker/rails/extensions/action_controller' | |
#require 'facebooker/rails/extensions/action_view' | |
require 'facebooker/rails/extensions/routing' | |
end | |
facebooker/lib/facebooker/rails/extensions/action_controller.rb | |
module ::ActionController | |
class Base | |
def self.inherited_with_facebooker(subclass) | |
inherited_without_facebooker(subclass) | |
if subclass.to_s == "ApplicationController" | |
subclass.send(:include,Facebooker::Rails::Controller) | |
subclass.helper Facebooker::Rails::Helpers | |
end | |
end | |
class << self | |
alias_method_chain :inherited, :facebooker | |
end | |
end | |
end | |
# When making get requests, Facebook sends fb_sig parameters both in the query string | |
# and also in the post body. We want to ignore the query string ones because they are one | |
# request out of date | |
# We only do thise when there are POST parameters so that IFrame linkage still works | |
if Rails.version < '2.3' | |
class ActionController::AbstractRequest | |
def query_parameters_with_facebooker | |
if request_parameters.blank? | |
query_parameters_without_facebooker | |
else | |
(query_parameters_without_facebooker||{}).reject {|key,value| key.to_s =~ /^fb_sig/} | |
end | |
end | |
alias_method_chain :query_parameters, :facebooker | |
end | |
else | |
class ActionController::Request | |
def query_parameters_with_facebooker | |
if request_parameters.blank? | |
query_parameters_without_facebooker | |
else | |
(query_parameters_without_facebooker||{}).reject {|key,value| key.to_s =~ /^fb_sig/} | |
end | |
end | |
alias_method_chain :query_parameters, :facebooker | |
end | |
end | |
Mime::Type.register_alias "text/html", :fbml | |
Mime::Type.register_alias "text/javascript", :fbjs |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment