Sha256: 7a7954e3e87cb8802a0dab234354bcef03b9672f97e60b759fa52fe3fa9e5b0f
Contents?: true
Size: 1.4 KB
Versions: 19
Compression:
Stored size: 1.4 KB
Contents
# frozen_string_literal: true module Decidim module Initiatives # Controller in charge of managing committee membership class CommitteeRequestsController < Decidim::Initiatives::ApplicationController include Decidim::Initiatives::NeedsInitiative helper InitiativeHelper helper Decidim::ActionAuthorizationHelper layout "layouts/decidim/application" # GET /initiatives/:initiative_id/committee_requests/new def new enforce_permission_to :request_membership, :initiative, initiative: current_initiative end # GET /initiatives/:initiative_id/committee_requests/spawn def spawn enforce_permission_to :request_membership, :initiative, initiative: current_initiative form = Decidim::Initiatives::CommitteeMemberForm .from_params(initiative_id: current_initiative.id, user_id: current_user.id, state: "requested") SpawnCommitteeRequest.call(form, current_user) do on(:ok) do redirect_to initiatives_path, flash: { notice: I18n.t( "success", scope: %w(decidim initiatives committee_requests spawn) ) } end on(:invalid) do |request| redirect_to initiatives_path, flash: { error: request.errors.full_messages.to_sentence } end end end end end end
Version data entries
19 entries across 19 versions & 1 rubygems