Class: Decidim::Cdtb::Multitenants::OrgByHostLike
- Defined in:
- lib/decidim/cdtb/multitenants/org_by_host_like.rb
Overview
Finds information about the Organization, or Organizations, searching by the :host_term argument ignorecase. Set :full (second param) to ‘true` for full information
Instance Attribute Summary
Attributes inherited from Task
Instance Method Summary collapse
- #do_execution(_ctx) ⇒ Object
-
#initialize(host_term, full_info) ⇒ OrgByHostLike
constructor
A new instance of OrgByHostLike.
- #prepare_execution(_ctx) ⇒ Object
Methods inherited from Task
Methods included from TasksUtils
#do_log_error, #do_log_info, #log_task_end, #log_task_failure, #log_task_info, #log_task_step, #log_task_title, #logger
Constructor Details
#initialize(host_term, full_info) ⇒ OrgByHostLike
Returns a new instance of OrgByHostLike.
10 11 12 13 14 |
# File 'lib/decidim/cdtb/multitenants/org_by_host_like.rb', line 10 def initialize(host_term, full_info) @host_term= host_term @show_full_info= full_info == "true" super("ORG BY HOST LIKE") end |
Instance Method Details
#do_execution(_ctx) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/decidim/cdtb/multitenants/org_by_host_like.rb', line 21 def do_execution(_ctx) @query.find_each do |org| log_task_step("Organization [#{org.id}] #{org.name}:") if show_full_info? show_full_info(org) else h= { host: org.host, time_zone: org.time_zone, locales: "#{org.default_locale} + [#{org.available_locales&.join(", ")}]", available_authorizations: org.&.join(", ") } do_log_info(h.to_yaml) end do_log_info("---------------------------------------------------------") end end |
#prepare_execution(_ctx) ⇒ Object
16 17 18 19 |
# File 'lib/decidim/cdtb/multitenants/org_by_host_like.rb', line 16 def prepare_execution(_ctx) @query = Decidim::Organization.where("host ilike ?", "%#{@host_term}%") log_task_info("Found #{@query.count} organizations") end |