From c79d2717cc85b0a7ed6c40373efa9e3d069563ea Mon Sep 17 00:00:00 2001 From: Justin Edmund Date: Thu, 24 Aug 2023 20:41:31 -0700 Subject: [PATCH] Hotfix 20230821 (#127) * Fix favorites page by fixing how query is built * Set uncap level when GridSummon is created If you don't, then NULL entries get sent to the database from the bookmarklet. --- .../api/v1/grid_summons_controller.rb | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/app/controllers/api/v1/grid_summons_controller.rb b/app/controllers/api/v1/grid_summons_controller.rb index d4a6416..882f221 100644 --- a/app/controllers/api/v1/grid_summons_controller.rb +++ b/app/controllers/api/v1/grid_summons_controller.rb @@ -14,6 +14,7 @@ module Api # Create the GridSummon with the desired parameters summon = GridSummon.new summon.attributes = summon_params.merge(party_id: party.id, summon_id: incoming_summon.id) + summon.uncap_level = max_uncap_level(summon) if summon.uncap_level.nil? if summon.validate save_summon(summon) @@ -32,15 +33,7 @@ module Api def update_uncap_level summon = @summon.summon - max_uncap_level = if summon.flb && !summon.ulb && !summon.xlb - 4 - elsif summon.ulb && !summon.xlb - 5 - elsif summon.xlb - 6 - else - 3 - end + max_uncap_level = max_uncap_level(summon) greater_than_max_uncap = summon_params[:uncap_level].to_i > max_uncap_level can_be_transcended = summon.xlb && summon_params[:transcendence_step] && summon_params[:transcendence_step]&.to_i&.positive? @@ -120,6 +113,19 @@ module Api private + def max_uncap_level(summon) + object = summon.summon + if object.flb && !object.ulb && !object.xlb + 4 + elsif object.ulb && !object.xlb + 5 + elsif object.xlb + 6 + else + 3 + end + end + def find_incoming_summon @incoming_summon = Summon.find_by(id: summon_params[:summon_id]) end