Sha256: 71de06f2d58cd238d7a8358a858ba43f4e1479b435751fe1a49308478cee4ba0
Contents?: true
Size: 1.4 KB
Versions: 37
Compression:
Stored size: 1.4 KB
Contents
# frozen_string_literal: true require "active_support/concern" module Decidim module Accountability module Admin module Filterable extend ActiveSupport::Concern included do include Decidim::Admin::Filterable helper Decidim::Accountability::Admin::FilterableHelper private def base_query collection end def search_field_predicate :id_string_or_title_cont end def filters [ :scope_id_eq, :category_id_eq, :status_id_eq ] end def filters_with_values { scope_id_eq: scope_ids_hash(scopes.top_level), category_id_eq: category_ids_hash(categories.first_class), status_id_eq: status_ids_hash(statuses) } end # Can't user `super` here, because it does not belong to a superclass # but to a concern. def dynamically_translated_filters [:scope_id_eq, :category_id_eq, :status_id_eq] end def status_ids_hash(statuses) statuses.each_with_object({}) { |status, hash| hash[status.id] = status.id } end def translated_status_id_eq(id) translated_attribute(statuses.find_by(id: id).name) end end end end end end
Version data entries
37 entries across 37 versions & 1 rubygems