From 75fdfb3c6a772f138cda2ec4ef8cd6f8fdef5cfa Mon Sep 17 00:00:00 2001 From: Kristina Lim Date: Tue, 28 May 2019 20:28:37 +0800 Subject: [PATCH] Remove some usage of guard clauses for OC update --- .../order_cycle_form_applicator.rb | 27 +++++++++---------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/lib/open_food_network/order_cycle_form_applicator.rb b/lib/open_food_network/order_cycle_form_applicator.rb index 96d80bb77e..2217f99ae5 100644 --- a/lib/open_food_network/order_cycle_form_applicator.rb +++ b/lib/open_food_network/order_cycle_form_applicator.rb @@ -79,26 +79,23 @@ module OpenFoodNetwork def update_exchange(sender_id, receiver_id, incoming, attrs = {}) exchange = @order_cycle.exchanges.where(sender_id: sender_id, receiver_id: receiver_id, incoming: incoming).first + return unless permission_for(exchange) + remove_unauthorized_exchange_attributes(exchange, attrs) + variant_ids = attrs.delete :variant_ids + exchange.update_attributes!(attrs) + ExchangeVariantBulkUpdater.new(exchange).update!(variant_ids) unless variant_ids.nil? - if permission_for exchange - variant_ids = attrs.delete :variant_ids - - exchange.update_attributes!(attrs) - - ExchangeVariantBulkUpdater.new(exchange).update!(variant_ids) unless variant_ids.nil? - - @touched_exchanges << exchange - end + @touched_exchanges << exchange end def remove_unauthorized_exchange_attributes(exchange, exchange_attrs) - unless manages_coordinator? || manager_for(exchange) - exchange_attrs.delete :enterprise_fee_ids - exchange_attrs.delete :pickup_time - exchange_attrs.delete :pickup_instructions - exchange_attrs.delete :tag_list - end + return if manages_coordinator? || manager_for(exchange) + + exchange_attrs.delete :enterprise_fee_ids + exchange_attrs.delete :pickup_time + exchange_attrs.delete :pickup_instructions + exchange_attrs.delete :tag_list end def destroy_untouched_exchanges