Class: Decidim::Elections::Censuses::InternalUsersForm

Inherits:
Form
  • Object
show all
Defined in:
app/forms/decidim/elections/censuses/internal_users_form.rb

Overview

This class presents data for logging into the system with census data.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#authorization_statusObject (readonly)

Returns the value of attribute authorization_status.



13
14
15
# File 'app/forms/decidim/elections/censuses/internal_users_form.rb', line 13

def authorization_status
  @authorization_status
end

Instance Method Details

#adaptersObject



19
20
21
# File 'app/forms/decidim/elections/censuses/internal_users_form.rb', line 19

def adapters
  @required_authorizations ||= Decidim::Verifications::Adapter.from_collection(authorization_handlers.keys)
end

#authorization_handlersObject



23
24
25
# File 'app/forms/decidim/elections/censuses/internal_users_form.rb', line 23

def authorization_handlers
  @authorization_handlers ||= election.census_settings&.fetch("authorization_handlers", {})&.slice(*organization.available_authorizations)
end

#authorizationsObject



27
28
29
30
31
32
33
34
35
36
37
38
# File 'app/forms/decidim/elections/censuses/internal_users_form.rb', line 27

def authorizations
  @authorizations ||= adapters.map do |adapter|
    [
      adapter,
      Decidim::Verifications::Authorizations.new(
        organization: organization,
        user: current_user,
        name: adapter.name
      ).first
    ]
  end
end

#in_census?Boolean

Returns:

  • (Boolean)


40
41
42
# File 'app/forms/decidim/elections/censuses/internal_users_form.rb', line 40

def in_census?
  voter_uid.present?
end

#voter_uidObject



15
16
17
# File 'app/forms/decidim/elections/censuses/internal_users_form.rb', line 15

def voter_uid
  @voter_uid ||= election.census.users(election).find_by(id: current_user&.id)&.to_global_id&.to_s
end