Sha256: 63ad50e83f42390ab770feb502833d1930d7af6fc1a42495f1bf797b9acdbc60

Contents?: true

Size: 1.18 KB

Versions: 3

Compression:

Stored size: 1.18 KB

Contents

class Backend::SnippetsController < BackendController
  include Concerns::Backend::TranslatableController

  before_action :find_model, only: [:edit, :update]
  before_action -> { breadcrumb.add t('b.snippets'), backend_snippets_path }

  def index
    @snippets = ::Snippet.order(:description)
  end

  def new
    @form = Backend::SnippetForm.new
    # @model = ::Snippet.new
  end

  def create
    @form = Backend::SnippetForm.new

    if @form.save params[:snippet]
      redirect_to edit_translation_backend_snippet_path(@form.snippet, translation_locale: default_locale), notice: translate_notice(:added, :snippet)
    else
      render :new
    end
  end

  def edit
    @form = Backend::SnippetForm.new(@model)
  end

  def update
    @form = Backend::SnippetForm.new(@model)

    if @form.save params[:snippet]
      redirect_to edit_backend_snippet_path(@model), notice: translate_notice(:edited, :snippet)
    else
      render :edit
    end
  end

  private

  def find_model
    @model = ::Snippet.find params[:id]
  end

  def translation_form
    Backend::SnippetTranslationForm.new(
      snippet: @model,
      translation: @model.translation(params[:translation_locale])
    )
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
udongo-1.0.3 app/controllers/backend/snippets_controller.rb
udongo-1.0.2 app/controllers/backend/snippets_controller.rb
udongo-1.0.1 app/controllers/backend/snippets_controller.rb