Sha256: 9bb38f9308912b4cdab0090107993d25e01a5611741d68d5bcec2df02d41bc64

Contents?: true

Size: 810 Bytes

Versions: 7

Compression:

Stored size: 810 Bytes

Contents

module Metrika
  module Helpers
    module Authorization
      attr_reader :token

      DEFAULT_OAUTH_OPTIONS = {
        :site => 'http://api-metrika.yandex.ru',
        :authorize_url => 'https://oauth.yandex.ru/authorize',
        :token_url => 'https://oauth.yandex.ru/token'        
      }      
        
      def authorize_token(authorization_code)
        @token = (self.client.auth_code.get_token(authorization_code) rescue nil)
      end

      def authorization_url
        self.client.auth_code.authorize_url
      end

      def restore_token(token_code)
        @token = OAuth2::AccessToken.new(self.client, token_code)
      end

    protected

      def client
        @client ||= OAuth2::Client.new(@application_id, @application_password, DEFAULT_OAUTH_OPTIONS)
      end  
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
metrika-0.1.1 lib/metrika/helpers/authorization.rb
metrika-0.1.0 lib/metrika/helpers/authorization.rb
metrika-0.0.5 lib/metrika/helpers/authorization.rb
metrika-0.0.4 lib/metrika/helpers/authorization.rb
metrika-0.0.3 lib/metrika/helpers/authorization.rb
metrika-0.0.2 lib/metrika/helpers/authorization.rb
metrika-0.0.1 lib/metrika/helpers/authorization.rb