summaryrefslogtreecommitdiff
path: root/lib/super_good/solidus_taxjar.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/super_good/solidus_taxjar.rb')
-rw-r--r--lib/super_good/solidus_taxjar.rb24
1 files changed, 18 insertions, 6 deletions
diff --git a/lib/super_good/solidus_taxjar.rb b/lib/super_good/solidus_taxjar.rb
index 818947d..ba4ff48 100644
--- a/lib/super_good/solidus_taxjar.rb
+++ b/lib/super_good/solidus_taxjar.rb
@@ -11,21 +11,33 @@ require "super_good/solidus_taxjar/discount_calculator"
module SuperGood
module SolidusTaxJar
class << self
+ attr_accessor :cache_duration
+ attr_accessor :cache_key
attr_accessor :discount_calculator
- attr_accessor :test_mode
attr_accessor :exception_handler
- attr_accessor :taxable_address_check
- attr_accessor :shipping_tax_label_maker
attr_accessor :line_item_tax_label_maker
+ attr_accessor :shipping_tax_label_maker
+ attr_accessor :taxable_address_check
+ attr_accessor :test_mode
end
+ self.cache_duration = 3.hours
+ self.cache_key = ->(order) {
+ APIParams.order_params(order).transform_values do |value|
+ case value
+ when Array, Hash then value.hash
+ else
+ value
+ end
+ end
+ }
self.discount_calculator = ::SuperGood::SolidusTaxJar::DiscountCalculator
- self.test_mode = false
self.exception_handler = ->(e) {
Rails.logger.error "An error occurred while fetching TaxJar tax rates - #{e}: #{e.message}"
}
- self.taxable_address_check = ->(address) { true }
- self.shipping_tax_label_maker = ->(shipment, shipping_tax) { "Sales Tax" }
self.line_item_tax_label_maker = ->(taxjar_line_item, spree_line_item) { "Sales Tax" }
+ self.shipping_tax_label_maker = ->(shipment, shipping_tax) { "Sales Tax" }
+ self.taxable_address_check = ->(address) { true }
+ self.test_mode = false
end
end