spree_backend 4.2.0.rc2 → 4.2.1
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.js +1 -2
- data/app/assets/javascripts/spree/backend/address_states.js +20 -9
- data/app/assets/javascripts/spree/backend/admin.js +9 -15
- data/app/assets/javascripts/spree/backend/calculator.js +2 -0
- data/app/assets/javascripts/spree/backend/checkouts/edit.js +99 -71
- data/app/assets/javascripts/spree/backend/line_items_on_order_edit.js +1 -1
- data/app/assets/javascripts/spree/backend/option_type_autocomplete.js +31 -37
- data/app/assets/javascripts/spree/backend/option_value_picker.js +50 -23
- data/app/assets/javascripts/spree/backend/product_picker.js +35 -19
- data/app/assets/javascripts/spree/backend/promotions.js +32 -27
- data/app/assets/javascripts/spree/backend/shipments.js +28 -37
- data/app/assets/javascripts/spree/backend/spree-select2.js +33 -14
- data/app/assets/javascripts/spree/backend/stock_transfer.js +32 -13
- data/app/assets/javascripts/spree/backend/taxon_autocomplete.js +30 -43
- data/app/assets/javascripts/spree/backend/taxons.js +60 -47
- data/app/assets/javascripts/spree/backend/user_picker.js +16 -18
- data/app/assets/javascripts/spree/backend/variant_autocomplete.js +23 -22
- data/app/assets/stylesheets/spree/backend/components/_badges.scss +1 -1
- data/app/assets/stylesheets/spree/backend/components/_tables.scss +2 -2
- data/app/assets/stylesheets/spree/backend/global/_mixins.scss +19 -0
- data/app/assets/stylesheets/spree/backend/global/_variables.scss +1 -1
- data/app/assets/stylesheets/spree/backend/plugins/_flatpickr.scss +94 -76
- data/app/assets/stylesheets/spree/backend/plugins/_select2_custom.scss +11 -0
- data/app/assets/stylesheets/spree/backend/plugins/select2_bootstrap4.scss +622 -0
- data/app/assets/stylesheets/spree/backend/shared/_base.scss +4 -0
- data/app/assets/stylesheets/spree/backend/spree_admin.css.scss +3 -1
- data/app/controllers/spree/admin/base_controller.rb +2 -0
- data/app/controllers/spree/admin/general_settings_controller.rb +1 -1
- data/app/controllers/spree/admin/images_controller.rb +3 -3
- data/app/controllers/spree/admin/orders/customer_details_controller.rb +1 -1
- data/app/controllers/spree/admin/orders_controller.rb +15 -2
- data/app/controllers/spree/admin/prices_controller.rb +0 -13
- data/app/controllers/spree/admin/products_controller.rb +2 -2
- data/app/controllers/spree/admin/states_controller.rb +1 -1
- data/app/controllers/spree/admin/stores_controller.rb +7 -14
- data/app/controllers/spree/admin/taxons_controller.rb +15 -5
- data/app/helpers/spree/admin/base_helper.rb +68 -6
- data/app/helpers/spree/admin/navigation_helper.rb +11 -1
- data/app/helpers/spree/admin/payments_helper.rb +3 -3
- data/app/helpers/spree/admin/stock_movements_helper.rb +2 -0
- data/app/views/kaminari/admin-twitter-bootstrap-4/_first_page.html.erb +2 -2
- data/app/views/kaminari/admin-twitter-bootstrap-4/_gap.html.erb +2 -2
- data/app/views/kaminari/admin-twitter-bootstrap-4/_last_page.html.erb +2 -2
- data/app/views/kaminari/admin-twitter-bootstrap-4/_next_page.html.erb +2 -2
- data/app/views/kaminari/admin-twitter-bootstrap-4/_page.html.erb +2 -2
- data/app/views/kaminari/admin-twitter-bootstrap-4/_paginator.html.erb +2 -2
- data/app/views/kaminari/admin-twitter-bootstrap-4/_prev_page.html.erb +2 -2
- data/app/views/spree/admin/adjustments/index.html.erb +2 -2
- data/app/views/spree/admin/countries/index.html.erb +6 -6
- data/app/views/spree/admin/customer_returns/_return_item_decision.html.erb +48 -46
- data/app/views/spree/admin/customer_returns/_return_item_selection.html.erb +3 -1
- data/app/views/spree/admin/customer_returns/edit.html.erb +1 -1
- data/app/views/spree/admin/customer_returns/index.html.erb +2 -2
- data/app/views/spree/admin/customer_returns/new.html.erb +1 -1
- data/app/views/spree/admin/general_settings/edit.html.erb +27 -4
- data/app/views/spree/admin/images/edit.html.erb +1 -1
- data/app/views/spree/admin/log_entries/index.html.erb +1 -1
- data/app/views/spree/admin/option_types/index.html.erb +2 -2
- data/app/views/spree/admin/orders/_add_line_item.html.erb +1 -1
- data/app/views/spree/admin/orders/_add_product.html.erb +1 -1
- data/app/views/spree/admin/orders/_adjustments.html.erb +2 -2
- data/app/views/spree/admin/orders/_channel_form.html.erb +18 -0
- data/app/views/spree/admin/orders/_form.html.erb +6 -10
- data/app/views/spree/admin/orders/_line_items.html.erb +1 -1
- data/app/views/spree/admin/orders/_line_items_edit_form.html.erb +5 -8
- data/app/views/spree/admin/orders/_order_actions.html.erb +1 -2
- data/app/views/spree/admin/orders/_risk_analysis.html.erb +3 -3
- data/app/views/spree/admin/orders/_shipment.html.erb +3 -2
- data/app/views/spree/admin/orders/_shipment_manifest.html.erb +1 -1
- data/app/views/spree/admin/orders/cart.html.erb +1 -1
- data/app/views/spree/admin/orders/channel.html.erb +7 -0
- data/app/views/spree/admin/orders/customer_details/_autocomplete.js.erb +35 -12
- data/app/views/spree/admin/orders/customer_details/_form.html.erb +3 -3
- data/app/views/spree/admin/orders/customer_details/edit.html.erb +1 -1
- data/app/views/spree/admin/orders/edit.html.erb +1 -1
- data/app/views/spree/admin/orders/index.html.erb +12 -11
- data/app/views/spree/admin/payment_methods/_form.html.erb +65 -46
- data/app/views/spree/admin/payment_methods/index.html.erb +2 -2
- data/app/views/spree/admin/payments/_form.html.erb +2 -3
- data/app/views/spree/admin/payments/show.html.erb +1 -2
- data/app/views/spree/admin/payments/source_forms/_gateway.html.erb +3 -4
- data/app/views/spree/admin/payments/source_views/_gateway.html.erb +1 -1
- data/app/views/spree/admin/prices/_variant_prices.html.erb +5 -5
- data/app/views/spree/admin/prices/index.html.erb +2 -2
- data/app/views/spree/admin/product_properties/index.html.erb +3 -4
- data/app/views/spree/admin/products/_form.html.erb +8 -9
- data/app/views/spree/admin/products/index.html.erb +2 -1
- data/app/views/spree/admin/products/new.html.erb +5 -3
- data/app/views/spree/admin/products/stock.html.erb +2 -2
- data/app/views/spree/admin/promotion_rules/create.js.erb +1 -1
- data/app/views/spree/admin/promotions/_actions.html.erb +2 -3
- data/app/views/spree/admin/promotions/_form.html.erb +10 -11
- data/app/views/spree/admin/promotions/_rules.html.erb +1 -1
- data/app/views/spree/admin/promotions/actions/_create_adjustment.html.erb +1 -1
- data/app/views/spree/admin/promotions/actions/_create_item_adjustments.html.erb +1 -1
- data/app/views/spree/admin/promotions/actions/_create_line_items.html.erb +1 -1
- data/app/views/spree/admin/promotions/index.html.erb +7 -5
- data/app/views/spree/admin/promotions/rules/_option_value.html.erb +8 -7
- data/app/views/spree/admin/promotions/rules/_product.html.erb +1 -1
- data/app/views/spree/admin/promotions/rules/_taxon.html.erb +2 -2
- data/app/views/spree/admin/promotions/rules/_user.html.erb +1 -1
- data/app/views/spree/admin/prototypes/_form.html.erb +1 -1
- data/app/views/spree/admin/prototypes/show.html.erb +1 -1
- data/app/views/spree/admin/refunds/edit.html.erb +2 -2
- data/app/views/spree/admin/refunds/new.html.erb +3 -3
- data/app/views/spree/admin/reimbursements/edit.html.erb +5 -4
- data/app/views/spree/admin/reimbursements/show.html.erb +3 -1
- data/app/views/spree/admin/return_authorizations/_form.html.erb +7 -5
- data/app/views/spree/admin/return_authorizations/index.html.erb +2 -2
- data/app/views/spree/admin/return_index/customer_returns.html.erb +2 -2
- data/app/views/spree/admin/return_index/return_authorizations.html.erb +2 -2
- data/app/views/spree/admin/roles/index.html.erb +1 -1
- data/app/views/spree/admin/shared/_account_nav.html.erb +3 -3
- data/app/views/spree/admin/shared/_address_form.html.erb +9 -9
- data/app/views/spree/admin/shared/_error_messages.html.erb +1 -1
- data/app/views/spree/admin/shared/_head.html.erb +6 -2
- data/app/views/spree/admin/shared/_header.html.erb +0 -2
- data/app/views/spree/admin/shared/_main_menu.html.erb +1 -1
- data/app/views/spree/admin/shared/_order_summary.html.erb +25 -21
- data/app/views/spree/admin/shared/_order_tabs.html.erb +9 -0
- data/app/views/spree/admin/shared/_refunds.html.erb +2 -2
- data/app/views/spree/admin/shared/_report_order_criteria.html.erb +4 -2
- data/app/views/spree/admin/shared/_translations.html.erb +9 -38
- data/app/views/spree/admin/shared/_update_order_state.js.erb +6 -2
- data/app/views/spree/admin/shared/named_types/_index.html.erb +1 -1
- data/app/views/spree/admin/shipping_categories/index.html.erb +2 -2
- data/app/views/spree/admin/shipping_methods/_form.html.erb +2 -2
- data/app/views/spree/admin/shipping_methods/index.html.erb +7 -3
- data/app/views/spree/admin/states/index.html.erb +2 -2
- data/app/views/spree/admin/stock_locations/_form.html.erb +2 -2
- data/app/views/spree/admin/stock_locations/_transfer_stock_form.html.erb +1 -1
- data/app/views/spree/admin/stock_locations/index.html.erb +6 -6
- data/app/views/spree/admin/stock_movements/_form.html.erb +1 -1
- data/app/views/spree/admin/stock_movements/index.html.erb +2 -2
- data/app/views/spree/admin/stock_transfers/_stock_movements.html.erb +1 -1
- data/app/views/spree/admin/stock_transfers/index.html.erb +42 -37
- data/app/views/spree/admin/stock_transfers/new.html.erb +1 -1
- data/app/views/spree/admin/stock_transfers/show.html.erb +0 -1
- data/app/views/spree/admin/stores/_form.html.erb +83 -25
- data/app/views/spree/admin/stores/index.html.erb +15 -8
- data/app/views/spree/admin/tax_categories/index.html.erb +3 -3
- data/app/views/spree/admin/tax_rates/index.html.erb +8 -8
- data/app/views/spree/admin/taxonomies/_js_head.html.erb +1 -2
- data/app/views/spree/admin/taxonomies/_list.html.erb +1 -1
- data/app/views/spree/admin/taxons/_form.html.erb +38 -35
- data/app/views/spree/admin/taxons/_taxon_table.html.erb +2 -2
- data/app/views/spree/admin/taxons/index.html.erb +1 -1
- data/app/views/spree/admin/users/_addresses_form.html.erb +4 -6
- data/app/views/spree/admin/users/_form.html.erb +0 -1
- data/app/views/spree/admin/users/edit.html.erb +1 -1
- data/app/views/spree/admin/users/index.html.erb +2 -2
- data/app/views/spree/admin/users/items.html.erb +1 -1
- data/app/views/spree/admin/variants/_form.html.erb +5 -3
- data/app/views/spree/admin/zones/_country_members.html.erb +1 -1
- data/app/views/spree/admin/zones/_form.html.erb +2 -2
- data/app/views/spree/admin/zones/index.html.erb +1 -1
- data/app/views/spree/admin/zones/new.html.erb +1 -1
- data/app/views/spree/layouts/admin.html.erb +2 -3
- data/config/initializers/assets.rb +1 -1
- data/config/routes.rb +7 -1
- data/spree_backend.gemspec +2 -2
- metadata +20 -20
- data/app/assets/javascripts/spree/backend/flatpickr_locals.js +0 -37
- data/app/assets/javascripts/spree/backend/tag_picker.js +0 -52
- data/app/assets/stylesheets/spree/backend/plugins/_select2.scss +0 -190
- data/app/helpers/spree/admin/currency_helper.rb +0 -14
- data/app/views/spree/admin/general_settings/_form.html.erb +0 -17
@@ -11,11 +11,11 @@
|
|
11
11
|
<fieldset>
|
12
12
|
<div data-hook="admin_refund_form_fields">
|
13
13
|
<div class="form-group">
|
14
|
-
<%= f.label :payment_amount, Spree.t(:payment_amount) %><br
|
14
|
+
<%= f.label :payment_amount, Spree.t(:payment_amount) %><br>
|
15
15
|
<%= @refund.payment.amount %>
|
16
16
|
</div>
|
17
17
|
<div class="form-group">
|
18
|
-
<%= f.label :credit_allowed, Spree.t(:credit_allowed) %><br
|
18
|
+
<%= f.label :credit_allowed, Spree.t(:credit_allowed) %><br>
|
19
19
|
<%= @refund.payment.credit_allowed %>
|
20
20
|
</div>
|
21
21
|
<%= f.field_container :amount, class: ['form-group'] do %>
|
@@ -25,7 +25,7 @@
|
|
25
25
|
<% end %>
|
26
26
|
<%= f.field_container :reason, class: ['form-group'] do %>
|
27
27
|
<%= f.label :refund_reason_id, Spree.t(:reason) %>
|
28
|
-
<%= f.collection_select(:refund_reason_id, refund_reasons, :id, :name, {include_blank: true}, {class: 'select2'}) %>
|
28
|
+
<%= f.collection_select(:refund_reason_id, refund_reasons, :id, :name, {include_blank: true}, {class: 'select2-clear'}) %>
|
29
29
|
<%= f.error_message_on :reason %>
|
30
30
|
<% end %>
|
31
31
|
</div>
|
@@ -26,7 +26,9 @@
|
|
26
26
|
<% return_item = item_fields.object %>
|
27
27
|
<tr>
|
28
28
|
<td>
|
29
|
-
<div class="variant-name"
|
29
|
+
<div class="variant-name">
|
30
|
+
<%= link_to return_item.inventory_unit.variant.name, spree.edit_admin_product_path(return_item.inventory_unit.variant.product) %>
|
31
|
+
</div>
|
30
32
|
<div class="variant-options"><%= return_item.inventory_unit.variant.options_text %></div>
|
31
33
|
</td>
|
32
34
|
<td>
|
@@ -49,7 +51,7 @@
|
|
49
51
|
<% if return_item.exchange_processed? %>
|
50
52
|
<%= return_item.exchange_variant.exchange_name %>
|
51
53
|
<% else %>
|
52
|
-
<%= item_fields.collection_select :exchange_variant_id, return_item.eligible_exchange_variants, :id, :exchange_name, { include_blank: true }, { class: "select2 return-item-exchange-selection" } %>
|
54
|
+
<%= item_fields.collection_select :exchange_variant_id, return_item.eligible_exchange_variants, :id, :exchange_name, { include_blank: true }, { class: "select2-clear return-item-exchange-selection" } %>
|
53
55
|
<% end %>
|
54
56
|
</td>
|
55
57
|
</tr>
|
@@ -64,7 +66,7 @@
|
|
64
66
|
</div>
|
65
67
|
<% end %>
|
66
68
|
|
67
|
-
<fieldset class="
|
69
|
+
<fieldset class="mt-3">
|
68
70
|
<legend><%= Spree.t(:calculated_reimbursements) %></legend>
|
69
71
|
<div class="table-responsive">
|
70
72
|
<table class="table table-condensed table-bordered">
|
@@ -91,7 +93,6 @@
|
|
91
93
|
<%= "#{Spree.t('note')}: #{Spree.t('this_order_has_already_received_a_refund')}. #{Spree.t('make_sure_the_above_reimbursement_amount_is_correct')}." %>
|
92
94
|
</div>
|
93
95
|
<% end %>
|
94
|
-
|
95
96
|
<div class="form-actions" data-hook="reimburse-buttons">
|
96
97
|
<% if !@reimbursement.reimbursed? %>
|
97
98
|
<%= button_to [:perform, :admin, @order, @reimbursement], { class: 'btn btn-primary', method: 'post' } do %>
|
@@ -24,7 +24,9 @@
|
|
24
24
|
<% @reimbursement.return_items.each do |return_item| %>
|
25
25
|
<tr>
|
26
26
|
<td>
|
27
|
-
<div class="variant-name"
|
27
|
+
<div class="variant-name">
|
28
|
+
<%= link_to return_item.inventory_unit.variant.name, spree.edit_admin_product_path(return_item.inventory_unit.variant.product) %>
|
29
|
+
</div>
|
28
30
|
<div class="variant-options"><%= return_item.inventory_unit.variant.options_text %></div>
|
29
31
|
</td>
|
30
32
|
<td>
|
@@ -33,7 +33,9 @@
|
|
33
33
|
<% end %>
|
34
34
|
</td>
|
35
35
|
<td>
|
36
|
-
<div class="variant-name"
|
36
|
+
<div class="variant-name">
|
37
|
+
<%= link_to return_item.inventory_unit.variant.name, spree.edit_admin_product_path(return_item.inventory_unit.variant.product) %>
|
38
|
+
</div>
|
37
39
|
<div class="variant-options"><%= inventory_unit.variant.options_text %></div>
|
38
40
|
</td>
|
39
41
|
<td><%= inventory_unit.state.humanize %></td>
|
@@ -59,7 +61,7 @@
|
|
59
61
|
</td>
|
60
62
|
<td>
|
61
63
|
<% if editable %>
|
62
|
-
<%= item_fields.select :preferred_reimbursement_type_id, @reimbursement_types.collect{|r|[r.name.humanize, r.id]}, {include_blank: true}, {class: 'select2'} %>
|
64
|
+
<%= item_fields.select :preferred_reimbursement_type_id, @reimbursement_types.collect{|r|[r.name.humanize, r.id]}, {include_blank: true}, {class: 'select2-clear'} %>
|
63
65
|
<% end %>
|
64
66
|
</td>
|
65
67
|
<td>
|
@@ -67,7 +69,7 @@
|
|
67
69
|
<% if return_item.exchange_processed? %>
|
68
70
|
<%= return_item.exchange_variant.exchange_name %>
|
69
71
|
<% else %>
|
70
|
-
<%= item_fields.collection_select :exchange_variant_id, return_item.eligible_exchange_variants, :id, :exchange_name, { include_blank: true }, { class: "select2 return-item-exchange-selection" } %>
|
72
|
+
<%= item_fields.collection_select :exchange_variant_id, return_item.eligible_exchange_variants, :id, :exchange_name, { include_blank: true }, { class: "select2-clear return-item-exchange-selection" } %>
|
71
73
|
<% end %>
|
72
74
|
<% end %>
|
73
75
|
</td>
|
@@ -82,13 +84,13 @@
|
|
82
84
|
|
83
85
|
<%= f.field_container :stock_location, class: ['form-group'] do %>
|
84
86
|
<%= f.label :stock_location, Spree.t(:stock_location) %> <span class="required">*</span>
|
85
|
-
<%= f.select :stock_location_id, Spree::StockLocation.order_default.active.to_a.collect{|l|[l.name, l.id]}, {include_blank: true}, {class: 'select2', "data-placeholder" => Spree.t(:select_a_stock_location)} %>
|
87
|
+
<%= f.select :stock_location_id, Spree::StockLocation.order_default.active.to_a.collect{|l|[l.name, l.id]}, {include_blank: true}, {class: 'select2-clear', "data-placeholder" => Spree.t(:select_a_stock_location)} %>
|
86
88
|
<%= f.error_message_on :stock_location %>
|
87
89
|
<% end %>
|
88
90
|
|
89
91
|
<%= f.field_container :reason, class: ['form-group'] do %>
|
90
92
|
<%= f.label :reason, Spree.t(:reason) %> <span class="required">*</span>
|
91
|
-
<%= f.select :return_authorization_reason_id, @reasons.collect{|r|[r.name, r.id]}, {include_blank: true}, {class: 'select2', "data-placeholder" => Spree.t(:select_a_return_authorization_reason)} %>
|
93
|
+
<%= f.select :return_authorization_reason_id, @reasons.collect{|r|[r.name, r.id]}, {include_blank: true}, {class: 'select2-clear', "data-placeholder" => Spree.t(:select_a_return_authorization_reason)} %>
|
92
94
|
<%= f.error_message_on :reason %>
|
93
95
|
<% end %>
|
94
96
|
|
@@ -27,9 +27,9 @@
|
|
27
27
|
<tr id="<%= spree_dom_id(return_authorization) %>" data-hook="rma_row">
|
28
28
|
<td><%= return_authorization.number %></td>
|
29
29
|
<td>
|
30
|
-
<
|
30
|
+
<strong class="badge badge-<%= return_authorization.state %> text-uppercase">
|
31
31
|
<%= Spree.t("return_authorization_states.#{return_authorization.state}") %>
|
32
|
-
</
|
32
|
+
</strong>
|
33
33
|
</td>
|
34
34
|
<td><%= return_authorization.display_pre_tax_total.to_html %></td>
|
35
35
|
<td><%= pretty_time(return_authorization.created_at) %></td>
|
@@ -41,9 +41,9 @@
|
|
41
41
|
<td><%= link_to customer_return.order.number, spree.edit_admin_order_path(customer_return.order) %></td>
|
42
42
|
<td>
|
43
43
|
<% if customer_return.fully_reimbursed? %>
|
44
|
-
<span class="badge badge-success"><%= Spree.t(:reimbursed) %></span>
|
44
|
+
<span class="badge badge-success text-uppercase"><%= Spree.t(:reimbursed) %></span>
|
45
45
|
<% else %>
|
46
|
-
<span class="badge badge-
|
46
|
+
<span class="badge badge-inactive text-uppercase"><%= Spree.t(:incomplete) %></span>
|
47
47
|
<% end %>
|
48
48
|
</td>
|
49
49
|
<td><%= customer_return.display_pre_tax_total.to_html %></td>
|
@@ -33,7 +33,7 @@
|
|
33
33
|
<div class="col-12 col-lg-6">
|
34
34
|
<div class="form-group">
|
35
35
|
<%= label_tag :q_state_eq, Spree.t(:status) %>
|
36
|
-
<%= f.select :state_eq, Spree::ReturnAuthorization.state_machines[:state].states.collect {|s| [Spree.t("return_authorization_states.#{s.name}"), s.value]}, {include_blank: true}, class: 'select2 js-filterable' %>
|
36
|
+
<%= f.select :state_eq, Spree::ReturnAuthorization.state_machines[:state].states.collect {|s| [Spree.t("return_authorization_states.#{s.name}"), s.value]}, {include_blank: true}, class: 'select2-clear js-filterable' %>
|
37
37
|
</div>
|
38
38
|
</div>
|
39
39
|
</div>
|
@@ -63,7 +63,7 @@
|
|
63
63
|
<td><%= link_to return_authorization.number, spree.edit_admin_order_return_authorization_path(return_authorization.order, return_authorization) %></td>
|
64
64
|
<td><%= link_to return_authorization.order.number, spree.edit_admin_order_path(return_authorization.order) %></td>
|
65
65
|
<td>
|
66
|
-
<span class="badge badge-<%= return_authorization.state %>"><%= Spree.t("return_authorization_states.#{return_authorization.state}") %></span>
|
66
|
+
<span class="badge badge-<%= return_authorization.state %> text-uppercase"><%= Spree.t("return_authorization_states.#{return_authorization.state}") %></span>
|
67
67
|
</td>
|
68
68
|
<td class="actions actions-1 text-right">
|
69
69
|
<%= link_to_edit return_authorization, url: spree.edit_admin_order_return_authorization_path(return_authorization.order, return_authorization), no_text: true if can?(:edit, return_authorization) %>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<%= svg_icon name: "user.svg", width: '24', height: '24' %>
|
6
6
|
</button>
|
7
7
|
|
8
|
-
<div class="dropdown-menu dropdown-menu-right mt-2 p-0 mr-2">
|
8
|
+
<div class="dropdown-menu dropdown-menu-right overflow-hidden mt-2 p-0 mr-2">
|
9
9
|
<div class="dropdown-item px-0 text-center bg-light">
|
10
10
|
<span class="d-block text-dark py-2 px-4"><%= try_spree_current_user.email %></span>
|
11
11
|
</div>
|
@@ -27,8 +27,8 @@
|
|
27
27
|
<% end %>
|
28
28
|
<% end %>
|
29
29
|
|
30
|
-
<% if
|
31
|
-
<%= link_to
|
30
|
+
<% if admin_logout_link %>
|
31
|
+
<%= link_to admin_logout_link, class: 'd-block text-dark py-3 px-4 dropdown-item' do %>
|
32
32
|
<%= svg_icon name: "exit.svg", width: '18', height: '18' %>
|
33
33
|
|
34
34
|
<%= Spree.t(:logout) %>
|
@@ -4,25 +4,25 @@
|
|
4
4
|
<% if field == "country" %>
|
5
5
|
<%= field_container (s_or_b + '_' + field), nil, class: ["form-group", "#{type}-row"] do %>
|
6
6
|
<%= f.label :country_id, Spree.t(:country) %>
|
7
|
-
<
|
8
|
-
<%= f.collection_select :country_id, available_countries, :id, :name, {}, { class: 'select2' } %>
|
9
|
-
</
|
7
|
+
<div id="<%= s_or_b %>country">
|
8
|
+
<%= f.collection_select :country_id, available_countries, :id, :name, {}, { class: 'select2 w-100' } %>
|
9
|
+
</div>
|
10
10
|
<% end %>
|
11
11
|
<% elsif field == "state" %>
|
12
12
|
<%= field_container (s_or_b + '_' + field), :state, class: ["form-group", "#{type}-row"] do %>
|
13
13
|
<%= f.label :state_id, Spree.t(:state) %>
|
14
|
-
<
|
14
|
+
<div id="<%= s_or_b %>state">
|
15
15
|
<% if f.object.country.try(:states) %>
|
16
16
|
<%= f.text_field :state_name,
|
17
17
|
style: "display: #{f.object.country.try(:states) && f.object.country.states.empty? ? 'block' : 'none' };",
|
18
18
|
disabled: !(f.object.country.try(:states) && f.object.country.states.empty?), class: 'form-control state_name' %>
|
19
|
-
<%= f.collection_select :state_id, f.object.country.states.sort, :id, :name, { include_blank: true }, { class: 'select2
|
19
|
+
<%= f.collection_select :state_id, f.object.country.states.sort, :id, :name, { include_blank: true }, { class: 'select2 w-100', disabled: f.object.country.states.empty? } %>
|
20
20
|
<% else %>
|
21
21
|
<div>
|
22
22
|
<em><%= Spree.t(:no_country) %></em>
|
23
23
|
</div>
|
24
24
|
<% end %>
|
25
|
-
</
|
25
|
+
</div>
|
26
26
|
<%= error_message_on f.object, :state_id %>
|
27
27
|
<% end %>
|
28
28
|
<% else %>
|
@@ -36,9 +36,9 @@
|
|
36
36
|
</div>
|
37
37
|
|
38
38
|
<% content_for :head do %>
|
39
|
-
|
39
|
+
<script>
|
40
40
|
$(document).ready(function(){
|
41
|
-
$('
|
41
|
+
$('#<%= s_or_b %>country select').on('change', function() { update_state('<%= s_or_b %>'); });
|
42
42
|
});
|
43
|
-
|
43
|
+
</script>
|
44
44
|
<% end %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% if target && target.errors.any? %>
|
2
2
|
<div id="errorExplanation" class="errorExplanation alert alert-danger" data-hook>
|
3
3
|
<p>
|
4
|
-
<strong><%= Spree.t(:errors_prohibited_this_record_from_being_saved, count: target.errors.size) %>:</strong><br
|
4
|
+
<strong><%= Spree.t(:errors_prohibited_this_record_from_being_saved, count: target.errors.size) %>:</strong><br>
|
5
5
|
</p>
|
6
6
|
<ul class="ul-with-markup">
|
7
7
|
<% target.errors.full_messages.each do |msg| %>
|
@@ -19,9 +19,13 @@
|
|
19
19
|
<%= javascript_include_tag 'spree/backend/all' %>
|
20
20
|
<%= render "spree/admin/shared/translations" %>
|
21
21
|
|
22
|
-
|
22
|
+
<script>
|
23
23
|
<%== "var AUTH_TOKEN = #{form_authenticity_token.inspect};" %>
|
24
24
|
<%== "Spree.api_key = '#{try_spree_current_user.spree_api_key}';" if try_spree_current_user %>
|
25
|
-
|
25
|
+
<%== "var ADDRESS_FIELDS = #{Spree::Address::ADDRESS_FIELDS}" %>
|
26
|
+
<% if Rails.env.test? %>
|
27
|
+
jQuery.fx.off = false
|
28
|
+
<% end %>
|
29
|
+
</script>
|
26
30
|
|
27
31
|
<%= yield :head %>
|
@@ -1,5 +1,4 @@
|
|
1
1
|
<header class="header logged-in">
|
2
|
-
|
3
2
|
<nav class="navbar fixed-top navbar-dark align-items-middle">
|
4
3
|
<div class="col-3 col-sm-4 p-0 d-lg-none">
|
5
4
|
<button
|
@@ -23,5 +22,4 @@
|
|
23
22
|
<%= render partial: 'spree/admin/shared/account_nav' %>
|
24
23
|
</div>
|
25
24
|
</nav>
|
26
|
-
|
27
25
|
</header>
|
@@ -30,7 +30,7 @@
|
|
30
30
|
|
31
31
|
<% if can? :admin, Spree::Admin::ReportsController %>
|
32
32
|
<ul class="nav nav-sidebar border-bottom" id="sidebarReport">
|
33
|
-
<%= tab *Spree::BackendConfiguration::REPORT_TABS, icon: 'report.svg'
|
33
|
+
<%= tab *Spree::BackendConfiguration::REPORT_TABS, icon: 'report.svg' %>
|
34
34
|
</ul>
|
35
35
|
<% end %>
|
36
36
|
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<strong><%= Spree.t(:status) %>:</strong>
|
11
11
|
</td>
|
12
12
|
<td>
|
13
|
-
<span class="state badge badge-<%= @order.state %>">
|
13
|
+
<span class="state badge badge-<%= @order.state %> text-uppercase">
|
14
14
|
<%= Spree.t(@order.state, scope: :order_state) %>
|
15
15
|
</span>
|
16
16
|
</td>
|
@@ -71,26 +71,30 @@
|
|
71
71
|
</tr>
|
72
72
|
|
73
73
|
<% if @order.completed? %>
|
74
|
-
|
75
|
-
<
|
76
|
-
<
|
77
|
-
|
78
|
-
|
79
|
-
<
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
74
|
+
<% if @order.shipment_state.present? %>
|
75
|
+
<tr>
|
76
|
+
<td>
|
77
|
+
<strong><%= Spree.t(:shipment) %>:</strong>
|
78
|
+
</td>
|
79
|
+
<td id='shipment_status'>
|
80
|
+
<span class="state badge badge-<%= @order.shipment_state %> text-uppercase">
|
81
|
+
<%= Spree.t(@order.shipment_state, scope: :shipment_states, default: [:missing, "none"]) %>
|
82
|
+
</span>
|
83
|
+
</td>
|
84
|
+
</tr>
|
85
|
+
<% end %>
|
86
|
+
<% if @order.payment_state.present? %>
|
87
|
+
<tr>
|
88
|
+
<td>
|
89
|
+
<strong><%= Spree.t(:payment) %>:</strong>
|
90
|
+
</td>
|
91
|
+
<td id='payment_status'>
|
92
|
+
<span class="state badge badge-<%= @order.payment_state %> text-uppercase">
|
93
|
+
<%= Spree.t(@order.payment_state, scope: :payment_states, default: [:missing, "none"]) %>
|
94
|
+
</span>
|
95
|
+
</td>
|
96
|
+
</tr>
|
97
|
+
<% end %>
|
94
98
|
<tr>
|
95
99
|
<td data-hook='admin_order_tab_date_completed_title'>
|
96
100
|
<strong><%= Spree.t(:date_completed) %>:</strong>
|
@@ -23,6 +23,15 @@
|
|
23
23
|
</li>
|
24
24
|
<% end %>
|
25
25
|
|
26
|
+
<% if can? :update, @order %>
|
27
|
+
<li data-hook='admin_order_tabs_channel_details'>
|
28
|
+
<%= link_to_with_icon 'split.svg',
|
29
|
+
Spree.t(:channel),
|
30
|
+
channel_admin_order_url(@order),
|
31
|
+
class: "#{'active' if current == :channel} nav-link" %>
|
32
|
+
</li>
|
33
|
+
<% end %>
|
34
|
+
|
26
35
|
<% if can?(:update, @order) && @order.checkout_steps.include?("address") %>
|
27
36
|
<li data-hook='admin_order_tabs_customer_details'>
|
28
37
|
<%= link_to_with_icon 'user.svg',
|
@@ -15,9 +15,9 @@
|
|
15
15
|
</thead>
|
16
16
|
<tbody>
|
17
17
|
<% refunds.each do |refund| %>
|
18
|
-
<tr id="<%= dom_id(refund) %>" data-hook="refunds_row" class="<%= cycle('odd', 'even', name: 'refund_table_cycle')%>">
|
18
|
+
<tr id="<%= dom_id(refund) %>" data-hook="refunds_row" class="<%= cycle('odd', 'even', name: 'refund_table_cycle') %>">
|
19
19
|
<td><%= pretty_time(refund.created_at) %></td>
|
20
|
-
<td><%= refund.payment.number %></td>
|
20
|
+
<td><%= link_to refund.payment.number, spree.admin_order_payment_path(refund.payment.order, refund.payment) %></td>
|
21
21
|
<td class="amount"><%= refund.display_amount %></td>
|
22
22
|
<td><%= payment_method_name(refund.payment) %></td>
|
23
23
|
<td><%= refund.transaction_id %></td>
|
@@ -5,7 +5,8 @@
|
|
5
5
|
<div class="col-12 col-md-6 mb-3 mb-md-0">
|
6
6
|
<div class="input-group datePickerFrom"
|
7
7
|
data-wrap="true"
|
8
|
-
data-
|
8
|
+
data-alt-format="<%= Spree.t(:fpr_human_friendly_date_format, scope: 'date_picker', default: 'M j, Y') %>"
|
9
|
+
data-max-date="<%= params[:q][:completed_at_lt] %>">
|
9
10
|
<%= s.text_field :completed_at_gt,
|
10
11
|
class: 'form-control shadow-none',
|
11
12
|
placeholder: Spree.t(:starting_from),
|
@@ -19,7 +20,8 @@
|
|
19
20
|
<div class="col-12 col-md-6 mt-3 mt-md-0">
|
20
21
|
<div class="input-group datePickerTo"
|
21
22
|
data-wrap="true"
|
22
|
-
data-
|
23
|
+
data-alt-format="<%= Spree.t(:fpr_human_friendly_date_format, scope: 'date_picker', default: 'M j, Y') %>"
|
24
|
+
data-min-date="<%= params[:q][:completed_at_gt] %>">
|
23
25
|
|
24
26
|
<%= s.text_field :completed_at_lt,
|
25
27
|
class: 'form-control shadow-none',
|
@@ -10,40 +10,6 @@
|
|
10
10
|
confirm_delete: Spree.t(:confirm_delete),
|
11
11
|
currency_separator: I18n.t('number.currency.format.separator'),
|
12
12
|
cut: Spree.t(:cut),
|
13
|
-
|
14
|
-
date_picker: Spree.t(:js_format, scope: 'date_picker', default: 'yy/mm/dd'),
|
15
|
-
firstDay: Spree.t(:first_day, scope: 'date_picker', default: (0).to_i),
|
16
|
-
rangeSep: Spree.t(:rangeSeparator, scope: 'date_picker', default: ' to '),
|
17
|
-
weekAbbr: Spree.t(:weekAbbreviation, scope: 'date_picker', default: 'Wk'),
|
18
|
-
scrollTitle: Spree.t(:scrollTitle, scope: 'date_picker', default: 'Scroll to increment'),
|
19
|
-
toggleTitle: Spree.t(:toggleTitle, scope: 'date_picker', default: 'Click to toggle'),
|
20
|
-
am: Spree.t(:am, scope: 'date_picker', default: 'AM'),
|
21
|
-
pm: Spree.t(:pm, scope: 'date_picker', default: 'PM'),
|
22
|
-
yearAriaLabel: Spree.t(:yearAriaLabel, scope: 'date_picker', default: 'Year'),
|
23
|
-
hourAriaLabel: Spree.t(:hourAriaLabel, scope: 'date_picker', default: 'Hour'),
|
24
|
-
minuteAriaLabel: Spree.t(:minuteAriaLabel, scope: 'date_picker', default: 'Minute'),
|
25
|
-
|
26
|
-
sun: Spree.t(:sun, scope: 'date_picker', default: 'Sun'),
|
27
|
-
mon: Spree.t(:mon, scope: 'date_picker', default: 'Mon'),
|
28
|
-
tue: Spree.t(:tue, scope: 'date_picker', default: 'Tue'),
|
29
|
-
wed: Spree.t(:wed, scope: 'date_picker', default: 'Wed'),
|
30
|
-
thu: Spree.t(:thu, scope: 'date_picker', default: 'Thu'),
|
31
|
-
fri: Spree.t(:fri, scope: 'date_picker', default: 'Fri'),
|
32
|
-
sat: Spree.t(:sat, scope: 'date_picker', default: 'Sat'),
|
33
|
-
|
34
|
-
lh_jan: Spree.t(:lh_jan, scope: 'date_picker', default: 'January'),
|
35
|
-
lh_feb: Spree.t(:lh_feb, scope: 'date_picker', default: 'February'),
|
36
|
-
lh_mar: Spree.t(:lh_mar, scope: 'date_picker', default: 'March'),
|
37
|
-
lh_apr: Spree.t(:lh_apr, scope: 'date_picker', default: 'April'),
|
38
|
-
lh_may: Spree.t(:lh_may, scope: 'date_picker', default: 'May'),
|
39
|
-
lh_jun: Spree.t(:lh_jun, scope: 'date_picker', default: 'June'),
|
40
|
-
lh_jul: Spree.t(:lh_jul, scope: 'date_picker', default: 'July'),
|
41
|
-
lh_aug: Spree.t(:lh_aug, scope: 'date_picker', default: 'August'),
|
42
|
-
lh_sep: Spree.t(:lh_sep, scope: 'date_picker', default: 'September'),
|
43
|
-
lh_oct: Spree.t(:lh_oct, scope: 'date_picker', default: 'October'),
|
44
|
-
lh_nov: Spree.t(:lh_nov, scope: 'date_picker', default: 'November'),
|
45
|
-
lh_dec: Spree.t(:lh_dec, scope: 'date_picker', default: 'December'),
|
46
|
-
|
47
13
|
destroy: Spree.t(:destroy, scope: :actions),
|
48
14
|
edit: Spree.t(:edit, scope: :actions),
|
49
15
|
find_a_taxon: Spree.t(:find_a_taxon),
|
@@ -64,6 +30,7 @@
|
|
64
30
|
save: Spree.t(:save, scope: :actions),
|
65
31
|
searching: Spree.t(:searching),
|
66
32
|
server_error: Spree.t(:server_error),
|
33
|
+
select_an_option: Spree.t(:select_an_option),
|
67
34
|
sku: Spree.t(:sku),
|
68
35
|
type_to_search: Spree.t(:type_to_search),
|
69
36
|
taxon_placeholder: Spree.t(:taxon_placeholder),
|
@@ -71,11 +38,15 @@
|
|
71
38
|
tags_placeholder: Spree.t(:tags_placeholder),
|
72
39
|
tracking: Spree.t(:tracking),
|
73
40
|
variant_placeholder: Spree.t(:variant_placeholder),
|
74
|
-
value: Spree.t(:value)
|
41
|
+
value: Spree.t(:value),
|
42
|
+
|
43
|
+
# Substitute - for _ converting zh-tw to zh_tw
|
44
|
+
# Flatpickr not making things easy here.
|
45
|
+
flatpickr_locale: "#{flatpickr_local_fallback.sub("-", "_")}"
|
46
|
+
|
75
47
|
}.to_json
|
76
48
|
%>
|
77
49
|
</script>
|
78
50
|
|
79
|
-
|
80
|
-
|
81
|
-
<% end %>
|
51
|
+
<%= javascript_include_tag "select2_locale_#{select2_local_fallback}" %>
|
52
|
+
<%= javascript_include_tag "flatpickr/l10n/#{flatpickr_local_fallback}" %>
|