spree_core 2.3.1 → 2.3.2
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 +4 -4
- data/app/helpers/spree/base_helper.rb +3 -3
- data/app/models/spree/ability.rb +1 -0
- data/app/models/spree/app_configuration.rb +0 -1
- data/app/models/spree/base.rb +6 -0
- data/app/models/spree/calculator/flat_percent_item_total.rb +9 -3
- data/app/models/spree/calculator/flexi_rate.rb +1 -1
- data/app/models/spree/calculator/percent_on_line_item.rb +1 -1
- data/app/models/spree/calculator/tiered_flat_rate.rb +37 -0
- data/app/models/spree/calculator/tiered_percent.rb +44 -0
- data/app/models/spree/credit_card.rb +35 -14
- data/app/models/spree/inventory_unit.rb +1 -0
- data/app/models/spree/item_adjustments.rb +3 -2
- data/app/models/spree/line_item.rb +2 -2
- data/app/models/spree/order.rb +36 -20
- data/app/models/spree/order/checkout.rb +60 -24
- data/app/models/spree/order_contents.rb +3 -6
- data/app/models/spree/order_populator.rb +1 -1
- data/app/models/spree/order_updater.rb +19 -4
- data/app/models/spree/payment.rb +4 -0
- data/app/models/spree/payment/processing.rb +6 -2
- data/app/models/spree/price.rb +10 -0
- data/app/models/spree/product.rb +81 -54
- data/app/models/spree/promotion/actions/create_adjustment.rb +2 -11
- data/app/models/spree/promotion/actions/create_item_adjustments.rb +2 -19
- data/app/models/spree/promotion_handler/cart.rb +14 -2
- data/app/models/spree/promotion_handler/coupon.rb +8 -2
- data/app/models/spree/return_authorization.rb +2 -2
- data/app/models/spree/shipping_rate.rb +2 -2
- data/app/models/spree/stock/availability_validator.rb +3 -7
- data/app/models/spree/stock/estimator.rb +1 -1
- data/app/models/spree/stock/package.rb +1 -0
- data/app/models/spree/stock_item.rb +6 -1
- data/app/models/spree/stock_location.rb +4 -0
- data/app/models/spree/tax_rate.rb +15 -2
- data/app/models/spree/variant.rb +8 -3
- data/app/models/spree/zone.rb +2 -2
- data/config/locales/en.yml +33 -3
- data/db/default/spree/countries.rb +2 -1
- data/db/migrate/20130807024302_rename_adjustment_fields.rb +2 -5
- data/db/migrate/20140804185157_add_default_to_shipment_cost.rb +10 -0
- data/lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt +12 -4
- data/lib/generators/spree/install/install_generator.rb +8 -0
- data/lib/spree/core.rb +1 -0
- data/lib/spree/core/adjustment_source.rb +26 -0
- data/lib/spree/core/controller_helpers.rb +10 -9
- data/lib/spree/core/controller_helpers/order.rb +18 -5
- data/lib/spree/core/engine.rb +6 -2
- data/lib/spree/core/importer/order.rb +52 -9
- data/lib/spree/core/version.rb +1 -1
- data/lib/spree/permitted_attributes.rb +4 -4
- data/lib/spree/testing_support/authorization_helpers.rb +1 -1
- data/lib/spree/testing_support/factories/product_factory.rb +1 -1
- metadata +27 -37
data/lib/spree/core.rb
CHANGED
@@ -65,6 +65,7 @@ require 'spree/core/user_payment_source'
|
|
65
65
|
require 'spree/core/delegate_belongs_to'
|
66
66
|
require 'spree/core/permalinks'
|
67
67
|
require 'spree/core/calculated_adjustments'
|
68
|
+
require 'spree/core/adjustment_source'
|
68
69
|
require 'spree/core/product_duplicator'
|
69
70
|
require 'spree/core/controller_helpers'
|
70
71
|
require 'spree/core/controller_helpers/search'
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Spree
|
2
|
+
module Core
|
3
|
+
module AdjustmentSource
|
4
|
+
def self.included(klass)
|
5
|
+
klass.class_eval do
|
6
|
+
def deals_with_adjustments_for_deleted_source
|
7
|
+
adjustment_scope = self.adjustments.includes(:order).references(:spree_orders)
|
8
|
+
|
9
|
+
# For incomplete orders, remove the adjustment completely.
|
10
|
+
adjustment_scope.where("spree_orders.completed_at IS NULL").destroy_all
|
11
|
+
|
12
|
+
# For complete orders, the source will be invalid.
|
13
|
+
# Therefore we nullify the source_id, leaving the adjustment in place.
|
14
|
+
# This would mean that the order's total is not altered at all.
|
15
|
+
adjustment_scope.where("spree_orders.completed_at IS NOT NULL").each do |adjustment|
|
16
|
+
adjustment.update_columns(
|
17
|
+
source_id: nil,
|
18
|
+
updated_at: Time.now,
|
19
|
+
)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -1,18 +1,19 @@
|
|
1
|
-
require 'spree/core/controller_helpers/common'
|
2
1
|
require 'spree/core/controller_helpers/auth'
|
3
|
-
require 'spree/core/controller_helpers/
|
2
|
+
require 'spree/core/controller_helpers/common'
|
4
3
|
require 'spree/core/controller_helpers/order'
|
4
|
+
require 'spree/core/controller_helpers/respond_with'
|
5
|
+
require 'spree/core/controller_helpers/store'
|
5
6
|
|
6
7
|
module Spree
|
7
8
|
module Core
|
8
9
|
module ControllerHelpers
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
10
|
+
extend ActiveSupport::Concern
|
11
|
+
included do
|
12
|
+
include Spree::Core::ControllerHelpers::Auth
|
13
|
+
include Spree::Core::ControllerHelpers::Common
|
14
|
+
include Spree::Core::ControllerHelpers::Order
|
15
|
+
include Spree::Core::ControllerHelpers::RespondWith
|
16
|
+
include Spree::Core::ControllerHelpers::Store
|
16
17
|
end
|
17
18
|
end
|
18
19
|
end
|
@@ -14,7 +14,7 @@ module Spree
|
|
14
14
|
|
15
15
|
# Used in the link_to_cart helper.
|
16
16
|
def simple_current_order
|
17
|
-
@
|
17
|
+
@simple_current_order ||= Spree::Order.incomplete.find_by(current_order_params)
|
18
18
|
end
|
19
19
|
|
20
20
|
# The current incomplete order from the guest_token for use in cart and during checkout
|
@@ -25,10 +25,15 @@ module Spree
|
|
25
25
|
return @current_order if @current_order
|
26
26
|
|
27
27
|
# Find any incomplete orders for the guest_token
|
28
|
-
@current_order = Spree::Order.includes(:adjustments).lock(options[:lock]).find_by(
|
28
|
+
@current_order = Spree::Order.incomplete.includes(:adjustments).lock(options[:lock]).find_by(current_order_params)
|
29
|
+
|
30
|
+
# Find any incomplete orders for the current user
|
31
|
+
if @current_order.nil? && try_spree_current_user
|
32
|
+
@current_order = Spree::Order.incomplete.order('id DESC').where({ currency: current_currency, user_id: try_spree_current_user.try(:id)}).first
|
33
|
+
end
|
29
34
|
|
30
35
|
if options[:create_order_if_necessary] and (@current_order.nil? or @current_order.completed?)
|
31
|
-
@current_order = Spree::Order.new(
|
36
|
+
@current_order = Spree::Order.new(current_order_params)
|
32
37
|
@current_order.user ||= try_spree_current_user
|
33
38
|
# See issue #3346 for reasons why this line is here
|
34
39
|
@current_order.created_by ||= try_spree_current_user
|
@@ -50,8 +55,7 @@ module Spree
|
|
50
55
|
|
51
56
|
def set_current_order
|
52
57
|
if user = try_spree_current_user
|
53
|
-
|
54
|
-
if last_incomplete_order
|
58
|
+
if cookies.signed[:guest_token].nil? && last_incomplete_order
|
55
59
|
cookies.permanent.signed[:guest_token] = last_incomplete_order.guest_token
|
56
60
|
elsif current_order && last_incomplete_order && current_order != last_incomplete_order
|
57
61
|
current_order.merge!(last_incomplete_order, user)
|
@@ -66,6 +70,15 @@ module Spree
|
|
66
70
|
def ip_address
|
67
71
|
request.remote_ip
|
68
72
|
end
|
73
|
+
|
74
|
+
private
|
75
|
+
def last_incomplete_order
|
76
|
+
@last_incomplete_order ||= try_spree_current_user.last_incomplete_spree_order
|
77
|
+
end
|
78
|
+
|
79
|
+
def current_order_params
|
80
|
+
{ currency: current_currency, guest_token: cookies.signed[:guest_token], user_id: try_spree_current_user.try(:id) }
|
81
|
+
end
|
69
82
|
end
|
70
83
|
end
|
71
84
|
end
|
data/lib/spree/core/engine.rb
CHANGED
@@ -48,12 +48,16 @@ module Spree
|
|
48
48
|
app.config.spree.calculators.promotion_actions_create_adjustments = [
|
49
49
|
Spree::Calculator::FlatPercentItemTotal,
|
50
50
|
Spree::Calculator::FlatRate,
|
51
|
-
Spree::Calculator::FlexiRate
|
51
|
+
Spree::Calculator::FlexiRate,
|
52
|
+
Spree::Calculator::TieredPercent,
|
53
|
+
Spree::Calculator::TieredFlatRate
|
52
54
|
]
|
53
55
|
|
54
56
|
app.config.spree.calculators.add_class('promotion_actions_create_item_adjustments')
|
55
57
|
app.config.spree.calculators.promotion_actions_create_item_adjustments = [
|
56
|
-
Spree::Calculator::PercentOnLineItem
|
58
|
+
Spree::Calculator::PercentOnLineItem,
|
59
|
+
Spree::Calculator::FlatRate,
|
60
|
+
Spree::Calculator::FlexiRate
|
57
61
|
]
|
58
62
|
end
|
59
63
|
|
@@ -13,20 +13,22 @@ module Spree
|
|
13
13
|
order = Spree::Order.create!
|
14
14
|
order.associate_user!(user)
|
15
15
|
|
16
|
-
create_shipments_from_params(params.delete(:shipments_attributes), order)
|
17
16
|
create_line_items_from_params(params.delete(:line_items_attributes),order)
|
17
|
+
create_shipments_from_params(params.delete(:shipments_attributes), order)
|
18
18
|
create_adjustments_from_params(params.delete(:adjustments_attributes), order)
|
19
19
|
create_payments_from_params(params.delete(:payments_attributes), order)
|
20
20
|
|
21
|
-
if
|
21
|
+
if completed_at = params.delete(:completed_at)
|
22
22
|
order.completed_at = completed_at
|
23
23
|
order.state = 'complete'
|
24
24
|
end
|
25
25
|
|
26
|
+
params.delete(:user_id) unless user.try(:has_spree_role?, "admin") && params.key?(:user_id)
|
27
|
+
|
26
28
|
order.update_attributes!(params)
|
27
|
-
|
28
|
-
order
|
29
|
-
order.
|
29
|
+
|
30
|
+
# Really ensure that the order totals & states are correct
|
31
|
+
order.updater.update
|
30
32
|
order.reload
|
31
33
|
rescue Exception => e
|
32
34
|
order.destroy if order && order.persisted?
|
@@ -36,10 +38,12 @@ module Spree
|
|
36
38
|
|
37
39
|
def self.create_shipments_from_params(shipments_hash, order)
|
38
40
|
return [] unless shipments_hash
|
41
|
+
|
42
|
+
line_items = order.line_items
|
39
43
|
shipments_hash.each do |s|
|
40
44
|
begin
|
41
45
|
shipment = order.shipments.build
|
42
|
-
shipment.tracking
|
46
|
+
shipment.tracking = s[:tracking]
|
43
47
|
shipment.stock_location = Spree::StockLocation.find_by_name!(s[:stock_location])
|
44
48
|
|
45
49
|
inventory_units = s[:inventory_units] || []
|
@@ -48,15 +52,33 @@ module Spree
|
|
48
52
|
|
49
53
|
unit = shipment.inventory_units.build
|
50
54
|
unit.order = order
|
55
|
+
|
56
|
+
# Spree expects a Inventory Unit to always reference a line
|
57
|
+
# item and variant otherwise users might get exceptions when
|
58
|
+
# trying to view these units. Note the Importer might not be
|
59
|
+
# able to find the line item if line_item.variant_id |= iu.variant_id
|
51
60
|
unit.variant_id = iu[:variant_id]
|
61
|
+
unit.line_item_id = line_items.select do |l|
|
62
|
+
l.variant_id.to_i == iu[:variant_id].to_i
|
63
|
+
end.first.try(:id)
|
64
|
+
end
|
65
|
+
|
66
|
+
# Mark shipped if it should be.
|
67
|
+
if s[:shipped_at].present?
|
68
|
+
shipment.shipped_at = s[:shipped_at]
|
69
|
+
shipment.state = 'shipped'
|
70
|
+
shipment.inventory_units.each do |unit|
|
71
|
+
unit.state = 'shipped'
|
72
|
+
end
|
52
73
|
end
|
53
74
|
|
54
75
|
shipment.save!
|
55
76
|
|
56
|
-
shipping_method = Spree::ShippingMethod.find_by_name!(s[:shipping_method])
|
77
|
+
shipping_method = Spree::ShippingMethod.find_by_name(s[:shipping_method]) || Spree::ShippingMethod.find_by_admin_name!(s[:shipping_method])
|
57
78
|
rate = shipment.shipping_rates.create!(:shipping_method => shipping_method,
|
58
79
|
:cost => s[:cost])
|
59
80
|
shipment.selected_shipping_rate_id = rate.id
|
81
|
+
shipment.update_amounts
|
60
82
|
|
61
83
|
rescue Exception => e
|
62
84
|
raise "Order import shipments: #{e.message} #{s}"
|
@@ -98,10 +120,13 @@ module Spree
|
|
98
120
|
return [] unless payments_hash
|
99
121
|
payments_hash.each do |p|
|
100
122
|
begin
|
101
|
-
payment = order.payments.build
|
123
|
+
payment = order.payments.build order: order
|
102
124
|
payment.amount = p[:amount].to_f
|
103
|
-
|
125
|
+
# Order API should be using state as that's the normal payment field.
|
126
|
+
# spree_wombat serializes payment state as status so imported orders should fall back to status field.
|
127
|
+
payment.state = p[:state] || p[:status] || 'completed'
|
104
128
|
payment.payment_method = Spree::PaymentMethod.find_by_name!(p[:payment_method])
|
129
|
+
payment.source = create_source_payment_from_params(p[:source], payment) if p[:source]
|
105
130
|
payment.save!
|
106
131
|
rescue Exception => e
|
107
132
|
raise "Order import payments: #{e.message} #{p}"
|
@@ -109,6 +134,24 @@ module Spree
|
|
109
134
|
end
|
110
135
|
end
|
111
136
|
|
137
|
+
def self.create_source_payment_from_params(source_hash, payment)
|
138
|
+
begin
|
139
|
+
Spree::CreditCard.create(
|
140
|
+
month: source_hash[:month],
|
141
|
+
year: source_hash[:year],
|
142
|
+
cc_type: source_hash[:cc_type],
|
143
|
+
last_digits: source_hash[:last_digits],
|
144
|
+
name: source_hash[:name],
|
145
|
+
payment_method: payment.payment_method,
|
146
|
+
gateway_customer_profile_id: source_hash[:gateway_customer_profile_id],
|
147
|
+
gateway_payment_profile_id: source_hash[:gateway_payment_profile_id],
|
148
|
+
imported: true
|
149
|
+
)
|
150
|
+
rescue Exception => e
|
151
|
+
raise "Order import source payments: #{e.message} #{source_hash}"
|
152
|
+
end
|
153
|
+
end
|
154
|
+
|
112
155
|
def self.ensure_variant_id_from_params(hash)
|
113
156
|
begin
|
114
157
|
unless hash[:variant_id].present?
|
data/lib/spree/core/version.rb
CHANGED
@@ -28,9 +28,9 @@ module Spree
|
|
28
28
|
mattr_reader *ATTRIBUTES
|
29
29
|
|
30
30
|
@@address_attributes = [
|
31
|
-
:firstname, :lastname, :
|
32
|
-
:
|
33
|
-
:state_name, :alternative_phone, :company,
|
31
|
+
:firstname, :lastname, :first_name, :last_name,
|
32
|
+
:address1, :address2, :city, :country_id, :state_id,
|
33
|
+
:zipcode, :phone, :state_name, :alternative_phone, :company,
|
34
34
|
:country => [:iso, :name, :iso3, :iso_name],
|
35
35
|
:state => [:name, :abbr]
|
36
36
|
]
|
@@ -96,7 +96,7 @@ module Spree
|
|
96
96
|
|
97
97
|
@@variant_attributes = [
|
98
98
|
:name, :presentation, :cost_price, :lock_version,
|
99
|
-
:position, :option_value_ids,
|
99
|
+
:position, :option_value_ids, :track_inventory,
|
100
100
|
:product_id, :product, :option_values_attributes, :price,
|
101
101
|
:weight, :height, :width, :depth, :sku, :cost_currency, options: [ :name, :value ]]
|
102
102
|
end
|
@@ -17,7 +17,7 @@ module Spree
|
|
17
17
|
def stub_authorization!(&block)
|
18
18
|
ability_class = build_ability(&block)
|
19
19
|
before do
|
20
|
-
allow(controller).to receive(:current_ability).and_return
|
20
|
+
allow(controller).to receive(:current_ability).and_return(ability_class.new(nil))
|
21
21
|
end
|
22
22
|
end
|
23
23
|
end
|
@@ -4,7 +4,7 @@ FactoryGirl.define do
|
|
4
4
|
description { generate(:random_description) }
|
5
5
|
price 19.99
|
6
6
|
cost_price 17.00
|
7
|
-
sku
|
7
|
+
sku { "ABC-#{Kernel.rand(9999)}" }
|
8
8
|
available_on { 1.year.ago }
|
9
9
|
deleted_at nil
|
10
10
|
shipping_category { |r| Spree::ShippingCategory.first || r.association(:shipping_category) }
|
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.3.
|
4
|
+
version: 2.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemerchant
|
@@ -67,19 +67,19 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 1.27.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: cancancan
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.
|
75
|
+
version: 1.8.4
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.
|
82
|
+
version: 1.8.4
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: deface
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -109,61 +109,61 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '1.16'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: font-awesome-rails
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
117
|
+
version: '4.0'
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: '4.0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: friendly_id
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 5.0.4
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
138
|
+
version: 5.0.4
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
140
|
+
name: highline
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version:
|
145
|
+
version: 1.6.18
|
146
146
|
type: :runtime
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version:
|
152
|
+
version: 1.6.18
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
|
-
name:
|
154
|
+
name: httparty
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- -
|
157
|
+
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 0.
|
159
|
+
version: '0.11'
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
|
-
- -
|
164
|
+
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 0.
|
166
|
+
version: '0.11'
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: json
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -212,14 +212,14 @@ dependencies:
|
|
212
212
|
requirements:
|
213
213
|
- - "~>"
|
214
214
|
- !ruby/object:Gem::Version
|
215
|
-
version: 4.
|
215
|
+
version: 4.2.0
|
216
216
|
type: :runtime
|
217
217
|
prerelease: false
|
218
218
|
version_requirements: !ruby/object:Gem::Requirement
|
219
219
|
requirements:
|
220
220
|
- - "~>"
|
221
221
|
- !ruby/object:Gem::Version
|
222
|
-
version: 4.
|
222
|
+
version: 4.2.0
|
223
223
|
- !ruby/object:Gem::Dependency
|
224
224
|
name: paranoia
|
225
225
|
requirement: !ruby/object:Gem::Requirement
|
@@ -240,14 +240,14 @@ dependencies:
|
|
240
240
|
requirements:
|
241
241
|
- - "~>"
|
242
242
|
- !ruby/object:Gem::Version
|
243
|
-
version: 4.1.
|
243
|
+
version: 4.1.4
|
244
244
|
type: :runtime
|
245
245
|
prerelease: false
|
246
246
|
version_requirements: !ruby/object:Gem::Requirement
|
247
247
|
requirements:
|
248
248
|
- - "~>"
|
249
249
|
- !ruby/object:Gem::Version
|
250
|
-
version: 4.1.
|
250
|
+
version: 4.1.4
|
251
251
|
- !ruby/object:Gem::Dependency
|
252
252
|
name: ransack
|
253
253
|
requirement: !ruby/object:Gem::Requirement
|
@@ -304,20 +304,6 @@ dependencies:
|
|
304
304
|
- - '='
|
305
305
|
- !ruby/object:Gem::Version
|
306
306
|
version: 0.9.2
|
307
|
-
- !ruby/object:Gem::Dependency
|
308
|
-
name: font-awesome-rails
|
309
|
-
requirement: !ruby/object:Gem::Requirement
|
310
|
-
requirements:
|
311
|
-
- - "~>"
|
312
|
-
- !ruby/object:Gem::Version
|
313
|
-
version: '4.0'
|
314
|
-
type: :runtime
|
315
|
-
prerelease: false
|
316
|
-
version_requirements: !ruby/object:Gem::Requirement
|
317
|
-
requirements:
|
318
|
-
- - "~>"
|
319
|
-
- !ruby/object:Gem::Version
|
320
|
-
version: '4.0'
|
321
307
|
description: The bare bones necessary for Spree.
|
322
308
|
email: sean@spreecommerce.com
|
323
309
|
executables: []
|
@@ -366,6 +352,8 @@ files:
|
|
366
352
|
- app/models/spree/calculator/shipping/flexi_rate.rb
|
367
353
|
- app/models/spree/calculator/shipping/per_item.rb
|
368
354
|
- app/models/spree/calculator/shipping/price_sack.rb
|
355
|
+
- app/models/spree/calculator/tiered_flat_rate.rb
|
356
|
+
- app/models/spree/calculator/tiered_percent.rb
|
369
357
|
- app/models/spree/classification.rb
|
370
358
|
- app/models/spree/configuration.rb
|
371
359
|
- app/models/spree/country.rb
|
@@ -621,6 +609,7 @@ files:
|
|
621
609
|
- db/migrate/20140604135309_drop_credit_card_first_name_and_last_name.rb
|
622
610
|
- db/migrate/20140609201656_add_deleted_at_to_spree_promotion_actions.rb
|
623
611
|
- db/migrate/20140616202624_remove_uncaptured_amount_from_spree_payments.rb
|
612
|
+
- db/migrate/20140804185157_add_default_to_shipment_cost.rb
|
624
613
|
- db/seeds.rb
|
625
614
|
- lib/generators/spree/custom_user/custom_user_generator.rb
|
626
615
|
- lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt
|
@@ -642,6 +631,7 @@ files:
|
|
642
631
|
- lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/backend/all.css
|
643
632
|
- lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/frontend/all.css
|
644
633
|
- lib/spree/core.rb
|
634
|
+
- lib/spree/core/adjustment_source.rb
|
645
635
|
- lib/spree/core/calculated_adjustments.rb
|
646
636
|
- lib/spree/core/controller_helpers.rb
|
647
637
|
- lib/spree/core/controller_helpers/auth.rb
|