spree_core 2.4.3 → 2.4.4

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
  SHA1:
3
- metadata.gz: 830a074cf4aa461f6a0048f7b0578b50bec34123
4
- data.tar.gz: 89b65b78a3b6402475e921f6adfd77e0cbb1556c
3
+ metadata.gz: 76d8eb3d2479f484668fccc5c1795f1c62b7b67e
4
+ data.tar.gz: 4ce1d1792d8bb2ff623031b86240639d11ecf369
5
5
  SHA512:
6
- metadata.gz: 68771092861e282cbb550d6eadad20cbe20b30d79d26edeb213cffb2a4f34156a77526d60c82f6021b7358833375aa7d2c6b1e045ce371ad06bca4c6b7212c32
7
- data.tar.gz: a597449e89e72c2c27f60e3b3c92cc5edccfa43f8827441f5d2497ef5f6f2ab3c16745a4522f81facd00383d718d9ad243a624268e5a380b2e6f98ed01d785e2
6
+ metadata.gz: 4155e9f4bb960e904001621025b0416c414df65b516729927d39d94e7803e152bbe66ab565e22af23ecb19e2fc93eacaeb33f3f9d4a3e5d03633498795921254
7
+ data.tar.gz: 412392484d25315800fc78802ac24a82d2780ad2bd187fb649426bb0244091a16f5ffc0037ea96e070f8eedab43dbbacce4212416c4b5d262ac233c654c6a4a4
@@ -33,12 +33,10 @@ module Spree
33
33
  end
34
34
 
35
35
  variant = Spree::Variant.find(variant_id)
36
- if quantity > 0
37
- line_item = @order.contents.add(variant, quantity, options.merge(currency: currency))
38
- unless line_item.valid?
39
- errors.add(:base, line_item.errors.messages.values.join(" "))
40
- return false
41
- end
36
+ begin
37
+ @order.contents.add(variant, quantity, options.merge(currency: currency))
38
+ rescue ActiveRecord::RecordInvalid => e
39
+ errors.add(:base, e.record.errors.messages.values.join(" "))
42
40
  end
43
41
  end
44
42
  end
@@ -29,7 +29,7 @@ module Spree
29
29
  before_transition to: :canceled, do: :cancel_return_items
30
30
 
31
31
  event :cancel do
32
- transition to: :canceled, from: :authorized
32
+ transition to: :canceled, from: :authorized, if: lambda { |return_authorization| return_authorization.can_cancel_return_items? }
33
33
  end
34
34
 
35
35
  end
@@ -54,6 +54,10 @@ module Spree
54
54
  customer_returns.exists?
55
55
  end
56
56
 
57
+ def can_cancel_return_items?
58
+ return_items.any?(&:can_cancel?) || return_items.blank?
59
+ end
60
+
57
61
  private
58
62
 
59
63
  def must_have_shipped_units
@@ -70,7 +74,7 @@ module Spree
70
74
  end
71
75
 
72
76
  def cancel_return_items
73
- return_items.each(&:cancel!)
77
+ return_items.each { |item| item.cancel! if item.can_cancel? }
74
78
  end
75
79
 
76
80
  def generate_expedited_exchange_reimbursements
@@ -119,7 +119,7 @@ module Spree
119
119
  end
120
120
 
121
121
  def total
122
- pre_tax_amount + additional_tax_total
122
+ pre_tax_amount + included_tax_total + additional_tax_total
123
123
  end
124
124
 
125
125
  def display_total
@@ -5,7 +5,7 @@ module Spree
5
5
  validates :url, presence: true
6
6
  validates :mail_from_address, presence: true
7
7
 
8
- before_create :ensure_default_exists_and_is_unique
8
+ before_save :ensure_default_exists_and_is_unique
9
9
  before_destroy :validate_not_default
10
10
 
11
11
  scope :by_url, lambda { |url| where("url like ?", "%#{url}%") }
@@ -23,7 +23,7 @@ module Spree
23
23
 
24
24
  def ensure_default_exists_and_is_unique
25
25
  if default
26
- Store.update_all(default: false)
26
+ Store.where.not(id: id).update_all(default: false)
27
27
  elsif Store.where(default: true).count == 0
28
28
  self.default = true
29
29
  end
@@ -89,6 +89,10 @@ module Spree
89
89
  is_master? ? name : options_text
90
90
  end
91
91
 
92
+ def descriptive_name
93
+ is_master? ? name + ' - Master' : name + ' - ' + options_text
94
+ end
95
+
92
96
  # use deleted? rather than checking the attribute directly. this
93
97
  # allows extensions to override deleted? if they want to provide
94
98
  # their own definition.
@@ -1,5 +1,5 @@
1
1
  module Spree
2
2
  def self.version
3
- "2.4.3"
3
+ "2.4.4"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.3
4
+ version: 2.4.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Schofield
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-04 00:00:00.000000000 Z
11
+ date: 2015-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemerchant