Sha256: e99b9c2e8bdd629c88cdc2eb2445b45ee63518ca7cbb3b0b7a8390e37f54f79f

Contents?: true

Size: 776 Bytes

Versions: 25

Compression:

Stored size: 776 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module ParticipatoryProcesses
    # This query class filters participatory processes given a current_user.
    class VisibleParticipatoryProcessGroups < Decidim::Query
      def initialize(current_user)
        @current_user = current_user
      end

      def query
        processes = Decidim::ParticipatoryProcess.all

        if @current_user
          return groups if @current_user.admin?

          processes = processes.visible_for(@current_user.id)
        else
          processes = processes.public_spaces
        end

        groups.where(id: processes.pluck(:decidim_participatory_process_group_id))
      end

      def groups
        @groups ||= Decidim::ParticipatoryProcessGroup.all
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
decidim-participatory_processes-0.29.1 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.4 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.9 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.29.0 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.3 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.8 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.29.0.rc4 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.29.0.rc3 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.29.0.rc2 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.29.0.rc1 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.2 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.7 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.1 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.6 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.0 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.5 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.0.rc5 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.28.0.rc4 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.4 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb
decidim-participatory_processes-0.27.3 app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb