Class: Biovision::Components::RegistrationComponent

Inherits:
BaseComponent
  • Object
show all
Defined in:
app/services/biovision/components/registration_component.rb

Overview

Handler for registration component

Constant Summary collapse

METRIC_NEW_USER =
'registration.new_user.hit'

Instance Attribute Summary

Attributes inherited from BaseComponent

#component, #name, #role, #slug, #user

Instance Method Summary collapse

Methods inherited from BaseComponent

#[], #[]=, #administrator?, allow?, #allow?, handler, handler_class, #initialize, #privilege?, privilege_names, #receive, #register_metric, #settings, #settings=, #update_privileges

Constructor Details

This class inherits a constructor from Biovision::Components::BaseComponent

Instance Method Details

#confirm_email?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'app/services/biovision/components/registration_component.rb', line 33

def confirm_email?
  @component.settings['confirm_email']
end

#email_as_login?Boolean

Returns:

  • (Boolean)


37
38
39
# File 'app/services/biovision/components/registration_component.rb', line 37

def email_as_login?
  @component.settings['email_as_login']
end

#handle(parameters, code) ⇒ Object

Parameters:

  • parameters (Hash)
  • code (Code)


11
12
13
14
15
16
17
18
19
# File 'app/services/biovision/components/registration_component.rb', line 11

def handle(parameters, code)
  @user = User.new(parameters)
   if email_as_login?
  @manager = CodeManager::Invitation.new(code)

  use_invites? ? use_code : persist_user

  @user
end

#invite_only?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'app/services/biovision/components/registration_component.rb', line 25

def invite_only?
  @component.settings['invite_only']
end

#open?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'app/services/biovision/components/registration_component.rb', line 21

def open?
  @component.settings['open']
end

#require_email?Boolean

Returns:

  • (Boolean)


41
42
43
# File 'app/services/biovision/components/registration_component.rb', line 41

def require_email?
  @component.settings['require_email'] || email_as_login?
end

#use_invites?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'app/services/biovision/components/registration_component.rb', line 29

def use_invites?
  @component.settings['use_invites'] || invite_only?
end

#use_parameters?Boolean

Returns:

  • (Boolean)


45
46
47
# File 'app/services/biovision/components/registration_component.rb', line 45

def use_parameters?
  false
end