Sha256: 449b43ca1373657523aaaf4bb4fa20f33f4ebe76bd3ca4bf9f44a6dd395da5cd

Contents?: true

Size: 761 Bytes

Versions: 2

Compression:

Stored size: 761 Bytes

Contents

module Rosetta
  class LocalesController < ApplicationController
    before_action :ensure_default_locale_exists, only: :index

    def index
      @locales = Locale.order(default: :desc)
    end

    def new
      @locale = Locale.new
    end

    def create
      @locale = Locale.new(locale_params)

      if @locale.save
        redirect_to locales_path
      else
        render turbo_stream: turbo_stream.update(
          :dialog_content,
          partial: "form",
          locals: { locale: @locale }
        )
      end
    end

    private

    def ensure_default_locale_exists
      redirect_to new_default_locale_path unless Locale.default_locale
    end

    def locale_params
      params.require(:locale).permit(:name, :code)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rosetta-rails-0.2.1 app/controllers/rosetta/locales_controller.rb
rosetta-rails-0.2.0 app/controllers/rosetta/locales_controller.rb