spree_core 1.3.0.rc2 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,7 @@ $(document).ready(function() {
22
22
  return { results: data }
23
23
  }
24
24
  },
25
+ dropdownCssClass: 'customer_search',
25
26
  formatResult: formatCustomerResult,
26
27
  formatSelection: function (customer) {
27
28
  _.each(['bill_address', 'ship_address'], function(address) {
@@ -201,15 +201,10 @@ module Spree
201
201
  # Array of totals grouped by Adjustment#label. Useful for displaying price adjustments on an
202
202
  # invoice. For example, you can display tax breakout for cases where tax is included in price.
203
203
  def price_adjustment_totals
204
- totals = {}
205
-
206
- price_adjustments.each do |adjustment|
207
- label = adjustment.label
208
- totals[label] ||= 0
209
- totals[label] = totals[label] + adjustment.amount
210
- end
211
-
212
- totals
204
+ Hash[price_adjustments.group_by(&:label).map do |label, adjustments|
205
+ total = adjustments.sum(&:amount)
206
+ [label, Spree::Money.new(total, { :currency => currency })]
207
+ end]
213
208
  end
214
209
 
215
210
  def updater
@@ -40,10 +40,10 @@
40
40
  </tbody>
41
41
  <% if order.price_adjustment_totals.present? %>
42
42
  <tbody id="price-adjustments" data-hook="order_details_price_adjustments">
43
- <% @order.price_adjustment_totals.keys.each do |key| %>
43
+ <% @order.price_adjustment_totals.each do |label, total| %>
44
44
  <tr>
45
- <td colspan="3"><strong><%= key %></strong></td>
46
- <td class="total"><span><%= @order.price_adjustment_totals[key].display_amount %></span></td>
45
+ <td colspan="3"><strong><%= label %></strong></td>
46
+ <td class="total"><span><%= total %></span></td>
47
47
  </tr>
48
48
  <% end %>
49
49
  </tbody>
@@ -21,10 +21,10 @@
21
21
  </tr>
22
22
  <% if order.price_adjustment_totals.present? %>
23
23
  <tbody id="price-adjustments" data-hook="order_details_price_adjustments">
24
- <% @order.price_adjustment_totals.keys.each do |key| %>
24
+ <% @order.price_adjustment_totals.each do |label, total| %>
25
25
  <tr class="total">
26
- <td><strong><%= key %></strong></td>
27
- <td><strong><span><%= @order.price_adjustment_totals[key].display_total %></span></strong></td>
26
+ <td><strong><%= label %></strong></td>
27
+ <td><strong><span><%= total %></span></strong></td>
28
28
  </tr>
29
29
  <% end %>
30
30
  </tbody>
@@ -95,10 +95,10 @@
95
95
  </tfoot>
96
96
  <% if order.price_adjustment_totals.present? %>
97
97
  <tfoot id="price-adjustments" data-hook="order_details_price_adjustments">
98
- <% @order.price_adjustment_totals.keys.each do |key| %>
98
+ <% @order.price_adjustment_totals.each do |key, total| %>
99
99
  <tr class="total">
100
100
  <td colspan="4"><strong><%= key %></strong></td>
101
- <td class="total"><span><%= @order.price_adjustment_totals[key].display_amount %></span></td>
101
+ <td class="total"><span><%= total %></span></td>
102
102
  </tr>
103
103
  <% end %>
104
104
  </tfoot>
@@ -33,8 +33,7 @@ module Spree
33
33
  :source => calculable,
34
34
  :originator => self,
35
35
  :label => label,
36
- :mandatory => mandatory,
37
- :locked => true }, :without_protection => true)
36
+ :mandatory => mandatory}, :without_protection => true)
38
37
  end
39
38
 
40
39
  # Updates the amount of the adjustment using our Calculator and calling the +compute+ method with the +calculable+
@@ -24,7 +24,6 @@ module Spree
24
24
  return @current_order if @current_order
25
25
  if session[:order_id]
26
26
  current_order = Spree::Order.find_by_id_and_currency(session[:order_id], current_currency, :include => :adjustments)
27
- current_order.last_ip_address = ip_address
28
27
  @current_order = current_order unless current_order.try(:completed?)
29
28
  end
30
29
  if create_order_if_necessary and (@current_order.nil? or @current_order.completed?)
@@ -33,8 +32,11 @@ module Spree
33
32
  @current_order.save!
34
33
  after_save_new_order
35
34
  end
36
- session[:order_id] = @current_order ? @current_order.id : nil
37
- @current_order
35
+ if @current_order
36
+ @current_order.last_ip_address = ip_address
37
+ session[:order_id] = @current_order.id
38
+ return @current_order
39
+ end
38
40
  end
