effective_orders 6.5.2 → 6.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8cd209b4bfdd333ea96dfa7c850a3d136738b8bb355547707d389521dfad03c2
4
- data.tar.gz: 2df312bdfb0ecb45095f2dd7067f95f091e3fe0247cfdb44957de1b517eb52ef
3
+ metadata.gz: 71798da0cd20778fab3e106211f2e7b0ef691f38ba568e9161739b6016a54c18
4
+ data.tar.gz: 5261409794ba913635a2966cc6afc7086f4e31e3cc80aea214716270d65536fc
5
5
  SHA512:
6
- metadata.gz: f4d65e073900587f76a08122998cb06d84da8df4006226fb5fd6c272015c277e9440d8719a989b563d5795743fe4a23f0a06cc004d57ed5dd19f4547d544cb8b
7
- data.tar.gz: 630ce183e1a5691800eec6ad28fedb074fa6a17dcbb05ff85e8c1f671df5148cd075c09d02193b0ea93bbd77e026fa07af325694e69668e9c9441c87e8ec3ff4
6
+ metadata.gz: 9ed613f93dba098d010277e6bf8cd0eeeba6ef9e3f66d417e5010558c31f1132250e1ee83afe9b9f9a1b8356d60e0118a8178ddba4208e0b4927b9eabec8a955
7
+ data.tar.gz: c19f20987bfb6e0431eba2a0b5e45b70f824202c9a894223891a7f93d5bf16504271918a501153249bd54183aa3f0c04ff1e4b9126666aafcad9dafa7ed9118d
@@ -583,6 +583,12 @@ module Effective
583
583
  false
584
584
  end
585
585
 
586
+ # Called by effective_memberships to update prices from purchasable fees
587
+ # Not called internally
588
+ def update_purchasable_attributes
589
+ present_order_items.each { |oi| oi.update_purchasable_attributes }
590
+ end
591
+
586
592
  # Call this as a way to skip over non consequential orders
587
593
  # And mark some purchasables purchased
588
594
  # This is different than the Mark as Paid payment processor
@@ -37,7 +37,17 @@ module Effective
37
37
 
38
38
  # This method is called in a before_validation in order.assign_order_values()
39
39
  def assign_purchasable_attributes
40
- assign_attributes(name: purchasable.purchasable_name, price: purchasable.price, tax_exempt: purchasable.tax_exempt) if purchasable
40
+ return unless purchasable.present?
41
+
42
+ self.name ||= purchasable.purchasable_name
43
+ self.price ||= purchasable.price
44
+ self.tax_exempt = purchasable.tax_exempt if self.tax_exempt.nil?
45
+ end
46
+
47
+ def update_purchasable_attributes
48
+ if purchasable.present? && !marked_for_destruction?
49
+ assign_attributes(name: purchasable.purchasable_name, price: purchasable.price, tax_exempt: purchasable.tax_exempt)
50
+ end
41
51
  end
42
52
 
43
53
  def build_purchasable(atts = {})
@@ -48,7 +48,7 @@ class CreateEffectiveOrders < ActiveRecord::Migration[4.2]
48
48
 
49
49
  t.string :name
50
50
  t.integer :quantity
51
- t.integer :price, :default => 0
51
+ t.integer :price
52
52
  t.boolean :tax_exempt
53
53
 
54
54
  t.timestamps
@@ -1,3 +1,3 @@
1
1
  module EffectiveOrders
2
- VERSION = '6.5.2'.freeze
2
+ VERSION = '6.5.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_orders
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.5.2
4
+ version: 6.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect