From 446a23ce3a166772c6beec57de201a50a59c3a1a Mon Sep 17 00:00:00 2001 From: Michael Bianco Date: Tue, 18 Sep 2012 17:07:19 -0400 Subject: [PATCH] Adding Spree::Order#reset_digital_links! to ease in handling customer support Hope to add this as a button to the admin soon. --- app/models/spree/order_decorator.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/models/spree/order_decorator.rb b/app/models/spree/order_decorator.rb index c7471f4..33c0ca6 100644 --- a/app/models/spree/order_decorator.rb +++ b/app/models/spree/order_decorator.rb @@ -10,9 +10,14 @@ Spree::Order.class_eval do false end - # UPGRADE_CHECK this works as of spree 1.2.0 - # check function for changes on upgrade + def reset_digital_links! + line_items.select(&:digital?).map(&:digital_links).flatten.each do |digital_link| + digital_link.update_column :access_counter, 0 + digital_link.update_column :created_at, Time.now + end + end + # UPGRADE_CHECK this works as of spree 1.2.0. check function for changes on upgrade def available_shipping_methods(display_on = nil) return [] unless ship_address all_methods = Spree::ShippingMethod.all_available(self, display_on)