spree 0.7.0 → 0.7.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of spree might be problematic. Click here for more details.
- data/CHANGELOG +14 -0
- data/app/controllers/admin/creditcard_payments_controller.rb +2 -2
- data/app/controllers/checkout_controller.rb +3 -3
- data/app/models/order.rb +6 -2
- data/app/views/checkout/_billing.html.erb +49 -0
- data/app/views/checkout/_confirm_order.erb +9 -0
- data/app/views/checkout/_form.html.erb +5 -137
- data/app/views/checkout/_payment.erb +24 -0
- data/app/views/checkout/_shipping.html.erb +50 -0
- data/app/views/checkout/_shipping_method.html.erb +5 -0
- data/config/environment.rb +1 -1
- data/config/locales/de.yml +2 -0
- data/config/locales/en-GB.yml +2 -0
- data/config/locales/es.yml +2 -0
- data/config/locales/fr-FR.yml +7 -3
- data/config/locales/it.yml +2 -0
- data/config/locales/nb-NO.yml +467 -0
- data/config/locales/pl.yml +2 -0
- data/config/locales/pt-BR.yml +2 -0
- data/config/locales/pt-PT.yml +2 -0
- data/config/locales/ru-RU.yml +10 -1
- data/db/sample/states.yml +2 -2
- data/lib/spree.rb +1 -1
- data/lib/tasks/release.rake +5 -1
- data/lib/tasks/translation.rake +1 -0
- data/public/javascripts/checkout.js +13 -25
- metadata +51 -5
data/CHANGELOG
CHANGED
@@ -1,3 +1,17 @@
|
|
1
|
+
== 0.7.1
|
2
|
+
|
3
|
+
* #298: rake spree:i18n:sync fails on yml files with empty lines
|
4
|
+
* #303: "What's This?" CVV link broken
|
5
|
+
* #308: Unable to change country for credit card payment (Admin form)
|
6
|
+
* #309: Last name of shipping address is wrong field
|
7
|
+
* #310: Fixed typo in Tennessee
|
8
|
+
* #311: No shipping method can be selected in IE 7
|
9
|
+
* #312: Remove assumption that order has shipment (when finalizing the order)
|
10
|
+
* #315: state selector failing on IE7 due to "Object not supported" js error
|
11
|
+
* #317: gem dependency command does not list all dependencies
|
12
|
+
* #314: Refactor checkout steps as partials
|
13
|
+
|
14
|
+
|
1
15
|
== 0.7.0
|
2
16
|
|
3
17
|
* # 166 - Order numbers should also use permalink
|
@@ -34,7 +34,7 @@ class Admin::CreditcardPaymentsController < Admin::BaseController
|
|
34
34
|
creditcard = @creditcard_payment.creditcard
|
35
35
|
creditcard.address = @payment_presenter.address
|
36
36
|
creditcard.save
|
37
|
-
flash[:notice] = t("
|
37
|
+
flash[:notice] = t("updated_successfully")
|
38
38
|
redirect_to edit_object_url
|
39
39
|
end
|
40
40
|
|
@@ -67,7 +67,7 @@ class Admin::CreditcardPaymentsController < Admin::BaseController
|
|
67
67
|
def load_data
|
68
68
|
load_object
|
69
69
|
@selected_country_id = params[:payment_presenter][:address_country_id].to_i if params.has_key?('payment_presenter')
|
70
|
-
@selected_country_id ||= @order.
|
70
|
+
@selected_country_id ||= @order.bill_address.country_id if @order and @order.bill_address
|
71
71
|
@selected_country_id ||= Spree::Config[:default_country_id]
|
72
72
|
|
73
73
|
@states = State.find_all_by_country_id(@selected_country_id, :order => 'name')
|
@@ -1,8 +1,8 @@
|
|
1
1
|
class CheckoutController < Spree::BaseController
|
2
|
-
before_filter :stop_monkey_business
|
2
|
+
before_filter :stop_monkey_business, :except => :cvv
|
3
3
|
before_filter :require_user_account
|
4
|
-
before_filter :load_data
|
5
|
-
before_filter :build_object, :except => [:new, :create]
|
4
|
+
before_filter :load_data, :except => :cvv
|
5
|
+
before_filter :build_object, :except => [:new, :create, :cvv]
|
6
6
|
|
7
7
|
ssl_required :new, :create
|
8
8
|
|
data/app/models/order.rb
CHANGED
@@ -162,8 +162,12 @@ class Order < ActiveRecord::Base
|
|
162
162
|
OrderMailer.deliver_confirm(self)
|
163
163
|
end
|
164
164
|
# finalize order totals
|
165
|
-
|
166
|
-
|
165
|
+
unless shipment.nil?
|
166
|
+
calculator = shipment.shipping_method.shipping_calculator.constantize.new
|
167
|
+
self.ship_amount = calculator.calculate_shipping(shipment)
|
168
|
+
else
|
169
|
+
self.ship_amount = 0
|
170
|
+
end
|
167
171
|
self.tax_amount = calculate_tax
|
168
172
|
save
|
169
173
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
<h2><%= t("billing_address")%></h2>
|
2
|
+
<div class="inner">
|
3
|
+
<p id="bfname">
|
4
|
+
<label for="<%= t("first_name") %>"><%= t("first_name") %></label>
|
5
|
+
<%= f.text_field :bill_address_firstname, :class => 'required' -%><span class="req">*</span>
|
6
|
+
</p>
|
7
|
+
<p id="blname">
|
8
|
+
<label for="<%= t("last_name") %>"><%= t("last_name") %></label>
|
9
|
+
<%= f.text_field :bill_address_lastname, :class => 'required' -%><span class="req">*</span>
|
10
|
+
</p>
|
11
|
+
<p id="baddress">
|
12
|
+
<label for=""><%= t("street_address") %></label>
|
13
|
+
<%= f.text_field :bill_address_address1, :class => 'required' -%><span class="req">*</span>
|
14
|
+
</p>
|
15
|
+
<p id="baddress2">
|
16
|
+
<label for=""><%= t("street_address_2") %></label>
|
17
|
+
<%= f.text_field :bill_address_address2 %>
|
18
|
+
</p>
|
19
|
+
<p id="bcity">
|
20
|
+
<label for=""><%= t("city") %></label>
|
21
|
+
<%= f.text_field :bill_address_city, :class => 'required' -%><span class="req">*</span>
|
22
|
+
</p>
|
23
|
+
<p>
|
24
|
+
<label for=""><%= t("state") %></label>
|
25
|
+
<span id="bstate">
|
26
|
+
<%= collection_select("checkout_presenter",
|
27
|
+
:bill_address_state_id,
|
28
|
+
@states,
|
29
|
+
:id,
|
30
|
+
:name,
|
31
|
+
{:include_blank => true},
|
32
|
+
{:style=> 'width:150px;'}) %>
|
33
|
+
</span>
|
34
|
+
<span class="req">*</span>
|
35
|
+
</p>
|
36
|
+
<p id="bzip">
|
37
|
+
<label for=""><%= t("zip") %></label>
|
38
|
+
<%= f.text_field :bill_address_zipcode, :class => 'required' -%><span class="req">*</span>
|
39
|
+
</p>
|
40
|
+
<p id="bcountry">
|
41
|
+
<label for=""><%= t("country") %></label>
|
42
|
+
<span id="bcountry"><%= f.collection_select :bill_address_country_id, @countries, :id, :name, {}, {:style => 'width:150px;', :class => 'required'} %></span>
|
43
|
+
</p>
|
44
|
+
<p id="bphone">
|
45
|
+
<label for=""><%= t("phone") %></label>
|
46
|
+
<%= f.text_field :bill_address_phone, :class => 'required' -%><span class="req">*</span>
|
47
|
+
</p>
|
48
|
+
<p><input id="validate_billing" type="button" value="<%=t("continue")%>"/></p>
|
49
|
+
</div>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<h2><%= t("confirm") %></h2>
|
2
|
+
<div class="inner">
|
3
|
+
<input id="final_answer" name="final_answer" type="hidden">
|
4
|
+
<div id="bdisplay"><img src="/images/ajax_loader.gif" id="bconfirm_loader" /></div>
|
5
|
+
<div id="sdisplay"><img src="/images/ajax_loader.gif" id="sconfirm_loader" /></div>
|
6
|
+
<div class="clear"></div>
|
7
|
+
<%= render :partial => 'shared/order_details', :locals => {:order => @order} -%>
|
8
|
+
<%= submit_tag t('place_order') %>
|
9
|
+
</div>
|
@@ -13,153 +13,21 @@
|
|
13
13
|
|
14
14
|
<%= error_messages_for :checkout_presenter %>
|
15
15
|
<div id="billing">
|
16
|
-
|
17
|
-
<div class="inner">
|
18
|
-
<p id="bfname">
|
19
|
-
<label for="<%= t("first_name") %>"><%= t("first_name") %></label>
|
20
|
-
<%= f.text_field :bill_address_firstname, :class => 'required' -%><span class="req">*</span>
|
21
|
-
</p>
|
22
|
-
<p id="blname">
|
23
|
-
<label for="<%= t("last_name") %>"><%= t("last_name") %></label>
|
24
|
-
<%= f.text_field :bill_address_lastname, :class => 'required' -%><span class="req">*</span>
|
25
|
-
</p>
|
26
|
-
<p id="baddress">
|
27
|
-
<label for=""><%= t("street_address") %></label>
|
28
|
-
<%= f.text_field :bill_address_address1, :class => 'required' -%><span class="req">*</span>
|
29
|
-
</p>
|
30
|
-
<p id="baddress2">
|
31
|
-
<label for=""><%= t("street_address_2") %></label>
|
32
|
-
<%= f.text_field :bill_address_address2 %>
|
33
|
-
</p>
|
34
|
-
<p id="bcity">
|
35
|
-
<label for=""><%= t("city") %></label>
|
36
|
-
<%= f.text_field :bill_address_city, :class => 'required' -%><span class="req">*</span>
|
37
|
-
</p>
|
38
|
-
<p>
|
39
|
-
<label for=""><%= t("state") %></label>
|
40
|
-
<span id="bstate">
|
41
|
-
<%= collection_select("checkout_presenter",
|
42
|
-
:bill_address_state_id,
|
43
|
-
@states,
|
44
|
-
:id,
|
45
|
-
:name,
|
46
|
-
{:include_blank => true},
|
47
|
-
{:style=> 'width:150px;'}) %>
|
48
|
-
</span>
|
49
|
-
<span class="req">*</span>
|
50
|
-
</p>
|
51
|
-
<p id="bzip">
|
52
|
-
<label for=""><%= t("zip") %></label>
|
53
|
-
<%= f.text_field :bill_address_zipcode, :class => 'required' -%><span class="req">*</span>
|
54
|
-
</p>
|
55
|
-
<p id="bcountry">
|
56
|
-
<label for=""><%= t("country") %></label>
|
57
|
-
<span id="bcountry"><%= f.collection_select :bill_address_country_id, @countries, :id, :name, {}, {:style => 'width:150px;', :class => 'required'} %></span>
|
58
|
-
</p>
|
59
|
-
<p id="bphone">
|
60
|
-
<label for=""><%= t("phone") %></label>
|
61
|
-
<%= f.text_field :bill_address_phone, :class => 'required' -%><span class="req">*</span>
|
62
|
-
</p>
|
63
|
-
<p><input id="validate_billing" type="button" value="<%=t("continue")%>"/></p>
|
64
|
-
</div>
|
16
|
+
<%= render :partial => 'billing', :locals => {:f => f} %>
|
65
17
|
</div>
|
66
18
|
|
67
19
|
<div id="shipping" class="checkout_disabled">
|
68
|
-
|
69
|
-
<div class="inner">
|
70
|
-
<p><label for="<%= t("use_billing_address") %>" id="use_billing"><%= t("use_billing_address") %></label><input id="checkout_presenter_same_address" name="checkout_presenter_same_address" type="checkbox" /></p>
|
71
|
-
<p id="sfname">
|
72
|
-
<label for="<%= t("first_name") %>"><%= t("first_name") %></label>
|
73
|
-
<%= f.text_field :ship_address_firstname, :class => 'required' -%><span class="req">*</span>
|
74
|
-
</p>
|
75
|
-
<p id="slname">
|
76
|
-
<label for="<%= t("last_name") %>"><%= t("last_name") %></label>
|
77
|
-
<%= f.text_field :ship_address_lastname, :class => 'required' -%><span class="req">*</span>
|
78
|
-
</p>
|
79
|
-
<p id="saddress">
|
80
|
-
<label for="<%= t("street_address") %>"><%= t("street_address") %></label>
|
81
|
-
<%= f.text_field :ship_address_address1, :class => 'required' -%><span class="req">*</span>
|
82
|
-
</p>
|
83
|
-
<p id="saddress2">
|
84
|
-
<label for="<%= t("street_address_2") %>"><%= t("street_address_2") %></label>
|
85
|
-
<%= f.text_field :ship_address_address2 %>
|
86
|
-
</p>
|
87
|
-
<p id="scity">
|
88
|
-
<label for="<%= t("city") %>"><%= t("city") %></label>
|
89
|
-
<%= f.text_field :ship_address_city, :class => 'required' -%><span class="req">*</span>
|
90
|
-
</p>
|
91
|
-
<p>
|
92
|
-
<label for="<%= t("state") %>"><%= t("state") %></label>
|
93
|
-
<span id="sstate">
|
94
|
-
<%= collection_select("checkout_presenter",
|
95
|
-
:ship_address_state_id,
|
96
|
-
@states,
|
97
|
-
:id,
|
98
|
-
:name,
|
99
|
-
{:include_blank => true},
|
100
|
-
{:style=> 'width:150px;'}) %>
|
101
|
-
</span>
|
102
|
-
<span class="req">*</span>
|
103
|
-
</p>
|
104
|
-
<p id="szip">
|
105
|
-
<label for="<%=t ("zip") %>"><%= t("zip") %></label>
|
106
|
-
<%= f.text_field :ship_address_zipcode, :class => 'required' -%><span class="req">*</span>
|
107
|
-
</p>
|
108
|
-
<p id="scountry">
|
109
|
-
<label for="<%= t("country") %>"><%= t("country") %></label>
|
110
|
-
<span id="scountry"><%= f.collection_select :ship_address_country_id, @shipping_countries, :id, :name, {}, {:style => 'width:150px;', :class => 'required'} %></span>
|
111
|
-
</p>
|
112
|
-
<p id="sphone">
|
113
|
-
<label for="<%= t("phone") %>"><%= t("phone") %></label>
|
114
|
-
<%= f.text_field :ship_address_phone, :class => 'required' -%><span class="req">*</span>
|
115
|
-
</p>
|
116
|
-
<p><input id="validate_shipping" type="button" value="<%=t("continue")%>"/></p>
|
117
|
-
</div>
|
20
|
+
<%= render :partial => 'shipping', :locals => {:f => f} %>
|
118
21
|
</div>
|
119
22
|
|
120
23
|
<div id="shipping_method" class="checkout_disabled">
|
121
|
-
|
122
|
-
<div class="inner">
|
123
|
-
<div id="methods"></div>
|
124
|
-
<p><input id="select_shipping_method" type="button" value="<%=t("continue")%>"/></p>
|
125
|
-
</div>
|
24
|
+
<%= render :partial => 'shipping_method', :locals => {:f => f} %>
|
126
25
|
</div>
|
127
26
|
|
128
27
|
<div id="creditcard" class="checkout_disabled">
|
129
|
-
|
130
|
-
<div class="inner">
|
131
|
-
<p>
|
132
|
-
<%= image_tag "creditcard.gif", :id => 'creditcard-image' %>
|
133
|
-
</p>
|
134
|
-
<p>
|
135
|
-
<label for=""><%= t("card_number") %></label>
|
136
|
-
<%= f.text_field :creditcard_number, :size=> 19, :class => 'required' -%><span class="req">*</span>
|
137
|
-
</p>
|
138
|
-
<p>
|
139
|
-
<label for=""><%= t("expiration") %></label>
|
140
|
-
<%= select_month(@date, :prefix => 'checkout_presenter', :field_name => 'creditcard_month', :use_month_numbers => true, :class => 'required') -%>
|
141
|
-
<%= select_year(@date, :prefix => 'checkout_presenter', :field_name => 'creditcard_year', :start_year => Date.today.year, :end_year => Date.today.year + 15, :class => 'required') -%>
|
142
|
-
<span class="req">*</span>
|
143
|
-
</p>
|
144
|
-
<p>
|
145
|
-
<label for=""><%= t("card_code") %></label>
|
146
|
-
<%= f.text_field :creditcard_verification_value, {:style => 'width:40px', :class => 'required'} -%><span class="req">*</span>
|
147
|
-
<a href="" onclick="window.open('/checkout/cvv','mywin','left=20,top=20,width=500,height=500,toolbar=0,resizable=0,scrollbars=1');return false">
|
148
|
-
(<%= t("whats_this") %>)
|
149
|
-
</a>
|
150
|
-
</p>
|
151
|
-
<p><input id="confirm_payment" type="button" value="<%=t("continue")%>"/></p>
|
152
|
-
</div>
|
28
|
+
<%= render :partial => 'payment', :locals => {:f => f} %>
|
153
29
|
</div>
|
154
30
|
|
155
31
|
<div id="confirm_order" class="checkout_disabled">
|
156
|
-
|
157
|
-
<div class="inner">
|
158
|
-
<input id="final_answer" name="final_answer" type="hidden">
|
159
|
-
<div id="bdisplay"><img src="/images/ajax_loader.gif" id="bconfirm_loader" /></div>
|
160
|
-
<div id="sdisplay"><img src="/images/ajax_loader.gif" id="sconfirm_loader" /></div>
|
161
|
-
<div class="clear"></div>
|
162
|
-
<%= render :partial => 'shared/order_details', :locals => {:order => @order} -%>
|
163
|
-
<%= submit_tag t('place_order') %>
|
164
|
-
</div>
|
32
|
+
<%= render :partial => 'confirm_order', :locals => {:f => f} %>
|
165
33
|
</div>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<h2><%= t("payment_information") %></h2>
|
2
|
+
<div class="inner">
|
3
|
+
<p>
|
4
|
+
<%= image_tag "creditcard.gif", :id => 'creditcard-image' %>
|
5
|
+
</p>
|
6
|
+
<p>
|
7
|
+
<label for=""><%= t("card_number") %></label>
|
8
|
+
<%= f.text_field :creditcard_number, :size=> 19, :class => 'required' -%><span class="req">*</span>
|
9
|
+
</p>
|
10
|
+
<p>
|
11
|
+
<label for=""><%= t("expiration") %></label>
|
12
|
+
<%= select_month(@date, :prefix => 'checkout_presenter', :field_name => 'creditcard_month', :use_month_numbers => true, :class => 'required') -%>
|
13
|
+
<%= select_year(@date, :prefix => 'checkout_presenter', :field_name => 'creditcard_year', :start_year => Date.today.year, :end_year => Date.today.year + 15, :class => 'required') -%>
|
14
|
+
<span class="req">*</span>
|
15
|
+
</p>
|
16
|
+
<p>
|
17
|
+
<label for=""><%= t("card_code") %></label>
|
18
|
+
<%= f.text_field :creditcard_verification_value, {:style => 'width:40px', :class => 'required'} -%><span class="req">*</span>
|
19
|
+
<a href="" onclick="window.open('/checkout/cvv','mywin','left=20,top=20,width=500,height=500,toolbar=0,resizable=0,scrollbars=1');return false">
|
20
|
+
(<%= t("whats_this") %>)
|
21
|
+
</a>
|
22
|
+
</p>
|
23
|
+
<p><input id="confirm_payment" type="button" value="<%=t("continue")%>"/></p>
|
24
|
+
</div>
|
@@ -0,0 +1,50 @@
|
|
1
|
+
<h2><%= t("shipping_address")%></h2>
|
2
|
+
<div class="inner">
|
3
|
+
<p><label for="<%= t("use_billing_address") %>" id="use_billing"><%= t("use_billing_address") %></label><input id="checkout_presenter_same_address" name="checkout_presenter_same_address" type="checkbox" /></p>
|
4
|
+
<p id="sfname">
|
5
|
+
<label for="<%= t("first_name") %>"><%= t("first_name") %></label>
|
6
|
+
<%= f.text_field :ship_address_firstname, :class => 'required' -%><span class="req">*</span>
|
7
|
+
</p>
|
8
|
+
<p id="slname">
|
9
|
+
<label for="<%= t("last_name") %>"><%= t("last_name") %></label>
|
10
|
+
<%= f.text_field :ship_address_lastname, :class => 'required' -%><span class="req">*</span>
|
11
|
+
</p>
|
12
|
+
<p id="saddress">
|
13
|
+
<label for="<%= t("street_address") %>"><%= t("street_address") %></label>
|
14
|
+
<%= f.text_field :ship_address_address1, :class => 'required' -%><span class="req">*</span>
|
15
|
+
</p>
|
16
|
+
<p id="saddress2">
|
17
|
+
<label for="<%= t("street_address_2") %>"><%= t("street_address_2") %></label>
|
18
|
+
<%= f.text_field :ship_address_address2 %>
|
19
|
+
</p>
|
20
|
+
<p id="scity">
|
21
|
+
<label for="<%= t("city") %>"><%= t("city") %></label>
|
22
|
+
<%= f.text_field :ship_address_city, :class => 'required' -%><span class="req">*</span>
|
23
|
+
</p>
|
24
|
+
<p>
|
25
|
+
<label for="<%= t("state") %>"><%= t("state") %></label>
|
26
|
+
<span id="sstate">
|
27
|
+
<%= collection_select("checkout_presenter",
|
28
|
+
:ship_address_state_id,
|
29
|
+
@states,
|
30
|
+
:id,
|
31
|
+
:name,
|
32
|
+
{:include_blank => true},
|
33
|
+
{:style=> 'width:150px;'}) %>
|
34
|
+
</span>
|
35
|
+
<span class="req">*</span>
|
36
|
+
</p>
|
37
|
+
<p id="szip">
|
38
|
+
<label for="<%=t ("zip") %>"><%= t("zip") %></label>
|
39
|
+
<%= f.text_field :ship_address_zipcode, :class => 'required' -%><span class="req">*</span>
|
40
|
+
</p>
|
41
|
+
<p id="scountry">
|
42
|
+
<label for="<%= t("country") %>"><%= t("country") %></label>
|
43
|
+
<span id="scountry"><%= f.collection_select :ship_address_country_id, @shipping_countries, :id, :name, {}, {:style => 'width:150px;', :class => 'required'} %></span>
|
44
|
+
</p>
|
45
|
+
<p id="sphone">
|
46
|
+
<label for="<%= t("phone") %>"><%= t("phone") %></label>
|
47
|
+
<%= f.text_field :ship_address_phone, :class => 'required' -%><span class="req">*</span>
|
48
|
+
</p>
|
49
|
+
<p><input id="validate_shipping" type="button" value="<%=t("continue")%>"/></p>
|
50
|
+
</div>
|
data/config/environment.rb
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
# ENV['RAILS_ENV'] ||= 'production'
|
6
6
|
|
7
7
|
# Specifies gem version of Rails to use when vendor/rails is not present
|
8
|
-
SPREE_GEM_VERSION = '0.7.
|
8
|
+
SPREE_GEM_VERSION = '0.7.1' unless defined? SPREE_GEM_VERSION
|
9
9
|
|
10
10
|
# Bootstrap the Rails environment, frameworks, and default configuration
|
11
11
|
require File.join(File.dirname(__FILE__), 'boot')
|
data/config/locales/de.yml
CHANGED
@@ -437,7 +437,9 @@ de:
|
|
437
437
|
tree: Baum
|
438
438
|
try_again: "Erneut versuchen"
|
439
439
|
type: Typ
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Speichern
|
442
444
|
updated_successfully: "Erfolgreich aktualisiert"
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/en-GB.yml
CHANGED
@@ -437,7 +437,9 @@ en-GB:
|
|
437
437
|
tree: Tree
|
438
438
|
try_again: "Try Again"
|
439
439
|
type: Type
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Update
|
442
444
|
updated_successfully:
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/es.yml
CHANGED
@@ -437,7 +437,9 @@ es:
|
|
437
437
|
tree: Tree
|
438
438
|
try_again: "Volver a intentar"
|
439
439
|
type: Tipo
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Actualizar
|
442
444
|
updated_successfully:
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/fr-FR.yml
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
---
|
2
|
-
fr-FR:
|
2
|
+
fr-FR:
|
3
3
|
a_copy_of_all_mail_will_be_sent_to_the_following_addresses: Une copie du courrier sera envoyé aux adresses suivantes
|
4
4
|
abbreviation: Abréviation
|
5
5
|
access_denied: "Accès interdit"
|
@@ -235,6 +235,7 @@ fr-FR:
|
|
235
235
|
error: erreur
|
236
236
|
event: Evenements
|
237
237
|
existing_customer: "Client existant"
|
238
|
+
expiration: Expiration
|
238
239
|
expiration_month: "Mois d'expiration"
|
239
240
|
expiration_year: "Année d'expiration"
|
240
241
|
extension: Prolongation
|
@@ -341,6 +342,7 @@ fr-FR:
|
|
341
342
|
payment_information: "Information sur le paiement"
|
342
343
|
payments: Paiements
|
343
344
|
phone: Téléphone
|
345
|
+
place_order: Place Order
|
344
346
|
presentation: Presentation
|
345
347
|
previous: Précédent
|
346
348
|
price: Prix
|
@@ -435,9 +437,13 @@ fr-FR:
|
|
435
437
|
tree: Arborescence
|
436
438
|
try_again: "Reessayer"
|
437
439
|
type: Type
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
438
441
|
unable_to_capture_credit_card: "Impossible de récupérer votre carte de crédit"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
439
443
|
update: Mise à jour
|
440
444
|
updated_successfully: "Mise à jour effectuée avec succès"
|
445
|
+
use_as_shipping_address: Use as Shipping Address
|
446
|
+
use_billing_address: Use Billing Address
|
441
447
|
use_different_shipping_address: "Utiliser une adresse de facturation différente"
|
442
448
|
user: Utilisateur
|
443
449
|
user_account: Compte utilisateur
|
@@ -459,5 +465,3 @@ fr-FR:
|
|
459
465
|
zone_based: "Zone de base"
|
460
466
|
zone_setting_description: "Liste des pays, régions ou autre zone, utilisé dans plusieurs calcul."
|
461
467
|
zones: Zones
|
462
|
-
|
463
|
-
|
data/config/locales/it.yml
CHANGED
@@ -437,7 +437,9 @@ it:
|
|
437
437
|
tree: Tree
|
438
438
|
try_again: Riprova
|
439
439
|
type: Tipo
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Salva
|
442
444
|
updated_successfully:
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/nb-NO.yml
CHANGED
@@ -455,3 +455,470 @@ nb-NO:
|
|
455
455
|
zone_based: "Soner"
|
456
456
|
zone_setting_description: "Liste over land, stater og andre soner som brukes i diverse beregninger."
|
457
457
|
zones: Soner
|
458
|
+
|
459
|
+
nb-NO:
|
460
|
+
a_copy_of_all_mail_will_be_sent_to_the_following_addresses: A copy of all mail be sent to the following addresses
|
461
|
+
abbreviation: Abbreviation
|
462
|
+
access_denied: "Access Denied"
|
463
|
+
account: Account
|
464
|
+
action: Action
|
465
|
+
actions:
|
466
|
+
cancel: Cancel
|
467
|
+
create: Create
|
468
|
+
destroy: Destroy
|
469
|
+
list: List
|
470
|
+
listing: Listing
|
471
|
+
new: New
|
472
|
+
update: Update
|
473
|
+
activerecord:
|
474
|
+
attributes:
|
475
|
+
address:
|
476
|
+
address1: Address
|
477
|
+
address2: "Address (contd.)"
|
478
|
+
city: City
|
479
|
+
firstname: "First Name"
|
480
|
+
lastname: "Last Name"
|
481
|
+
phone: Phone
|
482
|
+
zipcode: "Zip Code"
|
483
|
+
country:
|
484
|
+
iso: ISO
|
485
|
+
iso3: ISO3
|
486
|
+
iso_name: "ISO Name"
|
487
|
+
name: Name
|
488
|
+
numcode: "ISO Code"
|
489
|
+
creditcard:
|
490
|
+
cc_type: Type
|
491
|
+
month: Month
|
492
|
+
number: Number
|
493
|
+
verification_value: "Verification Value"
|
494
|
+
year: Year
|
495
|
+
inventory_unit:
|
496
|
+
state: State
|
497
|
+
line_item:
|
498
|
+
price: Price
|
499
|
+
quantity: Quantity
|
500
|
+
order:
|
501
|
+
checkout_complete: "Checkout Complete"
|
502
|
+
ip_address: "IP Address"
|
503
|
+
item_total: "Item Total"
|
504
|
+
number: Number
|
505
|
+
ship_amount: "Ship Amount"
|
506
|
+
special_instructions: "Special Instructions"
|
507
|
+
state: State
|
508
|
+
tax_amount: "Tax Amount"
|
509
|
+
total: Total
|
510
|
+
product:
|
511
|
+
available_on: "Available On"
|
512
|
+
description: Description
|
513
|
+
master_price: "Master Price"
|
514
|
+
name: Name
|
515
|
+
on_hand: "On Hand"
|
516
|
+
property:
|
517
|
+
name: Name
|
518
|
+
presentation: Presentation
|
519
|
+
prototype:
|
520
|
+
name: Name
|
521
|
+
role:
|
522
|
+
name: Name
|
523
|
+
state:
|
524
|
+
abbr: Abbreviation
|
525
|
+
name: Name
|
526
|
+
taxon:
|
527
|
+
name: Name
|
528
|
+
permalink: Permalink
|
529
|
+
position: Position
|
530
|
+
taxonomy:
|
531
|
+
name: Name
|
532
|
+
user:
|
533
|
+
email: Email
|
534
|
+
variant:
|
535
|
+
depth: Depth
|
536
|
+
height: Height
|
537
|
+
price: Price
|
538
|
+
sku: SKU
|
539
|
+
weight: Weight
|
540
|
+
width: Width
|
541
|
+
zone:
|
542
|
+
description: Description
|
543
|
+
name: Name
|
544
|
+
models:
|
545
|
+
address:
|
546
|
+
one: Address
|
547
|
+
other: Addresses
|
548
|
+
country:
|
549
|
+
one: Country
|
550
|
+
other: Countries
|
551
|
+
creditcard:
|
552
|
+
one: "Credit Card"
|
553
|
+
other: "Credit Cards"
|
554
|
+
creditcard_payment:
|
555
|
+
one: "Credit Card Payment"
|
556
|
+
other: "Credit Card Payments"
|
557
|
+
creditcard_txn:
|
558
|
+
one: "Credit Card Transaction"
|
559
|
+
other: "Credit Card Transactions"
|
560
|
+
inventory_unit:
|
561
|
+
one: "Inventory Unit"
|
562
|
+
other: "Inventory Units"
|
563
|
+
line_item:
|
564
|
+
one: "Line Item"
|
565
|
+
other: "Line Items"
|
566
|
+
order:
|
567
|
+
one: Order
|
568
|
+
other: Orders
|
569
|
+
payment:
|
570
|
+
one: Payment
|
571
|
+
other: Payments
|
572
|
+
product:
|
573
|
+
one: Product
|
574
|
+
other: Products
|
575
|
+
property:
|
576
|
+
one: Property
|
577
|
+
other: Properties
|
578
|
+
prototype:
|
579
|
+
one: Prototype
|
580
|
+
other: Prototypes
|
581
|
+
role:
|
582
|
+
one: Roles
|
583
|
+
other: Roles
|
584
|
+
state:
|
585
|
+
one: State
|
586
|
+
other: States
|
587
|
+
taxon:
|
588
|
+
one: Taxon
|
589
|
+
other: Taxons
|
590
|
+
taxonomy:
|
591
|
+
one: Taxonomy
|
592
|
+
other: Taxonomies
|
593
|
+
user:
|
594
|
+
one: User
|
595
|
+
other: Users
|
596
|
+
variant:
|
597
|
+
one: Variant
|
598
|
+
other: Variants
|
599
|
+
zone:
|
600
|
+
one: Zone
|
601
|
+
other: Zones
|
602
|
+
add: Add
|
603
|
+
add_category: "Add Category"
|
604
|
+
add_country: "Add Country"
|
605
|
+
add_option_type: "Add Option Type"
|
606
|
+
add_option_types: "Add Option Types"
|
607
|
+
add_option_value: "Add Option Value"
|
608
|
+
add_product_properties: "Add Product Properties"
|
609
|
+
add_state: "Add State"
|
610
|
+
add_to_cart: "Add To Cart"
|
611
|
+
add_zone: "Add Zone"
|
612
|
+
address: Address
|
613
|
+
address_information: "Address Information"
|
614
|
+
adjustment: Adjustment
|
615
|
+
administration: Administration
|
616
|
+
allow_backorders: "Allow Backorders"
|
617
|
+
allow_ssl_to_be_used_when_in_developement_and_test_modes: Allow SSL to be used when in development and test modes
|
618
|
+
allow_ssl_to_be_used_when_in_production_mode: Allow SSL to be used in production mode
|
619
|
+
amount: Amount
|
620
|
+
are_you_sure: "Are you sure"
|
621
|
+
are_you_sure_category: "Are you sure you want to delete this category?"
|
622
|
+
are_you_sure_delete: "Are you sure you want to delete this record?"
|
623
|
+
are_you_sure_delete_image: "Are you sure you want to delete this image?"
|
624
|
+
are_you_sure_option_type: "Are you sure you want to delete this option type?"
|
625
|
+
are_you_sure_you_want_to_capture: "Are you sure you want to capture?"
|
626
|
+
assign_taxon: "Assign Taxon"
|
627
|
+
assign_taxons: "Assign Taxons"
|
628
|
+
authorization_failure: "Authorization Failure"
|
629
|
+
authorized: Authorized
|
630
|
+
available_on: "Available On"
|
631
|
+
available_taxons: "Available Taxons"
|
632
|
+
back: Back
|
633
|
+
back_to_store: "Go Back To Store"
|
634
|
+
bill_address: "Bill Address"
|
635
|
+
billing_address: "Billing Address"
|
636
|
+
cancel: cancel
|
637
|
+
canceled: Canceled
|
638
|
+
capture: capture
|
639
|
+
card_code: "Card Code"
|
640
|
+
card_number: "Card Number"
|
641
|
+
cart: Cart
|
642
|
+
categories: Categories
|
643
|
+
category: Category
|
644
|
+
change: Change
|
645
|
+
change_language: "Change Language"
|
646
|
+
charged: Charged
|
647
|
+
checkout: Checkout
|
648
|
+
city: City
|
649
|
+
comp_order: "Comp Order"
|
650
|
+
comp_order_confirmation: "Customer will not be charged. Are you sure you want to comp this order?"
|
651
|
+
configuration: Configuration
|
652
|
+
configuration_options: "Configuration Options"
|
653
|
+
configurations: Configurations
|
654
|
+
confirm: Confirm
|
655
|
+
confirm_password: "Password Confirmation"
|
656
|
+
continue: Continue
|
657
|
+
continue_shopping: "Continue shopping"
|
658
|
+
copy_all_mails_to: Copy All Mails To
|
659
|
+
country: Country
|
660
|
+
country_based: "Country Based"
|
661
|
+
create: Create
|
662
|
+
create_a_new_account: "Create a new account"
|
663
|
+
created_successfully: "Created Successfully"
|
664
|
+
credit_card: "Credit Card"
|
665
|
+
credit_card_capture_complete: "Credit Card Was Captured"
|
666
|
+
credit_card_payment: "Credit Card Payment"
|
667
|
+
creditcard: Creditcard
|
668
|
+
current: Current
|
669
|
+
customer: Customer
|
670
|
+
date_range: "Date Range"
|
671
|
+
delete: Delete
|
672
|
+
depth: Depth
|
673
|
+
description: Description
|
674
|
+
destroy: Destroy
|
675
|
+
display: Display
|
676
|
+
edit: Edit
|
677
|
+
editing_category: "Editing Category"
|
678
|
+
editing_option_type: "Editing Option Type"
|
679
|
+
editing_option_types: "Editing Option Types"
|
680
|
+
editing_product: "Editing Product"
|
681
|
+
editing_property: "Editing Property"
|
682
|
+
editing_prototype: "Editing Prototype"
|
683
|
+
editing_state: "Editing State"
|
684
|
+
editing_tax_category: "Editing Tax Category"
|
685
|
+
editing_user: "Editing User"
|
686
|
+
editing_zone: "Editing Zone"
|
687
|
+
email: Email
|
688
|
+
email_address: "Email Address"
|
689
|
+
email_server_settings_description: "Set email server settings."
|
690
|
+
empty_cart: "Empty Cart"
|
691
|
+
enable_mail_delivery: Enable Mail Delivery
|
692
|
+
error: error
|
693
|
+
event: Event
|
694
|
+
existing_customer: "Existing Customer"
|
695
|
+
expiration: Expiration
|
696
|
+
expiration_month: "Expiration Month"
|
697
|
+
expiration_year: "Expiration Year"
|
698
|
+
extension: Extension
|
699
|
+
extensions: Extensions
|
700
|
+
filename: Filename
|
701
|
+
final_confirmation: "Final Confirmation"
|
702
|
+
first_name: "First Name"
|
703
|
+
gateway: Gateway
|
704
|
+
gateway_error: "Gateway Error"
|
705
|
+
gateway_setting_description: "Select a payment gateway and configure its settings."
|
706
|
+
general_settings: "General Settings"
|
707
|
+
general_settings_description: "Configure general Spree settings."
|
708
|
+
google_analytics: "Google Analytics"
|
709
|
+
google_analytics_active: "Active"
|
710
|
+
google_analytics_create: "Create New Google Analytics Account"
|
711
|
+
google_analytics_id: "Analytics ID"
|
712
|
+
google_analytics_new: "New Google Analytics Account"
|
713
|
+
google_analytics_setting_description: "Manage Google Analytics ID"
|
714
|
+
height: Height
|
715
|
+
hello_user: "Hello User"
|
716
|
+
image: Image
|
717
|
+
images: Images
|
718
|
+
in_progress: "In Progress"
|
719
|
+
invalid_search: "Invalid search criteria."
|
720
|
+
inventory: Inventory
|
721
|
+
inventory_adjustment: "Inventory Adjustment"
|
722
|
+
inventory_setting_description: "Inventory Configuration, Backordering, Zero-Stock Display"
|
723
|
+
inventory_settings: "Inventory Settings"
|
724
|
+
item: Item
|
725
|
+
item_description: "Item Description"
|
726
|
+
item_total: "Item Total"
|
727
|
+
last_name: "Last Name"
|
728
|
+
list: List
|
729
|
+
listing_categories: "Listing Categories"
|
730
|
+
listing_option_types: "Listing Option Types"
|
731
|
+
listing_orders: "Listing Orders"
|
732
|
+
listing_reports: "Listing Reports"
|
733
|
+
listing_tax_categories: "Listing Tax Categories"
|
734
|
+
listing_users: "Listing Users"
|
735
|
+
locale_changed: "Locale Changed"
|
736
|
+
log_in: "Log In"
|
737
|
+
logged_in_as: "Logged in as"
|
738
|
+
login_name: Login
|
739
|
+
logout: Logout
|
740
|
+
mail_delivery_enabled: "Mail delivery is enabled"
|
741
|
+
mail_delivery_not_enabled: "Mail delivery is not enabled"
|
742
|
+
mail_server_preferences: Mail Server Preferences
|
743
|
+
mail_server_settings: "Mail Server Settings"
|
744
|
+
master_price: "Master Price"
|
745
|
+
my_account: "My Account"
|
746
|
+
my_orders: "My Orders"
|
747
|
+
name: Name
|
748
|
+
new: New
|
749
|
+
new_category: "New category"
|
750
|
+
new_credit_card_payment: "New Credit Card Payment"
|
751
|
+
new_customer: "New Customer"
|
752
|
+
new_image: "New Image"
|
753
|
+
new_option_type: "New Option Type"
|
754
|
+
new_option_value: "New Option Value"
|
755
|
+
new_product: "New Product"
|
756
|
+
new_property: "New Property"
|
757
|
+
new_prototype: "New Prototype"
|
758
|
+
new_shipment: "New Shipment"
|
759
|
+
new_state: "New State"
|
760
|
+
new_tax_category: "New Tax Category"
|
761
|
+
new_tax_rate: "New Tax Rate"
|
762
|
+
new_taxonomy: "New Taxonomy"
|
763
|
+
new_user: "New User"
|
764
|
+
new_variant: "New Variant"
|
765
|
+
new_zone: "New Zone"
|
766
|
+
next: Next
|
767
|
+
no_items_in_cart: ""
|
768
|
+
no_match_found: "No Match Found"
|
769
|
+
none: None
|
770
|
+
none_available: "None Available"
|
771
|
+
on_hand: "On Hand"
|
772
|
+
operation: Operation
|
773
|
+
option_Values: "Option Values"
|
774
|
+
option_types: "Option Types"
|
775
|
+
option_values: "Option Values"
|
776
|
+
options: Options
|
777
|
+
or: or
|
778
|
+
order: Order
|
779
|
+
order_confirmation_note: ""
|
780
|
+
order_date: "Order Date"
|
781
|
+
order_details: "Order Details"
|
782
|
+
order_email_resent: "Order Email Resent"
|
783
|
+
order_number: Order
|
784
|
+
order_operation_authorize: Authorize
|
785
|
+
order_processed_successfully: "Your order has been processed successfully"
|
786
|
+
order_total: "Order Total"
|
787
|
+
order_total_message: "The total amount charged to your card will be"
|
788
|
+
order_updated: "Order Updated"
|
789
|
+
orders: Orders
|
790
|
+
out_of_stock: "Out of Stock"
|
791
|
+
overview: Overview
|
792
|
+
paid: Paid
|
793
|
+
parent_category: "Parent Category"
|
794
|
+
password: Password
|
795
|
+
path: Path
|
796
|
+
pay: pay
|
797
|
+
payment: Payment
|
798
|
+
payment_gateway: "Payment Gateway"
|
799
|
+
payment_information: "Payment Information"
|
800
|
+
payments: Payments
|
801
|
+
phone: Phone
|
802
|
+
place_order: Place Order
|
803
|
+
presentation: Presentation
|
804
|
+
previous: Previous
|
805
|
+
price: Price
|
806
|
+
problem_authorizing_card: "Problem authorizing credit card"
|
807
|
+
problem_capturing_card: "Problem capturing credit card"
|
808
|
+
problems_processing_order: "We had problems processing your order"
|
809
|
+
process: Process
|
810
|
+
product: Product
|
811
|
+
product_details: "Product Details"
|
812
|
+
product_properties: "Product Properties"
|
813
|
+
products: Products
|
814
|
+
properties: Properties
|
815
|
+
property: Property
|
816
|
+
prototypes: Prototypes
|
817
|
+
qty: Qty
|
818
|
+
rate: Rate
|
819
|
+
remember_me: "Remember me"
|
820
|
+
remove: Remove
|
821
|
+
reports: Reports
|
822
|
+
resend: Resend
|
823
|
+
response_code: "Response Code"
|
824
|
+
resume: "resume"
|
825
|
+
resumed: Resumed
|
826
|
+
return: return
|
827
|
+
returned: Returned
|
828
|
+
roles: Roles
|
829
|
+
sales_total: "Sales Total"
|
830
|
+
sales_total_for_all_orders: "Sales total for all orders"
|
831
|
+
sales_totals: "Sales Totals"
|
832
|
+
sales_totals_description: "Sales Total For All Orders"
|
833
|
+
save_preferences: Save Preferences
|
834
|
+
search: Search
|
835
|
+
secure_connection_type: Secure Connection Type
|
836
|
+
select: Select
|
837
|
+
select_from_prototype: "Select From Prototype"
|
838
|
+
send_copy_of_all_mails_to: Send Copy of All Mails To
|
839
|
+
send_copy_of_orders_mails_to: Send Copy of Order Mails To
|
840
|
+
send_mails_as: Send Mails As
|
841
|
+
send_order_mails_as: Send Order Mails As
|
842
|
+
ship: ship
|
843
|
+
ship_address: "Ship Address"
|
844
|
+
shipment: Shipment
|
845
|
+
shipped: Shipped
|
846
|
+
shipping: Shipping
|
847
|
+
shipping_address: "Shipping Address"
|
848
|
+
shipping_error: "Shipping Error"
|
849
|
+
shipping_method: "Shipping Method"
|
850
|
+
shipping_total: "Shipping Total"
|
851
|
+
shopping_cart: "Shopping Cart"
|
852
|
+
show_deleted: "Show Deleted"
|
853
|
+
show_incomplete_orders: "Show Incomplete Orders"
|
854
|
+
show_only_complete_orders: "Only show complete orders"
|
855
|
+
show_out_of_stock_products: "Show out-of-stock products"
|
856
|
+
sign_up: "Sign up"
|
857
|
+
sku: SKU
|
858
|
+
smtp_authentication_type: SMTP Authentication Type
|
859
|
+
smtp_domain: SMTP Domain
|
860
|
+
smtp_mail_host: SMTP Mail Host
|
861
|
+
smtp_password: SMTP Password
|
862
|
+
smtp_port: SMTP Port
|
863
|
+
smtp_username: SMTP Username
|
864
|
+
spree:
|
865
|
+
date: Date
|
866
|
+
time: Time
|
867
|
+
start: Start
|
868
|
+
state: State
|
869
|
+
state_based: "State Based"
|
870
|
+
state_setting_description: "Administer the list of states/provinces associated with each country."
|
871
|
+
states: States
|
872
|
+
status: Status
|
873
|
+
stop: Stop
|
874
|
+
store: Store
|
875
|
+
street_address: "Street Address"
|
876
|
+
street_address_2: "Street Address (cont'd)"
|
877
|
+
subtotal: Subtotal
|
878
|
+
subtract: Subtract
|
879
|
+
system: System
|
880
|
+
tax: Tax
|
881
|
+
tax_categories: "Tax Categories"
|
882
|
+
tax_categories_setting_description: "Set up tax categories to identify which products should be taxable."
|
883
|
+
tax_category: "Tax Category"
|
884
|
+
tax_total: "Tax Total"
|
885
|
+
tax_type: "Tax Type"
|
886
|
+
taxon: Taxon
|
887
|
+
taxonomies: Taxonomies
|
888
|
+
taxonomies_setting_description: "Create and manage taxonomies"
|
889
|
+
taxons: Taxons
|
890
|
+
thank_you_for_your_order: "Thank you for your business. Please print out a copy of this confirmation page for your records."
|
891
|
+
this_file_language: "English (US)"
|
892
|
+
total: Total
|
893
|
+
transaction: Transaction
|
894
|
+
tree: Tree
|
895
|
+
try_again: "Try Again"
|
896
|
+
type: Type
|
897
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
898
|
+
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
899
|
+
unable_to_save_order: "Unable to Save Order"
|
900
|
+
update: Update
|
901
|
+
updated_successfully: "Updated Successfully"
|
902
|
+
use_as_shipping_address: Use as Shipping Address
|
903
|
+
use_billing_address: Use Billing Address
|
904
|
+
use_different_shipping_address: "Use Different Shipping Address"
|
905
|
+
user: User
|
906
|
+
user_account: User Account
|
907
|
+
user_details: "User Details"
|
908
|
+
users: Users
|
909
|
+
value: Value
|
910
|
+
variants: Variants
|
911
|
+
version: Version
|
912
|
+
website: Website
|
913
|
+
weight: Weight
|
914
|
+
welcome_to_sample_store: "Welcome to the sample store"
|
915
|
+
what_is_a_cvv: "What is a (CVV) Credit Card Code?"
|
916
|
+
what_is_this: "What's This?"
|
917
|
+
whats_this: "What's this"
|
918
|
+
width: Width
|
919
|
+
your_cart_is_empty: "Your cart is empty"
|
920
|
+
zip: Zip
|
921
|
+
zone: Zone
|
922
|
+
zone_based: "Zone Based"
|
923
|
+
zone_setting_description: "Collections of countries, states or other zones to be used in various calculations."
|
924
|
+
zones: Zones
|
data/config/locales/pl.yml
CHANGED
@@ -437,7 +437,9 @@ pl:
|
|
437
437
|
tree: Tree
|
438
438
|
try_again: "Spróbuj ponownie"
|
439
439
|
type: Typ
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Aktualizuj
|
442
444
|
updated_successfully:
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/pt-BR.yml
CHANGED
@@ -437,7 +437,9 @@ pt-BR:
|
|
437
437
|
tree: Tree
|
438
438
|
try_again: "Tente novamente"
|
439
439
|
type: Tipo
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Atualizar
|
442
444
|
updated_successfully:
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/pt-PT.yml
CHANGED
@@ -437,7 +437,9 @@ pt-PT:
|
|
437
437
|
tree: Árvore
|
438
438
|
try_again: "Tente de novo"
|
439
439
|
type: Tipo
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
440
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
441
443
|
update: Actualizar
|
442
444
|
updated_successfully: Actualizado com sucesso
|
443
445
|
use_as_shipping_address: Use as Shipping Address
|
data/config/locales/ru-RU.yml
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
---
|
2
|
-
ru-RU:
|
2
|
+
ru-RU:
|
3
3
|
a_copy_of_all_mail_will_be_sent_to_the_following_addresses: Копии всех писем будут отосланы на следующие адреса
|
4
4
|
abbreviation: Аббревиатура
|
5
5
|
access_denied: "Доступ запрещен"
|
@@ -207,6 +207,7 @@ ru-RU:
|
|
207
207
|
credit_card: "Кредитная карта"
|
208
208
|
credit_card_capture_complete: "Credit Card Was Captured ??"
|
209
209
|
credit_card_payment: "Платеж крелитной картой"
|
210
|
+
creditcard: Creditcard
|
210
211
|
current: Текущий
|
211
212
|
customer: Пользователь
|
212
213
|
date_range: "Период времени"
|
@@ -234,6 +235,7 @@ ru-RU:
|
|
234
235
|
error: ошибка
|
235
236
|
event: Событие
|
236
237
|
existing_customer: "Для зарегистрированных пользователей"
|
238
|
+
expiration: Expiration
|
237
239
|
expiration_month: "Месяц экспирации ??"
|
238
240
|
expiration_year: "Год экспирации ??"
|
239
241
|
extension: Расширение
|
@@ -340,6 +342,7 @@ ru-RU:
|
|
340
342
|
payment_information: "Информация о платеже"
|
341
343
|
payments: Платежи
|
342
344
|
phone: Телефон
|
345
|
+
place_order: Place Order
|
343
346
|
presentation: Презентация ??
|
344
347
|
previous: предыдущий
|
345
348
|
price: Цена
|
@@ -391,6 +394,7 @@ ru-RU:
|
|
391
394
|
shopping_cart: "Корзина"
|
392
395
|
show_deleted: "Показать удаленные"
|
393
396
|
show_incomplete_orders: "Показать необработанные заказы"
|
397
|
+
show_only_complete_orders: "Only show complete orders"
|
394
398
|
show_out_of_stock_products: "Показать продукты, которых нет в наличии"
|
395
399
|
sign_up: "Регистрация"
|
396
400
|
sku: SKU
|
@@ -433,11 +437,16 @@ ru-RU:
|
|
433
437
|
tree: Дерево
|
434
438
|
try_again: "Попробуйте еще раз"
|
435
439
|
type: Тип
|
440
|
+
unable_to_authorize_credit_card: "Unable to Authorize Credit Card"
|
436
441
|
unable_to_capture_credit_card: "Unable to Capture Credit Card"
|
442
|
+
unable_to_save_order: "Unable to Save Order"
|
437
443
|
update: Изменить
|
438
444
|
updated_successfully: "Успешна изменена"
|
445
|
+
use_as_shipping_address: Use as Shipping Address
|
446
|
+
use_billing_address: Use Billing Address
|
439
447
|
use_different_shipping_address: "использовать другой адрес доставки"
|
440
448
|
user: Пользователь
|
449
|
+
user_account: User Account
|
441
450
|
user_details: "Дополнительно"
|
442
451
|
users: Пользователи
|
443
452
|
value: Значение
|
data/db/sample/states.yml
CHANGED
@@ -167,7 +167,7 @@ south_dakota:
|
|
167
167
|
abbr: SD
|
168
168
|
country_id: 214
|
169
169
|
tennesse:
|
170
|
-
name:
|
170
|
+
name: Tennessee
|
171
171
|
abbr: TN
|
172
172
|
country_id: 214
|
173
173
|
texas:
|
@@ -201,4 +201,4 @@ wisconsin:
|
|
201
201
|
wyoming:
|
202
202
|
name: Wyoming
|
203
203
|
abbr: WY
|
204
|
-
country_id: 214
|
204
|
+
country_id: 214
|
data/lib/spree.rb
CHANGED
data/lib/tasks/release.rake
CHANGED
@@ -31,7 +31,11 @@ namespace 'spree' do
|
|
31
31
|
s.bindir = 'bin'
|
32
32
|
s.executables = ['spree']
|
33
33
|
s.add_dependency 'rake', '>= 0.7.1'
|
34
|
-
s.add_dependency 'highline', '
|
34
|
+
s.add_dependency 'highline', '= 1.4.0'
|
35
|
+
s.add_dependency 'rails', '= 2.2.2'
|
36
|
+
s.add_dependency 'activemerchant', '>= 1.4.1'
|
37
|
+
s.add_dependency 'activerecord-tableless', '>= 0.1.0'
|
38
|
+
s.add_dependency 'tlsmail', '>= 0.0.1'
|
35
39
|
s.has_rdoc = true
|
36
40
|
#s.rdoc_options << '--title' << RDOC_TITLE << '--line-numbers' << '--main' << 'README'
|
37
41
|
rdoc_excludes = Dir["**"].reject { |f| !File.directory? f }
|
data/lib/tasks/translation.rake
CHANGED
@@ -45,6 +45,7 @@ def create_hash(data, basename)
|
|
45
45
|
parent = Array.new
|
46
46
|
previous_key = 'base'
|
47
47
|
data.split("\n").each do |w|
|
48
|
+
next if w.strip.blank?
|
48
49
|
(key, value) = w.split(':')
|
49
50
|
value ||= ''
|
50
51
|
shift = (key =~ /\w/)/2 - parent.size #Determine level of current key in comparison to parent array
|
@@ -1,24 +1,13 @@
|
|
1
1
|
var regions = new Array('billing', 'shipping', 'shipping_method', 'creditcard', 'confirm_order');
|
2
2
|
|
3
|
+
/*
|
3
4
|
$(document).ajaxSend(function(event, request, settings) {
|
4
5
|
if (typeof(AUTH_TOKEN) == "undefined") return;
|
5
6
|
// settings.data is a serialized string like "foo=bar&baz=boink" (or null)
|
6
7
|
settings.data = settings.data || "";
|
7
8
|
settings.data += (settings.data ? "&" : "") + "authenticity_token=" + encodeURIComponent(AUTH_TOKEN);
|
8
9
|
});
|
9
|
-
|
10
|
-
// public/javascripts/application.js
|
11
|
-
jQuery.ajaxSetup({
|
12
|
-
'beforeSend': function(xhr) {xhr.setRequestHeader("Accept", "text/javascript")}
|
13
|
-
})
|
14
|
-
|
15
|
-
jQuery.fn.submitWithAjax = function() {
|
16
|
-
this.change(function() {
|
17
|
-
$.post('select_country', $(this).serialize(), null, "script");
|
18
|
-
return false;
|
19
|
-
})
|
20
|
-
return this;
|
21
|
-
};
|
10
|
+
*/
|
22
11
|
|
23
12
|
jQuery.fn.sameAddress = function() {
|
24
13
|
this.click(function() {
|
@@ -36,12 +25,10 @@ jQuery.fn.sameAddress = function() {
|
|
36
25
|
|
37
26
|
//On page load
|
38
27
|
$(function() {
|
39
|
-
//$("#checkout_presenter_bill_address_country_id").submitWithAjax();
|
40
28
|
$('#checkout_presenter_same_address').sameAddress();
|
41
29
|
$('span#bcountry select').change(function() { update_state('b'); });
|
42
30
|
$('span#scountry select').change(function() { update_state('s'); });
|
43
31
|
get_states();
|
44
|
-
|
45
32
|
$('#validate_billing').click(function() { if(validate_section('billing')) { submit_billing(); }});
|
46
33
|
$('#validate_shipping').click(function() { if(validate_section('shipping')) { submit_shipping(); }});
|
47
34
|
$('#select_shipping_method').click(function() { submit_shipping_method(); });
|
@@ -88,7 +75,6 @@ var chg_state_input_element = function (parent, html) {
|
|
88
75
|
|
89
76
|
// TODO: better as sibling dummy state ?
|
90
77
|
// Update the input method for address.state
|
91
|
-
//
|
92
78
|
var update_state = function(region) {
|
93
79
|
var country = $('span#' + region + 'country :only-child').val();
|
94
80
|
var states = state_mapper[country];
|
@@ -123,7 +109,6 @@ var update_state = function(region) {
|
|
123
109
|
});
|
124
110
|
};
|
125
111
|
|
126
|
-
|
127
112
|
var validate_section = function(region) {
|
128
113
|
var validator = $('form#checkout_form').validate();
|
129
114
|
var valid = true;
|
@@ -173,7 +158,7 @@ var submit_billing = function() {
|
|
173
158
|
|
174
159
|
var build_address = function(title, region) {
|
175
160
|
var address = '<h3>' + title + '</h3>';
|
176
|
-
address += $('p#' + region + 'fname input').val() + ' ' + $('p#
|
161
|
+
address += $('p#' + region + 'fname input').val() + ' ' + $('p#' + region + 'lname input').val() + '<br />';
|
177
162
|
address += $('p#' + region + 'address input').val() + '<br />';
|
178
163
|
if($('p#' + region + 'address2').val() != '') {
|
179
164
|
address += $('p#' + region + 'address2').val() + '<br />';
|
@@ -255,18 +240,21 @@ var update_shipping_methods = function(methods) {
|
|
255
240
|
$('div$methods img#shipping_loader').remove();
|
256
241
|
var p = document.createElement('p');
|
257
242
|
var s = this.name + ' ' + this.rate;
|
258
|
-
$(
|
259
|
-
.attr('id',
|
243
|
+
var i = $(document.createElement('input'))
|
244
|
+
.attr('id', this.id)
|
260
245
|
.attr('type', 'radio')
|
261
246
|
.attr('name', 'method_id')
|
262
|
-
.attr(1 == $(methods).length ? 'checked' : 'notchecked', 'foo')
|
263
247
|
.val(this.id)
|
264
|
-
);
|
265
|
-
|
248
|
+
.click(function() { $('div#methods input').attr('checked', ''); $(this).attr('checked', 'checked'); });
|
249
|
+
if($(methods.length) == 1) {
|
250
|
+
i.attr('checked', 'checked');
|
251
|
+
}
|
252
|
+
var l = $(document.createElement('label'))
|
266
253
|
.attr('for', s)
|
267
254
|
.html(s)
|
268
|
-
.css('top', '-1px')
|
269
|
-
|
255
|
+
.css('top', '-1px')
|
256
|
+
.css('width', '300px');
|
257
|
+
$('div#methods').append($(p).append(i).append(l));
|
270
258
|
});
|
271
259
|
$('div#methods input:first').attr('validate', 'required:true');
|
272
260
|
return;
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-03-
|
12
|
+
date: 2009-03-25 00:00:00 -04:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -28,10 +28,50 @@ dependencies:
|
|
28
28
|
version_requirement:
|
29
29
|
version_requirements: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 1.4.0
|
34
34
|
version:
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: rails
|
37
|
+
type: :runtime
|
38
|
+
version_requirement:
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - "="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 2.2.2
|
44
|
+
version:
|
45
|
+
- !ruby/object:Gem::Dependency
|
46
|
+
name: activemerchant
|
47
|
+
type: :runtime
|
48
|
+
version_requirement:
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 1.4.1
|
54
|
+
version:
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: activerecord-tableless
|
57
|
+
type: :runtime
|
58
|
+
version_requirement:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 0.1.0
|
64
|
+
version:
|
65
|
+
- !ruby/object:Gem::Dependency
|
66
|
+
name: tlsmail
|
67
|
+
type: :runtime
|
68
|
+
version_requirement:
|
69
|
+
version_requirements: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: 0.0.1
|
74
|
+
version:
|
35
75
|
description: "Spree is a complete commerce solution designed for use by experienced Rails developers. No solution can possibly solve everyone\xE2\x80\x99s needs perfectly. There are simply too many ways that people do business for us to model them all specifically. Rather then come up short (like so many projects before it), Spree\xE2\x80\x99s approach is to simply accept this and not even try. Instead Spree tries to focus on solving the 90% of the problem that most commerce projects face and anticipate that the other 10% will need to be addressed by the end developer familiar with the client\xE2\x80\x99s exact business requirements."
|
36
76
|
email: sean.schofield@gmail.com
|
37
77
|
executables:
|
@@ -270,11 +310,17 @@ files:
|
|
270
310
|
- app/views/admin/zones/new.html.erb
|
271
311
|
- app/views/admin/zones/show.html.erb
|
272
312
|
- app/views/checkout
|
313
|
+
- app/views/checkout/_billing.html.erb
|
314
|
+
- app/views/checkout/_confirm_order.erb
|
273
315
|
- app/views/checkout/_form.html.erb
|
316
|
+
- app/views/checkout/_payment.erb
|
317
|
+
- app/views/checkout/_shipping.html.erb
|
318
|
+
- app/views/checkout/_shipping_method.html.erb
|
274
319
|
- app/views/checkout/cvv.html.erb
|
275
320
|
- app/views/checkout/new.html.erb
|
276
321
|
- app/views/countries
|
277
322
|
- app/views/countries/index.js.erb
|
323
|
+
- app/views/creditcards
|
278
324
|
- app/views/layouts
|
279
325
|
- app/views/layouts/admin.html.erb
|
280
326
|
- app/views/layouts/application.html.erb
|
@@ -1685,6 +1731,8 @@ files:
|
|
1685
1731
|
- vendor/extensions/shipping/app/views/admin/shipping_methods/edit.html.erb
|
1686
1732
|
- vendor/extensions/shipping/app/views/admin/shipping_methods/index.html.erb
|
1687
1733
|
- vendor/extensions/shipping/app/views/admin/shipping_methods/new.html.erb
|
1734
|
+
- vendor/extensions/shipping/app/views/orders
|
1735
|
+
- vendor/extensions/shipping/app/views/shipments
|
1688
1736
|
- vendor/extensions/shipping/config
|
1689
1737
|
- vendor/extensions/shipping/config/locales
|
1690
1738
|
- vendor/extensions/shipping/config/locales/de.yml
|
@@ -2164,8 +2212,6 @@ files:
|
|
2164
2212
|
- vendor/plugins/has_many_polymorphs/test/integration/app/test/unit/single_sti_parent_test.rb
|
2165
2213
|
- vendor/plugins/has_many_polymorphs/test/integration/app/test/unit/stick_test.rb
|
2166
2214
|
- vendor/plugins/has_many_polymorphs/test/integration/app/test/unit/stone_test.rb
|
2167
|
-
- vendor/plugins/has_many_polymorphs/test/integration/app/vendor
|
2168
|
-
- vendor/plugins/has_many_polymorphs/test/integration/app/vendor/plugins
|
2169
2215
|
- vendor/plugins/has_many_polymorphs/test/integration/server_test.rb
|
2170
2216
|
- vendor/plugins/has_many_polymorphs/test/models
|
2171
2217
|
- vendor/plugins/has_many_polymorphs/test/models/aquatic
|