Sha256: eb7c278e693a64ba8a67f4766ed734b7e304b96a53ac9028e38aa43ee9ab03f9

Contents?: true

Size: 1.21 KB

Versions: 5

Compression:

Stored size: 1.21 KB

Contents

# frozen_string_literal: true

module Decidim
  module ParticipatoryProcesses
    module ContentBlocks
      class HighlightedProcessesCell < Decidim::ViewModel
        include Decidim::SanitizeHelper

        delegate :current_organization, to: :controller
        delegate :current_user, to: :controller

        def show
          if single_process?
            render "single_process"
          elsif highlighted_processes.any?
            render
          end
        end

        def single_process?
          highlighted_processes.to_a.length == 1
        end

        def max_results
          model.settings.max_results
        end

        def highlighted_processes
          @highlighted_processes ||= (
            OrganizationPublishedParticipatoryProcesses.new(current_organization, current_user) |
            HighlightedParticipatoryProcesses.new |
            FilteredParticipatoryProcesses.new("active")
          ).query.limit(max_results)
        end

        def i18n_scope
          "decidim.participatory_processes.pages.home.highlighted_processes"
        end

        def decidim_participatory_processes
          Decidim::ParticipatoryProcesses::Engine.routes.url_helpers
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
decidim-participatory_processes-0.16.1 app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb
decidim-participatory_processes-0.16.0 app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb
decidim-participatory_processes-0.15.2 app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb
decidim-participatory_processes-0.15.1 app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb
decidim-participatory_processes-0.15.0 app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb