spree_core 1.3.0 → 1.3.1

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.
@@ -488,6 +488,10 @@ mark {background-color: $link_text_color; color: $layout_background_color; font-
488
488
  border-color: $link_text_color;
489
489
  }
490
490
 
491
+ img {
492
+ max-width: 100%; /* Fluid images for product */
493
+ }
494
+
491
495
  }
492
496
 
493
497
  .price {
@@ -542,6 +546,7 @@ mark {background-color: $link_text_color; color: $layout_background_color; font-
542
546
 
543
547
  img {
544
548
  min-height: 240px;
549
+ max-width: 100%; /* Fluid images for product */
545
550
  }
546
551
  }
547
552
  #product-thumbnails {
@@ -7,7 +7,7 @@ module Spree
7
7
 
8
8
  respond_to do |format|
9
9
  format.html {
10
- redirect_to admin_tax_settings_path
10
+ redirect_to edit_admin_tax_settings_path
11
11
  }
12
12
  end
13
13
  end
@@ -39,32 +39,18 @@ module Spree
39
39
  end
40
40
 
41
41
  # Adds a new item to the order (creating a new order if none already exists)
42
- #
43
- # Parameters can be passed using the following possible parameter configurations:
44
- #
45
- # * Single variant/quantity pairing
46
- # +:variants => { variant_id => quantity }+
47
- #
48
- # * Multiple products at once
49
- # +:products => { product_id => variant_id, product_id => variant_id }, :quantity => quantity+
50
- # +:products => { product_id => variant_id, product_id => variant_id }, :quantity => { variant_id => quantity, variant_id => quantity }+
51
42
  def populate
52
- @order = current_order(true)
53
-
54
- params[:products].each do |product_id,variant_id|
55
- quantity = params[:quantity].to_i if !params[:quantity].is_a?(Hash)
56
- quantity = params[:quantity][variant_id].to_i if params[:quantity].is_a?(Hash)
57
- @order.add_variant(Variant.find(variant_id), quantity, current_currency) if quantity > 0
58
- end if params[:products]
59
-
60
- params[:variants].each do |variant_id, quantity|
61
- quantity = quantity.to_i
62
- @order.add_variant(Variant.find(variant_id), quantity, current_currency) if quantity > 0
63
- end if params[:variants]
64
-
65
- fire_event('spree.cart.add')
66
- fire_event('spree.order.contents_changed')
67
- respond_with(@order) { |format| format.html { redirect_to cart_path } }
43
+ populator = OrderPopulator.new(current_order(true), current_currency)
44
+ if populator.populate(params.slice(:products, :variants, :quantity))
45
+ fire_event('spree.cart.add')
46
+ fire_event('spree.order.contents_changed')
47
+ respond_with(@order) do |format|
48
+ format.html { redirect_to cart_path }
49
+ end
50
+ else
51
+ flash[:error] = populator.errors.full_messages.join(" ")
52
+ redirect_to :back
53
+ end
68
54
  end
69
55
 
70
56
  def empty
@@ -10,7 +10,7 @@ module Spree
10
10
  :default_style => :product,
11
11
  :url => '/spree/products/:id/:style/:basename.:extension',
12
12
  :path => ':rails_root/public/spree/products/:id/:style/:basename.:extension',
13
- :convert_options => { :all => '-strip' }
13
+ :convert_options => { :all => '-strip -auto-orient' }
14
14
  # save the w,h of the original image (from which others can be calculated)
15
15
  # we need to look at the write-queue for images which have not been saved yet
16
16
  after_post_process :find_dimensions
@@ -2,7 +2,7 @@ module Spree
2
2
  class LineItem < ActiveRecord::Base
3
3
  before_validation :adjust_quantity
4
4
  belongs_to :order
5
- belongs_to :variant
5
+ belongs_to :variant, :class_name => "Spree::Variant"
6
6
 
7
7
  has_one :product, :through => :variant
8
8
  has_many :adjustments, :as => :adjustable, :dependent => :destroy
@@ -0,0 +1,68 @@
1
+ module Spree
2
+ class OrderPopulator
3
+ attr_accessor :order, :currency
4
+ attr_reader :errors
5
+
6
+ def initialize(order, currency)
7
+ @order = order
8
+ @currency = currency
9
+ @errors = ActiveModel::Errors.new(self)
10
+ end
11
+
12
+ #
13
+ # Parameters can be passed using the following possible parameter configurations:
14
+ #
15
+ # * Single variant/quantity pairing
16
+ # +:variants => { variant_id => quantity }+
17
+ #
18
+ # * Multiple products at once
19
+ # +:products => { product_id => variant_id, product_id => variant_id }, :quantity => quantity+
20
+ # +:products => { product_id => variant_id, product_id => variant_id }, :quantity => { variant_id => quantity, variant_id => quantity }+
21
+ def populate(from_hash)
22
+ from_hash[:products].each do |product_id,variant_id|
23
+ attempt_cart_add(variant_id, from_hash[:quantity])
24
+ end if from_hash[:products]
25
+
26
+ from_hash[:variants].each do |variant_id, quantity|
27
+ attempt_cart_add(variant_id, quantity)
28
+ end if from_hash[:variants]
29
+
30
+ valid?
31
+ end
32
+
33
+ def valid?
34
+ errors.empty?
35
+ end
36
+
37
+ private
38
+
39
+ def attempt_cart_add(variant_id, quantity)
40
+ quantity = quantity.to_i
41
+ variant = Spree::Variant.find(variant_id)
42
+ if quantity > 0
43
+ if check_stock_levels(variant, quantity)
44
+ @order.add_variant(variant, quantity, currency)
45
+ end
46
+ end
47
+ end
48
+
49
+ def check_stock_levels(variant, quantity)
50
+ display_name = %Q{#{variant.name}}
51
+ display_name += %Q{ (#{variant.options_text})} unless variant.options_text.blank?
52
+
53
+ if variant.in_stock?
54
+ on_hand = variant.on_hand
55
+ if on_hand >= quantity
56
+ return true
57
+ else
58
+ errors.add(:base, %Q{There are only #{on_hand} of #{display_name.inspect} remaining.} +
59
+ %Q{ Please select a quantity less than or equal to this value.})
60
+ return false
61
+ end
62
+ else
63
+ errors.add(:base, %Q{#{display_name.inspect} is out of stock.})
64
+ return false
65
+ end
66
+ end
67
+ end
68
+ end
@@ -50,7 +50,7 @@
50
50
  ].join.gsub('"', "'").gsub("\n", "")
51
51
  %>
52
52
  <%= javascript_tag do -%>
53
- document.write("<%== state_elements %>");
53
+ $('#<%="#{address_id}state" %>').append("<%== state_elements %>");
54
54
  <% end %>
55
55
  </p>
56
56
  <noscript>
@@ -19,13 +19,20 @@
19
19
  <%= preference_field_tag 'preferences[attachment_path]', Spree::Config[:attachment_path], :type => :string %>
20
20
  </div>
21
21
 
22
-
23
22
  <div class="alpha eight columns">
24
23
  <div data-hook="attachment_default_url" class="field">
25
24
  <%= label_tag 'preferences[attachment_default_url]', t(:attachment_default_url) %>
26
25
  <%= preference_field_tag 'preferences[attachment_default_url]', Spree::Config[:attachment_default_url], :type => :string %>
27
26
  </div>
28
27
  </div>
28
+
29
+ <div class="alpha eight columns">
30
+ <div data-hook="attachment_url" class="field">
31
+ <%= label_tag 'preferences[attachment_url]', t(:attachment_url) %>
32
+ <%= preference_field_tag 'preferences[attachment_url]', Spree::Config[:attachment_url], :type => :string %>
33
+ </div>
34
+ </div>
35
+
29
36
  <div class="omega four columns">
30
37
  <div data-hook="attachment_default_style" class="field">
31
38
  <%= label_tag 'preferences[attachment_default_style]', t(:attachment_default_style) %>
@@ -50,9 +50,9 @@
50
50
  </div>
51
51
 
52
52
  <script>
53
- var variant_prices = {};
54
- <% @return_authorization.order.inventory_units.group_by(&:variant).each do | variant, units| %>
55
- variant_prices[<%= variant.id.to_s %>] = <%= variant.price %>;
53
+ var line_item_prices = {};
54
+ <% @return_authorization.order.line_items.group_by(&:variant).each do | variant, items| %>
55
+ line_item_prices[<%= variant.id.to_s %>] = <%= items.first.price %>;
56
56
  <% end %>
57
57
 
58
58
  $(document).ready(function(){
@@ -61,7 +61,7 @@
61
61
  var rma_amount = 0;
62
62
  $.each($("td.return_quantity input"), function(i, input) {
63
63
  var variant_id = $(input).attr('id').replace("return_quantity_", "");
64
- rma_amount += variant_prices[variant_id] * $(input).val()
64
+ rma_amount += line_item_prices[variant_id] * $(input).val()
65
65
  });
66
66
 
67
67
  if(!isNaN(rma_amount)){
@@ -20,7 +20,7 @@
20
20
  <tbody id="subtotal" data-hook="order_details_subtotal" class="with-border">
21
21
  <tr class="total" id="subtotal-row">
22
22
  <td colspan="3"><b><%= t(:subtotal) %>:</b></td>
23
- <td class="total"><span><%= @order.display_total %></span></td>
23
+ <td class="total"><span><%= @order.display_item_total %></span></td>
24
24
  </tr>
25
25
  </tbody>
26
26
  <tbody id="order-charges" data-hook="order_details_adjustments" class="with-border">
@@ -6,9 +6,10 @@
6
6
 
7
7
  <%= form_tag admin_tax_settings_path, :method => :put do %>
8
8
  <div data-hook="shipment_vat" class="field align-center">
9
+ <%= hidden_field_tag 'preferences[shipment_inc_vat]', '0' %>
9
10
  <%= check_box_tag 'preferences[shipment_inc_vat]', '1', Spree::Config[:shipment_inc_vat] %>
10
11
  <%= label_tag nil, t(:shipment_inc_vat) %>
11
- <%= hidden_field_tag 'preferences[shipment_inc_vat]', '0' %>
12
+
12
13
  </div>
13
14
 
14
15
  <div class="form-buttons" data-hook="buttons">
@@ -2,10 +2,9 @@
2
2
  <% param_prefix = "payment_source[#{payment_method.id}]" %>
3
3
 
4
4
  <p class="field" data-hook="card_number">
5
- <%= label_tag nil, t(:card_number) %><br />
5
+ <%= label_tag nil, t(:card_number) %><span class="required">*</span><br />
6
6
  <% options_hash = Rails.env.production? ? {:autocomplete => 'off'} : {} %>
7
7
  <%= text_field_tag "#{param_prefix}[number]", '', options_hash.merge(:id => 'card_number', :class => 'required', :size => 19, :maxlength => 19, :autocomplete => "off") %>
8
- <span class="required">*</span>
9
8
  &nbsp;
10
9
  <span id="card_type" style="display:none;">
11
10
  ( <span id="looks_like" ><%= t(:card_type_is) %> <span id="type"></span></span>
@@ -14,15 +13,13 @@
14
13
  </span>
15
14
  </p>
16
15
  <p class="field" data-hook="card_expiration">
17
- <%= label_tag nil, t(:expiration) %><br />
16
+ <%= label_tag nil, t(:expiration) %><span class="required">*</span><br />
18
17
  <%= select_month(Date.today, { :prefix => param_prefix, :field_name => 'month', :use_month_numbers => true }, :class => 'required') %>
19
18
  <%= select_year(Date.today, { :prefix => param_prefix, :field_name => 'year', :start_year => Date.today.year, :end_year => Date.today.year + 15 }, :class => 'required') %>
20
- <span class="required">*</span>
21
19
  </p>
22
20
  <p class="field" data-hook="card_code">
23
- <%= label_tag nil, t(:card_code) %><br />
21
+ <%= label_tag nil, t(:card_code) %><span class="required">*</span><br />
24
22
  <%= text_field_tag "#{param_prefix}[verification_value]", '', options_hash.merge(:id => 'card_code', :class => 'required', :size => 5) %>
25
- <span class="required">*</span>
26
23
  <%= link_to "(#{t(:whats_this)})", spree.content_path('cvv'), :target => '_blank', :onclick => "window.open(this.href,'cvv_info','left=20,top=20,width=500,height=500,toolbar=0,resizable=0,scrollbars=1');return false", "data-hook" => "cvv_link" %>
27
24
  </p>
28
25
  <%= hidden_field param_prefix, 'first_name', :value => @order.billing_firstname %>
@@ -1,19 +1,21 @@
1
- <!-- no need for thumnails unless there is more then one image -->
2
- <% if product.images.size > 1 || product.variant_images.size > 0 %>
1
+ <%# no need for thumbnails unless there is more than one image %>
2
+ <% if (@product.images + @product.variant_images).uniq.size > 1 %>
3
3
  <ul id="product-thumbnails" class="thumbnails inline" data-hook>
4
- <% product.images.each do |i| %>
5
- <li class="tmb-all" id="tmb-<%= i.id.to_s %>"><%= link_to image_tag(i.attachment.url(:mini)), i.attachment.url(:product) %></li>
4
+ <% @product.images.each do |i| %>
5
+ <li class='tmb-all' id='tmb-<%= i.id %>'>
6
+ <%= link_to(image_tag(i.attachment.url(:mini)), i.attachment.url(:product), :class => 'tmb-all', :id => "tmb-#{i.id}") %>
7
+ </li>
8
+ <% end %>
9
+
10
+ <% if @product.has_variants? %>
11
+ <% @variants.select(&:available?).each do |v| %>
12
+ <% v.images.each do |i| %>
13
+ <% next if @product.images.include?(i) %>
14
+ <li class='vtmb-<%= v.id %> vtmb' id='tmb-<%= i.id %>'>
15
+ <%= link_to(image_tag(i.attachment.url(:mini)), i.attachment.url(:product)) %>
16
+ </li>
17
+ <% end %>
18
+ <% end %>
6
19
  <% end %>
7
- <% if @product.has_variants?
8
- @variants.each do |v|
9
- if v.available?
10
- v.images.each do |i| %>
11
- <li class="vtmb-<%= v.id.to_s %> vtmb" id="tmb-<%= i.id.to_s %>"><%= link_to image_tag(i.attachment.url(:mini)), i.attachment.url(:product) %></li>
12
- <%
13
- end
14
- end
15
- end
16
- end
17
- %>
18
20
  </ul>
19
21
  <% end %>
@@ -9,7 +9,7 @@
9
9
  <%= render :partial => 'image' %>
10
10
  </div>
11
11
  <div id="thumbnails" data-hook>
12
- <%= render :partial => 'thumbnails', :locals => { :product => @product } %>
12
+ <%= render :partial => 'thumbnails' %>
13
13
  </div>
14
14
  </div>
15
15
 
@@ -260,9 +260,10 @@ en:
260
260
  assign_taxon: "Assign Taxon"
261
261
  assign_taxons: "Assign Taxons"
262
262
  attachment_default_style: "Attachments Style"
263
- attachment_default_url: "Attachments URL"
263
+ attachment_default_url: "Attachments Default URL"
264
264
  attachment_path: "Attachments Path"
265
265
  attachment_styles: "Paperclip Styles"
266
+ attachment_url: "Attachments URL"
266
267
  authorization_failure: "Authorization Failure"
267
268
  authorized: Authorized
268
269
  availability: "Availability"
@@ -413,8 +414,6 @@ en:
413
414
  email_server_settings_description: "Set email server settings."
414
415
  empty: "Empty"
415
416
  empty_cart: "Empty Cart"
416
- enable_login_via_login_password: "Use standard email/password"
417
- enable_login_via_openid: "Use OpenID instead"
418
417
  enable_mail_delivery: Enable Mail Delivery
419
418
  ending_in: "Ending in"
420
419
  enter_exactly_as_shown_on_card: Please enter exactly as shown on the card
@@ -496,7 +495,7 @@ en:
496
495
  image_settings: "Image Settings"
497
496
  image_settings_description: "Image Settings Description"
498
497
  image_settings_updated: "Image Settings successfully updated."
499
- image_settings_warning: "You will need to regenerate thumbnails if you update the paperclip styles. Use rake paperclip:refresh:thumbnails to do this."
498
+ image_settings_warning: "You will need to regenerate thumbnails if you update the paperclip styles. Use rake paperclip:refresh:thumbnails CLASS=Spree::Image to do this."
500
499
  in_progress: "In Progress"
501
500
  include_in_shipment: Include in Shipment
502
501
  included_in_other_shipment: Included in another Shipment
@@ -534,14 +533,6 @@ en:
534
533
  live: "Live"
535
534
  loading: Loading
536
535
  locale_changed: "Locale Changed"
537
- logged_in_as: "Logged in as"
538
- logged_in_succesfully: "Logged in successfully"
539
- logged_out: "You have been logged out."
540
- login: Login
541
- login_as_existing: "Login as Existing Customer"
542
- login_failed: "Login authentication failed."
543
- login_name: Login
544
- logout: Logout
545
536
  look_for_similar_items: Look for similar items
546
537
  maestro_or_solo_cards: Maestro/Solo cards
547
538
  mail_delivery_enabled: "Mail delivery is enabled"
data/config/routes.rb CHANGED
@@ -6,8 +6,6 @@ Spree::Core::Engine.routes.draw do
6
6
 
7
7
  match '/locale/set', :to => 'locale#set'
8
8
 
9
- resources :tax_categories
10
-
11
9
  resources :states, :only => :index
12
10
  resources :countries, :only => :index
13
11
 
@@ -25,27 +23,12 @@ Spree::Core::Engine.routes.draw do
25
23
 
26
24
  resources :orders do
27
25
  post :populate, :on => :collection
28
-
29
- resources :line_items
30
-
31
- resources :shipments do
32
- member do
33
- get :shipping_method
34
- end
35
- end
36
-
37
26
  end
27
+
38
28
  get '/cart', :to => 'orders#edit', :as => :cart
39
29
  put '/cart', :to => 'orders#update', :as => :update_cart
40
30
  put '/cart/empty', :to => 'orders#empty', :as => :empty_cart
41
31
 
42
- resources :shipments do
43
- member do
44
- get :shipping_method
45
- put :shipping_method
46
- end
47
- end
48
-
49
32
  # route globbing for pretty nested taxon and product paths
50
33
  match '/t/*id', :to => 'taxons#show', :as => :nested_taxons
51
34
 
@@ -18,13 +18,14 @@ class SplitPricesFromVariants < ActiveRecord::Migration
18
18
  end
19
19
 
20
20
  def down
21
- add_column :spree_variants, :price, :decimal, :after => :sku, :scale => 8, :precision => 2
21
+ prices = ActiveRecord::Base.connection.execute("select variant_id, amount from spree_prices")
22
+ add_column :spree_variants, :price, :decimal, :after => :sku, :scale => 2, :precision => 8
22
23
 
23
- Spree::Variant.all.each do |variant|
24
- variant.price = variant.default_price.amount
25
- variant.save!
24
+ prices.each do |price|
25
+ ActiveRecord::Base.connection.execute("update spree_variants set price = #{price['amount']} where id = #{price['variant_id']}")
26
26
  end
27
-
27
+
28
+ change_column :spree_variants, :price, :decimal, :after => :sku, :scale => 2, :precision => 8, :null => false
28
29
  drop_table :spree_prices
29
30
  end
30
31
  end
@@ -27,7 +27,7 @@ module Spree
27
27
  @current_order = current_order unless current_order.try(:completed?)
28
28
  end
29
29
  if create_order_if_necessary and (@current_order.nil? or @current_order.completed?)
30
- @current_order = Spree::Order.new(currency: current_currency)
30
+ @current_order = Spree::Order.new(:currency => current_currency)
31
31
  before_save_new_order
32
32
  @current_order.save!
33
33
  after_save_new_order
@@ -7,25 +7,8 @@ FactoryGirl.define do
7
7
  state 'pending'
8
8
  response_code '12345'
9
9
 
10
- # limit the payment amount to order's remaining balance, to avoid over-pay exceptions
11
- after_create do |pmt|
12
- #pmt.update_attribute(:amount, [pmt.amount, pmt.order.outstanding_balance].min)
13
- end
14
10
  end
15
11
 
16
- # factory :creditcard_txn do
17
- # payment
18
- # amount 45.75
19
- # response_code 12345
20
- # txn_type CreditcardTxn::TxnType::AUTHORIZE
21
- #
22
- # # match the payment amount to the payment's value
23
- # after_create do |txn|
24
- # # txn.update_attribute(:amount, [txn.amount, txn.payment.payment].min)
25
- # txn.update_attribute(:amount, txn.payment.amount)
26
- # end
27
- # end
28
-
29
12
  factory :check_payment, :class => Spree::Payment do
30
13
  amount 45.75
31
14
  payment_method { FactoryGirl.create(:payment_method) }
@@ -7,11 +7,13 @@ FactoryGirl.define do
7
7
  sku 'ABC'
8
8
  available_on 1.year.ago
9
9
  deleted_at nil
10
+ on_hand 5
10
11
  end
11
12
 
12
13
  factory :product, :parent => :simple_product do
13
14
  tax_category { |r| Spree::TaxCategory.first || r.association(:tax_category) }
14
15
  shipping_category { |r| Spree::ShippingCategory.first || r.association(:shipping_category) }
16
+ on_hand 5
15
17
  end
16
18
 
17
19
  factory :product_with_option_types, :parent => :product do
@@ -22,6 +24,7 @@ FactoryGirl.define do
22
24
  name "Custom Product"
23
25
  price "17.99"
24
26
  description { Faker::Lorem.paragraphs(1 + Kernel.rand(5)).join("\n") }
27
+ on_hand 5
25
28
 
26
29
  # associations:
27
30
  tax_category { |r| Spree::TaxCategory.first || r.association(:tax_category) }
@@ -18,6 +18,6 @@ class EmailValidator < ActiveModel::EachValidator
18
18
  rescue Exception => e
19
19
  r = false
20
20
  end
21
- record.errors[attribute] << (options[:message] || "is invalid") unless r
21
+ record.errors[attribute] << (options[:message] || I18n.t("errors.messages.invalid")) unless r
22
22
  end
23
23
  end
@@ -1,5 +1,5 @@
1
1
  module Spree
2
2
  def self.version
3
- "1.3.0"
3
+ "1.3.1"
4
4
  end
5
5
  end
data/lib/tasks/taxon.rake CHANGED
@@ -1,7 +1,7 @@
1
1
  namespace :spree do
2
2
  desc "Resets all taxon permalinks"
3
3
  task :reset_taxon_permalinks => :environment do
4
- Taxon.where(:parent_id => nil).each {|taxon| redo_permalinks(taxon) }
4
+ Spree::Taxon.where(:parent_id => nil).each {|taxon| redo_permalinks(taxon) }
5
5
  end
6
6
 
7
7
  def redo_permalinks(taxon)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,33 +9,43 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-19 00:00:00.000000000 Z
12
+ date: 2013-01-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: acts_as_list
16
- requirement: &70209186380480 !ruby/object:Gem::Requirement
16
+ requirement: !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: *70209186380480
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - '='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.1.4
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: awesome_nested_set
27
- requirement: &70209186378780 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
- - - =
35
+ - - '='
31
36
  - !ruby/object:Gem::Version
32
37
  version: 2.1.5
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70209186378780
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - '='
44
+ - !ruby/object:Gem::Version
45
+ version: 2.1.5
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: jquery-rails
38
- requirement: &70209186388720 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ~>
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '2.0'
44
54
  type: :runtime
45
55
  prerelease: false
46
- version_requirements: *70209186388720
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '2.0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: select2-rails
49
- requirement: &70209186399300 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ~>
@@ -54,32 +69,47 @@ dependencies:
54
69
  version: '3.2'
55
70
  type: :runtime
56
71
  prerelease: false
57
- version_requirements: *70209186399300
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: '3.2'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: highline
60
- requirement: &70209186396280 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
- - - =
83
+ - - '='
64
84
  - !ruby/object:Gem::Version
65
85
  version: 1.6.11
66
86
  type: :runtime
67
87
  prerelease: false
68
- version_requirements: *70209186396280
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - '='
92
+ - !ruby/object:Gem::Version
93
+ version: 1.6.11
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: state_machine
71
- requirement: &70209186410800 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
- - - =
99
+ - - '='
75
100
  - !ruby/object:Gem::Version
76
101
  version: 1.1.2
77
102
  type: :runtime
78
103
  prerelease: false
79
- version_requirements: *70209186410800
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - '='
108
+ - !ruby/object:Gem::Version
109
+ version: 1.1.2
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: ffaker
82
- requirement: &70209186407680 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ~>
@@ -87,10 +117,15 @@ dependencies:
87
117
  version: 1.12.0
88
118
  type: :runtime
89
119
  prerelease: false
90
- version_requirements: *70209186407680
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.12.0
91
126
  - !ruby/object:Gem::Dependency
92
127
  name: paperclip
93
- requirement: &70209186405000 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
94
129
  none: false
95
130
  requirements:
96
131
  - - ~>
@@ -98,10 +133,15 @@ dependencies:
98
133
  version: '2.8'
99
134
  type: :runtime
100
135
  prerelease: false
101
- version_requirements: *70209186405000
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ~>
140
+ - !ruby/object:Gem::Version
141
+ version: '2.8'
102
142
  - !ruby/object:Gem::Dependency
103
143
  name: aws-sdk
104
- requirement: &70209186403600 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
105
145
  none: false
106
146
  requirements:
107
147
  - - ~>
@@ -109,10 +149,15 @@ dependencies:
109
149
  version: 1.3.4
110
150
  type: :runtime
111
151
  prerelease: false
112
- version_requirements: *70209186403600
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ~>
156
+ - !ruby/object:Gem::Version
157
+ version: 1.3.4
113
158
  - !ruby/object:Gem::Dependency
114
159
  name: ransack
115
- requirement: &70209186418360 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
116
161
  none: false
117
162
  requirements:
118
163
  - - ~>
@@ -120,43 +165,63 @@ dependencies:
120
165
  version: 0.7.2
121
166
  type: :runtime
122
167
  prerelease: false
123
- version_requirements: *70209186418360
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: 0.7.2
124
174
  - !ruby/object:Gem::Dependency
125
175
  name: activemerchant
126
- requirement: &70209186416340 !ruby/object:Gem::Requirement
176
+ requirement: !ruby/object:Gem::Requirement
127
177
  none: false
128
178
  requirements:
129
- - - =
179
+ - - ~>
130
180
  - !ruby/object:Gem::Version
131
- version: 1.28.0
181
+ version: 1.29.3
132
182
  type: :runtime
133
183
  prerelease: false
134
- version_requirements: *70209186416340
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ~>
188
+ - !ruby/object:Gem::Version
189
+ version: 1.29.3
135
190
  - !ruby/object:Gem::Dependency
136
191
  name: rails
137
- requirement: &70209186413900 !ruby/object:Gem::Requirement
192
+ requirement: !ruby/object:Gem::Requirement
138
193
  none: false
139
194
  requirements:
140
195
  - - ~>
141
196
  - !ruby/object:Gem::Version
142
- version: 3.2.9
197
+ version: 3.2.10
143
198
  type: :runtime
144
199
  prerelease: false
145
- version_requirements: *70209186413900
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ~>
204
+ - !ruby/object:Gem::Version
205
+ version: 3.2.10
146
206
  - !ruby/object:Gem::Dependency
147
207
  name: kaminari
148
- requirement: &70209186425820 !ruby/object:Gem::Requirement
208
+ requirement: !ruby/object:Gem::Requirement
149
209
  none: false
150
210
  requirements:
151
- - - =
211
+ - - '='
152
212
  - !ruby/object:Gem::Version
153
213
  version: 0.13.0
154
214
  type: :runtime
155
215
  prerelease: false
156
- version_requirements: *70209186425820
216
+ version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
218
+ requirements:
219
+ - - '='
220
+ - !ruby/object:Gem::Version
221
+ version: 0.13.0
157
222
  - !ruby/object:Gem::Dependency
158
223
  name: deface
159
- requirement: &70209186421040 !ruby/object:Gem::Requirement
224
+ requirement: !ruby/object:Gem::Requirement
160
225
  none: false
161
226
  requirements:
162
227
  - - ! '>='
@@ -164,10 +229,15 @@ dependencies:
164
229
  version: 0.9.0
165
230
  type: :runtime
166
231
  prerelease: false
167
- version_requirements: *70209186421040
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ none: false
234
+ requirements:
235
+ - - ! '>='
236
+ - !ruby/object:Gem::Version
237
+ version: 0.9.0
168
238
  - !ruby/object:Gem::Dependency
169
239
  name: stringex
170
- requirement: &70209186433540 !ruby/object:Gem::Requirement
240
+ requirement: !ruby/object:Gem::Requirement
171
241
  none: false
172
242
  requirements:
173
243
  - - ~>
@@ -175,40 +245,60 @@ dependencies:
175
245
  version: 1.3.2
176
246
  type: :runtime
177
247
  prerelease: false
178
- version_requirements: *70209186433540
248
+ version_requirements: !ruby/object:Gem::Requirement
249
+ none: false
250
+ requirements:
251
+ - - ~>
252
+ - !ruby/object:Gem::Version
253
+ version: 1.3.2
179
254
  - !ruby/object:Gem::Dependency
180
255
  name: cancan
181
- requirement: &70209186431100 !ruby/object:Gem::Requirement
256
+ requirement: !ruby/object:Gem::Requirement
182
257
  none: false
183
258
  requirements:
184
- - - =
259
+ - - '='
185
260
  - !ruby/object:Gem::Version
186
261
  version: 1.6.8
187
262
  type: :runtime
188
263
  prerelease: false
189
- version_requirements: *70209186431100
264
+ version_requirements: !ruby/object:Gem::Requirement
265
+ none: false
266
+ requirements:
267
+ - - '='
268
+ - !ruby/object:Gem::Version
269
+ version: 1.6.8
190
270
  - !ruby/object:Gem::Dependency
191
271
  name: money
192
- requirement: &70209186514640 !ruby/object:Gem::Requirement
272
+ requirement: !ruby/object:Gem::Requirement
193
273
  none: false
194
274
  requirements:
195
- - - =
275
+ - - '='
196
276
  - !ruby/object:Gem::Version
197
277
  version: 5.0.0
198
278
  type: :runtime
199
279
  prerelease: false
200
- version_requirements: *70209186514640
280
+ version_requirements: !ruby/object:Gem::Requirement
281
+ none: false
282
+ requirements:
283
+ - - '='
284
+ - !ruby/object:Gem::Version
285
+ version: 5.0.0
201
286
  - !ruby/object:Gem::Dependency
202
287
  name: rabl
203
- requirement: &70209186511340 !ruby/object:Gem::Requirement
288
+ requirement: !ruby/object:Gem::Requirement
204
289
  none: false
205
290
  requirements:
206
- - - =
291
+ - - '='
207
292
  - !ruby/object:Gem::Version
208
293
  version: 0.7.2
209
294
  type: :runtime
210
295
  prerelease: false
211
- version_requirements: *70209186511340
296
+ version_requirements: !ruby/object:Gem::Requirement
297
+ none: false
298
+ requirements:
299
+ - - '='
300
+ - !ruby/object:Gem::Version
301
+ version: 0.7.2
212
302
  description: Required dependency for Spree
213
303
  email: sean@spreecommerce.com
214
304
  executables: []
@@ -415,6 +505,7 @@ files:
415
505
  - app/models/spree/option_value.rb
416
506
  - app/models/spree/order/checkout.rb
417
507
  - app/models/spree/order.rb
508
+ - app/models/spree/order_populator.rb
418
509
  - app/models/spree/order_updater.rb
419
510
  - app/models/spree/payment/processing.rb
420
511
  - app/models/spree/payment.rb
@@ -1155,11 +1246,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1155
1246
  version: '0'
1156
1247
  segments:
1157
1248
  - 0
1158
- hash: 1528119227121806143
1249
+ hash: -4519868674944601549
1159
1250
  requirements:
1160
1251
  - none
1161
1252
  rubyforge_project: spree_core
1162
- rubygems_version: 1.8.10
1253
+ rubygems_version: 1.8.23
1163
1254
  signing_key:
1164
1255
  specification_version: 3
1165
1256
  summary: Core e-commerce functionality for the Spree project.