Class: Admin::Translations::RestaurantsController
- Inherits:
-
BaseController
- Object
- ActionController::Base
- ApplicationController
- BaseController
- Admin::Translations::RestaurantsController
- Includes:
- ElasticAPM::SpanHelpers
- Defined in:
- app/controllers/admin/translations/restaurants_controller.rb
Constant Summary
Constants inherited from BaseController
BaseController::INTERNAL_SERVER_ERROR_MESSAGE
Instance Method Summary collapse
-
#export ⇒ Object
POST /admin/translations/restaurants/export.
Methods inherited from BaseController
#destroy_session, #identity_cache_memoization, #sign_in_page, #user_developer_session
Methods included from LogrageCustomLogger
Methods included from AdminHelper
#dynamic_pricings_formatter, #link_to_admin_reservations_path_by_id, #link_to_admin_restaurants_path_by_id, #link_to_log, #optional_locales, #optional_locales_with_labels, #staff_signed_in?
Methods included from UpdateLocaleConcern
Methods inherited from ApplicationController
#after_sign_in_path_for, #after_sign_out_path_for, #default_url_options, #identity_cache_memoization, #render_not_found, #routing_error, search_params_key=
Methods included from ControllerHelpers
#check_boolean_param, #get_banners, #inventory_params, #reservation_params
Instance Method Details
#export ⇒ Object
POST /admin/translations/restaurants/export
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'app/controllers/admin/translations/restaurants_controller.rb', line 17 def export target_locale = params.require(:target_locale).to_s.downcase unless MyLocaleManager.available_locales.map(&:to_s).include?(target_locale) && target_locale != 'en' return render json: { error: 'Invalid or unsupported target_locale (must be non-English supported locale).' }, status: :unprocessable_entity end if defined?(BUSINESS_LOGGER) BUSINESS_LOGGER.set_business_context({ controller: self.class.name, action: 'export' }) BUSINESS_LOGGER.info('translation_export_enqueue', { user_id: current_user.id, target_locale: target_locale }) end ::Translations::ExportRestaurantsTranslationWorker.perform_async(target_locale, current_user.id) render json: { status: 'queued', target_locale: target_locale } end |