Sha256: b1f6ce0aa6a0821c0311d29f3ff36db67da8feb5df4dd257341b1f831862ee45

Contents?: true

Size: 1.79 KB

Versions: 40

Compression:

Stored size: 1.79 KB

Contents

require 'rubygems'
require 'bundler/setup'

require 'openid/extensions/ax'

module RubyApp

  module Elements

    module Mobile

      module Documents

        module Authentication

          module OpenId
            require 'ruby_app'
            require 'ruby_app/elements/mobile/documents/authentication/open_id/email_authentication_document'

            class AxAuthenticationDocument < RubyApp::Elements::Mobile::Documents::Authentication::OpenId::EmailAuthenticationDocument

              template_path(:all, File.dirname(__FILE__))

              def initialize(identifier)
                super(identifier)
              end

              def process_request(request)
                ax_request = ::OpenID::AX::FetchRequest.new
                self.process_ax_request(ax_request)
                request.add_extension(ax_request)
              end

              def process_ax_request(ax_request)
                ax_request.add(::OpenID::AX::AttrInfo.new(RubyApp::Elements::Mobile::Documents::Authentication::OpenId::AxAuthenticationDocument.configuration.attributes.email, 'Email', true))
              end

              def create_identity_from_response(response)
                ax_response = ::OpenID::AX::FetchResponse.from_success_response(response)
                if ax_response
                  return self.create_identity_from_ax_response(ax_response)
                else
                  return super(response)
                end
              end

              def create_identity_from_ax_response(ax_response)
                return self.create_identity_from_email(ax_response.data[RubyApp::Elements::Mobile::Documents::Authentication::OpenId::AxAuthenticationDocument.configuration.attributes.email].first)
              end

            end

          end

        end

      end

    end

  end

end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
RubyApp-0.7.16 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.15 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.14 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.13 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.12 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.11 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.10 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.9 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.5 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.4 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.3 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.2 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.1 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.7.0 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.6.71 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.6.70 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.6.69 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.6.68 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.6.67 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb
RubyApp-0.6.66 lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb