spree_delivery_options 2.1.15 → 2.2.0
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/assets/javascripts/store/delivery_options_form.js +43 -0
- data/app/assets/javascripts/store/delivery_time_options.js +6 -3
- data/app/assets/javascripts/store/spree_delivery_options.js +1 -0
- data/app/assets/stylesheets/store/delivery_options_homepage.scss +40 -0
- data/app/assets/stylesheets/store/spree_delivery_options.css +1 -0
- data/app/controllers/spree/taxons_controller_decorator.rb +3 -0
- data/app/helpers/spree_delivery_options/base_helper.rb +10 -2
- data/app/models/spree/order_decorator.rb +19 -5
- data/app/overrides/add_delivery_options_to_taxon.rb +5 -0
- data/app/views/spree/taxons/_delivery_options.haml +29 -0
- data/spec/helpers/spree_delivery_options/base_helper_spec.rb +30 -0
- data/spec/models/order_spec.rb +72 -72
- data/spree_delivery_options.gemspec +1 -1
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b19936a62b8807116a557c91212c3d2b0ec4cdc2
|
4
|
+
data.tar.gz: 5bc39846c2a6cdd32fe656807b1752ed6f3cd479
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: af672b3f1e226c927e773dfc2c01c063102ab080e0072149c97ee2f482ce1d4e35027336f886d16e681e76c52f7dc735a7739407bc7458e08f29815521016e13
|
7
|
+
data.tar.gz: e4ea617a6d6e621577cf8bf2d01068f8e314cc616df90491a09835f504178a8f8e7327d478125b816843d70214fae0104a211a60605f3aec03b690dde2d7d145
|
@@ -0,0 +1,43 @@
|
|
1
|
+
function SpreeDeliveryOptionsForm() {
|
2
|
+
|
3
|
+
var that = this;
|
4
|
+
|
5
|
+
this.initializeForm = function() {
|
6
|
+
var formUrl = $('#delivery-options-form').attr('action');
|
7
|
+
|
8
|
+
$("#delivery-options-form input[type='submit']").click(function(event){
|
9
|
+
event.preventDefault();
|
10
|
+
|
11
|
+
var formData = $('#delivery-options-form').serialize();
|
12
|
+
$.post(
|
13
|
+
formUrl,
|
14
|
+
formData,
|
15
|
+
function(data) {
|
16
|
+
if (data.delivery_date !== null) {
|
17
|
+
location.reload();
|
18
|
+
} else {
|
19
|
+
that.showErrorMessage("Please enter a valid date.");
|
20
|
+
}
|
21
|
+
}).fail(function(data){
|
22
|
+
if (data.responseJSON.errors.delivery_date !== undefined) {
|
23
|
+
that.showErrorMessage(data.responseJSON.errors.delivery_date[0]);
|
24
|
+
} else if (data.responseJSON.errors.delivery_time !== undefined) {
|
25
|
+
that.showErrorMessage(data.responseJSON.errors.delivery_time[0]);
|
26
|
+
} else {
|
27
|
+
that.showErrorMessage("We could not update the delivery date. Please try at checkout.");
|
28
|
+
}
|
29
|
+
});
|
30
|
+
});
|
31
|
+
};
|
32
|
+
|
33
|
+
this.showErrorMessage = function(message) {
|
34
|
+
$('#delivery-options-homepage .error').html("<h5>" + message + "</h5>");
|
35
|
+
$('#delivery-options-homepage .error').show();
|
36
|
+
};
|
37
|
+
|
38
|
+
}
|
39
|
+
|
40
|
+
$(document).ready(function() {
|
41
|
+
var deliveryOptionsForm = new SpreeDeliveryOptionsForm();
|
42
|
+
deliveryOptionsForm.initializeForm();
|
43
|
+
});
|
@@ -3,7 +3,10 @@ function SpreeDeliveryOptions() {
|
|
3
3
|
var that = this;
|
4
4
|
|
5
5
|
this.initializeDatePicker = function() {
|
6
|
-
$('#order_delivery_date').datepicker({
|
6
|
+
$('#order_delivery_date').datepicker({
|
7
|
+
dateFormat: "dd/mm/yy",
|
8
|
+
minDate: 1
|
9
|
+
});
|
7
10
|
};
|
8
11
|
|
9
12
|
this.initializeDeliveryTimeSelect = function() {
|
@@ -41,11 +44,11 @@ function SpreeDeliveryOptions() {
|
|
41
44
|
var arLen = options.length;
|
42
45
|
var newList = "";
|
43
46
|
for ( var i=0, len=arLen; i<len; ++i ){
|
44
|
-
newList = newList +
|
47
|
+
newList = newList + "<option value='" + options[i] + "'>" + options[i]+'</option>';
|
45
48
|
}
|
46
49
|
$('#order_delivery_time').html(newList);
|
47
50
|
} else {
|
48
|
-
$('#order_delivery_time').html("<option>
|
51
|
+
$('#order_delivery_time').html("<option>Not available</option>");
|
49
52
|
}
|
50
53
|
};
|
51
54
|
|
@@ -0,0 +1,40 @@
|
|
1
|
+
#delivery-options-homepage {
|
2
|
+
background-color: #ccc;
|
3
|
+
padding: 10px;
|
4
|
+
margin-bottom: 10px;
|
5
|
+
|
6
|
+
.row {
|
7
|
+
margin-bottom: 0;
|
8
|
+
}
|
9
|
+
|
10
|
+
.success {
|
11
|
+
p {
|
12
|
+
margin: 0;
|
13
|
+
padding: 5px 0;
|
14
|
+
}
|
15
|
+
}
|
16
|
+
|
17
|
+
.error h5 {
|
18
|
+
color: red;
|
19
|
+
}
|
20
|
+
|
21
|
+
.field {
|
22
|
+
|
23
|
+
display: block;
|
24
|
+
margin-bottom: 5px;
|
25
|
+
|
26
|
+
label {
|
27
|
+
margin-right: 5px;
|
28
|
+
}
|
29
|
+
|
30
|
+
input[type='text'], select {
|
31
|
+
width: 120px;
|
32
|
+
}
|
33
|
+
|
34
|
+
input[type='submit'] {
|
35
|
+
margin-top: 5px;
|
36
|
+
width: 200px;
|
37
|
+
}
|
38
|
+
|
39
|
+
}
|
40
|
+
}
|
@@ -1,6 +1,14 @@
|
|
1
1
|
module SpreeDeliveryOptions
|
2
2
|
module BaseHelper
|
3
3
|
|
4
|
+
def current_order_cutoff_time
|
5
|
+
return nil unless (current_order && current_order.delivery_date)
|
6
|
+
|
7
|
+
cutoff_time = Time.zone.now.change(hour: SpreeDeliveryOptions::Config.delivery_cut_off_hour)
|
8
|
+
cutoff_date = current_order.delivery_date - 1.day
|
9
|
+
"#{cutoff_date.strftime('%A, %d %b')} before #{cutoff_time.strftime("%l%P")}"
|
10
|
+
end
|
11
|
+
|
4
12
|
def next_delivery_slot
|
5
13
|
delivery_options = JSON.parse(SpreeDeliveryOptions::Config.delivery_time_options)
|
6
14
|
|
@@ -13,9 +21,9 @@ module SpreeDeliveryOptions
|
|
13
21
|
def next_delivery_day
|
14
22
|
delivery_options = JSON.parse(SpreeDeliveryOptions::Config.delivery_time_options)
|
15
23
|
|
16
|
-
cutoff_time = Time.now.change(hour: SpreeDeliveryOptions::Config.delivery_cut_off_hour)
|
24
|
+
cutoff_time = Time.zone.now.change(hour: SpreeDeliveryOptions::Config.delivery_cut_off_hour)
|
17
25
|
|
18
|
-
current_day = Time.now > cutoff_time ? (Date.
|
26
|
+
current_day = Time.zone.now > cutoff_time ? (Date.current + 2.days) : (Date.current + 1.day)
|
19
27
|
next_available_day = nil
|
20
28
|
counter = 0
|
21
29
|
|
@@ -2,6 +2,9 @@ Spree::Order.class_eval do
|
|
2
2
|
require 'date'
|
3
3
|
require 'spree/order/checkout'
|
4
4
|
|
5
|
+
validate :valid_delivery_date?
|
6
|
+
validate :valid_delivery_time?
|
7
|
+
|
5
8
|
def valid_delivery_instructions?
|
6
9
|
if self.delivery_instructions && self.delivery_instructions.length > 500
|
7
10
|
self.errors[:delivery_instructions] << 'cannot be longer than 500 charachters'
|
@@ -10,20 +13,22 @@ Spree::Order.class_eval do
|
|
10
13
|
true
|
11
14
|
end
|
12
15
|
|
13
|
-
def
|
14
|
-
|
16
|
+
def delivery_date_present?
|
15
17
|
self.errors[:delivery_date] << 'cannot be blank' unless self.delivery_date
|
18
|
+
self.errors[:delivery_date].empty? ? true : false
|
19
|
+
end
|
16
20
|
|
21
|
+
def valid_delivery_date?
|
17
22
|
if self.delivery_date
|
18
|
-
self.errors[:delivery_date] << 'cannot be today or in the past' if self.delivery_date <= Date.
|
23
|
+
self.errors[:delivery_date] << 'cannot be today or in the past' if self.delivery_date <= Date.current
|
19
24
|
|
20
25
|
options = delivery_time_options(self.delivery_date)
|
21
26
|
unless options
|
22
27
|
self.errors[:delivery_date] << "is not available on the selected week day."
|
23
28
|
end
|
24
29
|
|
25
|
-
cutoff_time = Time.now.change(hour: SpreeDeliveryOptions::Config.delivery_cut_off_hour)
|
26
|
-
if self.delivery_date == Date.
|
30
|
+
cutoff_time = Time.zone.now.change(hour: SpreeDeliveryOptions::Config.delivery_cut_off_hour)
|
31
|
+
if self.delivery_date == (Date.current + 1.day) && Time.zone.now > (cutoff_time + 15.minutes)
|
27
32
|
self.errors[:delivery_date] << "cannot be tomorrow if the order is created after 1pm"
|
28
33
|
end
|
29
34
|
end
|
@@ -31,6 +36,11 @@ Spree::Order.class_eval do
|
|
31
36
|
self.errors[:delivery_date].empty? ? true : false
|
32
37
|
end
|
33
38
|
|
39
|
+
def delivery_time_present?
|
40
|
+
self.errors[:delivery_time] << 'cannot be blank' unless self.delivery_time
|
41
|
+
self.errors[:delivery_time].empty? ? true : false
|
42
|
+
end
|
43
|
+
|
34
44
|
def valid_delivery_time?
|
35
45
|
return unless self.delivery_date
|
36
46
|
|
@@ -64,6 +74,10 @@ Spree::PermittedAttributes.checkout_attributes << :delivery_time
|
|
64
74
|
Spree::PermittedAttributes.checkout_attributes << :delivery_instructions
|
65
75
|
|
66
76
|
Spree::Order.state_machine.before_transition :to => :payment, :do => :valid_delivery_instructions?
|
77
|
+
|
78
|
+
Spree::Order.state_machine.before_transition :to => :payment, :do => :delivery_date_present?
|
67
79
|
Spree::Order.state_machine.before_transition :to => :payment, :do => :valid_delivery_date?
|
80
|
+
|
81
|
+
Spree::Order.state_machine.before_transition :to => :payment, :do => :delivery_time_present?
|
68
82
|
Spree::Order.state_machine.before_transition :to => :payment, :do => :valid_delivery_time?
|
69
83
|
|
@@ -0,0 +1,29 @@
|
|
1
|
+
#delivery-options-homepage
|
2
|
+
- order = current_order(true)
|
3
|
+
- if order.delivery_date? && order.delivery_time
|
4
|
+
.row.success
|
5
|
+
.columns.sixteen.alpha.omega
|
6
|
+
%h5
|
7
|
+
= "Thanks! Your order is scheduled for #{order.delivery_date.strftime('%A, %d %b')} from #{order.delivery_time}."
|
8
|
+
= " You just need to complete it by #{current_order_cutoff_time}"
|
9
|
+
%p
|
10
|
+
You can still change it at the checkout if needed.
|
11
|
+
- else
|
12
|
+
.row.form
|
13
|
+
.columns.seven.alpha
|
14
|
+
%h3 Want to know when you're getting your groceries?
|
15
|
+
%h5 Choose your delivery time and get it sorted now
|
16
|
+
.columns.four
|
17
|
+
= form_for order, {url: api_order_url(order), html: {id: 'delivery-options-form'}} do |form|
|
18
|
+
= hidden_field_tag 'order_token', order.token
|
19
|
+
.field
|
20
|
+
= form.label :delivery_date, "Delivery Date"
|
21
|
+
= form.text_field :delivery_date, value: (l(order.delivery_date) rescue l(Date.current))
|
22
|
+
.field
|
23
|
+
= form.label :delivery_time, "Delivery Time"
|
24
|
+
= form.select :delivery_time, JSON.parse(SpreeDeliveryOptions::Config.delivery_time_options)["monday"]
|
25
|
+
.field
|
26
|
+
= form.submit "Set Delivery Time"
|
27
|
+
.delivery-time-options{data: SpreeDeliveryOptions::Config.delivery_time_options}
|
28
|
+
.columns.four.omega
|
29
|
+
.error.hide
|
@@ -2,6 +2,36 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe SpreeDeliveryOptions::BaseHelper do
|
4
4
|
|
5
|
+
describe 'current order cutoff time' do
|
6
|
+
|
7
|
+
let(:order){FactoryGirl.build(:order)}
|
8
|
+
|
9
|
+
before :each do
|
10
|
+
helper.stub(:current_order).and_return(order)
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'should return nil if there is no current order' do
|
14
|
+
helper.stub(:current_order).and_return(nil)
|
15
|
+
helper.current_order_cutoff_time.should be_nil
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should return nil if there current order has no delivery date' do
|
19
|
+
order.delivery_date = nil
|
20
|
+
helper.current_order_cutoff_time.should be_nil
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'should return the day before if delivery date is set' do
|
24
|
+
SpreeDeliveryOptions::Config.delivery_cut_off_hour = 12
|
25
|
+
order.delivery_date = Date.parse('23/04/2014')
|
26
|
+
|
27
|
+
time_now = DateTime.parse("20/03/2013")
|
28
|
+
Timecop.freeze(time_now)
|
29
|
+
helper.current_order_cutoff_time.should == 'Tuesday, 22 Apr before 12pm'
|
30
|
+
Timecop.return
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
5
35
|
describe 'next delivery slot' do
|
6
36
|
|
7
37
|
it 'should return first slot for tomorrow if its before cutoff time' do
|
data/spec/models/order_spec.rb
CHANGED
@@ -8,7 +8,7 @@ describe Spree::Order do
|
|
8
8
|
SpreeDeliveryOptions::Config.delivery_time_options = {monday: ['Between 6-7am']}.to_json
|
9
9
|
end
|
10
10
|
|
11
|
-
describe '
|
11
|
+
describe 'valid_delivery_instructions' do
|
12
12
|
|
13
13
|
it 'should accept nil delivery instructions' do
|
14
14
|
order.delivery_instructions = nil
|
@@ -36,100 +36,101 @@ describe Spree::Order do
|
|
36
36
|
|
37
37
|
end
|
38
38
|
|
39
|
-
describe "
|
39
|
+
describe "delivery_date_present" do
|
40
40
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
order.errors[:delivery_date].should_not be_empty
|
46
|
-
end
|
41
|
+
it 'should require delivery date' do
|
42
|
+
order.delivery_date_present?.should == false
|
43
|
+
order.errors[:delivery_date].should_not be_empty
|
44
|
+
end
|
47
45
|
|
48
|
-
|
49
|
-
order.delivery_date = Date.today
|
46
|
+
end
|
50
47
|
|
51
|
-
|
52
|
-
order.errors[:delivery_time].should_not be_empty
|
53
|
-
end
|
48
|
+
describe "valid_delivery_date" do
|
54
49
|
|
55
|
-
|
56
|
-
|
50
|
+
before :each do
|
51
|
+
SpreeDeliveryOptions::Config.delivery_time_options = {monday: ['Between 6-7am']}.to_json
|
52
|
+
end
|
57
53
|
|
58
|
-
order.delivery_time = 'crazy times!'
|
59
|
-
order.valid_delivery_time?.should == false
|
60
|
-
order.errors[:delivery_time].should_not be_empty
|
61
|
-
end
|
62
54
|
|
55
|
+
it 'should not be valid if delivery date is in the past' do
|
56
|
+
order.delivery_date = Date.yesterday
|
57
|
+
order.valid_delivery_date?.should == false
|
58
|
+
order.errors[:delivery_date].should_not be_empty
|
63
59
|
end
|
64
60
|
|
65
|
-
|
61
|
+
it 'should not be valid if delivery date is today' do
|
62
|
+
order.delivery_date = Date.today
|
63
|
+
order.valid_delivery_date?.should == false
|
64
|
+
order.errors[:delivery_date].should_not be_empty
|
65
|
+
end
|
66
66
|
|
67
|
-
|
68
|
-
|
69
|
-
|
67
|
+
it 'should be valid if delivery date is tomorrow and it is past the cutoff time by less than 15 min' do
|
68
|
+
time_now = DateTime.parse("17/11/2013 #{SpreeDeliveryOptions::Config.delivery_cut_off_hour}:14 +1100")
|
69
|
+
Timecop.freeze(time_now)
|
70
70
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
71
|
+
order.delivery_date = '18/11/2013'
|
72
|
+
order.valid_delivery_date?.should == true
|
73
|
+
order.errors[:delivery_date].should be_empty
|
74
|
+
Timecop.return
|
75
|
+
end
|
76
76
|
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
order.errors[:delivery_date].should_not be_empty
|
81
|
-
end
|
77
|
+
it 'should not be valid if delivery date is tomorrow and it is past the cutoff time + 15 min' do
|
78
|
+
time_now = DateTime.parse("17/11/2013 #{SpreeDeliveryOptions::Config.delivery_cut_off_hour}:16 +1100")
|
79
|
+
Timecop.freeze(time_now)
|
82
80
|
|
83
|
-
|
84
|
-
|
85
|
-
|
81
|
+
order.delivery_date = '18/11/2013'
|
82
|
+
order.valid_delivery_date?.should == false
|
83
|
+
order.errors[:delivery_date].should_not be_empty
|
84
|
+
Timecop.return
|
85
|
+
end
|
86
86
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
Timecop.return
|
91
|
-
end
|
87
|
+
it 'should be valid if delivery date is tomorrow but is before the cutoff time' do
|
88
|
+
time_now = DateTime.parse("17/11/2013 #{SpreeDeliveryOptions::Config.delivery_cut_off_hour-1}:59 +1100")
|
89
|
+
Timecop.freeze(time_now)
|
92
90
|
|
93
|
-
|
94
|
-
|
95
|
-
|
91
|
+
order.delivery_date = '18/11/2013'
|
92
|
+
order.valid_delivery_date?
|
93
|
+
order.errors[:delivery_date].should be_empty
|
94
|
+
Timecop.return
|
95
|
+
end
|
96
96
|
|
97
|
-
|
98
|
-
order.valid_delivery_date?.should == false
|
99
|
-
order.errors[:delivery_date].should_not be_empty
|
100
|
-
Timecop.return
|
101
|
-
end
|
97
|
+
end
|
102
98
|
|
103
|
-
|
104
|
-
time_now = DateTime.parse("17/11/2013 #{SpreeDeliveryOptions::Config.delivery_cut_off_hour-1}:59 +1100")
|
105
|
-
Timecop.freeze(time_now)
|
99
|
+
describe 'delivery_time_present' do
|
106
100
|
|
107
|
-
|
108
|
-
|
109
|
-
order.errors[:delivery_date].should be_empty
|
110
|
-
Timecop.return
|
111
|
-
end
|
101
|
+
it 'should require delivery time' do
|
102
|
+
order.delivery_date = Date.today
|
112
103
|
|
104
|
+
order.delivery_time_present?.should == false
|
105
|
+
order.errors[:delivery_time].should_not be_empty
|
113
106
|
end
|
114
107
|
|
115
|
-
|
108
|
+
end
|
109
|
+
|
110
|
+
describe 'valid_delivery_time' do
|
116
111
|
|
117
|
-
|
118
|
-
|
119
|
-
|
112
|
+
before :each do
|
113
|
+
SpreeDeliveryOptions::Config.delivery_time_options = {monday: ['Between 6-7am']}.to_json
|
114
|
+
end
|
120
115
|
|
121
|
-
|
122
|
-
|
123
|
-
order.valid_delivery_date?#.should == true
|
124
|
-
order.errors[:delivery_date].should be_empty
|
125
|
-
end
|
116
|
+
it 'should require a valid option for delivery time' do
|
117
|
+
order.delivery_date = Date.today
|
126
118
|
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
end
|
119
|
+
order.delivery_time = 'crazy times!'
|
120
|
+
order.valid_delivery_time?.should == false
|
121
|
+
order.errors[:delivery_time].should_not be_empty
|
122
|
+
end
|
132
123
|
|
124
|
+
it 'should allow delivery time to be in a valid delivery day' do
|
125
|
+
order.delivery_date = DateTime.now.next_week.next_day(0)
|
126
|
+
order.valid_delivery_date?#.should == true
|
127
|
+
order.errors[:delivery_date].should be_empty
|
128
|
+
end
|
129
|
+
|
130
|
+
it 'should not allow delivery time to be in a non delivery day' do
|
131
|
+
order.delivery_date = DateTime.now.next_week.next_day(1)
|
132
|
+
order.valid_delivery_date?.should == false
|
133
|
+
order.errors[:delivery_date].should_not be_empty
|
133
134
|
end
|
134
135
|
|
135
136
|
describe "overriding delivery day with specific date" do
|
@@ -178,5 +179,4 @@ describe Spree::Order do
|
|
178
179
|
|
179
180
|
end
|
180
181
|
|
181
|
-
|
182
182
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_delivery_options
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Francisco Trindade
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-03-
|
11
|
+
date: 2014-03-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: spree_core
|
@@ -221,6 +221,7 @@ files:
|
|
221
221
|
- app/assets/images/store/ui-icons_ffffff_256x240.png
|
222
222
|
- app/assets/javascripts/admin/delivery_time_options.js
|
223
223
|
- app/assets/javascripts/admin/spree_delivery_options.js
|
224
|
+
- app/assets/javascripts/store/delivery_options_form.js
|
224
225
|
- app/assets/javascripts/store/delivery_time_options.js
|
225
226
|
- app/assets/javascripts/store/jquery-ui-1.10.4.custom.js
|
226
227
|
- app/assets/javascripts/store/spree_delivery_options.js
|
@@ -228,14 +229,17 @@ files:
|
|
228
229
|
- app/assets/stylesheets/admin/order_details.scss
|
229
230
|
- app/assets/stylesheets/admin/spree_delivery_options.css
|
230
231
|
- app/assets/stylesheets/store/delivery_checkout.scss
|
232
|
+
- app/assets/stylesheets/store/delivery_options_homepage.scss
|
231
233
|
- app/assets/stylesheets/store/jquery-ui-1.10.4.custom.css
|
232
234
|
- app/assets/stylesheets/store/spree_delivery_options.css
|
233
235
|
- app/controllers/spree/admin/orders/delivery_options_controller.rb
|
236
|
+
- app/controllers/spree/taxons_controller_decorator.rb
|
234
237
|
- app/helpers/spree/application_helper_decorator.rb
|
235
238
|
- app/helpers/spree_delivery_options/base_helper.rb
|
236
239
|
- app/models/spree/order_decorator.rb
|
237
240
|
- app/overrides/add_delivery_info_to_order_details.rb
|
238
241
|
- app/overrides/add_delivery_options_link_order_page.rb
|
242
|
+
- app/overrides/add_delivery_options_to_taxon.rb
|
239
243
|
- app/overrides/admin_order_information.rb
|
240
244
|
- app/overrides/admin_orders_delivery_date_column.rb
|
241
245
|
- app/overrides/admin_orders_delivery_date_filter.rb
|
@@ -250,6 +254,7 @@ files:
|
|
250
254
|
- app/views/spree/admin/shared/_delivery_options_link.haml
|
251
255
|
- app/views/spree/checkout/_delivery_date.haml
|
252
256
|
- app/views/spree/orders/_order_delivery_date_details.html.erb
|
257
|
+
- app/views/spree/taxons/_delivery_options.haml
|
253
258
|
- config/locales/en.yml
|
254
259
|
- config/routes.rb
|
255
260
|
- db/migrate/20130415025010_add_delivery_date_to_orders.rb
|