spree_backend 2.3.1 → 2.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/spree/backend/payments/new.js +4 -0
- data/app/assets/javascripts/spree/backend/promotions.js +32 -1
- data/app/assets/javascripts/spree/backend/select_payments.js.coffee +1 -1
- data/app/assets/javascripts/spree/backend/taxon_autocomplete.js.erb +2 -2
- data/app/assets/stylesheets/spree/backend/components/_date-picker.scss +6 -3
- data/app/assets/stylesheets/spree/backend/components/_navigation.scss +4 -0
- data/app/assets/stylesheets/spree/backend/sections/_products.scss +6 -0
- data/app/assets/stylesheets/spree/backend/sections/_promotions.scss +20 -1
- data/app/assets/stylesheets/spree/backend/shared/_forms.scss +39 -0
- data/app/assets/stylesheets/spree/backend/shared/_icons.scss +5 -0
- data/app/assets/stylesheets/spree/backend/shared/_layout.scss +8 -0
- data/app/assets/stylesheets/spree/backend/shared/_typography.scss +6 -0
- data/app/controllers/spree/admin/products_controller.rb +3 -3
- data/app/controllers/spree/admin/resource_controller.rb +14 -2
- data/app/helpers/spree/admin/adjustments_helper.rb +1 -1
- data/app/views/spree/admin/orders/edit.html.erb +6 -6
- data/app/views/spree/admin/payments/source_forms/_gateway.html.erb +1 -1
- data/app/views/spree/admin/products/_form.html.erb +21 -1
- data/app/views/spree/admin/promotions/actions/_create_adjustment.html.erb +8 -6
- data/app/views/spree/admin/promotions/calculators/_default_fields.html.erb +8 -0
- data/app/views/spree/admin/promotions/calculators/tiered_flat_rate/_fields.html.erb +37 -0
- data/app/views/spree/admin/promotions/calculators/tiered_percent/_fields.html.erb +36 -0
- data/app/views/spree/admin/return_authorizations/index.html.erb +0 -2
- data/app/views/spree/admin/shared/_configuration_menu.html.erb +0 -1
- data/app/views/spree/admin/shared/_order_submenu.html.erb +5 -5
- data/app/views/spree/admin/shared/_tabs.html.erb +1 -1
- data/app/views/spree/admin/shipping_methods/_form.html.erb +1 -1
- data/app/views/spree/admin/taxons/index.html.erb +1 -1
- data/app/views/spree/admin/users/_user_page_actions.html.erb +3 -0
- data/config/locales/en.yml +6 -0
- data/config/routes.rb +0 -1
- metadata +12 -10
- data/app/controllers/spree/admin/tax_settings_controller.rb +0 -17
- data/app/views/spree/admin/tax_settings/edit.html.erb +0 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fcaab04407621b636170b40405d2b04784bae951
|
4
|
+
data.tar.gz: 2f875cb85b7b5f00f76caac5ff0d38b5a5e38afc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 63bd4a7ede4219c5234a9b2d9d647e86c83332eb9048263e43e0059320cf4d9fe7b3db6f9e40f8726d28ab8cab06a310a30cabedb783ce0088923b288580910c
|
7
|
+
data.tar.gz: 9bd26dde28d827366a06776aada15334030d6b99506c02e7a8a1f19b9193acb14333a96a93cebd17021c318c7117b87f703ec06726d45142e967eb920abd2b2e
|
@@ -12,7 +12,9 @@ $(document).ready(function() {
|
|
12
12
|
$('.payment_methods_radios').click(
|
13
13
|
function() {
|
14
14
|
$('.payment-methods').hide();
|
15
|
+
$('.payment-methods input').prop('disabled', true);
|
15
16
|
if (this.checked) {
|
17
|
+
$('#payment_method_' + this.value).prop('disabled', false);
|
16
18
|
$('#payment_method_' + this.value).show();
|
17
19
|
}
|
18
20
|
}
|
@@ -21,9 +23,11 @@ $(document).ready(function() {
|
|
21
23
|
$('.payment_methods_radios').each(
|
22
24
|
function() {
|
23
25
|
if (this.checked) {
|
26
|
+
$('#payment_method_' + this.value).prop('disabled', false);
|
24
27
|
$('#payment_method_' + this.value).show();
|
25
28
|
} else {
|
26
29
|
$('#payment_method_' + this.value).hide();
|
30
|
+
$('#payment_method_' + this.value).prop('disabled', true);
|
27
31
|
}
|
28
32
|
|
29
33
|
if ($("#card_new" + this.value).is("*")) {
|
@@ -33,6 +33,37 @@ var initProductActions = function () {
|
|
33
33
|
});
|
34
34
|
});
|
35
35
|
|
36
|
+
//
|
37
|
+
// Tiered Calculator
|
38
|
+
//
|
39
|
+
if ($('#tier-fields-template').length && $('#tier-input-name').length) {
|
40
|
+
var tierFieldsTemplate = Handlebars.compile($('#tier-fields-template').html());
|
41
|
+
var tierInputNameTemplate = Handlebars.compile($('#tier-input-name').html());
|
42
|
+
|
43
|
+
var originalTiers = $('.js-original-tiers').data('original-tiers');
|
44
|
+
$.each(originalTiers, function(base, value) {
|
45
|
+
var fieldName = tierInputNameTemplate({base: base}).trim();
|
46
|
+
$('.js-tiers').append(tierFieldsTemplate({
|
47
|
+
baseField: {value: base},
|
48
|
+
valueField: {name: fieldName, value: value}
|
49
|
+
}));
|
50
|
+
});
|
51
|
+
|
52
|
+
$(document).on('click', '.js-add-tier', function(event) {
|
53
|
+
event.preventDefault();
|
54
|
+
$('.js-tiers').append(tierFieldsTemplate({valueField: {name: null}}));
|
55
|
+
});
|
56
|
+
|
57
|
+
$(document).on('click', '.js-remove-tier', function(event) {
|
58
|
+
$(this).parents('.tier').remove();
|
59
|
+
});
|
60
|
+
|
61
|
+
$(document).on('change', '.js-base-input', function(event) {
|
62
|
+
var valueInput = $(this).parents('.tier').find('.js-value-input');
|
63
|
+
valueInput.attr('name', tierInputNameTemplate({base: $(this).val()}).trim());
|
64
|
+
});
|
65
|
+
}
|
66
|
+
|
36
67
|
//
|
37
68
|
// CreateLineItems Promotion Action
|
38
69
|
//
|
@@ -87,4 +118,4 @@ $(document).ready(function () {
|
|
87
118
|
|
88
119
|
initProductActions();
|
89
120
|
|
90
|
-
});
|
121
|
+
});
|
@@ -9,6 +9,7 @@
|
|
9
9
|
|
10
10
|
#ui-datepicker-div {
|
11
11
|
@include border-radius($border-radius);
|
12
|
+
|
12
13
|
border-color: $color-3;
|
13
14
|
padding: 0;
|
14
15
|
margin-top: 10px;
|
@@ -23,6 +24,7 @@
|
|
23
24
|
margin-top: -10px;
|
24
25
|
left: 25px;
|
25
26
|
z-index: 1;
|
27
|
+
display: block;
|
26
28
|
}
|
27
29
|
|
28
30
|
.ui-datepicker-header {
|
@@ -47,14 +49,15 @@
|
|
47
49
|
}
|
48
50
|
|
49
51
|
.ui-icon {
|
52
|
+
@extend [class^="icon-"]:before;
|
53
|
+
@extend .fa;
|
54
|
+
|
50
55
|
background-image: none;
|
51
56
|
text-indent: 0;
|
52
57
|
color: $color-1;
|
53
58
|
width: 10px;
|
54
59
|
margin-left: -5px;
|
55
|
-
|
56
|
-
@extend .fa;
|
57
|
-
|
60
|
+
|
58
61
|
&:hover {
|
59
62
|
color: very-light($color-2, 25);
|
60
63
|
}
|
@@ -34,6 +34,25 @@
|
|
34
34
|
margin-bottom: 0;
|
35
35
|
}
|
36
36
|
|
37
|
+
.tier {
|
38
|
+
position: relative;
|
39
|
+
padding-bottom: 10px;
|
40
|
+
|
41
|
+
.remove {
|
42
|
+
position: absolute;
|
43
|
+
left: -15px;
|
44
|
+
top: 10px;
|
45
|
+
|
46
|
+
&:hover {
|
47
|
+
color: #c60f13;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
.right-align {
|
53
|
+
text-align: right;
|
54
|
+
}
|
55
|
+
|
37
56
|
.field {
|
38
57
|
padding-bottom: 10px;
|
39
58
|
|
@@ -97,4 +116,4 @@
|
|
97
116
|
border: none;
|
98
117
|
padding-bottom: 0;
|
99
118
|
}
|
100
|
-
}
|
119
|
+
}
|
@@ -32,6 +32,45 @@ textarea {
|
|
32
32
|
width: 100%;
|
33
33
|
}
|
34
34
|
|
35
|
+
.input-group {
|
36
|
+
position: relative;
|
37
|
+
display: table;
|
38
|
+
border-collapse: separate;
|
39
|
+
|
40
|
+
.form-control,
|
41
|
+
.input-group-addon {
|
42
|
+
display: table-cell;
|
43
|
+
|
44
|
+
&:first-child {
|
45
|
+
border-top-right-radius: 0;
|
46
|
+
border-bottom-right-radius: 0;
|
47
|
+
}
|
48
|
+
&:last-child {
|
49
|
+
border-top-left-radius: 0;
|
50
|
+
border-bottom-left-radius: 0;
|
51
|
+
}
|
52
|
+
}
|
53
|
+
|
54
|
+
.form-control {
|
55
|
+
width: 100%;
|
56
|
+
}
|
57
|
+
|
58
|
+
.input-group-addon {
|
59
|
+
padding: 6px 10px;
|
60
|
+
border: 1px solid #cee1f4;
|
61
|
+
background: #eff5fc;
|
62
|
+
border-radius: 3px;
|
63
|
+
|
64
|
+
&:first-child {
|
65
|
+
border-right: none;
|
66
|
+
}
|
67
|
+
|
68
|
+
&:last-child {
|
69
|
+
border-left: none;
|
70
|
+
}
|
71
|
+
}
|
72
|
+
}
|
73
|
+
|
35
74
|
label {
|
36
75
|
font-weight: 600;
|
37
76
|
text-transform: uppercase;
|
@@ -46,3 +46,8 @@ button, a {
|
|
46
46
|
.icon-user { @extend .fa-user; }
|
47
47
|
.icon-signout { @extend .fa-sign-out; }
|
48
48
|
.icon-external-link { @extend .fa-external-link; }
|
49
|
+
|
50
|
+
// Avoid ugly default browser font (usually a serif) when an element has an icon AND text
|
51
|
+
.fa {
|
52
|
+
font-family: "FontAwesome", $base-font-family !important;
|
53
|
+
}
|
@@ -35,6 +35,14 @@
|
|
35
35
|
margin-right: -10px;
|
36
36
|
}
|
37
37
|
|
38
|
+
.container .column,
|
39
|
+
.container .columns {
|
40
|
+
// Float container right instead of left.
|
41
|
+
.right {
|
42
|
+
float: right;
|
43
|
+
}
|
44
|
+
}
|
45
|
+
|
38
46
|
// Header
|
39
47
|
//---------------------------------------------------
|
40
48
|
#header {
|
@@ -59,7 +59,7 @@ module Spree
|
|
59
59
|
if @new.save
|
60
60
|
flash[:success] = Spree.t('notice_messages.product_cloned')
|
61
61
|
else
|
62
|
-
flash[:
|
62
|
+
flash[:error] = Spree.t('notice_messages.product_not_cloned')
|
63
63
|
end
|
64
64
|
|
65
65
|
redirect_to edit_admin_product_url(@new)
|
@@ -123,9 +123,9 @@ module Spree
|
|
123
123
|
end
|
124
124
|
|
125
125
|
def product_includes
|
126
|
-
[{ :variants => [:images
|
126
|
+
[{ :variants => [:images], :master => [:images, :default_price]}]
|
127
127
|
end
|
128
|
-
|
128
|
+
|
129
129
|
def clone_object_url resource
|
130
130
|
clone_admin_product_url resource
|
131
131
|
end
|
@@ -37,7 +37,13 @@ class Spree::Admin::ResourceController < Spree::Admin::BaseController
|
|
37
37
|
end
|
38
38
|
else
|
39
39
|
invoke_callbacks(:update, :fails)
|
40
|
-
respond_with(@object)
|
40
|
+
respond_with(@object) do |format|
|
41
|
+
format.html do
|
42
|
+
flash.now[:error] = @object.errors.full_messages.join(", ")
|
43
|
+
render action: 'edit'
|
44
|
+
end
|
45
|
+
format.js { render layout: false }
|
46
|
+
end
|
41
47
|
end
|
42
48
|
end
|
43
49
|
|
@@ -53,7 +59,13 @@ class Spree::Admin::ResourceController < Spree::Admin::BaseController
|
|
53
59
|
end
|
54
60
|
else
|
55
61
|
invoke_callbacks(:create, :fails)
|
56
|
-
respond_with(@object)
|
62
|
+
respond_with(@object) do |format|
|
63
|
+
format.html do
|
64
|
+
flash.now[:error] = @object.errors.full_messages.join(", ")
|
65
|
+
render action: 'new'
|
66
|
+
end
|
67
|
+
format.js { render layout: false }
|
68
|
+
end
|
57
69
|
end
|
58
70
|
end
|
59
71
|
|
@@ -4,7 +4,7 @@ module Spree
|
|
4
4
|
def adjustment_state(adjustment)
|
5
5
|
state = adjustment.state.to_sym
|
6
6
|
icon = { closed: 'lock', open: 'unlock' }
|
7
|
-
content_tag(:span, '', class: icon[state])
|
7
|
+
content_tag(:span, '', class: "fa fa-#{ icon[state] }")
|
8
8
|
end
|
9
9
|
|
10
10
|
def display_adjustable(adjustable)
|
@@ -3,24 +3,24 @@
|
|
3
3
|
<li><%= event_links %></li>
|
4
4
|
<% end %>
|
5
5
|
<% if can?(:resend, @order) %>
|
6
|
-
<li><%= button_link_to Spree.t(:resend), resend_admin_order_url(@order), :
|
6
|
+
<li><%= button_link_to Spree.t(:resend), resend_admin_order_url(@order), method: :post, icon: 'email' %></li>
|
7
7
|
<% end %>
|
8
8
|
<% if can?(:admin, Spree::Order) %>
|
9
|
-
<li><%= button_link_to Spree.t(:back_to_orders_list), admin_orders_path, :
|
9
|
+
<li><%= button_link_to Spree.t(:back_to_orders_list), admin_orders_path, icon: 'arrow-left' %></li>
|
10
10
|
<% end %>
|
11
11
|
<% end %>
|
12
12
|
|
13
|
-
<%= render :
|
13
|
+
<%= render partial: 'spree/admin/shared/order_tabs', locals: { current: 'Order Details' } %>
|
14
14
|
|
15
15
|
<div data-hook="admin_order_edit_header">
|
16
|
-
<%= render :
|
16
|
+
<%= render partial: 'spree/shared/error_messages', locals: { target: @order } %>
|
17
17
|
</div>
|
18
18
|
|
19
19
|
<% if @order.payments.exists? && @order.considered_risky? %>
|
20
20
|
<%= render 'spree/admin/orders/risk_analysis', latest_payment: @order.payments.order("created_at DESC").first %>
|
21
21
|
<% end %>
|
22
22
|
|
23
|
-
<%= render :
|
23
|
+
<%= render partial: 'add_product' if @order.shipment_state != 'shipped' && can?(:update, @order) %>
|
24
24
|
|
25
25
|
<% if @order.line_items.empty? %>
|
26
26
|
<div class="no-objects-found">
|
@@ -30,7 +30,7 @@
|
|
30
30
|
|
31
31
|
<div data-hook="admin_order_edit_form">
|
32
32
|
<div id="order-form-wrapper">
|
33
|
-
<%= render :
|
33
|
+
<%= render partial: 'form', locals: { order: @order } %>
|
34
34
|
</div>
|
35
35
|
</div>
|
36
36
|
|
@@ -60,7 +60,27 @@
|
|
60
60
|
<% end %>
|
61
61
|
</div>
|
62
62
|
|
63
|
-
<%
|
63
|
+
<% if @product.has_variants? %>
|
64
|
+
<div data-hook="admin_product_form_multiple_variants">
|
65
|
+
<%= f.label :skus, Spree.t(:sku).pluralize %>
|
66
|
+
<span class="info">
|
67
|
+
<%= Spree.t(:info_product_has_multiple_skus, count: @product.variants.count) %>
|
68
|
+
<ul class="text_list">
|
69
|
+
<% @product.variants.first(5).each do |variant| %>
|
70
|
+
<li><%= variant.sku %></li>
|
71
|
+
<% end %>
|
72
|
+
</ul>
|
73
|
+
<% if @product.variants.count > 5 %>
|
74
|
+
<%= Spree.t(:info_number_of_skus_not_shown, count: @product.variants.count - 5) %>
|
75
|
+
<% end %>
|
76
|
+
</span>
|
77
|
+
<div class="info-actions">
|
78
|
+
<% if can?(:admin, Spree::Variant) %>
|
79
|
+
<%= link_to_with_icon 'th-large', 'Manage Variants', admin_product_variants_url(@product) %>
|
80
|
+
<% end %>
|
81
|
+
</div>
|
82
|
+
</div>
|
83
|
+
<% else %>
|
64
84
|
<div data-hook="admin_product_form_sku">
|
65
85
|
<%= f.field_container :sku do %>
|
66
86
|
<%= f.label :sku, Spree.t(:sku) %>
|
@@ -13,12 +13,14 @@
|
|
13
13
|
|
14
14
|
<% unless promotion_action.new_record? %>
|
15
15
|
<div class="settings field omega four columns">
|
16
|
-
<% promotion_action.calculator.
|
17
|
-
|
18
|
-
|
19
|
-
<%=
|
20
|
-
|
21
|
-
|
16
|
+
<% type_name = promotion_action.calculator.type.demodulize.underscore %>
|
17
|
+
<% if lookup_context.exists?("fields",
|
18
|
+
["spree/admin/promotions/calculators/#{type_name}"], true) %>
|
19
|
+
<%= render "spree/admin/promotions/calculators/#{type_name}/fields",
|
20
|
+
calculator: promotion_action.calculator, prefix: param_prefix %>
|
21
|
+
<% else %>
|
22
|
+
<%= render "spree/admin/promotions/calculators/default_fields",
|
23
|
+
calculator: promotion_action.calculator, prefix: param_prefix %>
|
22
24
|
<% end %>
|
23
25
|
<%= hidden_field_tag "#{param_prefix}[calculator_attributes][id]", promotion_action.calculator.id %>
|
24
26
|
</div>
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<% calculator.preferences.keys.map do |key| %>
|
2
|
+
<% field_name = "#{prefix}[calculator_attributes][preferred_#{key}]" %>
|
3
|
+
<%= label_tag field_name, Spree.t(key.to_s) %>
|
4
|
+
<%= preference_field_tag(
|
5
|
+
field_name,
|
6
|
+
calculator.get_preference(key),
|
7
|
+
type: calculator.preference_type(key)) %>
|
8
|
+
<% end %>
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<%= label_tag "#{prefix}[calculator_attributes][preferred_base_amount]",
|
2
|
+
Spree.t(:base_amount) %>
|
3
|
+
<%= preference_field_tag(
|
4
|
+
"#{prefix}[calculator_attributes][preferred_base_amount]",
|
5
|
+
calculator.preferred_base_amount,
|
6
|
+
type: calculator.preference_type(:base_amount)) %>
|
7
|
+
|
8
|
+
<%= label_tag nil, Spree.t(:tiers) %>
|
9
|
+
<%= content_tag :div, nil, class: "hidden js-original-tiers",
|
10
|
+
data: { :'original-tiers' => Hash[calculator.preferred_tiers.sort] } %>
|
11
|
+
<div class="js-tiers"></div>
|
12
|
+
<button class="fa fa-plus button js-add-tier"><%= Spree.t(:add) %></button>
|
13
|
+
|
14
|
+
<script type="text/x-handlebars-template" id="tier-input-name">
|
15
|
+
<%= prefix %>[calculator_attributes][preferred_tiers][{{base}}]
|
16
|
+
</script>
|
17
|
+
|
18
|
+
<script type="text/x-handlebars-template" id="tier-fields-template">
|
19
|
+
<div class="fullwidth tier">
|
20
|
+
<a class="fa fa-trash remove js-remove-tier"></a>
|
21
|
+
<div class="two columns alpha omega">
|
22
|
+
<div class="input-group">
|
23
|
+
<span class="input-group-addon">$</span>
|
24
|
+
<input class="js-base-input form-control" type="text" value={{baseField.value}}>
|
25
|
+
</div>
|
26
|
+
</div>
|
27
|
+
<div class="two columns alpha omega right">
|
28
|
+
<div class="input-group">
|
29
|
+
<span class="input-group-addon">$</span>
|
30
|
+
<input class="js-value-input form-control"
|
31
|
+
name="{{valueField.name}}" type="text" value={{valueField.value}}>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
<div class="clear"></div>
|
35
|
+
</div>
|
36
|
+
</script>
|
37
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
<%= label_tag "#{prefix}[calculator_attributes][preferred_base_percent]",
|
2
|
+
Spree.t(:base_percent) %>
|
3
|
+
<%= preference_field_tag(
|
4
|
+
"#{prefix}[calculator_attributes][preferred_base_percent]",
|
5
|
+
calculator.preferred_base_percent,
|
6
|
+
type: calculator.preference_type(:base_percent)) %>
|
7
|
+
|
8
|
+
<%= label_tag nil, Spree.t(:tiers) %>
|
9
|
+
<%= content_tag :div, nil, class: "hidden js-original-tiers",
|
10
|
+
data: { :'original-tiers' => Hash[calculator.preferred_tiers.sort] } %>
|
11
|
+
<div class="js-tiers"></div>
|
12
|
+
<button class="fa fa-plus button js-add-tier"><%= Spree.t(:add) %></button>
|
13
|
+
|
14
|
+
<script type="text/x-handlebars-template" id="tier-input-name">
|
15
|
+
<%= prefix %>[calculator_attributes][preferred_tiers][{{base}}]
|
16
|
+
</script>
|
17
|
+
|
18
|
+
<script type="text/x-handlebars-template" id="tier-fields-template">
|
19
|
+
<div class="fullwidth tier">
|
20
|
+
<a class="fa fa-trash remove js-remove-tier"></a>
|
21
|
+
<div class="two columns alpha omega">
|
22
|
+
<div class="input-group">
|
23
|
+
<span class="input-group-addon">$</span>
|
24
|
+
<input class="js-base-input form-control" type="text" value={{baseField.value}}>
|
25
|
+
</div>
|
26
|
+
</div>
|
27
|
+
<div class="two columns alpha omega right">
|
28
|
+
<div class="input-group">
|
29
|
+
<input class="js-value-input form-control right-align"
|
30
|
+
name="{{valueField.name}}" type="text" value={{valueField.value}}>
|
31
|
+
<span class="input-group-addon">%</span>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
<div class="clear"></div>
|
35
|
+
</div>
|
36
|
+
</script>
|
@@ -8,7 +8,6 @@
|
|
8
8
|
<%= configurations_sidebar_menu_item Spree.t(:general_settings), edit_admin_general_settings_path %>
|
9
9
|
<%= configurations_sidebar_menu_item Spree.t(:tax_categories), admin_tax_categories_path %>
|
10
10
|
<%= configurations_sidebar_menu_item Spree.t(:tax_rates), admin_tax_rates_path %>
|
11
|
-
<%= configurations_sidebar_menu_item Spree.t(:tax_settings), edit_admin_tax_settings_path %>
|
12
11
|
<%= configurations_sidebar_menu_item Spree.t(:zones), admin_zones_path %>
|
13
12
|
<%= configurations_sidebar_menu_item Spree.t(:countries), admin_countries_path %>
|
14
13
|
<% if Spree::Config[:default_country_id] %>
|
@@ -1,32 +1,32 @@
|
|
1
1
|
<nav class="menu">
|
2
2
|
<ul data-hook="admin_order_tabs">
|
3
3
|
<% if can? :update, @order %>
|
4
|
-
<li<%== ' class="active"' if current == 'Order Details'
|
4
|
+
<li<%== ' class="active"' if current == 'Order Details' %> data-hook='admin_order_tabs_order_details'>
|
5
5
|
<%= link_to_with_icon 'edit', Spree.t(:order_details), edit_admin_order_url(@order) %>
|
6
6
|
</li>
|
7
7
|
<% end %>
|
8
8
|
|
9
9
|
<% if can?(:update, @order) && checkout_steps.include?("address") %>
|
10
|
-
<li<%== ' class="active"' if current == 'Customer Details'
|
10
|
+
<li<%== ' class="active"' if current == 'Customer Details' %> data-hook='admin_order_tabs_customer_details'>
|
11
11
|
<%= link_to_with_icon 'user', Spree.t(:customer_details), admin_order_customer_url(@order) %>
|
12
12
|
</li>
|
13
13
|
<% end %>
|
14
14
|
|
15
15
|
<% if can? :index, Spree::Adjustment %>
|
16
|
-
<li<%== ' class="active"' if current == 'Adjustments'
|
16
|
+
<li<%== ' class="active"' if current == 'Adjustments' %> data-hook='admin_order_tabs_adjustments'>
|
17
17
|
<%= link_to_with_icon 'cogs', Spree.t(:adjustments), admin_order_adjustments_url(@order) %>
|
18
18
|
</li>
|
19
19
|
<% end %>
|
20
20
|
|
21
21
|
<% if can?(:index, Spree::Payment) %>
|
22
|
-
<li<%== ' class="active"' if current == 'Payments'
|
22
|
+
<li<%== ' class="active"' if current == 'Payments' %> data-hook='admin_order_tabs_payments'>
|
23
23
|
<%= link_to_with_icon 'credit-card', Spree.t(:payments), admin_order_payments_url(@order) %>
|
24
24
|
</li>
|
25
25
|
<% end %>
|
26
26
|
|
27
27
|
<% if can? :index, Spree::ReturnAuthorization %>
|
28
28
|
<% if @order.completed? %>
|
29
|
-
<li<%== ' class="active"' if current == 'Return Authorizations'
|
29
|
+
<li<%== ' class="active"' if current == 'Return Authorizations' %> data-hook='admin_order_tabs_return_authorizations'>
|
30
30
|
<%= link_to_with_icon 'share', Spree.t(:return_authorizations), admin_order_return_authorizations_url(@order) %>
|
31
31
|
</li>
|
32
32
|
<% end %>
|
@@ -7,7 +7,7 @@
|
|
7
7
|
<% if can? :admin, Spree::Admin::ReportsController %>
|
8
8
|
<%= tab :reports, :icon => 'file' %>
|
9
9
|
<% end %>
|
10
|
-
<%= tab :configurations, :general_settings, :tax_categories, :tax_rates, :
|
10
|
+
<%= tab :configurations, :general_settings, :tax_categories, :tax_rates, :zones, :countries, :states, :payment_methods, :shipping_methods, :shipping_categories, :stock_transfers, :stock_locations, :trackers, :label => 'configuration', :icon => 'wrench', :url => spree.edit_admin_general_settings_path %>
|
11
11
|
<% if can? :admin, Spree::Promotion %>
|
12
12
|
<%= tab(:promotions, :url => spree.admin_promotions_path, :icon => 'bullhorn') %>
|
13
13
|
<% end %>
|
@@ -77,7 +77,7 @@
|
|
77
77
|
<fieldset class="tax_categories no-border-bottom">
|
78
78
|
<legend align="center"><%= Spree.t(:tax_category) %></legend>
|
79
79
|
<%= f.field_container :categories do %>
|
80
|
-
<%= f.select :tax_category_id, @tax_categories.map { |tc| [tc.name, tc.id] }, {}, :
|
80
|
+
<%= f.select :tax_category_id, @tax_categories.map { |tc| [tc.name, tc.id] }, {include_blank: true}, class: "select2 fullwidth" %>
|
81
81
|
<%= error_message_on :shipping_method, :tax_category_id %>
|
82
82
|
<% end %>
|
83
83
|
</fieldset>
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<% end %>
|
10
10
|
|
11
11
|
<%= render :partial => 'spree/admin/shared/product_sub_menu' %>
|
12
|
-
<span id='sorting_explanation' style='display:none'
|
12
|
+
<span id='sorting_explanation' style='display:none'><%= Spree.t(:click_and_drag_on_the_products_to_sort_them) %></span>
|
13
13
|
<ul id='taxon_products'></ul>
|
14
14
|
|
15
15
|
<%= render :partial => "spree/admin/products/autocomplete", :formats => :js %>
|
data/config/routes.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_backend
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: spree_api
|
@@ -16,40 +16,40 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.3.
|
19
|
+
version: 2.3.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.3.
|
26
|
+
version: 2.3.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: spree_core
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 2.3.
|
33
|
+
version: 2.3.2
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 2.3.
|
40
|
+
version: 2.3.2
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: jquery-rails
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: 3.1.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 3.1.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
@@ -217,7 +217,6 @@ files:
|
|
217
217
|
- app/controllers/spree/admin/stock_transfers_controller.rb
|
218
218
|
- app/controllers/spree/admin/tax_categories_controller.rb
|
219
219
|
- app/controllers/spree/admin/tax_rates_controller.rb
|
220
|
-
- app/controllers/spree/admin/tax_settings_controller.rb
|
221
220
|
- app/controllers/spree/admin/taxonomies_controller.rb
|
222
221
|
- app/controllers/spree/admin/taxons_controller.rb
|
223
222
|
- app/controllers/spree/admin/trackers_controller.rb
|
@@ -319,6 +318,9 @@ files:
|
|
319
318
|
- app/views/spree/admin/promotions/actions/_create_item_adjustments.html.erb
|
320
319
|
- app/views/spree/admin/promotions/actions/_create_line_items.html.erb
|
321
320
|
- app/views/spree/admin/promotions/actions/_free_shipping.html.erb
|
321
|
+
- app/views/spree/admin/promotions/calculators/_default_fields.html.erb
|
322
|
+
- app/views/spree/admin/promotions/calculators/tiered_flat_rate/_fields.html.erb
|
323
|
+
- app/views/spree/admin/promotions/calculators/tiered_percent/_fields.html.erb
|
322
324
|
- app/views/spree/admin/promotions/edit.html.erb
|
323
325
|
- app/views/spree/admin/promotions/index.html.erb
|
324
326
|
- app/views/spree/admin/promotions/new.html.erb
|
@@ -413,7 +415,6 @@ files:
|
|
413
415
|
- app/views/spree/admin/tax_rates/edit.html.erb
|
414
416
|
- app/views/spree/admin/tax_rates/index.html.erb
|
415
417
|
- app/views/spree/admin/tax_rates/new.html.erb
|
416
|
-
- app/views/spree/admin/tax_settings/edit.html.erb
|
417
418
|
- app/views/spree/admin/taxonomies/_form.html.erb
|
418
419
|
- app/views/spree/admin/taxonomies/_js_head.html.erb
|
419
420
|
- app/views/spree/admin/taxonomies/_list.html.erb
|
@@ -458,6 +459,7 @@ files:
|
|
458
459
|
- app/views/spree/layouts/admin.html.erb
|
459
460
|
- app/views/spree/test_mailer/test_email.text.erb
|
460
461
|
- config/initializers/form_builder.rb
|
462
|
+
- config/locales/en.yml
|
461
463
|
- config/routes.rb
|
462
464
|
- lib/spree/backend.rb
|
463
465
|
- lib/spree/backend/action_callbacks.rb
|
@@ -1,17 +0,0 @@
|
|
1
|
-
module Spree
|
2
|
-
module Admin
|
3
|
-
class TaxSettingsController < Spree::Admin::BaseController
|
4
|
-
|
5
|
-
def update
|
6
|
-
Spree::Config.set(params[:preferences])
|
7
|
-
|
8
|
-
respond_to do |format|
|
9
|
-
format.html {
|
10
|
-
redirect_to edit_admin_tax_settings_path
|
11
|
-
}
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
<%= render :partial => 'spree/admin/shared/configuration_menu' %>
|
2
|
-
|
3
|
-
<% content_for :page_title do %>
|
4
|
-
<%= Spree.t(:tax_settings) %>
|
5
|
-
<% end %>
|
6
|
-
|
7
|
-
<%= form_tag admin_tax_settings_path, :method => :put do %>
|
8
|
-
<div data-hook="shipment_vat" class="field align-center">
|
9
|
-
<%= hidden_field_tag 'preferences[shipment_inc_vat]', '0' %>
|
10
|
-
<%= check_box_tag 'preferences[shipment_inc_vat]', '1', Spree::Config[:shipment_inc_vat] %>
|
11
|
-
<%= label_tag nil, Spree.t(:shipment_inc_vat) %>
|
12
|
-
|
13
|
-
</div>
|
14
|
-
|
15
|
-
<div class="form-buttons" data-hook="buttons">
|
16
|
-
<%= button Spree.t('actions.update'), 'refresh' %>
|
17
|
-
</div>
|
18
|
-
<% end %>
|