Sha256: 8c15e21afc11848e2c99838ffde7958f53ae1c1939436e592a6f985e35d8fcb7

Contents?: true

Size: 1.28 KB

Versions: 9

Compression:

Stored size: 1.28 KB

Contents

# frozen_string_literal: true

module Decidim
  module Conferences
    class MediaController < Decidim::Conferences::ApplicationController
      include ParticipatorySpaceContext
      helper Decidim::Conferences::MediaAttachmentsHelper
      helper Decidim::SanitizeHelper

      participatory_space_layout only: :index

      helper_method :collection, :conference

      def index
        raise ActionController::RoutingError, "No media_links for this conference " if media_links.empty? && current_participatory_space.attachments.empty?
        enforce_permission_to :list, :media_links
        redirect_to decidim_conferences.conference_path(current_participatory_space) unless current_user_can_visit_space?
      end

      private

      def media_links
        @media_links ||= current_participatory_space.media_links
      end

      alias collection media_links

      def current_participatory_space
        return unless params[:conference_slug]

        @current_participatory_space ||= OrganizationConferences.new(current_organization).query.where(slug: params[:conference_slug]).or(
          OrganizationConferences.new(current_organization).query.where(id: params[:conference_slug])
        ).first!
      end

      def conference
        current_participatory_space
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
decidim-conferences-0.18.1 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.17.2 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.18.0 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.17.1 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.16.1 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.17.0 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.16.0 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.15.2 app/controllers/decidim/conferences/media_controller.rb
decidim-conferences-0.15.1 app/controllers/decidim/conferences/media_controller.rb