otwarchive-symphonyarchive/app/controllers/locales_controller.rb

56 lines
1.2 KiB
Ruby
Raw Normal View History

2026-03-11 22:22:11 +00:00
class LocalesController < ApplicationController
def index
authorize Locale
@locales = Locale.default_order
end
def new
@locale = Locale.new
authorize @locale
@languages = Language.default_order
end
# GET /locales/en/edit
def edit
@locale = Locale.find_by(iso: params[:id])
authorize @locale
@languages = Language.default_order
end
def update
@locale = Locale.find_by(iso: params[:id])
@locale.attributes = locale_params
authorize @locale
if @locale.save
flash[:notice] = ts('Your locale was successfully updated.')
redirect_to action: 'index', status: 303
else
@languages = Language.default_order
render action: "edit"
end
end
def create
@locale = Locale.new(locale_params)
authorize @locale
if @locale.save
flash[:notice] = t('successfully_added', default: 'Locale was successfully added.')
redirect_to locales_path
else
@languages = Language.default_order
render action: "new"
end
end
private
def locale_params
params.require(:locale).permit(
:name, :iso, :language_id, :email_enabled, :interface_enabled
)
end
end