Class: Decidim::Meetings::Admin::Invites

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

Overview

A class used to find the Invites by their status status.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(invites, query = nil, status = nil) ⇒ Invites

Initializes the class.

invites - the initial Invites relation that need to be filtered query - query to filter invites status - invite status to be used as a filter



22
23
24
25
26
# File 'app/queries/decidim/meetings/admin/invites.rb', line 22

def initialize(invites, query = nil, status = nil)
  @invites = invites
  @query = query
  @status = status
end

Class Method Details

.for(invites, query = nil, status = nil) ⇒ Object

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

invites - the initial Invites relation that needs to be filtered. query - query to filter invites status - invite status to be used as a filter



13
14
15
# File 'app/queries/decidim/meetings/admin/invites.rb', line 13

def self.for(invites, query = nil, status = nil)
  new(invites, query, status).query
end

Instance Method Details

#queryObject

List the invites by the different filters.



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

def query
  @invites = filter_by_search(@invites)
  @invites = filter_by_status(@invites)
  @invites
end