Sha256: da753f9ae289cfe9edcffed8e6e02b7a7d15d47401849e276bba5efd5a112320
Contents?: true
Size: 785 Bytes
Versions: 1
Compression:
Stored size: 785 Bytes
Contents
# frozen_string_literal: true module Decidim module ParticipatoryProcesses # Service that encapsulates all logic related to filtering participatory processes. class ParticipatoryProcessSearch < ParticipatorySpaceSearch def initialize(options = {}) super(ParticipatoryProcess.all, options) end def search_date case date when "active" query.active.order(start_date: :desc) when "past" query.past.order(end_date: :desc) when "upcoming" query.upcoming.order(start_date: :asc) else # Assume 'all' current_zone = Time.zone.name query.order(Arel.sql("ABS(start_date - (CURRENT_DATE at time zone '#{current_zone}')::date)")) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
decidim-participatory_processes-0.18.0 | app/services/decidim/participatory_processes/participatory_process_search.rb |