Class: RubyApp::Elements::Mobile::Documents::Authentication::OpenId::SRegAuthenticationDocument

Inherits:
EmailAuthenticationDocument show all
Defined in:
lib/ruby_app/elements/mobile/documents/authentication/open_id/s_reg_authentication_document.rb

Direct Known Subclasses

MyOpenIdAuthenticationDocument

Instance Attribute Summary

Attributes inherited from RubyApp::Elements::Mobile::Document

#links, #metadata, #pages, #scripts, #stylesheets

Attributes inherited from RubyApp::Element

#attributes

Instance Method Summary collapse

Methods inherited from EmailAuthenticationDocument

#create_identity_from_email

Methods inherited from AuthenticationDocument

#process_response

Methods inherited from RubyApp::Elements::Mobile::Document

#hide, #page, #show

Methods inherited from RubyApp::Element

#element_id, get_element

Methods included from Mixins::ConfigurationMixin

#configuration

Methods included from Mixins::TranslateMixin

#localize, #translate

Methods included from Mixins::TemplateMixin

#exclude_parent_template, #exclude_parent_template?, #get_cache, #get_default_template, #get_template, #get_template_name, #get_templates, #template_path

Methods included from Mixins::RenderMixin

#content_for, #get_cache, #get_default_template, #get_templates, #render

Constructor Details

#initialize(identifier) ⇒ SRegAuthenticationDocument

Returns a new instance of SRegAuthenticationDocument.



24
25
26
# File 'lib/ruby_app/elements/mobile/documents/authentication/open_id/s_reg_authentication_document.rb', line 24

def initialize(identifier)
  super(identifier)
end

Instance Method Details

#create_identity_from_response(response) ⇒ Object



34
35
36
37
38
39
40
41
# File 'lib/ruby_app/elements/mobile/documents/authentication/open_id/s_reg_authentication_document.rb', line 34

def create_identity_from_response(response)
  sreg_response = ::OpenID::SReg::Response.from_success_response(response)
  unless sreg_response.empty?
    return self.create_identity_from_email(sreg_response.data['email'])
  else
    return super(response)
  end
end

#process_request(request) ⇒ Object



28
29
30
31
32
# File 'lib/ruby_app/elements/mobile/documents/authentication/open_id/s_reg_authentication_document.rb', line 28

def process_request(request)
  sreg_request = ::OpenID::SReg::Request.new
  sreg_request.request_fields(['email'], true)
  request.add_extension(sreg_request)
end