Sha256: 352795b61ac236c1dc960f36521e3e5a35bc0d41cdfd5ffb884007b0a784c10e
Contents?: true
Size: 1.49 KB
Versions: 3
Compression:
Stored size: 1.49 KB
Contents
# frozen_string_literal: true module Decidim module Assemblies # A controller that holds the logic to show Assemblies in a # public layout. class AssembliesController < Decidim::ApplicationController include ParticipatorySpaceContext participatory_space_layout only: :show helper Decidim::AttachmentsHelper helper Decidim::IconHelper helper Decidim::WidgetUrlsHelper helper Decidim::SanitizeHelper helper_method :collection, :promoted_assemblies, :assemblies, :stats def index redirect_to "/404" if published_assemblies.none? authorize! :read, Assembly end def show; end private def current_participatory_space return unless params[:slug] @current_participatory_space ||= OrganizationAssemblies.new(current_organization).query.where(slug: params[:slug]).or( OrganizationAssemblies.new(current_organization).query.where(id: params[:slug]) ).first! end def published_assemblies @published_assemblies ||= OrganizationPublishedAssemblies.new(current_organization) end def assemblies @assemblies ||= OrganizationPrioritizedAssemblies.new(current_organization) end alias collection assemblies def promoted_assemblies @promoted_assemblies ||= assemblies | PromotedAssemblies.new end def stats @stats ||= AssemblyStatsPresenter.new(assembly: current_participatory_space) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems