spree_core 0.60.0.RC1 → 0.60.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.
- data/app/controllers/admin/line_items_controller.rb +12 -13
- data/app/controllers/admin/orders_controller.rb +11 -3
- data/app/controllers/admin/payment_methods_controller.rb +3 -3
- data/app/controllers/admin/payments_controller.rb +12 -5
- data/app/controllers/admin/product_groups_controller.rb +1 -1
- data/app/controllers/admin/product_scopes_controller.rb +12 -8
- data/app/controllers/admin/products_controller.rb +7 -7
- data/app/controllers/admin/properties_controller.rb +3 -1
- data/app/controllers/admin/prototypes_controller.rb +4 -2
- data/app/controllers/admin/reports_controller.rb +5 -1
- data/app/controllers/admin/resource_controller.rb +40 -31
- data/app/controllers/admin/return_authorizations_controller.rb +1 -1
- data/app/controllers/admin/shipments_controller.rb +7 -8
- data/app/controllers/admin/states_controller.rb +3 -3
- data/app/controllers/admin/taxonomies_controller.rb +5 -2
- data/app/controllers/admin/taxons_controller.rb +39 -18
- data/app/controllers/admin/users_controller.rb +5 -5
- data/app/controllers/admin/variants_controller.rb +4 -4
- data/app/controllers/admin/zones_controller.rb +3 -2
- data/app/controllers/checkout_controller.rb +6 -5
- data/app/controllers/content_controller.rb +8 -2
- data/app/controllers/orders_controller.rb +8 -5
- data/app/controllers/products_controller.rb +9 -5
- data/app/controllers/spree/base_controller.rb +1 -0
- data/app/controllers/taxons_controller.rb +5 -1
- data/app/helpers/admin/taxons_helper.rb +14 -1
- data/app/helpers/spree/base_helper.rb +2 -1
- data/app/models/app_configuration.rb +1 -0
- data/app/models/creditcard.rb +1 -1
- data/app/views/admin/orders/history.html.erb +1 -1
- data/app/views/admin/reports/index.html.erb +3 -3
- data/app/views/admin/taxons/available.js.erb +2 -2
- data/app/views/admin/taxons/selected.html.erb +1 -0
- data/app/views/orders/show.html.erb +10 -12
- data/app/views/products/show.html.erb +1 -1
- data/app/views/taxons/show.html.erb +1 -1
- data/config/locales/en.yml +1 -3
- data/config/routes.rb +1 -0
- data/lib/product_filters.rb +2 -2
- data/lib/spree_base.rb +1 -0
- data/lib/spree_core.rb +6 -0
- data/lib/spree_core/ext/hash.rb +75 -0
- data/lib/spree_core/spree_custom_responder.rb +29 -0
- data/lib/spree_core/spree_respond_with.rb +57 -0
- data/lib/spree_core/version.rb +1 -1
- data/public/javascripts/taxonomy.js +8 -4
- data/public/stylesheets/admin/admin-reset.css +2 -0
- metadata +20 -22
@@ -55,7 +55,8 @@ module Spree::BaseHelper
|
|
55
55
|
end
|
56
56
|
|
57
57
|
def meta_data_tags
|
58
|
-
|
58
|
+
object = instance_variable_get('@'+controller_name.singularize)
|
59
|
+
return unless object
|
59
60
|
"".tap do |tags|
|
60
61
|
if object.respond_to?(:meta_keywords) and object.meta_keywords.present?
|
61
62
|
tags << tag('meta', :name => 'keywords', :content => object.meta_keywords) + "\n"
|
@@ -34,6 +34,7 @@ class AppConfiguration < Configuration
|
|
34
34
|
preference :cache_static_content, :boolean, :default => true
|
35
35
|
preference :use_content_controller, :boolean, :default => true
|
36
36
|
preference :allow_checkout_on_gateway_error, :boolean, :default => false
|
37
|
+
preference :select_taxons_from_tree, :boolean, :default => false # provide opportunity to select taxons from tree instead of search with autocomplete
|
37
38
|
|
38
39
|
validates :name, :presence => true, :uniqueness => true
|
39
40
|
|
data/app/models/creditcard.rb
CHANGED
@@ -96,7 +96,7 @@ class Creditcard < ActiveRecord::Base
|
|
96
96
|
gateway_error(response) unless response.success?
|
97
97
|
end
|
98
98
|
rescue ActiveMerchant::ConnectionError
|
99
|
-
gateway_error t(:unable_to_connect_to_gateway)
|
99
|
+
gateway_error I18n.t(:unable_to_connect_to_gateway)
|
100
100
|
end
|
101
101
|
|
102
102
|
def capture(payment)
|
@@ -7,11 +7,11 @@
|
|
7
7
|
<th><%= t("description") %></th>
|
8
8
|
</tr>
|
9
9
|
</thead>
|
10
|
-
<tbody>
|
10
|
+
<tbody>
|
11
11
|
<% @reports.each do |key, value| %>
|
12
12
|
<tr>
|
13
|
-
<td><%= link_to
|
14
|
-
<td><%=
|
13
|
+
<td><%= link_to value[:name], send("#{key}_admin_reports_url".to_sym) %></td>
|
14
|
+
<td><%= value[:description] %></td>
|
15
15
|
</tr>
|
16
16
|
<% end %>
|
17
17
|
</tbody>
|
@@ -15,7 +15,7 @@
|
|
15
15
|
</tr>
|
16
16
|
</thead>
|
17
17
|
<tbody>
|
18
|
-
<% @
|
18
|
+
<% @taxons.each do |taxon| %>
|
19
19
|
<tr id="<%= dom_id(taxon, :sel) %>">
|
20
20
|
<td><%= taxon.name %></td>
|
21
21
|
<td><%= taxon_path taxon %></td>
|
@@ -26,7 +26,7 @@
|
|
26
26
|
</td>
|
27
27
|
</tr>
|
28
28
|
<% end %>
|
29
|
-
<% if @
|
29
|
+
<% if @taxons.empty? %>
|
30
30
|
<tr><td colspan="3"><%= t('no_match_found') %>.</td></tr>
|
31
31
|
<% end %>
|
32
32
|
</tbody>
|
@@ -1,16 +1,14 @@
|
|
1
|
-
<
|
2
|
-
<%= link_to t('back_to_store'), products_path %>
|
1
|
+
<h1><%= accurate_title %></h1>
|
3
2
|
|
3
|
+
<div id="order">
|
4
4
|
<% if params.has_key? :checkout_complete %>
|
5
|
-
<
|
6
|
-
<h3><%= t('thank_you_for_your_order') %></h3>
|
7
|
-
<% else %>
|
8
|
-
| <%= link_to t('my_account'), account_path if current_user%>
|
5
|
+
<h3><%= t('thank_you_for_your_order') %></h3>
|
9
6
|
<% end %>
|
10
|
-
<br/><br/>
|
11
|
-
|
12
7
|
<%= render :partial => 'shared/order_details', :locals => {:order => @order} %>
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
8
|
+
<p>
|
9
|
+
<%= link_to t('back_to_store'), root_path %>
|
10
|
+
<% unless params.has_key? :checkout_complete %>
|
11
|
+
| <%= link_to t('my_account'), account_path if current_user%>
|
12
|
+
<% end %>
|
13
|
+
</p>
|
14
|
+
</div>
|
data/config/locales/en.yml
CHANGED
@@ -822,9 +822,7 @@ en:
|
|
822
822
|
roles: Roles
|
823
823
|
sales_tax: "Sales Tax"
|
824
824
|
sales_total: "Sales Total"
|
825
|
-
|
826
|
-
sales_totals: "Sales Totals"
|
827
|
-
sales_totals_description: "Sales Total For All Orders"
|
825
|
+
sales_total_description: "Sales Total For All Orders"
|
828
826
|
save_and_continue: Save and Continue
|
829
827
|
save_preferences: Save Preferences
|
830
828
|
scope: Scope
|
data/config/routes.rb
CHANGED
data/lib/product_filters.rb
CHANGED
@@ -88,7 +88,7 @@ module ProductFilters
|
|
88
88
|
}
|
89
89
|
|
90
90
|
def ProductFilters.brand_filter
|
91
|
-
brands = ProductProperty.
|
91
|
+
brands = ProductProperty.where(:property_id => @@brand_property).map(&:value).compact.uniq
|
92
92
|
conds = Hash[*brands.map {|b| [b, "product_properties.value = '#{b}'"]}.flatten]
|
93
93
|
{ :name => "Brands",
|
94
94
|
:scope => :brand_any,
|
@@ -125,7 +125,7 @@ module ProductFilters
|
|
125
125
|
if taxon.nil?
|
126
126
|
taxon = Taxonomy.first.root
|
127
127
|
end
|
128
|
-
all_brands = ProductProperty.
|
128
|
+
all_brands = ProductProperty.where(:property_id => @@brand_property).map(&:value).uniq
|
129
129
|
scope = ProductProperty.scoped(:conditions => ["property_id = ?", @@brand_property]).
|
130
130
|
scoped(:joins => {:product => :taxons},
|
131
131
|
:conditions => ["taxons.id in (?)", [taxon] + taxon.descendants])
|
data/lib/spree_base.rb
CHANGED
@@ -106,6 +106,7 @@ module SpreeBase
|
|
106
106
|
|
107
107
|
receiver.send :helper_method, 'title'
|
108
108
|
receiver.send :helper_method, 'title='
|
109
|
+
receiver.send :helper_method, 'accurate_title'
|
109
110
|
receiver.send :helper_method, 'get_taxonomies'
|
110
111
|
receiver.send :helper_method, 'current_gateway'
|
111
112
|
receiver.send :helper_method, 'current_order'
|
data/lib/spree_core.rb
CHANGED
@@ -41,12 +41,18 @@ require "meta_search"
|
|
41
41
|
require "find_by_param"
|
42
42
|
|
43
43
|
require 'spree_core/ext/active_record'
|
44
|
+
require 'spree_core/ext/hash'
|
44
45
|
|
45
46
|
require 'spree_core/delegate_belongs_to'
|
46
47
|
ActiveRecord::Base.send :include, DelegateBelongsTo
|
47
48
|
|
48
49
|
require 'spree_core/theme_support'
|
49
50
|
require 'spree_core/enumerable_constants'
|
51
|
+
|
52
|
+
require 'spree_core/spree_custom_responder'
|
53
|
+
require 'spree_core/spree_respond_with'
|
54
|
+
|
55
|
+
|
50
56
|
require 'spree_core/ssl_requirement'
|
51
57
|
require 'spree_core/preferences/model_hooks'
|
52
58
|
require 'spree_core/preferences/preference_definition'
|
@@ -0,0 +1,75 @@
|
|
1
|
+
#
|
2
|
+
# = Hash Recursive Merge
|
3
|
+
#
|
4
|
+
# Merges a Ruby Hash recursively, Also known as deep merge.
|
5
|
+
# Recursive version of Hash#merge and Hash#merge!.
|
6
|
+
#
|
7
|
+
# Category:: Ruby
|
8
|
+
# Package:: Hash
|
9
|
+
# Author:: Simone Carletti <weppos@weppos.net>
|
10
|
+
# Copyright:: 2007-2008 The Authors
|
11
|
+
# License:: MIT License
|
12
|
+
# Link:: http://www.simonecarletti.com/
|
13
|
+
# Source:: http://gist.github.com/gists/6391/
|
14
|
+
#
|
15
|
+
module HashRecursiveMerge
|
16
|
+
|
17
|
+
#
|
18
|
+
# Recursive version of Hash#merge!
|
19
|
+
#
|
20
|
+
# Adds the contents of +other_hash+ to +hsh+,
|
21
|
+
# merging entries in +hsh+ with duplicate keys with those from +other_hash+.
|
22
|
+
#
|
23
|
+
# Compared with Hash#merge!, this method supports nested hashes.
|
24
|
+
# When both +hsh+ and +other_hash+ contains an entry with the same key,
|
25
|
+
# it merges and returns the values from both arrays.
|
26
|
+
#
|
27
|
+
# h1 = {"a" => 100, "b" => 200, "c" => {"c1" => 12, "c2" => 14}}
|
28
|
+
# h2 = {"b" => 254, "c" => 300, "c" => {"c1" => 16, "c3" => 94}}
|
29
|
+
# h1.rmerge!(h2) #=> {"a" => 100, "b" => 254, "c" => {"c1" => 16, "c2" => 14, "c3" => 94}}
|
30
|
+
#
|
31
|
+
# Simply using Hash#merge! would return
|
32
|
+
#
|
33
|
+
# h1.merge!(h2) #=> {"a" => 100, "b" = >254, "c" => {"c1" => 16, "c3" => 94}}
|
34
|
+
#
|
35
|
+
def rmerge!(other_hash)
|
36
|
+
merge!(other_hash) do |key, oldval, newval|
|
37
|
+
oldval.class == self.class ? oldval.rmerge!(newval) : newval
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
#
|
42
|
+
# Recursive version of Hash#merge
|
43
|
+
#
|
44
|
+
# Compared with Hash#merge!, this method supports nested hashes.
|
45
|
+
# When both +hsh+ and +other_hash+ contains an entry with the same key,
|
46
|
+
# it merges and returns the values from both arrays.
|
47
|
+
#
|
48
|
+
# Compared with Hash#merge, this method provides a different approch
|
49
|
+
# for merging nasted hashes.
|
50
|
+
# If the value of a given key is an Hash and both +other_hash+ abd +hsh
|
51
|
+
# includes the same key, the value is merged instead replaced with
|
52
|
+
# +other_hash+ value.
|
53
|
+
#
|
54
|
+
# h1 = {"a" => 100, "b" => 200, "c" => {"c1" => 12, "c2" => 14}}
|
55
|
+
# h2 = {"b" => 254, "c" => 300, "c" => {"c1" => 16, "c3" => 94}}
|
56
|
+
# h1.rmerge(h2) #=> {"a" => 100, "b" => 254, "c" => {"c1" => 16, "c2" => 14, "c3" => 94}}
|
57
|
+
#
|
58
|
+
# Simply using Hash#merge would return
|
59
|
+
#
|
60
|
+
# h1.merge(h2) #=> {"a" => 100, "b" = >254, "c" => {"c1" => 16, "c3" => 94}}
|
61
|
+
#
|
62
|
+
def rmerge(other_hash)
|
63
|
+
r = {}
|
64
|
+
merge(other_hash) do |key, oldval, newval|
|
65
|
+
r[key] = oldval.class == self.class ? oldval.rmerge(newval) : newval
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
class Hash
|
73
|
+
include HashRecursiveMerge
|
74
|
+
end
|
75
|
+
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Spree
|
2
|
+
class Responder < ::ActionController::Responder #:nodoc:
|
3
|
+
|
4
|
+
attr_accessor :on_success, :on_failure
|
5
|
+
|
6
|
+
def initialize(controller, resources, options={})
|
7
|
+
super
|
8
|
+
|
9
|
+
class_name = controller.class.name.to_sym
|
10
|
+
action_name = options.delete(:action_name)
|
11
|
+
|
12
|
+
if result = Spree::BaseController.spree_responders[class_name].try(:[],action_name).try(:[], self.format.to_sym)
|
13
|
+
self.on_success = (result.respond_to?(:call) ? result : result[:success])
|
14
|
+
self.on_failure = (result.respond_to?(:call) ? result : result[:failure])
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def to_html
|
19
|
+
super and return if !(on_success || on_failure)
|
20
|
+
has_errors? ? controller.instance_exec(&on_failure) : controller.instance_exec(&on_success)
|
21
|
+
end
|
22
|
+
|
23
|
+
def to_format
|
24
|
+
super and return if !(on_success || on_failure)
|
25
|
+
has_errors? ? controller.instance_exec(&on_failure) : controller.instance_exec(&on_success)
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
module ActionController
|
2
|
+
class Base
|
3
|
+
def respond_with(*resources, &block)
|
4
|
+
raise "In order to use respond_with, first you need to declare the formats your " <<
|
5
|
+
"controller responds to in the class level" if self.class.mimes_for_respond_to.empty?
|
6
|
+
|
7
|
+
if response = retrieve_response_from_mimes(&block)
|
8
|
+
options = resources.size == 1 ? {} : resources.extract_options!
|
9
|
+
options.merge!(:default_response => response)
|
10
|
+
|
11
|
+
# following statement is not present in rails code. The action name is needed for processing
|
12
|
+
options.merge!(:action_name => action_name.to_sym)
|
13
|
+
|
14
|
+
# if responder is not specified then pass in Spree::Responder
|
15
|
+
(options.delete(:responder) || Spree::Responder).call(self, resources, options)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
module SpreeRespondWith
|
23
|
+
extend ActiveSupport::Concern
|
24
|
+
|
25
|
+
included do
|
26
|
+
cattr_accessor :spree_responders
|
27
|
+
self.spree_responders = {}
|
28
|
+
end
|
29
|
+
|
30
|
+
module ClassMethods
|
31
|
+
def respond_override(options={})
|
32
|
+
|
33
|
+
unless options.blank?
|
34
|
+
action_name = options.keys.first
|
35
|
+
action_value = options.values.first
|
36
|
+
|
37
|
+
if action_name.blank? || action_value.blank?
|
38
|
+
raise ArgumentError, "invalid values supplied #{options.inspect}"
|
39
|
+
end
|
40
|
+
|
41
|
+
format_name = action_value.keys.first
|
42
|
+
format_value = action_value.values.first
|
43
|
+
|
44
|
+
if format_name.blank? || format_value.blank?
|
45
|
+
raise ArgumentError, "invalid values supplied #{options.inspect}"
|
46
|
+
end
|
47
|
+
|
48
|
+
if format_value.is_a?(Proc)
|
49
|
+
options = {action_name.to_sym => {format_name.to_sym => {:success => format_value}}}
|
50
|
+
end
|
51
|
+
|
52
|
+
self.spree_responders.rmerge!(self.name.intern => options)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
data/lib/spree_core/version.rb
CHANGED
@@ -17,7 +17,8 @@ var handle_move = function(e, data) {
|
|
17
17
|
|
18
18
|
jQuery.ajax({
|
19
19
|
type: "POST",
|
20
|
-
|
20
|
+
dataType: "json",
|
21
|
+
url: base_url + node.attr("id"),
|
21
22
|
data: ({_method: "put", "taxon[parent_id]": new_parent.attr("id"), "taxon[position]": position, authenticity_token: AUTH_TOKEN}),
|
22
23
|
error: handle_ajax_error
|
23
24
|
});
|
@@ -34,11 +35,12 @@ var handle_create = function(e, data) {
|
|
34
35
|
|
35
36
|
jQuery.ajax({
|
36
37
|
type: "POST",
|
38
|
+
dataType: "json",
|
37
39
|
url: base_url,
|
38
40
|
data: ({"taxon[name]": name, "taxon[parent_id]": new_parent.attr("id"), "taxon[position]": position, authenticity_token: AUTH_TOKEN}),
|
39
41
|
error: handle_ajax_error,
|
40
|
-
success: function(
|
41
|
-
node.attr('id', id);
|
42
|
+
success: function(data,result) {
|
43
|
+
node.attr('id', data.taxon.id);
|
42
44
|
}
|
43
45
|
});
|
44
46
|
|
@@ -51,7 +53,8 @@ var handle_rename = function(e, data) {
|
|
51
53
|
|
52
54
|
jQuery.ajax({
|
53
55
|
type: "POST",
|
54
|
-
|
56
|
+
dataType: "json",
|
57
|
+
url: base_url + node.attr("id"),
|
55
58
|
data: ({_method: "put", "taxon[name]": name, authenticity_token: AUTH_TOKEN}),
|
56
59
|
error: handle_ajax_error
|
57
60
|
});
|
@@ -65,6 +68,7 @@ var handle_delete = function(e, data){
|
|
65
68
|
if(r){
|
66
69
|
jQuery.ajax({
|
67
70
|
type: "POST",
|
71
|
+
dataType: "json",
|
68
72
|
url: base_url + node.attr("id"),
|
69
73
|
data: ({_method: "delete", authenticity_token: AUTH_TOKEN}),
|
70
74
|
error: handle_ajax_error
|
metadata
CHANGED
@@ -1,15 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 239
|
5
|
+
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 60
|
9
9
|
- 0
|
10
|
-
|
11
|
-
- 1
|
12
|
-
version: 0.60.0.RC1
|
10
|
+
version: 0.60.0
|
13
11
|
platform: ruby
|
14
12
|
authors:
|
15
13
|
- Sean Schofield
|
@@ -17,7 +15,7 @@ autorequire:
|
|
17
15
|
bindir: bin
|
18
16
|
cert_chain: []
|
19
17
|
|
20
|
-
date: 2011-05-
|
18
|
+
date: 2011-05-13 00:00:00 -04:00
|
21
19
|
default_executable:
|
22
20
|
dependencies:
|
23
21
|
- !ruby/object:Gem::Dependency
|
@@ -186,12 +184,12 @@ dependencies:
|
|
186
184
|
requirements:
|
187
185
|
- - "="
|
188
186
|
- !ruby/object:Gem::Version
|
189
|
-
hash:
|
187
|
+
hash: 29
|
190
188
|
segments:
|
191
189
|
- 1
|
192
190
|
- 0
|
193
|
-
-
|
194
|
-
version: 1.0.
|
191
|
+
- 5
|
192
|
+
version: 1.0.5
|
195
193
|
type: :runtime
|
196
194
|
version_requirements: *id011
|
197
195
|
- !ruby/object:Gem::Dependency
|
@@ -202,12 +200,12 @@ dependencies:
|
|
202
200
|
requirements:
|
203
201
|
- - "="
|
204
202
|
- !ruby/object:Gem::Version
|
205
|
-
hash:
|
203
|
+
hash: 47
|
206
204
|
segments:
|
207
205
|
- 1
|
208
|
-
-
|
206
|
+
- 14
|
209
207
|
- 0
|
210
|
-
version: 1.
|
208
|
+
version: 1.14.0
|
211
209
|
type: :runtime
|
212
210
|
version_requirements: *id012
|
213
211
|
- !ruby/object:Gem::Dependency
|
@@ -218,12 +216,11 @@ dependencies:
|
|
218
216
|
requirements:
|
219
217
|
- - "="
|
220
218
|
- !ruby/object:Gem::Version
|
221
|
-
hash:
|
219
|
+
hash: -1876988247
|
222
220
|
segments:
|
223
221
|
- 3
|
224
222
|
- 0
|
225
|
-
-
|
226
|
-
- 2
|
223
|
+
- pre2
|
227
224
|
version: 3.0.pre2
|
228
225
|
type: :runtime
|
229
226
|
version_requirements: *id013
|
@@ -676,10 +673,13 @@ files:
|
|
676
673
|
- lib/spree_core/enumerable_constants.rb
|
677
674
|
- lib/spree_core/ext/active_record.rb
|
678
675
|
- lib/spree_core/ext/array.rb
|
676
|
+
- lib/spree_core/ext/hash.rb
|
679
677
|
- lib/spree_core/ext/string.rb
|
680
678
|
- lib/spree_core/preferences/model_hooks.rb
|
681
679
|
- lib/spree_core/preferences/preference_definition.rb
|
682
680
|
- lib/spree_core/railtie.rb
|
681
|
+
- lib/spree_core/spree_custom_responder.rb
|
682
|
+
- lib/spree_core/spree_respond_with.rb
|
683
683
|
- lib/spree_core/ssl_requirement.rb
|
684
684
|
- lib/spree_core/testing_support/factories/address_factory.rb
|
685
685
|
- lib/spree_core/testing_support/factories/adjustment_factory.rb
|
@@ -1133,18 +1133,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1133
1133
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1134
1134
|
none: false
|
1135
1135
|
requirements:
|
1136
|
-
- - "
|
1136
|
+
- - ">="
|
1137
1137
|
- !ruby/object:Gem::Version
|
1138
|
-
hash:
|
1138
|
+
hash: 3
|
1139
1139
|
segments:
|
1140
|
-
-
|
1141
|
-
|
1142
|
-
- 1
|
1143
|
-
version: 1.3.1
|
1140
|
+
- 0
|
1141
|
+
version: "0"
|
1144
1142
|
requirements:
|
1145
1143
|
- none
|
1146
1144
|
rubyforge_project: spree_core
|
1147
|
-
rubygems_version: 1.
|
1145
|
+
rubygems_version: 1.3.7
|
1148
1146
|
signing_key:
|
1149
1147
|
specification_version: 3
|
1150
1148
|
summary: Core e-commerce functionality for the Spree project.
|