Sha256: a9cbc120b1c228fba7fd9bd95ce6fe7ba070975bb21d85b3c745d9eb2afd0d3e
Contents?: true
Size: 1.96 KB
Versions: 2
Compression:
Stored size: 1.96 KB
Contents
# frozen_string_literal: true module Decidim module Admin # This controller allows admins to manage moderations in a participatory process. class ModerationsController < Admin::ApplicationController include Concerns::ParticipatoryProcessAdmin helper_method :moderations def index authorize! :read, Decidim::Moderation end def unreport authorize! :unreport, reportable Admin::UnreportResource.call(reportable) do on(:ok) do flash[:notice] = I18n.t("reportable.unreport.success", scope: "decidim.moderations.admin") redirect_to decidim_admin.participatory_process_moderations_path end on(:invalid) do flash.now[:alert] = I18n.t("reportable.unreport.invalid", scope: "decidim.moderations.admin") redirect_to decidim_admin.participatory_process_moderations_path end end end def hide authorize! :hide, reportable Admin::HideResource.call(reportable) do on(:ok) do flash[:notice] = I18n.t("reportable.hide.success", scope: "decidim.moderations.admin") redirect_to decidim_admin.participatory_process_moderations_path end on(:invalid) do flash.now[:alert] = I18n.t("reportable.hide.invalid", scope: "decidim.moderations.admin") redirect_to decidim_admin.participatory_process_moderations_path end end end private def moderations @moderations ||= begin moderations = Decidim::Moderation.where(participatory_process: participatory_process) if params[:hidden] moderations.where.not(hidden_at: nil) else moderations.where(hidden_at: nil) end end end def reportable @reportable ||= Decidim::Moderation.where(participatory_process: participatory_process).find(params[:id]).reportable end end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
decidim-admin-0.1.0 | app/controllers/decidim/admin/moderations_controller.rb |
decidim-0.1.0 | decidim-admin/app/controllers/decidim/admin/moderations_controller.rb |