plataforma_social 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Capfile +5 -0
- data/config/deploy.rb +54 -0
- data/lib/plataforma_social.rb +13 -39
- data/lib/plataforma_social/configuration.rb +1 -1
- data/lib/plataforma_social/domains.rb +32 -0
- data/lib/plataforma_social/facebook.rb +66 -22
- data/lib/plataforma_social/helpers.rb +61 -2
- data/lib/plataforma_social/request.rb +4 -3
- data/lib/plataforma_social/version.rb +1 -1
- data/plataforma_social.gemspec +3 -1
- metadata +81 -49
    
        data/Capfile
    ADDED
    
    | @@ -0,0 +1,5 @@ | |
| 1 | 
            +
            load 'deploy'
         | 
| 2 | 
            +
            # Uncomment if you are using Rails' asset pipeline
         | 
| 3 | 
            +
                # load 'deploy/assets'
         | 
| 4 | 
            +
            Dir['vendor/gems/*/recipes/*.rb','vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
         | 
| 5 | 
            +
            load 'config/deploy' # remove this line to skip loading any of the default tasks
         | 
    
        data/config/deploy.rb
    ADDED
    
    | @@ -0,0 +1,54 @@ | |
| 1 | 
            +
            set :application, 'plataforma_social'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            $environment = 'staging' # | staging # production
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            set :scm, :git
         | 
| 6 | 
            +
            set :scm_verbose, true
         | 
| 7 | 
            +
            default_run_options[:pty] = true
         | 
| 8 | 
            +
            set :deploy_via, :remote_cache
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            case $environment
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            when 'staging'
         | 
| 13 | 
            +
              p "\n\n\nCAREFUL!!!! STAGING DEPLOY!!!\n\n"
         | 
| 14 | 
            +
             | 
| 15 | 
            +
               set :restart_server_command, "/opt/local/nginx/sbin/nginx -s reload"
         | 
| 16 | 
            +
             | 
| 17 | 
            +
              set :repository,  "ssh://dito@projetos.dito.com.br:4444/home/git/repositories/plataforma_social.git"
         | 
| 18 | 
            +
             | 
| 19 | 
            +
              set :branch, "master"
         | 
| 20 | 
            +
             | 
| 21 | 
            +
              #usuario ssh
         | 
| 22 | 
            +
              set :user, "dito"
         | 
| 23 | 
            +
             | 
| 24 | 
            +
              role :app, "31.171.132.244"
         | 
| 25 | 
            +
              role :web, "31.171.132.244"
         | 
| 26 | 
            +
              role :db,  "31.171.132.244", :primary => true
         | 
| 27 | 
            +
             | 
| 28 | 
            +
              set :deploy_to, "/home/dito/www/plataforma_social"
         | 
| 29 | 
            +
              set :use_sudo, true
         | 
| 30 | 
            +
             | 
| 31 | 
            +
              after "deploy", "deploy:cleanup"
         | 
| 32 | 
            +
            else
         | 
| 33 | 
            +
              p "UNRECOGNIZED ENVIRONMENT"
         | 
| 34 | 
            +
            end
         | 
| 35 | 
            +
             | 
| 36 | 
            +
             | 
| 37 | 
            +
            before "deploy:create_symlink", "deploy:copy_files"
         | 
| 38 | 
            +
             | 
| 39 | 
            +
             | 
| 40 | 
            +
            namespace :deploy do
         | 
| 41 | 
            +
             | 
| 42 | 
            +
              task :copy_files, :roles => :app do
         | 
| 43 | 
            +
                case $environment
         | 
| 44 | 
            +
                when 'staging'
         | 
| 45 | 
            +
                  run "cd #{release_path} && /home/dito/.rvm/gems/ruby-1.9.3-p327@global/bin/bundle install"
         | 
| 46 | 
            +
                end
         | 
| 47 | 
            +
              end
         | 
| 48 | 
            +
             | 
| 49 | 
            +
              desc "Restart the web server"
         | 
| 50 | 
            +
              task :restart, :roles => :app do
         | 
| 51 | 
            +
                # sudo restart_server_command
         | 
| 52 | 
            +
              end
         | 
| 53 | 
            +
             | 
| 54 | 
            +
            end
         | 
    
        data/lib/plataforma_social.rb
    CHANGED
    
    | @@ -1,54 +1,28 @@ | |
| 1 1 | 
             
            require "plataforma_social/version"
         | 
| 2 2 | 
             
            require "plataforma_social/configuration"
         | 
| 3 | 
            +
            require "plataforma_social/domains"
         | 
| 3 4 | 
             
            require "plataforma_social/facebook"
         | 
| 4 5 | 
             
            require "plataforma_social/request"
         | 
| 5 6 | 
             
            require "plataforma_social/helpers"
         | 
| 6 7 |  | 
| 7 8 | 
             
            module PlataformaSocial
         | 
| 8 9 | 
             
              class << self
         | 
| 9 | 
            -
                def  | 
| 10 | 
            -
                   | 
| 11 | 
            -
                    :js => 'js',
         | 
| 12 | 
            -
                    :analytics => 'analytics',
         | 
| 13 | 
            -
                    :login => 'login',
         | 
| 14 | 
            -
                    :events => 'events',
         | 
| 15 | 
            -
                    :share => 'share',
         | 
| 16 | 
            -
                    :comments => 'comments',
         | 
| 17 | 
            -
                    :ranking => 'ranking',
         | 
| 18 | 
            -
                    :badge => 'badge',
         | 
| 19 | 
            -
                    :notification => 'notification'
         | 
| 20 | 
            -
                  }
         | 