39
41
 
40
42
  def associate_user
@@ -61,7 +63,7 @@ module Spree
61
63
  last_incomplete_order = user.last_incomplete_spree_order
62
64
  if session[:order_id].nil? && last_incomplete_order
63
65
  session[:order_id] = last_incomplete_order.id
64
- elsif current_order && last_incomplete_order && current_order != last_incomplete_order
66
+ elsif current_order(true) && last_incomplete_order && current_order != last_incomplete_order
65
67
  current_order.merge!(last_incomplete_order)
66
68
  end
67
69
  end
@@ -28,10 +28,16 @@ module CapybaraExt
28
28
 
29
29
  def select2_search(value, options)
30
30
  id = find_label_by_text(options[:from])
31
+ options[:from] = "#s2id_#{id}"
32
+ targetted_select2_search(value, options)
33
+ end
31
34
 
32
- select2_id = "#s2id_#{id}"
33
- find(select2_id).find(".select2-choices").click
34
- page.execute_script "$('#{select2_id} input.select2-input').val('#{value}').trigger('keyup-change');"
35
+ def targetted_select2_search(value, options)
36
+ #p %Q{$('#{options[:from]}').select2('open')}
37
+ page.execute_script %Q{$('#{options[:from]}').select2('open')}
38
+ container = options[:dropdown_css] || ".select2-with-searchbox"
39
+ #p "$('#{container} input.select2-input').val('#{value}').trigger('keyup-change');"
40
+ page.execute_script "$('#{container} input.select2-input').val('#{value}').trigger('keyup-change');"
35
41
  select_select2_result(value)
36
42
  end
37
43
 
@@ -39,15 +45,20 @@ module CapybaraExt
39
45
  id = find_label_by_text(options[:from])
40
46
 
41
47
  # generate select2 id
42
- select2_id = "#s2id_#{id}"
48
+ options[:from] = "#s2id_#{id}"
49
+ targetted_select2(value, options)
50
+ end
43
51
 
52
+ def targetted_select2(value, options)
44
53
  # find select2 element and click it
45
- find("#{select2_id}").find('a').click
54
+ find(options[:from]).find('a').click
46
55
  select_select2_result(value)
47
56
  end
48
57
 
49
58
  def select_select2_result(value)
