Sha256: dd3931a00cfd21d6c204ab5b491266fada7ea8cb88b595dc0edc1572dcbcf72f

Contents?: true

Size: 1.53 KB

Versions: 3

Compression:

Stored size: 1.53 KB

Contents

# frozen_string_literal: true

module Decidim
  module DecidimAwesome
    module Admin
      # Global configuration controller
      class ProposalCustomFieldsController < DecidimAwesome::Admin::ConfigController
        def create
          CreateProposalCustomField.call(current_organization, config_var) do
            on(:ok) do |key|
              flash[:notice] = I18n.t("config.create_proposal_custom_field.success", key:, scope: "decidim.decidim_awesome.admin")
            end

            on(:invalid) do |message|
              flash[:alert] = I18n.t("config.create_proposal_custom_field.error", error: message, scope: "decidim.decidim_awesome.admin")
            end
          end

          redirect_to decidim_admin_decidim_awesome.config_path(config_var)
        end

        def destroy
          DestroyProposalCustomField.call(params[:key], current_organization, config_var) do
            on(:ok) do |key|
              flash[:notice] = I18n.t("config.destroy_proposal_custom_field.success", key:, scope: "decidim.decidim_awesome.admin")
            end

            on(:invalid) do |message|
              flash[:alert] = I18n.t("config.destroy_proposal_custom_field.error", error: message, scope: "decidim.decidim_awesome.admin")
            end
          end

          redirect_to decidim_admin_decidim_awesome.config_path(config_var)
        end

        private

        def config_var
          return :proposal_private_custom_fields if params[:private] == "true"

          :proposal_custom_fields
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
decidim-decidim_awesome-0.11.3 app/controllers/decidim/decidim_awesome/admin/proposal_custom_fields_controller.rb
decidim-decidim_awesome-0.11.2 app/controllers/decidim/decidim_awesome/admin/proposal_custom_fields_controller.rb
decidim-decidim_awesome-0.11.1 app/controllers/decidim/decidim_awesome/admin/proposal_custom_fields_controller.rb