| 21 | 
            -
                
         | 
| 22 | 
            -
                  if domains[module_name.to_sym].present?
         | 
| 23 | 
            -
                    name = domains[module_name.to_sym]
         | 
| 24 | 
            -
                
         | 
| 25 | 
            -
                    url = case Rails.env
         | 
| 26 | 
            -
                      when "production"
         | 
| 27 | 
            -
                        "https://#{name}.plataformasocial.com.br"
         | 
| 28 | 
            -
                      when "development" 
         | 
| 29 | 
            -
                        "http://#{name}.dev.plataformasocial.com.br"
         | 
| 30 | 
            -
                      when "test"
         | 
| 31 | 
            -
                        "http://#{name}.dev.plataformasocial.com.br"
         | 
| 32 | 
            -
                      when "staging"
         | 
| 33 | 
            -
                        "http://#{name}.dev.plataformasocial.com.br"
         | 
| 34 | 
            -
                      end
         | 
| 35 | 
            -
                      
         | 
| 36 | 
            -
                    url
         | 
| 37 | 
            -
                  end
         | 
| 10 | 
            +
                def configuration
         | 
| 11 | 
            +
                  @configuration ||= Configuration.new
         | 
| 38 12 | 
             
                end
         | 
| 39 13 |  | 
| 40 14 | 
             
                def configure
         | 
| 41 15 | 
             
                  yield(configuration)
         | 
| 42 16 | 
             
                end
         | 
| 43 | 
            -
             | 
| 44 | 
            -
                def configuration
         | 
| 45 | 
            -
                  @configuration ||= Configuration.new
         | 
| 46 | 
            -
                end
         | 
| 47 17 |  | 
| 48 18 | 
             
                def api_key
         | 
| 49 19 | 
             
                  configuration.api_key
         | 
| 50 20 | 
             
                end
         | 
| 51 21 |  | 
| 22 | 
            +
                def secret
         | 
| 23 | 
            +
                  configuration.secret
         | 
| 24 | 
            +
                end
         | 
| 25 | 
            +
                
         | 
| 52 26 | 
             
                def facebook_app_id
         | 
| 53 27 | 
             
                  configuration.facebook_app_id
         | 
| 54 28 | 
             
                end
         | 
| @@ -61,14 +35,14 @@ module PlataformaSocial | |
| 61 35 | 
             
                  configuration.facebook_app_namespace
         | 
| 62 36 | 
             
                end
         | 
| 63 37 |  | 
| 38 | 
            +
                def facebook_scope
         | 