50
- find(:xpath, %Q{//div[@class="select2-result-label" and text()="#{value}"]}).click
59
+ #p %Q{$("div.select2-result-label:contains('#{value}')").mouseup()}
60
+ sleep(1)
61
+ page.execute_script(%Q{$("div.select2-result-label:contains('#{value}')").mouseup()})
51
62
  end
52
63
 
53
64
  def find_label_by_text(text)
@@ -1,5 +1,5 @@
1
1
  module Spree
2
2
  def self.version
3
- "1.3.0.rc2"
3
+ "1.3.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,51 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0.rc2
5
- prerelease: 6
4
+ version: 1.3.0
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Sean Schofield
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-16 00:00:00.000000000 Z
12
+ date: 2012-12-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: acts_as_list
16
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &70209186380480 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - '='
19
+ - - =
20
20
  - !ruby/object:Gem::Version
21
21
  version: 0.1.4
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - '='
28
- - !ruby/object:Gem::Version
29
- version: 0.1.4
24
+ version_requirements: *70209186380480
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: awesome_nested_set
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &70209186378780 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
- - - '='
30
+ - - =
36
31
  - !ruby/object:Gem::Version
37
32
  version: 2.1.5
38
33
  type: :runtime
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - '='
44
- - !ruby/object:Gem::Version
45
- version: 2.1.5
35
+ version_requirements: *70209186378780
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: jquery-rails
48
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &70209186388720 !ruby/object:Gem::Requirement
49
39
  none: false
50
40
  requirements:
51
41
  - - ~>
@@ -53,15 +43,10 @@ dependencies:
53
43
  version: '2.0'
54
44
  type: :runtime
55
45
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: '2.0'
46
+ version_requirements: *70209186388720
62
47
  - !ruby/object:Gem::Dependency
63
48
  name: select2-rails
64
- requirement: !ruby/object:Gem::Requirement
49
+ requirement: &70209186399300 !ruby/object:Gem::Requirement
65
50
  none: false
66
51
  requirements:
67
52
  - - ~>
@@ -69,47 +54,32 @@ dependencies:
69
54
  version: '3.2'
70
55
  type: :runtime
71
56
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ~>
76
- - !ruby/object:Gem::Version
77
- version: '3.2'
57
+ version_requirements: *70209186399300
78
58
  - !ruby/object:Gem::Dependency
79
59
  name: highline
80
- requirement: !ruby/object:Gem::Requirement
60
+ requirement: &70209186396280 !ruby/object:Gem::Requirement
81
61
  none: false
82
62
  requirements:
83
- - - '='
63
+ - - =
84
64
  - !ruby/object:Gem::Version
85
65
  version: 1.6.11
86
66
  type: :runtime
87
67
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - '='
92
- - !ruby/object:Gem::Version
93
- version: 1.6.11
68
+ version_requirements: *70209186396280
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: state_machine
96
- requirement: !ruby/object:Gem::Requirement
71
+ requirement: &70209186410800 !ruby/object:Gem::Requirement
97
72
  none: false
98
73
  requirements:
99
- - - '='
74
+ - - =
100
75
  - !ruby/object:Gem::Version
101
76
  version: 1.1.2
102
77
  type: :runtime
103
78
  prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - '='
108
- - !ruby/object:Gem::Version
109
- version: 1.1.2
79
+ version_requirements: *70209186410800
110
80
  - !ruby/object:Gem::Dependency
111
81
  name: ffaker
112
- requirement: !ruby/object:Gem::Requirement
82
+ requirement: &70209186407680 !ruby/object:Gem::Requirement
113
83
  none: false
114
84
  requirements:
115
85
  - - ~>
@@ -117,15 +87,10 @@ dependencies:
117
87
  version: 1.12.0
118
88
  type: :runtime
119
89
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
123
- - - ~>
124
- - !ruby/object:Gem::Version
125
- version: 1.12.0
90
+ version_requirements: *70209186407680
126
91
  - !ruby/object:Gem::Dependency
127
92
  name: paperclip
128
- requirement: !ruby/object:Gem::Requirement
93
+ requirement: &70209186405000 !ruby/object:Gem::Requirement
129
94
  none: false
130
95
  requirements:
131
96
  - - ~>
@@ -133,15 +98,10 @@ dependencies:
133
98
  version: '2.8'
134
99
  type: :runtime
135
100
  prerelease: false
136
- version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
- requirements:
139
- - - ~>
140
- - !ruby/object:Gem::Version
141
- version: '2.8'
101
+ version_requirements: *70209186405000
142
102
  - !ruby/object:Gem::Dependency
143
103
  name: aws-sdk
144
- requirement: !ruby/object:Gem::Requirement
104
+ requirement: &70209186403600 !ruby/object:Gem::Requirement
145
105
  none: false
146
106
  requirements:
147
107
  - - ~>
@@ -149,47 +109,32 @@ dependencies:
149
109
  version: 1.3.4
150
110
  type: :runtime
151
111
  prerelease: false
152
- version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ~>
156
- - !ruby/object:Gem::Version
157
- version: 1.3.4
112
+ version_requirements: *70209186403600
158
113
  - !ruby/object:Gem::Dependency
159
114
  name: ransack
160
- requirement: !ruby/object:Gem::Requirement
115
+ requirement: &70209186418360 !ruby/object:Gem::Requirement
161
116
  none: false
162
117
  requirements:
163
118
  - - ~>
164
119
  - !ruby/object:Gem::Version
165
- version: 0.7.0
120
+ version: 0.7.2
166
121
  type: :runtime
167
122
  prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
- requirements:
171
- - - ~>
172
- - !ruby/object:Gem::Version
173
- version: 0.7.0
123
+ version_requirements: *70209186418360
174
124
  - !ruby/object:Gem::Dependency
175
125
  name: activemerchant
176
- requirement: !ruby/object:Gem::Requirement
126
+ requirement: &70209186416340 !ruby/object:Gem::Requirement
177
127
  none: false
178
128
  requirements:
179
- - - '='
129
+ - - =
180
130
  - !ruby/object:Gem::Version
181
131
  version: 1.28.0
182
132
  type: :runtime
183
133
  prerelease: false
184
- version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
- requirements:
187
- - - '='
188
- - !ruby/object:Gem::Version
189
- version: 1.28.0
134
+ version_requirements: *70209186416340
190
135
  - !ruby/object:Gem::Dependency
191
136
  name: rails
192
- requirement: !ruby/object:Gem::Requirement
137
+ requirement: &70209186413900 !ruby/object:Gem::Requirement
193
138
  none: false
194
139
  requirements:
195
140
  - - ~>
@@ -197,31 +142,21 @@ dependencies:
197
142
  version: 3.2.9
198
143
  type: :runtime
199
144
  prerelease: false
200
- version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
- requirements:
203
- - - ~>
204
- - !ruby/object:Gem::Version
205
- version: 3.2.9
145
+ version_requirements: *70209186413900
206
146
  - !ruby/object:Gem::Dependency
207
147
  name: kaminari
208
- requirement: !ruby/object:Gem::Requirement
148
+ requirement: &70209186425820 !ruby/object:Gem::Requirement
209
149
  none: false
210
150
  requirements:
211
- - - '='
151
+ - - =
212
152
  - !ruby/object:Gem::Version
213
153
  version: 0.13.0
214
154
  type: :runtime
215
155
  prerelease: false
216
- version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
- requirements:
219
- - - '='
220
- - !ruby/object:Gem::Version
221
- version: 0.13.0
156
+ version_requirements: *70209186425820
222
157
  - !ruby/object:Gem::Dependency
223
158
  name: deface
224
- requirement: !ruby/object:Gem::Requirement
159
+ requirement: &70209186421040 !ruby/object:Gem::Requirement
225
160
  none: false
226
161
  requirements:
227
162
  - - ! '>='
@@ -229,15 +164,10 @@ dependencies:
229
164
  version: 0.9.0
230
165
  type: :runtime
231
166
  prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
- requirements:
235
- - - ! '>='
236
- - !ruby/object:Gem::Version
237
- version: 0.9.0
167
+ version_requirements: *70209186421040
238
168
  - !ruby/object:Gem::Dependency
239
169
  name: stringex
240
- requirement: !ruby/object:Gem::Requirement
170
+ requirement: &70209186433540 !ruby/object:Gem::Requirement
241
171
  none: false
242
172
  requirements:
243
173
  - - ~>
@@ -245,60 +175,40 @@ dependencies:
245
175
  version: 1.3.2
246
176
  type: :runtime
247
177
  prerelease: false
248
- version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
- requirements:
251
- - - ~>
252
- - !ruby/object:Gem::Version
253
- version: 1.3.2
178
+ version_requirements: *70209186433540
254
179
  - !ruby/object:Gem::Dependency
255
180
  name: cancan
256
- requirement: !ruby/object:Gem::Requirement
181
+ requirement: &70209186431100 !ruby/object:Gem::Requirement
257
182
  none: false
258
183
  requirements:
259
- - - '='
184
+ - - =
260
185
  - !ruby/object:Gem::Version
261
- version: 1.6.7
186
+ version: 1.6.8
262
187
  type: :runtime
263
188
  prerelease: false
264
- version_requirements: !ruby/object:Gem::Requirement
265
- none: false
266
- requirements:
267
- - - '='
268
- - !ruby/object:Gem::Version
269
- version: 1.6.7
189
+ version_requirements: *70209186431100
270
190
  - !ruby/object:Gem::Dependency
271
191
  name: money
272
- requirement: !ruby/object:Gem::Requirement
192
+ requirement: &70209186514640 !ruby/object:Gem::Requirement
273
193
  none: false
274
194
  requirements:
275
- - - '='
195
+ - - =
276
196
  - !ruby/object:Gem::Version
277
197
  version: 5.0.0
278
198
  type: :runtime
279
199
  prerelease: false
280
- version_requirements: !ruby/object:Gem::Requirement
281
- none: false
282
- requirements:
283
- - - '='
284
- - !ruby/object:Gem::Version
285
- version: 5.0.0
200
+ version_requirements: *70209186514640
286
201
  - !ruby/object:Gem::Dependency
287
202
  name: rabl
288
- requirement: !ruby/object:Gem::Requirement
203
+ requirement: &70209186511340 !ruby/object:Gem::Requirement
289
204
  none: false
290
205
  requirements:
291
- - - '='
206
+ - - =
292
207
  - !ruby/object:Gem::Version
293
208
  version: 0.7.2
294
209
  type: :runtime
295
210
  prerelease: false
296
- version_requirements: !ruby/object:Gem::Requirement
297
- none: false
298
- requirements:
299
- - - '='
300
- - !ruby/object:Gem::Version
301
- version: 0.7.2
211
+ version_requirements: *70209186511340
302
212
  description: Required dependency for Spree
303
213
  email: sean@spreecommerce.com
304
214
  executables: []
@@ -1240,13 +1150,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
1240
1150
  required_rubygems_version: !ruby/object:Gem::Requirement
1241
1151
  none: false
1242
1152
  requirements:
1243
- - - ! '>'
1153
+ - - ! '>='
1244
1154
  - !ruby/object:Gem::Version
1245
- version: 1.3.1
1155
+ version: '0'
1156
+ segments:
1157
+ - 0
1158
+ hash: 1528119227121806143
1246
1159
  requirements:
1247
1160
  - none
1248
1161
  rubyforge_project: spree_core
1249
- rubygems_version: 1.8.23
1162
+ rubygems_version: 1.8.10
1250
1163
  signing_key:
1251
1164
  specification_version: 3
1252
1165
  summary: Core e-commerce functionality for the Spree project.