Class: Restaurants::TranslateByAiWorker

Inherits:
ApplicationWorker show all
Defined in:
app/workers/restaurants/translate_by_ai_worker.rb

Instance Method Summary collapse

Methods inherited from ApplicationWorker

unlimited_retry

Instance Method Details

#perform(restaurant_id, source_language = 'en', target_languages = [], target_fields = [], only_blank_languages = false, only_blank_fields = false) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'app/workers/restaurants/translate_by_ai_worker.rb', line 5

def perform(restaurant_id, source_language = 'en', target_languages = [], target_fields = [], only_blank_languages = false, only_blank_fields = false)
  I18n.with_locale(:en) do
    restaurant = Restaurant.find(restaurant_id)

    # Legacy support: if no target_languages/fields provided, use old behavior
    if target_languages.blank? || target_fields.blank?
      legacy_translate_misc(restaurant)
      return
    end

    # New multi-field, multi-language translation with blank field support
    translate_multiple_fields(restaurant, source_language, target_languages, target_fields, only_blank_languages,
                              only_blank_fields)
  end
end