| 39 | 
            +
                  configuration.facebook_scope
         | 
| 40 | 
            +
                end
         | 
| 64 41 |  | 
| 65 | 
            -
                def  | 
| 66 | 
            -
                   | 
| 42 | 
            +
                def facebook_callback_url
         | 
| 43 | 
            +
                  protocol = Rails.env.development? || Rails.env.staging? ? 'http' : 'https'
         | 
| 44 | 
            +
                  configuration.facebook_callback_url || "#{protocol}://apps.facebook.com/#{configuration.facebook_app_namespace}/"
         | 
| 67 45 | 
             
                end
         | 
| 68 46 |  | 
| 69 47 | 
             
              end  
         | 
| 70 | 
            -
            end
         | 
| 71 | 
            -
             | 
| 72 | 
            -
            ActiveSupport.on_load(:action_view) do
         | 
| 73 | 
            -
              include PlataformaSocial::Helpers
         | 
| 74 48 | 
             
            end
         | 
| @@ -1,5 +1,5 @@ | |
| 1 1 | 
             
            module PlataformaSocial
         | 
| 2 2 | 
             
              class Configuration
         | 
| 3 | 
            -
                attr_accessor :api_key, :facebook_app_secret, :facebook_app_id, :facebook_app_namespace
         | 
| 3 | 
            +
                attr_accessor :api_key, :secret, :facebook_app_secret, :facebook_app_id, :facebook_app_namespace, :facebook_scope, :facebook_callback_url
         | 
| 4 4 | 
             
              end
         | 
| 5 5 | 
             
            end
         | 
| @@ -0,0 +1,32 @@ | |
| 1 | 
            +
            module PlataformaSocial
         | 
| 2 | 
            +
              def self.domains module_name
         | 
| 3 | 
            +
                domains = {
         | 
| 4 | 
            +
                  :js => 'js',
         | 
| 5 | 
            +
                  :analytics => 'analytics',
         | 
| 6 | 
            +
                  :login => 'login',
         | 
| 7 | 
            +
                  :events => 'events',
         | 
| 8 | 
            +
                  :share => 'share',
         | 
| 9 | 
            +
                  :comments => 'comments',
         | 
| 10 | 
            +
                  :ranking => 'ranking',
         | 
| 11 | 
            +
                  :badge => 'badge',
         | 
| 12 | 
            +
                  :notification => 'notification'
         | 
| 13 | 
            +
                }
         | 
| 14 | 
            +
              
         | 
| 15 | 
            +
                if domains[module_name.to_sym].present?
         | 
| 16 | 
            +
                  name = domains[module_name.to_sym]
         | 
| 17 | 
            +
              
         | 
| 18 | 
            +
                  url = case Rails.env
         | 
| 19 | 
            +
                    when "production"
         | 
| 20 | 
            +
                      "https://#{name}.plataformasocial.com.br"
         | 
| 21 | 
            +
                    when "development" 
         | 
| 22 | 
            +
                      "http://#{name}.dev.plataformasocial.com.br"
         | 
| 23 | 
            +
                    when "test"
         | 
| 24 | 
            +
                      "http://#{name}.dev.plataformasocial.com.br"
         | 
| 25 | 
            +
                    when "staging"
         | 
| 26 | 
            +
                      "http://#{name}.dev.plataformasocial.com.br"
         | 
| 27 | 
            +
                    end
         | 
| 28 | 
            +
                    
         | 
| 29 | 
            +
                  url
         | 
| 30 | 
            +
                end
         | 
| 31 | 
            +
              end
         | 
| 32 | 
            +
            end
         | 
| @@ -1,28 +1,72 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
              class Facebook    
         | 
| 3 | 
            -
                def self.parse_signed_request signed_request, max_age = 3600
         | 
| 4 | 
            -
                  secret = PlataformaSocial.facebook_app_secret
         | 
| 5 | 
            -
                  encoded_sig, encoded_envelope = signed_request.split('.', 2)
         | 
| 6 | 
            -
                  envelope = JSON.parse(base64_url_decode(encoded_envelope))
         | 
