Class: Decidim::UserGroup
- Inherits:
-
UserBaseEntity
- Object
- ActiveRecord::Base
- ApplicationRecord
- UserBaseEntity
- Decidim::UserGroup
- Includes:
- DataPortability, Traceable
- Defined in:
- app/models/decidim/user_group.rb
Overview
A UserGroup is an organization of citizens
Class Method Summary collapse
- .export_serializer ⇒ Object
- .log_presenter_class_for(_log) ⇒ Object
- .user_collection(user) ⇒ Object
- .with_document_number(organization, number) ⇒ Object
Instance Method Summary collapse
- #document_number ⇒ Object
-
#pending? ⇒ Boolean
Public: Checks if the user group is pending.
- #phone ⇒ Object
- #reject! ⇒ Object
-
#rejected? ⇒ Boolean
Public: Checks if the user group is rejected.
- #rejected_at ⇒ Object
-
#verified? ⇒ Boolean
Public: Checks if the user group is verified.
- #verified_at ⇒ Object
- #verify! ⇒ Object
Methods inherited from UserBaseEntity
Methods included from Followable
Class Method Details
.export_serializer ⇒ Object
61 62 63 |
# File 'app/models/decidim/user_group.rb', line 61 def self.export_serializer Decidim::DataPortabilitySerializers::DataPortabilityUserGroupSerializer end |
.log_presenter_class_for(_log) ⇒ Object
38 39 40 |
# File 'app/models/decidim/user_group.rb', line 38 def self.log_presenter_class_for(_log) Decidim::AdminLog::UserGroupPresenter end |
.user_collection(user) ⇒ Object
57 58 59 |
# File 'app/models/decidim/user_group.rb', line 57 def self.user_collection(user) user.user_groups end |
.with_document_number(organization, number) ⇒ Object
33 34 35 36 |
# File 'app/models/decidim/user_group.rb', line 33 def self.with_document_number(organization, number) where(decidim_organization_id: organization.id) .where("extended_data->>'document_number' = ?", number) end |
Instance Method Details
#document_number ⇒ Object
65 66 67 |
# File 'app/models/decidim/user_group.rb', line 65 def document_number extended_data["document_number"] end |
#pending? ⇒ Boolean
Public: Checks if the user group is pending.
53 54 55 |
# File 'app/models/decidim/user_group.rb', line 53 def pending? verified_at.blank? && rejected_at.blank? end |
#phone ⇒ Object
69 70 71 |
# File 'app/models/decidim/user_group.rb', line 69 def phone extended_data["phone"] end |
#reject! ⇒ Object
81 82 83 84 85 |
# File 'app/models/decidim/user_group.rb', line 81 def reject! extended_data["verified_at"] = nil extended_data["rejected_at"] = Time.current save! end |
#rejected? ⇒ Boolean
Public: Checks if the user group is rejected.
48 49 50 |
# File 'app/models/decidim/user_group.rb', line 48 def rejected? rejected_at.present? end |
#rejected_at ⇒ Object
73 74 75 |
# File 'app/models/decidim/user_group.rb', line 73 def rejected_at extended_data["rejected_at"] end |
#verified? ⇒ Boolean
Public: Checks if the user group is verified.
43 44 45 |
# File 'app/models/decidim/user_group.rb', line 43 def verified? verified_at.present? end |
#verified_at ⇒ Object
77 78 79 |
# File 'app/models/decidim/user_group.rb', line 77 def verified_at extended_data["verified_at"] end |
#verify! ⇒ Object
87 88 89 90 91 |
# File 'app/models/decidim/user_group.rb', line 87 def verify! extended_data["verified_at"] = Time.current extended_data["rejected_at"] = nil save! end |