Sha256: 0375fc3e7b7b7226a71850da39c91463bc8ac00e85425154a8e55a00435d3ed0

Contents?: true

Size: 1.35 KB

Versions: 3

Compression:

Stored size: 1.35 KB

Contents

# frozen_string_literal: true

module Decidim
  module ParticipatoryProcesses
    # This cell renders the Medium (:m) process group card
    # for an given instance of a ProcessGroup
    class ProcessGroupMCell < Decidim::CardMCell
      private

      def has_image?
        true
      end

      def resource_image_path
        model.hero_image.url
      end

      def title
        translated_attribute model.name
      end

      def resource_path
        Decidim::ParticipatoryProcesses::Engine.routes.url_helpers.participatory_process_group_path(model)
      end

      def step_title
        translated_attribute model.active_step.title
      end

      def card_classes
        ["card--process", "card--stack"].join(" ")
      end

      def statuses
        super << :processes_count
      end

      def processes_count_status
        content_tag(
          :strong,
          t("layouts.decidim.participatory_process_groups.participatory_process_group.processes_count")
        ) + " " + processes_visible_for_user
      end

      def processes_visible_for_user
        processes = model.participatory_processes.published

        if current_user
          return processes.count.to_s if current_user.admin
          processes.visible_for(current_user.id).count.to_s
        else
          processes.public_spaces.count.to_s
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
decidim-participatory_processes-0.17.2 app/cells/decidim/participatory_processes/process_group_m_cell.rb
decidim-participatory_processes-0.17.1 app/cells/decidim/participatory_processes/process_group_m_cell.rb
decidim-participatory_processes-0.17.0 app/cells/decidim/participatory_processes/process_group_m_cell.rb