| 7 | 
            -
                  algorithm = envelope['algorithm']
         | 
| 8 | 
            -
             | 
| 9 | 
            -
                  raise 'Invalid request. (Unsupported algorithm.)' \
         | 
| 10 | 
            -
                    if algorithm != 'HMAC-SHA256'
         | 
| 11 | 
            -
             | 
| 12 | 
            -
                  raise 'Invalid request. (Too old.)' \
         | 
| 13 | 
            -
                    if envelope['issued_at'] < Time.now.to_i - max_age
         | 
| 1 | 
            +
            require 'koala'
         | 
| 14 2 |  | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
                   | 
| 3 | 
            +
            module PlataformaSocial
         | 
| 4 | 
            +
              module Facebook
         | 
| 5 | 
            +
                def facebook_login
         | 
| 6 | 
            +
                  load_oauth
         | 
| 7 | 
            +
                  load_graph
         | 
| 8 | 
            +
                  
         | 
| 9 | 
            +
                  redirect = false
         | 
| 10 | 
            +
                  
         | 
| 11 | 
            +
                  if params[:code]
         | 
| 12 | 
            +
                    begin
         | 
| 13 | 
            +
                      @oauth.get_access_token(params[:code])
         | 
| 14 | 
            +
                    rescue Koala::Facebook::OAuthTokenRequestError
         | 
| 15 | 
            +
                      redirect = true if parse_facebook_signed_request && !parse_facebook_signed_request['oauth_token']
         | 
| 16 | 
            +
                    end
         | 
| 17 | 
            +
                  else
         | 
| 18 | 
            +
                    redirect = true if parse_facebook_signed_request && !parse_facebook_signed_request['oauth_token']
         | 
| 19 | 
            +
                  end
         | 
| 20 | 
            +
                  
         | 
| 21 | 
            +
                  if parse_facebook_signed_request && parse_facebook_signed_request['oauth_token']
         | 
| 22 | 
            +
                    if !session[:not_verify_facebook_permissions] === true
         | 
| 23 | 
            +
                      permissions = @graph.get_object('me', :fields => 'permissions')['permissions']['data'][0]
         | 
| 24 | 
            +
                      session[:not_verify_facebook_permissions] = true
         | 
| 25 | 
            +
                    
         | 
| 26 | 
            +
                      PlataformaSocial.facebook_scope.split(',').each do |permission|
         | 
| 27 | 
            +
                        redirect = true unless permissions[permission.strip]
         | 
| 28 | 
            +
                      end
         | 
| 29 | 
            +
                    end
         | 
| 30 | 
            +
                  end
         | 
| 31 | 
            +
                  
         | 
| 32 | 
            +
                  render :text => %|<script type="text/javascript">window.top.location.href="#{@oauth.url_for_oauth_code(:permissions => PlataformaSocial.configuration.facebook_scope)}";</script>| if redirect
         | 
| 19 33 | 
             
                end
         | 
| 20 | 
            -
             | 
| 21 | 
            -
                 | 
| 34 | 
            +
                
         | 
| 35 | 
            +
                def load_user_data
         | 
| 36 | 
            +
                  facebook_data          = facebook_user_data.symbolize_keys if facebook_user_data
         | 
| 37 | 
            +
                  plataforma_social_data = plataforma_social_user_data.symbolize_keys if plataforma_social_user_data
         | 
| 22 38 |  | 
| 23 | 
            -
                   | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 39 | 
            +
                  @user_data = { :facebook => facebook_data, :plataforma_social => plataforma_social_data }
         | 
| 40 | 
            +
                end
         | 
| 41 | 
            +
                
         | 
| 42 | 
            +
                def plataforma_social_user_data
         | 
| 43 | 
            +
                  if params[:signed_request]
         | 
| 44 | 
            +
                    data = Request.post("#{PlataformaSocial.domains('login')}/register", { :signed_request => params[:signed_request] })
         | 
| 45 | 
            +
                    { :reference => data['id'] }
         | 
| 46 | 
            +
                  end
         | 
| 47 | 
            +
                end
         | 
