27 lines
669 B
Ruby
27 lines
669 B
Ruby
# frozen_string_literal: true
|
|
|
|
class WowRealmDetailWorker < WowSidekiqWorker
|
|
def perform(realm_id)
|
|
return unless (realm = WowRealm.find_by(realm_id: realm_id))
|
|
|
|
RBattlenet.set_options(locale: 'all')
|
|
result = RBattlenet::Wow::Realm.find(realm_id)
|
|
|
|
return unless result.status_code == 200
|
|
|
|
realm.locale = result.locale
|
|
realm.timezone = result.timezone
|
|
realm.is_tournament = result.is_tournament
|
|
|
|
# Localisation data
|
|
locales.each do |locale|
|
|
Mobility.with_locale(locale[0]) do
|
|
realm.realm_type = result.type.name[locale[1]]
|
|
realm.category = result.category[locale[1]]
|
|
end
|
|
end
|
|
|
|
realm.save
|
|
end
|
|
end
|