Sha256: bb7f5b0ebb8c6f14ef6864314efde4854bfd6613f91477d81725c3a4e1f2ce6b

Contents?: true

Size: 1.05 KB

Versions: 2

Compression:

Stored size: 1.05 KB

Contents

module Effective
  class ClassifiedSubmissionsController < ApplicationController
    before_action(:authenticate_user!) if defined?(Devise)

    include Effective::WizardController

    resource_scope -> { EffectiveClassifieds.ClassifiedSubmission.deep.where(owner: current_user) }

    # Allow only 1 in-progress application at a time
    before_action(only: [:new, :show], unless: -> { resource&.done? }) do
      existing = resource_scope.in_progress.where.not(id: resource).first

      if existing.present?
        flash[:success] = "You have been redirected to your existing in progress classified submission"
        redirect_to effective_classifieds.classified_submission_build_path(existing, existing.next_step)
      end
    end

    after_save do
      flash.now[:success] = ''
    end

    private

    def permitted_params
      model = (params.key?(:effective_classified_submission) ? :effective_classified_submission : :classified_submission)
      params.require(model).permit!.except(:status, :status_steps, :wizard_steps, :submitted_at)
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
effective_classifieds-0.0.3 app/controllers/effective/classified_submissions_controller.rb
effective_classifieds-0.0.2 app/controllers/effective/classified_submissions_controller.rb