| 48 | 
            +
                
         | 
| 49 | 
            +
                def facebook_user_data
         | 
| 50 | 
            +
                  if load_graph
         | 
| 51 | 
            +
                    @graph.get_object('me')
         | 
| 26 52 | 
             
                  end
         | 
| 53 | 
            +
                end
         | 
| 54 | 
            +
                
         | 
| 55 | 
            +
                def parse_facebook_signed_request
         | 
| 56 | 
            +
                  load_oauth
         | 
| 57 | 
            +
                  @oauth.parse_signed_request params[:signed_request] if params[:signed_request].present?
         | 
| 58 | 
            +
                end
         | 
| 59 | 
            +
                
         | 
| 60 | 
            +
                def load_oauth
         | 
| 61 | 
            +
                  @oauth = Koala::Facebook::OAuth.new(PlataformaSocial.facebook_app_id, PlataformaSocial.facebook_app_secret, PlataformaSocial.facebook_callback_url)
         | 
| 62 | 
            +
                end
         | 
| 63 | 
            +
                
         | 
| 64 | 
            +
                def load_graph
         | 
| 65 | 
            +
                  @graph = Koala::Facebook::API.new parse_facebook_signed_request['oauth_token'] if parse_facebook_signed_request.present?
         | 
| 66 | 
            +
                end
         | 
| 27 67 | 
             
              end
         | 
| 68 | 
            +
            end
         | 
| 69 | 
            +
             | 
| 70 | 
            +
            class ActionController::Base
         | 
| 71 | 
            +
              include PlataformaSocial::Facebook
         | 
| 28 72 | 
             
            end
         | 
| @@ -1,7 +1,66 @@ | |
| 1 1 | 
             
            module PlataformaSocial
         | 
| 2 2 | 
             
              module Helpers
         | 
| 3 | 
            +
                
         | 
| 4 | 
            +
                def plataforma_social_javascripts
         | 
| 5 | 
            +
                  plataforma_social_script_tag + plataforma_social_config_script
         | 
| 6 | 
            +
                end
         | 
| 7 | 
            +
                
         | 
| 3 8 | 
             
                def plataforma_social_script_tag
         | 
| 4 | 
            -
                   | 
| 9 | 
            +
                  %Q{<script src="#{PlataformaSocial.domains('js')}/socialp.js" type="text/javascript" charset="utf-8"></script>}.html_safe
         | 
| 10 | 
            +
                end
         | 
| 11 | 
            +
                
         | 
| 12 | 
            +
                def plataforma_social_config_script
         | 
| 13 | 
            +
                  %Q{<script type="text/javascript" charset="utf-8">
         | 
| 14 | 
            +
                    $P.init({ apiKey: '#{PlataformaSocial.api_key}' });
         | 
| 15 | 
            +
                    window._FACEBOOK_APP_URL = 'http://apps.facebook.com/#{PlataformaSocial.facebook_app_namespace}';
         | 
| 16 | 
            +
                  </script>}.html_safe
         | 
| 17 | 
            +
                end
         | 
| 18 | 
            +
                
         | 
| 19 | 
            +
                def custom_redirect_to path, options = {}
         | 
| 20 | 
            +
                  options.each_pair do |key, value|
         | 
| 21 | 
            +
                    cookies[key] = value
         | 
| 22 | 
            +
                  end
         | 
| 23 | 
            +
                  
         | 
| 24 | 
            +
                  render :text => %Q{
         | 
| 25 | 
            +
                    <script type="text/javascript" charset="utf-8">
         | 
| 26 | 
            +
                      window.top.location = "//apps.facebook.com/#{PlataformaSocial.facebook_app_namespace}#{path}";
         | 
| 27 | 
            +
                    </script>
         | 
| 28 | 
            +
                  }
         | 
| 29 | 
            +
                end
         | 
| 30 | 
            +
                
         | 
| 31 | 
            +
                def link_to *args, &block
         | 
| 32 | 
            +
                  if args[2][:normal] === true
         | 
| 33 | 
            +
                    super
         | 
| 34 | 
            +
                  else
         | 
| 35 | 
            +
                    unless block_given?
         | 
| 36 | 
            +
                      referer             = request.referer
         | 
| 37 | 
            +
                      facebook_domain     = 'apps.facebook.com'
         | 
| 38 | 
            +
                      if params["controller"].include?("admin/")
         | 
| 39 | 
            +
                        super
         | 
| 40 | 
            +
                      else
         | 
| 41 | 
            +
                        server_domain = request.env['HTTP_HOST']
         | 
| 42 | 
            +
                        if args[1].index(request.env['HTTP_HOST']) 
         | 
| 43 | 
            +
                          args[1].gsub! server_domain, facebook_domain + '/' + PlataformaSocial.facebook_app_namespace
         | 
| 44 | 
            +
                        else
         | 
| 45 | 
            +
                          args[1] = request.protocol + facebook_domain + '/' + PlataformaSocial.facebook_app_namespace + args[1]
         | 
| 46 | 
            +
                        end
         | 
| 47 | 
            +
                      
         | 
| 48 | 
            +
                        args[2] ||= {}
         | 
| 49 | 
            +
                        args[2][:target] = '_top'
         | 
| 50 | 
            +
                      
         | 
| 51 | 
            +
                      end
         | 
| 52 | 
            +
                    end
         | 
| 53 | 
            +
                  
         | 
| 54 | 
            +
                    super
         | 
| 55 | 
            +
                  end
         | 
| 5 56 | 
             
                end
         | 
| 6 57 | 
             
              end
         | 
| 7 | 
            -
            end
         | 
| 58 | 
            +
            end
         | 
| 59 | 
            +
             | 
| 60 | 
            +
            ActiveSupport.on_load(:action_view) do
         | 
| 61 | 
            +
              include PlataformaSocial::Helpers
         | 
| 62 | 
            +
            end
         | 
| 63 | 
            +
             | 
| 64 | 
            +
            class ActionController::Base
         | 
| 65 | 
            +
              include PlataformaSocial::Helpers
         | 
| 66 | 
            +
            end
         | 
| @@ -1,5 +1,6 @@ | |
| 1 1 | 
             
            require 'rsa'
         | 
| 2 2 | 
             
            require 'openssl'
         | 
| 3 | 
            +
            require 'httparty'
         | 
| 3 4 |  | 
| 4 5 | 
             
            module PlataformaSocial
         | 
| 5 6 | 
             
              class Request
         | 
| @@ -13,7 +14,7 @@ module PlataformaSocial | |
| 13 14 | 
             
                end
         | 
| 14 15 |  | 
| 15 16 | 
             
                def self.request url, params = {}, method = "get"
         | 
| 16 | 
            -
                  secret           = PlataformaSocial. | 
| 17 | 
            +
                  secret           = PlataformaSocial.secret
         | 
| 17 18 | 
             
                  platform_api_key = PlataformaSocial.api_key
         | 
| 18 19 | 
             
                  secret_key       = OpenSSL::PKey::RSA.new(File.read("#{Rails.root}/plataforma_social/keys/public.pem")).public_encrypt secret
         | 
| 19 20 | 
             
                  params_name      = method == 'get' ? :query : :body
         | 
| @@ -21,8 +22,8 @@ module PlataformaSocial | |
| 21 22 |  | 
| 22 23 | 
             
                  begin
         | 
| 23 24 | 
             
                    response = HTTParty.send(method.to_sym, url, params_name => params)
         | 
| 24 | 
            -
                  rescue
         | 
| 25 | 
            -
                    return  | 
| 25 | 
            +
                  rescue => e
         | 
| 26 | 
            +
                    return e.to_s
         | 
| 26 27 | 
             
                  end
         | 
| 27 28 |  | 
| 28 29 | 
             
                  return nil if response.nil?
         | 
    
        data/plataforma_social.gemspec
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,55 +1,97 @@ | |
| 1 | 
            -
            --- !ruby/object:Gem::Specification | 
| 1 | 
            +
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: plataforma_social
         | 
| 3 | 
            -
            version: !ruby/object:Gem::Version | 
