Class: Decidim::Admin::UsersOfficialization

Inherits:
Rectify::Query
  • Object
show all
Defined in:
app/queries/decidim/admin/users_officialization.rb

Overview

A class used to filter User’s by their officialization state.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(organization, name_query = nil, state = nil) ⇒ UsersOfficialization

Initializes the class.

organization - the Decidim::Organization where search will be scoped to name_query - query to filter user group names state - officialization state to be used as a filter



21
22
23
24
25
# File 'app/queries/decidim/admin/users_officialization.rb', line 21

def initialize(organization, name_query = nil, state = nil)
  @organization = organization
  @name_query = name_query
  @state = state
end

Class Method Details

.for(organization, name_query = nil, state = nil) ⇒ Object

Syntactic sugar to initialize the class and return the queried objects.

organization - the Decidim::Organization where search will be scoped to name_query - query to filter user group names state - evaluation state to be used as a filter



12
13
14
# File 'app/queries/decidim/admin/users_officialization.rb', line 12

def self.for(organization, name_query = nil, state = nil)
  new(organization, name_query, state).query
end

Instance Method Details

#queryObject

List the User groups by the diferents filters.



28
29
30
31
32
33
# File 'app/queries/decidim/admin/users_officialization.rb', line 28

def query
  users = Decidim::User.where(organization: organization)
  users = filter_by_search(users)
  users = filter_by_state(users)
  users
end