spree_core 2.4.3 → 2.4.4

Sign up to get free protection for your applications and to get access to all the features.
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