| 4 | 
            -
               | 
| 3 | 
            +
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            +
              version: 0.0.4
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 | 
            -
              segments: 
         | 
| 7 | 
            -
              - 0
         | 
| 8 | 
            -
              - 0
         | 
| 9 | 
            -
              - 3
         | 
| 10 | 
            -
              version: 0.0.3
         | 
| 11 6 | 
             
            platform: ruby
         | 
| 12 | 
            -
            authors: | 
| 7 | 
            +
            authors:
         | 
| 13 8 | 
             
            - Marcos Nogueira
         | 
| 14 9 | 
             
            autorequire: 
         | 
| 15 10 | 
             
            bindir: bin
         | 
| 16 11 | 
             
            cert_chain: []
         | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 12 | 
            +
            date: 2013-02-04 00:00:00.000000000 Z
         | 
| 13 | 
            +
            dependencies:
         | 
| 14 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 15 | 
            +
              name: capistrano
         | 
| 16 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 17 | 
            +
                none: false
         | 
| 18 | 
            +
                requirements:
         | 
| 19 | 
            +
                - - ~>
         | 
| 20 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 21 | 
            +
                    version: 2.11.2
         | 
| 22 | 
            +
              type: :runtime
         | 
| 23 | 
            +
              prerelease: false
         | 
| 24 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 25 | 
            +
                none: false
         | 
| 26 | 
            +
                requirements:
         | 
| 27 | 
            +
                - - ~>
         | 
| 28 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 29 | 
            +
                    version: 2.11.2
         | 
| 30 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 21 31 | 
             
              name: rsa
         | 
| 32 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 33 | 
            +
                none: false
         | 
| 34 | 
            +
                requirements:
         | 
| 35 | 
            +
                - - ~>
         | 
| 36 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 37 | 
            +
                    version: 0.1.4
         | 
| 38 | 
            +
              type: :runtime
         | 
| 22 39 | 
             
              prerelease: false
         | 
| 23 | 
            -
               | 
| 40 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 24 41 | 
             
                none: false
         | 
| 25 | 
            -
                requirements: | 
| 42 | 
            +
                requirements:
         | 
| 26 43 | 
             
                - - ~>
         | 
| 27 | 
            -
                  - !ruby/object:Gem::Version | 
| 28 | 
            -
                    hash: 19
         | 
| 29 | 
            -
                    segments: 
         | 
| 30 | 
            -
                    - 0
         | 
| 31 | 
            -
                    - 1
         | 
| 32 | 
            -
                    - 4
         | 
| 44 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 45 | 
             
                    version: 0.1.4
         | 
| 46 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 47 | 
            +
              name: koala
         | 
| 48 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 49 | 
            +
                none: false
         | 
| 50 | 
            +
                requirements:
         | 
| 51 | 
            +
                - - ~>
         | 
| 52 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 53 | 
            +
                    version: 1.6.0
         | 
| 54 | 
            +
              type: :runtime
         | 
| 55 | 
            +
              prerelease: false
         | 
| 56 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 57 | 
            +
                none: false
         | 
| 58 | 
            +
                requirements:
         | 
| 59 | 
            +
                - - ~>
         | 
| 60 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            +
                    version: 1.6.0
         | 
| 62 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 63 | 
            +
              name: httparty
         | 
| 64 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 65 | 
            +
                none: false
         | 
| 66 | 
            +
                requirements:
         | 
| 67 | 
            +
                - - ~>
         | 
| 68 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 69 | 
            +
                    version: 0.10.0
         | 
| 34 70 | 
             
              type: :runtime
         | 
| 35 | 
            -
               | 
| 71 | 
            +
              prerelease: false
         | 
| 72 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 73 | 
            +
                none: false
         | 
| 74 | 
            +
                requirements:
         | 
| 75 | 
            +
                - - ~>
         | 
| 76 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 77 | 
            +
                    version: 0.10.0
         | 
| 36 78 | 
             
            description: Plataforma Social's integration gem
         | 
| 37 | 
            -
            email: | 
| 79 | 
            +
            email:
         | 
| 38 80 | 
             
            - marcos.nogueira@dito.com.br
         | 
| 39 81 | 
             
            executables: []
         | 
| 40 | 
            -
             | 
| 41 82 | 
             
            extensions: []
         | 
| 42 | 
            -
             | 
| 43 83 | 
             
            extra_rdoc_files: []
         | 
| 44 | 
            -
             | 
| 45 | 
            -
            files: 
         | 
| 84 | 
            +
            files:
         | 
| 46 85 | 
             
            - .gitignore
         | 
| 86 | 
            +
            - Capfile
         | 
| 47 87 | 
             
            - Gemfile
         | 
| 48 88 | 
             
            - LICENSE.txt
         | 
| 49 89 | 
             
            - README.md
         | 
| 50 90 | 
             
            - Rakefile
         | 
| 91 | 
            +
            - config/deploy.rb
         | 
| 51 92 | 
             
            - lib/plataforma_social.rb
         | 
| 52 93 | 
             
            - lib/plataforma_social/configuration.rb
         | 
| 94 | 
            +
            - lib/plataforma_social/domains.rb
         | 
| 53 95 | 
             
            - lib/plataforma_social/facebook.rb
         | 
| 54 96 | 
             
            - lib/plataforma_social/helpers.rb
         | 
| 55 97 | 
             
            - lib/plataforma_social/request.rb
         | 
| @@ -57,36 +99,26 @@ files: | |
| 57 99 | 
             
            - plataforma_social.gemspec
         | 
| 58 100 | 
             
            homepage: http://www.dito.com.br/
         | 
| 59 101 | 
             
            licenses: []
         | 
| 60 | 
            -
             | 
| 61 102 | 
             
            post_install_message: 
         | 
| 62 103 | 
             
            rdoc_options: []
         | 
| 63 | 
            -
             | 
| 64 | 
            -
            require_paths: 
         | 
| 104 | 
            +
            require_paths:
         | 
| 65 105 | 
             
            - lib
         | 
| 66 | 
            -
            required_ruby_version: !ruby/object:Gem::Requirement | 
| 106 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 67 107 | 
             
              none: false
         | 
| 68 | 
            -
              requirements: | 
| 69 | 
            -
              - -  | 
| 70 | 
            -
                - !ruby/object:Gem::Version | 
| 71 | 
            -
                   | 
| 72 | 
            -
             | 
| 73 | 
            -
                  - 0
         | 
| 74 | 
            -
                  version: "0"
         | 
| 75 | 
            -
            required_rubygems_version: !ruby/object:Gem::Requirement 
         | 
| 108 | 
            +
              requirements:
         | 
| 109 | 
            +
              - - ! '>='
         | 
| 110 | 
            +
                - !ruby/object:Gem::Version
         | 
| 111 | 
            +
                  version: '0'
         | 
| 112 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 76 113 | 
             
              none: false
         | 
| 77 | 
            -
              requirements: | 
| 78 | 
            -
              - -  | 
| 79 | 
            -
                - !ruby/object:Gem::Version | 
| 80 | 
            -
                   | 
| 81 | 
            -
                  segments: 
         | 
| 82 | 
            -
                  - 0
         | 
| 83 | 
            -
                  version: "0"
         | 
| 114 | 
            +
              requirements:
         | 
| 115 | 
            +
              - - ! '>='
         | 
| 116 | 
            +
                - !ruby/object:Gem::Version
         | 
| 117 | 
            +
                  version: '0'
         | 
| 84 118 | 
             
            requirements: []
         | 
| 85 | 
            -
             | 
| 86 119 | 
             
            rubyforge_project: 
         | 
| 87 | 
            -
            rubygems_version: 1.8. | 
| 120 | 
            +
            rubygems_version: 1.8.24
         | 
| 88 121 | 
             
            signing_key: 
         | 
| 89 122 | 
             
            specification_version: 3
         | 
| 90 123 | 
             
            summary: Plataforma Social's integration gem
         | 
| 91 124 | 
             
            test_files: []
         | 
| 92 | 
            -
             |