improve achievement management and and views

This commit is contained in:
2021-08-24 20:53:32 +02:00
parent 39ebeea387
commit 2be44a89b8
18 changed files with 197 additions and 8 deletions

View File

@@ -25,7 +25,11 @@ class WowAchievementDetailWorker < WowSidekiqWorker
wow_achievement.prerequisite_achievement = WowAchievement.find_by(achievement_id: result.prerequisite_achievement.id) if result.prerequisite_achievement
wow_achievement.wow_achievement_category = WowAchievementCategory.find_by(category_id: result.category.id) if result.category
wow_achievement.wow_achievement_criterium = find_or_create_wow_achievement_criterium(result.criteria) if result.criteria
wow_achievement.icon = RBattlenet::Wow::AchievementMedia.find(result.media.id).assets[0].value if result.media
if result.media
icon = RBattlenet::Wow::AchievementMedia.find(result.media.id)
wow_achievement.icon = icon.assets.first.value if icon.assets.first
end
wow_achievement.save
end
@@ -34,8 +38,10 @@ class WowAchievementDetailWorker < WowSidekiqWorker
wow_achievement_criterium = WowAchievementCriterium.find_or_initialize_by(criterium_id: criteria.id)
wow_achievement_criterium.amount = criteria.amount
locales.each do |locale|
Mobility.with_locale(locale[0]) { wow_achievement_criterium.description = criteria.description[locale[1]] }
if criteria.description
locales.each do |locale|
Mobility.with_locale(locale[0]) { wow_achievement_criterium.description = criteria.description[locale[1]] }
end
end
if criteria.operator
@@ -51,9 +57,13 @@ class WowAchievementDetailWorker < WowSidekiqWorker
wow_child_achievement_criterium = WowAchievementCriterium.find_or_initialize_by(criterium_id: child_criterium.id)
wow_child_achievement_criterium.parent_criterium = wow_achievement_criterium
wow_child_achievement_criterium.amount = child_criterium.amount
locales.each do |locale|
Mobility.with_locale(locale[0]) { wow_child_achievement_criterium.description = child_criterium.description[locale[1]] }
if child_criterium.description
locales.each do |locale|
Mobility.with_locale(locale[0]) { wow_child_achievement_criterium.description = child_criterium.description[locale[1]] }
end
end
wow_child_achievement_criterium.save
end