spree_backend 2.4.0.rc2 → 2.4.0.rc3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/spree/backend/address_states.js +3 -1
  3. data/app/assets/javascripts/spree/backend/checkouts/edit.js +16 -0
  4. data/app/assets/stylesheets/spree/backend/components/_navigation.scss +5 -0
  5. data/app/assets/stylesheets/spree/backend/sections/_taxons.scss +7 -1
  6. data/app/controllers/spree/admin/adjustments_controller.rb +6 -0
  7. data/app/controllers/spree/admin/orders/customer_details_controller.rb +1 -2
  8. data/app/controllers/spree/admin/orders_controller.rb +6 -6
  9. data/app/controllers/spree/admin/products_controller.rb +0 -3
  10. data/app/controllers/spree/admin/root_controller.rb +17 -0
  11. data/app/models/spree/backend_configuration.rb +17 -1
  12. data/app/views/spree/admin/log_entries/index.html.erb +5 -2
  13. data/app/views/spree/admin/orders/_form.html.erb +1 -2
  14. data/app/views/spree/admin/orders/_line_items_edit_form.html.erb +1 -1
  15. data/app/views/spree/admin/orders/customer_details/_form.html.erb +1 -1
  16. data/app/views/spree/admin/orders/edit.html.erb +1 -1
  17. data/app/views/spree/admin/orders/index.html.erb +13 -1
  18. data/app/views/spree/admin/products/_form.html.erb +4 -3
  19. data/app/views/spree/admin/products/new.html.erb +3 -3
  20. data/app/views/spree/admin/promotion_categories/edit.html.erb +1 -6
  21. data/app/views/spree/admin/promotion_categories/index.html.erb +33 -25
  22. data/app/views/spree/admin/promotion_categories/new.html.erb +1 -5
  23. data/app/views/spree/admin/promotion_categories/new.js.erb +5 -0
  24. data/app/views/spree/admin/promotions/edit.html.erb +1 -5
  25. data/app/views/spree/admin/promotions/index.html.erb +3 -4
  26. data/app/views/spree/admin/promotions/new.html.erb +1 -5
  27. data/app/views/spree/admin/prototypes/_form.html.erb +19 -8
  28. data/app/views/spree/admin/shared/_configuration_menu.html.erb +2 -2
  29. data/app/views/spree/admin/shared/_product_tabs.html.erb +0 -1
  30. data/app/views/spree/admin/shared/_promotion_sub_menu.html.erb +6 -0
  31. data/app/views/spree/admin/shared/_tabs.html.erb +11 -6
  32. data/app/views/spree/admin/stock_locations/_form.html.erb +63 -77
  33. data/app/views/spree/admin/taxonomies/new.html.erb +3 -1
  34. data/config/routes.rb +17 -17
  35. metadata +9 -7
  36. data/app/views/spree/admin/log_entries/_credit_card.html.erb +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c746330159942dd82dd11de07001106f4b973ef3
4
- data.tar.gz: cc5031d65ca142846fec254ed5b547ebbbbdb026
3
+ metadata.gz: 20e9b9d30543a971ed7797b83d1345b3902e3c5c
4
+ data.tar.gz: 50fba7739d5c4ef525b63d3a84a6704814f76217
5
5
  SHA512:
6
- metadata.gz: a7a6bb73924c37b6a212b9127e267837b2cb901c2ddc1a39b1ea31ff791d46d18a529c297a715f85e4948be330470a6ae2d0fb2df33e9dd828f8455c90ab976b
7
- data.tar.gz: d46e55cc64e75c0f36a54b84dfa9bf3d77b13865c56ec15c49e06601c04e137d60a6e9fb6db04dd4a620c8bd1103df7fdf0696b9e0bfb5db268090abfe7f5e4a
6
+ metadata.gz: bccd2cc77112fe4f112d1f2983bbd55c53e77daa4d549b56b53892dce6975b1f33a9c379c264a34f67b7b887abf645b114f38c5c76071667ee5b26a414776157
7
+ data.tar.gz: 2c68dc2d57f6d1573bcbbc978ba58b830bd9c6a984606b6d83d25073205fb2bbd01fed73aedf2dd85cbe99efde8f55699170b5810ae0d19b18447ba77026ede4
@@ -1,4 +1,4 @@
1
- var update_state = function (region) {
1
+ var update_state = function (region, done) {
2
2
  'use strict';
3
3
 
4
4
  var country = $('span#' + region + 'country .select2').select2('val');
@@ -27,5 +27,7 @@ var update_state = function (region) {
27
27
  state_input.prop('disabled', false).show();
28
28
  state_select.select2('destroy').hide();
29
29
  }
30
+
31
+ if(done) done();
30
32
  });
31
33
  };
@@ -34,6 +34,22 @@ $(document).ready(function() {
34
34
  $('#guest_checkout_false').prop("checked", true);
35
35
  $('#guest_checkout_false').prop("disabled", false);
36
36
 
37
+ var billAddress = customer.bill_address;
38
+ if(billAddress) {
39
+ $('#order_bill_address_attributes_firstname').val(billAddress.firstname);
40
+ $('#order_bill_address_attributes_lastname').val(billAddress.lastname);
41
+ $('#order_bill_address_attributes_address1').val(billAddress.address1);
42
+ $('#order_bill_address_attributes_address2').val(billAddress.address2);
43
+ $('#order_bill_address_attributes_city').val(billAddress.city);
44
+ $('#order_bill_address_attributes_zipcode').val(billAddress.zipcode);
45
+ $('#order_bill_address_attributes_phone').val(billAddress.phone);
46
+
47
+ $('#order_bill_address_attributes_country_id').select2("val", billAddress.country_id).promise().done(function () {
48
+ update_state('b', function () {
49
+ $('#order_bill_address_attributes_state_id').select2("val", billAddress.state_id);
50
+ });
51
+ });
52
+ }
37
53
  return customer.email;
38
54
  }
39
55
  })
@@ -84,6 +84,11 @@ nav.menu {
84
84
  position: relative;
85
85
  text-align: center;
86
86
 
87
+ @media(max-width: 1009px) {
88
+ top: -3px;
89
+ margin-bottom: -5px;
90
+ }
91
+
87
92
  i {
88
93
  display: inline;
89
94
  }
@@ -12,4 +12,10 @@
12
12
  }
13
13
 
14
14
  margin: 10px;
15
- }
15
+ }
16
+
17
+ #taxon_products {
18
+ > li {
19
+ height: 170px;
20
+ }
21
+ }
@@ -27,6 +27,12 @@ module Spree
27
27
  @order.reload.update!
28
28
  end
29
29
 
30
+ # Override method used to create a new instance to correctly
31
+ # associate adjustment with order
32
+ def build_resource
33
+ parent.adjustments.build(order: parent)
34
+ end
35
+
30
36
  end
31
37
  end
32
38
  end
@@ -23,8 +23,7 @@ module Spree
23
23
  if params[:guest_checkout] == "false"
24
24
  @order.associate_user!(Spree.user_class.find(params[:user_id]), @order.email.blank?)
25
25
  end
26
- while @order.next; end
27
-
26
+ @order.next
28
27
  @order.refresh_shipment_rates
29
28
  flash[:success] = Spree.t('customer_details_updated')
30
29
  redirect_to edit_admin_order_url(@order)
@@ -20,11 +20,11 @@ module Spree
20
20
 
21
21
  params[:q].delete(:inventory_units_shipment_id_null) if params[:q][:inventory_units_shipment_id_null] == "0"
22
22
 
23
- if !params[:q][:created_at_gt].blank?
23
+ if params[:q][:created_at_gt].present?
24
24
  params[:q][:created_at_gt] = Time.zone.parse(params[:q][:created_at_gt]).beginning_of_day rescue ""
25
25
  end
26
26
 
27
- if !params[:q][:created_at_lt].blank?
27
+ if params[:q][:created_at_lt].present?
28
28
  params[:q][:created_at_lt] = Time.zone.parse(params[:q][:created_at_lt]).end_of_day rescue ""
29
29
  end
30
30
 
@@ -109,16 +109,16 @@ module Spree
109
109
  end
110
110
 
111
111
  def open_adjustments
112
- adjustments = @order.adjustments.where(:state => 'closed')
113
- adjustments.update_all(:state => 'open')
112
+ adjustments = @order.all_adjustments.where(state: 'closed')
113
+ adjustments.update_all(state: 'open')
114
114
  flash[:success] = Spree.t(:all_adjustments_opened)
115
115
 
116
116
  respond_with(@order) { |format| format.html { redirect_to :back } }
117
117
  end
118
118
 
119
119
  def close_adjustments
120
- adjustments = @order.adjustments.where(:state => 'open')
121
- adjustments.update_all(:state => 'closed')
120
+ adjustments = @order.all_adjustments.where(state: 'open')
121
+ adjustments.update_all(state: 'closed')
122
122
  flash[:success] = Spree.t(:all_adjustments_closed)
123
123
 
124
124
  respond_with(@order) { |format| format.html { redirect_to :back } }
@@ -130,9 +130,6 @@ module Spree
130
130
  clone_admin_product_url resource
131
131
  end
132
132
 
133
- def permit_attributes
134
- params.require(:product).permit!
135
- end
136
133
  end
137
134
  end
138
135
  end
@@ -0,0 +1,17 @@
1
+ module Spree
2
+ module Admin
3
+ class RootController < Spree::Admin::BaseController
4
+
5
+ skip_before_filter :authorize_admin
6
+
7
+ def index
8
+ redirect_to admin_root_redirect_path
9
+ end
10
+
11
+ protected
12
+ def admin_root_redirect_path
13
+ spree.admin_orders_path
14
+ end
15
+ end
16
+ end
17
+ end
@@ -1,5 +1,21 @@
1
1
  module Spree
2
2
  class BackendConfiguration < Preferences::Configuration
3
- preference :locale, :string, :default => Rails.application.config.i18n.default_locale
3
+ preference :locale, :string, default: Rails.application.config.i18n.default_locale
4
+
5
+ ORDER_TABS ||= [:orders, :payments, :creditcard_payments,
6
+ :shipments, :credit_cards, :return_authorizations,
7
+ :customer_returns, :adjustments, :customer_details]
8
+ PRODUCT_TABS ||= [:products, :option_types, :properties, :prototypes,
9
+ :variants, :product_properties, :taxonomies,
10
+ :taxons]
11
+ REPORT_TABS ||= [:reports]
12
+ CONFIGURATION_TABS ||= [:configurations, :general_settings, :tax_categories,
13
+ :tax_rates, :zones, :countries, :states,
14
+ :payment_methods, :shipping_methods,
15
+ :shipping_categories, :stock_transfers,
16
+ :stock_locations, :trackers, :refund_reasons,
17
+ :reimbursement_types, :return_authorization_reasons]
18
+ PROMOTION_TABS ||= [:promotions, :promotion_categories]
19
+ USER_TABS ||= [:users]
4
20
  end
5
21
  end
@@ -22,7 +22,10 @@
22
22
  </tr>
23
23
  </thead>
24
24
  <tbody>
25
- <%= render "spree/admin/log_entries/#{@payment.payment_method.name.gsub(' ', '').underscore}", entry: entry %>
25
+ <tr>
26
+ <td>Message</td>
27
+ <td><%= entry.parsed_details.message %></td>
28
+ </tr>
26
29
  </tbody>
27
30
  <% end %>
28
- </table>
31
+ </table>
@@ -36,9 +36,8 @@
36
36
  var shipments = [];
37
37
 
38
38
  <% @order.shipments.each do |shipment| %>
39
- shipments.push(<%== shipment.to_json(:root => false, :include => [:inventory_units, :stock_location]) %>);
39
+ shipments.push(<%== shipment.as_json(:root => false, :only => [:id, :tracking, :number, :state, :stock_location_id], :include => [:inventory_units, :stock_location]).to_json %>);
40
40
  <% end %>
41
-
42
41
  <%= render :partial => 'spree/admin/shared/update_order_state', :handlers => [:js] %>
43
42
  <% end -%>
44
43
  </div>
@@ -32,7 +32,7 @@
32
32
  var shipments = [];
33
33
 
34
34
  <% @order.shipments.each do |shipment| %>
35
- shipments.push(<%== shipment.to_json(:root => false, :include => [:inventory_units, :stock_location]) %>);
35
+ shipments.push(<%== shipment.as_json(:root => false, :only => [:id, :tracking, :number, :state, :stock_location_id], :include => [:inventory_units, :stock_location]).to_json %>);
36
36
  <% end %>
37
37
 
38
38
  <%= render :partial => 'spree/admin/shared/update_order_state', :handlers => [:js] %>
@@ -51,7 +51,7 @@
51
51
  <%= f.fields_for :ship_address do |sa_form| %>
52
52
  <div class="field" style="position: absolute;margin-top: -15px;right: 0;">
53
53
  <span data-hook="use_billing">
54
- <%= check_box_tag 'order[use_billing]', '1', (!(@order.bill_address.empty? && @order.ship_address.empty?) && @order.bill_address.same_as?(@order.ship_address)) %>
54
+ <%= check_box_tag 'order[use_billing]', '1', ((@order.bill_address.empty? && @order.ship_address.empty?) && @order.bill_address.same_as?(@order.ship_address)) %>
55
55
  <%= label_tag 'order[use_billing]', Spree.t(:use_billing_address) %>
56
56
  </span>
57
57
  </div>
@@ -17,7 +17,7 @@
17
17
  </div>
18
18
 
19
19
  <% if @order.payments.exists? && @order.considered_risky? %>
20
- <%= render 'spree/admin/orders/risk_analysis', latest_payment: @order.payments.order("created_at DESC").first %>
20
+ <%= render 'spree/admin/orders/risk_analysis', latest_payment: @order.payments.last %>
21
21
  <% end %>
22
22
 
23
23
  <%= render partial: 'add_product' if @order.shipment_state != 'shipped' && can?(:update, @order) %>
@@ -45,10 +45,16 @@
45
45
  <%= label_tag :q_number_cont, Spree.t(:order_number, :number => '') %>
46
46
  <%= f.text_field :number_cont %>
47
47
  </div>
48
+
48
49
  <div class="field">
49
50
  <%= label_tag :q_email_cont, Spree.t(:email) %>
50
51
  <%= f.text_field :email_cont %>
51
52
  </div>
53
+
54
+ <div class="field">
55
+ <%= label_tag :q_line_items_variant_id_in, Spree.t(:sku) %>
56
+ <%= f.select :line_items_variant_id_in, Spree::Variant.pluck(:sku, :id), {:include_blank => true}, :class => 'select2' %>
57
+ </div>
52
58
  </div>
53
59
 
54
60
  <div class="four columns">
@@ -132,7 +138,13 @@
132
138
  <% if Spree::Order.checkout_step_names.include?(:delivery) %>
133
139
  <td class="align-center"><span class="state <%= order.shipment_state %>"><%= Spree.t("shipment_states.#{order.shipment_state}") if order.shipment_state %></span></td>
134
140
  <% end %>
135
- <td><%= mail_to order.email %></td>
141
+ <td>
142
+ <% if order.user %>
143
+ <%= link_to order.email, edit_admin_user_path(order.user) %>
144
+ <% else %>
145
+ <%= mail_to order.email %>
146
+ <% end %>
147
+ </td>
136
148
  <td class="align-center"><%= order.display_total.to_html %></td>
137
149
  <td class='actions align-center' data-hook="admin_orders_index_row_actions">
138
150
  <%= link_to_edit_url edit_admin_order_path(order), :title => "admin_edit_#{dom_id(order)}", :no_text => true %>
@@ -4,7 +4,7 @@
4
4
  <div data-hook="admin_product_form_name">
5
5
  <%= f.field_container :name do %>
6
6
  <%= f.label :name, raw(Spree.t(:name) + content_tag(:span, ' *', :class => 'required')) %>
7
- <%= f.text_field :name, :class => 'fullwidth title' %>
7
+ <%= f.text_field :name, :class => 'fullwidth title', :required => true %>
8
8
  <%= f.error_message_on :name %>
9
9
  <% end %>
10
10
  </div>
@@ -12,7 +12,7 @@
12
12
  <div data-hook="admin_product_form_slug">
13
13
  <%= f.field_container :slug do %>
14
14
  <%= f.label :slug, raw(Spree.t(:slug) + content_tag(:span, ' *', :class => "required")) %>
15
- <%= f.text_field :slug, :class => 'fullwidth title' %>
15
+ <%= f.text_field :slug, :class => 'fullwidth title', :required => true %>
16
16
  <%= f.error_message_on :slug %>
17
17
  <% end %>
18
18
  </div>
@@ -30,7 +30,7 @@
30
30
  <div data-hook="admin_product_form_price">
31
31
  <%= f.field_container :price do %>
32
32
  <%= f.label :price, raw(Spree.t(:master_price) + content_tag(:span, ' *', :class => "required")) %>
33
- <%= f.text_field :price, :value => number_to_currency(@product.price, :unit => '') %>
33
+ <%= f.text_field :price, :value => number_to_currency(@product.price, :unit => ''), :required => true %>
34
34
  <%= f.error_message_on :price %>
35
35
  <% end %>
36
36
  </div>
@@ -42,6 +42,7 @@
42
42
  <%= f.error_message_on :cost_price %>
43
43
  <% end %>
44
44
  </div>
45
+
45
46
  <div data-hook="admin_product_form_cost_currency" class="omega two columns">
46
47
  <%= f.field_container :cost_currency do %>
47
48
  <%= f.label :cost_currency, Spree.t(:cost_currency) %>
@@ -10,7 +10,7 @@
10
10
 
11
11
  <%= f.field_container :name do %>
12
12
  <%= f.label :name, Spree.t(:name) %> <span class="required">*</span><br />
13
- <%= f.text_field :name, :class => 'fullwidth title' %>
13
+ <%= f.text_field :name, :class => 'fullwidth title', :required => true %>
14
14
  <%= f.error_message_on :name %>
15
15
  <% end %>
16
16
 
@@ -35,7 +35,7 @@
35
35
  <div data-hook="new_product_price" class="four columns">
36
36
  <%= f.field_container :price do %>
37
37
  <%= f.label :price, Spree.t(:master_price) %> <span class="required">*</span><br />
38
- <%= f.text_field :price, :value => number_to_currency(@product.price, :unit => ''), :class => 'fullwidth' %>
38
+ <%= f.text_field :price, :value => number_to_currency(@product.price, :unit => ''), :class => 'fullwidth', :required => true %>
39
39
  <%= f.error_message_on :price %>
40
40
  <% end %>
41
41
  </div>
@@ -54,7 +54,7 @@
54
54
  <div data-hook="new_product_shipping_category" class="alpha four columns">
55
55
  <%= f.field_container :shipping_category do %>
56
56
  <%= f.label :shipping_category_id, Spree.t(:shipping_categories) %><span class="required">*</span><br />
57
- <%= f.collection_select(:shipping_category_id, @shipping_categories, :id, :name, { :include_blank => Spree.t('match_choices.none') }, { :class => 'select2 fullwidth' }) %>
57
+ <%= f.collection_select(:shipping_category_id, @shipping_categories, :id, :name, { :include_blank => Spree.t('match_choices.none') }, { :class => 'select2 fullwidth', :required => true }) %>
58
58
  <%= f.error_message_on :shipping_category_id %>
59
59
  <% end %>
60
60
  </div>
@@ -2,11 +2,7 @@
2
2
  <%= Spree.t(:editing_promotion_category) %>
3
3
  <% end %>
4
4
 
5
- <% content_for :page_actions do %>
6
- <li>
7
- <%= button_link_to Spree.t(:back_to_promotion_categories_list), spree.admin_promotion_categories_path, :icon => 'arrow-left' %>
8
- </li>
9
- <% end %>
5
+ <%= render 'spree/admin/shared/promotion_sub_menu' %>
10
6
 
11
7
  <%= form_for @promotion_category, :url => object_url, :method => :put do |f| %>
12
8
  <fieldset class="no-border-top">
@@ -14,4 +10,3 @@
14
10
  <%= render :partial => 'spree/admin/shared/edit_resource_links' %>
15
11
  </fieldset>
16
12
  <% end %>
17
-
@@ -4,31 +4,39 @@
4
4
 
5
5
  <% content_for :page_actions do %>
6
6
  <li>
7
- <%= button_link_to Spree.t(:new_promotion_category), spree.new_admin_promotion_category_path, :icon => 'plus' %>
8
- </li>
9
- <li>
10
- <%= button_link_to Spree.t(:back_to_promotions_list), spree.admin_promotions_path, :icon => 'arrow-left' %>
7
+ <%= button_link_to Spree.t(:new_promotion_category), spree.new_admin_promotion_category_path, icon: 'plus', remote: true, id: 'new_promotion_category_link' %>
11
8
  </li>
12
9
  <% end %>
13
10
 
14
- <table>
15
- <colgroup>
16
- <col style="width: 85%">
17
- <col style="width: 15%">
18
- </colgroup>
19
- <thead>
20
- <th><%= Spree::PromotionCategory.human_attribute_name :name %></th>
21
- <th class='actions'></th>
22
- </thead>
23
- <tbody>
24
- <% @promotion_categories.each do |promotion_category| %>
25
- <tr>
26
- <td><%= promotion_category.name %></td>
27
- <td class="actions">
28
- <%= link_to_edit promotion_category, :no_text => true %>
29
- <%= link_to_delete promotion_category, :no_text => true %>
30
- </td>
31
- </tr>
32
- <% end %>
33
- </tbody>
34
- </table>
11
+ <%= render 'spree/admin/shared/promotion_sub_menu' %>
12
+
13
+ <div id="new_promotion_category"></div>
14
+
15
+ <% if @promotion_categories.any? %>
16
+ <table>
17
+ <colgroup>
18
+ <col style="width: 85%">
19
+ <col style="width: 15%">
20
+ </colgroup>
21
+ <thead>
22
+ <th><%= Spree::PromotionCategory.human_attribute_name :name %></th>
23
+ <th class='actions'></th>
24
+ </thead>
25
+ <tbody>
26
+ <% @promotion_categories.each do |promotion_category| %>
27
+ <tr>
28
+ <td><%= promotion_category.name %></td>
29
+ <td class="actions">
30
+ <%= link_to_edit promotion_category, :no_text => true %>
31
+ <%= link_to_delete promotion_category, :no_text => true %>
32
+ </td>
33
+ </tr>
34
+ <% end %>
35
+ </tbody>
36
+ </table>
37
+ <% else %>
38
+ <div class="alpha sixteen columns no-objects-found">
39
+ <%= Spree.t(:no_resource_found, resource: I18n.t(:other, scope: 'activerecord.models.spree/promotion_category')) %>
40
+ <%= link_to Spree.t(:add_one) + '!', spree.new_admin_promotion_category_path, remote: true, id: 'new_promotion_category_link' %>
41
+ </div>
42
+ <% end %>
@@ -2,11 +2,7 @@
2
2
  <%= Spree.t(:new_promotion_category) %>
3
3
  <% end %>
4
4
 
5
- <% content_for :page_actions do %>
6
- <li>
7
- <%= button_link_to Spree.t(:back_to_promotion_categories_list), spree.admin_promotion_categories_path, :icon => 'arrow-left' %>
8
- </li>
9
- <% end %>
5
+ <%= render 'spree/admin/shared/promotion_sub_menu' %>
10
6
 
11
7
  <%= form_for :promotion_category, :url => collection_url do |f| %>
12
8
  <fieldset class="no-border-top">
@@ -0,0 +1,5 @@
1
+ $("#new_promotion_category").html('<%= escape_javascript(render template: "spree/admin/promotion_categories/new", formats: [:html], handlers: [:erb]) %>');
2
+ <% unless Rails.env.test? %>
3
+ $('.select2').select2();
4
+ <% end %>
5
+ $("#new_promotion_category_link").parent().hide();
@@ -2,11 +2,7 @@
2
2
  <%= Spree.t(:editing_promotion) %>
3
3
  <% end %>
4
4
 
5
- <% content_for :page_actions do %>
6
- <li>
7
- <%= button_link_to Spree.t(:back_to_promotions_list), admin_promotions_path, :icon => 'arrow-left' %>
8
- </li>
9
- <% end %>
5
+ <%= render 'spree/admin/shared/promotion_sub_menu' %>
10
6
 
11
7
  <%= form_for @promotion, :url => object_url, :method => :put do |f| %>
12
8
  <fieldset class="no-border-top">
@@ -3,14 +3,13 @@
3
3
  <% end %>
4
4
 
5
5
  <% content_for :page_actions do %>
6
- <li>
7
- <%= button_link_to Spree.t(:manage_promotion_categories), spree.admin_promotion_categories_path, :icon => 'bars' %>
8
- </li>
9
6
  <li>
10
7
  <%= button_link_to Spree.t(:new_promotion), spree.new_admin_promotion_path, :icon => 'plus' %>
11
8
  </li>
12
9
  <% end %>
13
10
 
11
+ <%= render 'spree/admin/shared/promotion_sub_menu' %>
12
+
14
13
  <% content_for :table_filter_title do %>
15
14
  <%= Spree.t(:search) %>
16
15
  <% end %>
@@ -100,7 +99,7 @@
100
99
  </tbody>
101
100
  </table>
102
101
  <% else %>
103
- <div class="alpha twelve columns no-objects-found">
102
+ <div class="alpha omega sixteen columns no-objects-found">
104
103
  <%= Spree.t(:no_resource_found, resource: I18n.t(:other, scope: 'activerecord.models.spree/promotion')) %>,
105
104
  <%= link_to Spree.t(:add_one), spree.new_admin_promotion_path %>!
106
105
  </div>
@@ -2,11 +2,7 @@
2
2
  <%= Spree.t(:new_promotion) %>
3
3
  <% end %>
4
4
 
5
- <% content_for :page_actions do %>
6
- <li>
7
- <%= button_link_to Spree.t(:back_to_promotions_list), spree.admin_promotions_path, :icon => 'arrow-left' %>
8
- </li>
9
- <% end %>
5
+ <%= render 'spree/admin/shared/promotion_sub_menu' %>
10
6
 
11
7
  <%= form_for :promotion, :url => collection_url do |f| %>
12
8
  <fieldset class="no-border-top">
@@ -2,24 +2,35 @@
2
2
  <div class="alpha four columns">
3
3
  <%= f.field_container :name do %>
4
4
  <%= f.label :name, Spree.t(:name) %> <span class="required">*</span><br />
5
- <%= f.text_field :name, :class => 'fullwidth' %>
5
+ <%= f.text_field :name, class: 'fullwidth' %>
6
6
  <%= f.error_message_on :name %>
7
7
  <% end %>
8
8
  </div>
9
9
 
10
- <div class="six columns">
10
+ <div class="four columns">
11
11
  <div id='properties' data-hook>
12
12
  <%= f.field_container :property_ids do %>
13
13
  <%= f.label :property_ids, Spree.t(:properties) %><br>
14
- <%= f.select :property_ids, Spree::Property.all.map { |p| [p.presentation, p.id] }, {}, { :multiple => true, :class => "select2 fullwidth" } %>
14
+ <%= f.select :property_ids, Spree::Property.all.map { |p| ["#{p.presentation} (#{p.name})", p.id] }, {}, { multiple: true, class: "select2 fullwidth" } %>
15
15
  <% end %>
16
16
  </div>
17
17
  </div>
18
18
 
19
- <div class="six columns omega">
20
- <%= f.field_container :option_type_ids do %>
21
- <%= f.label :option_type_ids, Spree.t(:option_types) %><br>
22
- <%= f.select :option_type_ids, Spree::OptionType.all.map { |ot| [ot.presentation, ot.id] }, {}, { :multiple => true, :class => "select2 fullwidth" } %>
23
- <% end %>
19
+ <div class="four columns">
20
+ <div id="option_types" data-hook>
21
+ <%= f.field_container :option_type_ids do %>
22
+ <%= f.label :option_type_ids, Spree.t(:option_types) %><br>
23
+ <%= f.select :option_type_ids, Spree::OptionType.all.map { |ot| ["#{ot.presentation} (#{ot.name})", ot.id] }, {}, { multiple: true, class: "select2 fullwidth" } %>
24
+ <% end %>
25
+ </div>
26
+ </div>
27
+
28
+ <div class="four columns omega">
29
+ <div id='taxons' data-hook>
30
+ <%= f.field_container :taxon_ids do %>
31
+ <%= f.label :taxon_ids, Spree.t(:taxons) %><br>
32
+ <%= f.select :taxon_ids, Spree::Taxon.all.map { |t| [t.name, t.id] }, {}, { multiple: true, class: "select2 fullwidth" } %>
33
+ <% end %>
34
+ </div>
24
35
  </div>
25
36
  </div>
@@ -10,8 +10,8 @@
10
10
  <%= configurations_sidebar_menu_item Spree.t(:tax_rates), admin_tax_rates_path %>
11
11
  <%= configurations_sidebar_menu_item Spree.t(:zones), admin_zones_path %>
12
12
  <%= configurations_sidebar_menu_item Spree.t(:countries), admin_countries_path %>
13
- <% if Spree::Config[:default_country_id] %>
14
- <%= configurations_sidebar_menu_item Spree.t(:states), admin_country_states_path(Spree::Config[:default_country_id]) %>
13
+ <% if country = Spree::Country.find_by_id(Spree::Config[:default_country_id]) || Spree::Country.first %>
14
+ <%= configurations_sidebar_menu_item Spree.t(:states), admin_country_states_path(country) %>
15
15
  <% end %>
16
16
  <%= configurations_sidebar_menu_item Spree.t(:payment_methods), admin_payment_methods_path %>
17
17
  <%= configurations_sidebar_menu_item Spree.t(:taxonomies), admin_taxonomies_path %>
@@ -24,7 +24,6 @@
24
24
  <%= content_tag :li, :class => ('active' if current == 'Stock Management') do %>
25
25
  <%= link_to_with_icon 'tasks', Spree.t(:stock_management), stock_admin_product_url(@product) %>
26
26
  <% end if can?(:stock, Spree::Product) %>
27
- </li>
28
27
  </ul>
29
28
  </nav>
30
29
 
@@ -0,0 +1,6 @@
1
+ <% content_for :sub_menu do %>
2
+ <ul id="sub_nav" data-hook="admin_promotion_sub_tabs" class="inline-menu">
3
+ <%= tab :promotions %>
4
+ <%= tab :promotion_categories %>
5
+ </ul>
6
+ <% end %>
@@ -1,16 +1,21 @@
1
1
  <% if can? :admin, Spree::Order %>
2
- <%= tab :orders, :payments, :creditcard_payments, :shipments, :credit_cards, :return_authorizations, :customer_returns, :icon => 'shopping-cart' %>
2
+ <%= tab *Spree::BackendConfiguration::ORDER_TABS, icon: 'shopping-cart' %>
3
3
  <% end %>
4
+
4
5
  <% if can? :admin, Spree::Product %>
5
- <%= tab :products, :option_types, :properties, :prototypes, :variants, :product_properties, :taxonomies, :taxons, :icon => 'th-large' %>
6
+ <%= tab *Spree::BackendConfiguration::PRODUCT_TABS, icon: 'th-large' %>
6
7
  <% end %>
8
+
7
9
  <% if can? :admin, Spree::Admin::ReportsController %>
8
- <%= tab :reports, :icon => 'file' %>
10
+ <%= tab *Spree::BackendConfiguration::REPORT_TABS, icon: 'file' %>
9
11
  <% end %>
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 %>
12
+
13
+ <%= tab *Spree::BackendConfiguration::CONFIGURATION_TABS, label: 'configuration', icon: 'wrench', url: spree.edit_admin_general_settings_path %>
14
+
11
15
  <% if can? :admin, Spree::Promotion %>
12
- <%= tab(:promotions, :url => spree.admin_promotions_path, :icon => 'bullhorn') %>
16
+ <%= tab *Spree::BackendConfiguration::PROMOTION_TABS, url: spree.admin_promotions_path, icon: 'bullhorn' %>
13
17
  <% end %>
18
+
14
19
  <% if Spree.user_class && can?(:admin, Spree.user_class) %>
15
- <%= tab(:users, :url => spree.admin_users_path, :icon => 'user') %>
20
+ <%= tab *Spree::BackendConfiguration::USER_TABS, url: spree.admin_users_path, icon: 'user' %>
16
21
  <% end %>
@@ -1,95 +1,81 @@
1
1
  <div data-hook="admin_stock_locations_form_fields" class="row">
2
- <div class="row">
3
- <div class="alpha twelve columns">
2
+ <div class="alpha nine columns" data-hook="stock_location_names">
3
+ <div data-hook="stock_location_name">
4
4
  <%= f.field_container :name do %>
5
5
  <%= f.label :name, Spree.t(:name) %> <span class="required">*</span><br />
6
- <%= f.text_field :name, :class => 'fullwidth' %>
7
- <% end %><br>
8
- <%= f.field_container :admin_name do %>
9
- <%= f.label :admin_name, Spree.t(:internal_name) %>
10
- <%= f.text_field :admin_name, :class => 'fullwidth', :label => false %>
6
+ <%= f.text_field :name, class: 'fullwidth', required: true %>
11
7
  <% end %>
12
8
  </div>
13
- <div class="omega four columns">
14
- <%= f.field_container :active do %>
15
- <label for="active"><%= Spree.t(:status) %></label>
16
- <ul>
17
- <li>
18
- <%= f.label :active, Spree.t(:active) %>
19
- <%= f.check_box :active %>
20
- </li>
21
- <li>
22
- <%= f.label :default, Spree.t(:default) %>
23
- <%= f.check_box :default %>
24
- </li>
25
- <li>
26
- <%= f.label :backorderable_default, Spree.t(:backorderable_default) %>
27
- <%= f.check_box :backorderable_default %>
28
- </li>
29
- <li>
30
- <%= f.label :propagate_all_variants, Spree.t(:propagate_all_variants) %>
31
- <%= f.check_box :propagate_all_variants %>
32
- </li>
33
- </ul>
9
+ <div data-hook="stock_location_admin_name">
10
+ <%= f.field_container :admin_name do %>
11
+ <%= f.label :admin_name, Spree.t(:internal_name) %>
12
+ <%= f.text_field :admin_name, class: 'fullwidth', label: false %>
34
13
  <% end %>
35
14
  </div>
36
15
  </div>
37
16
 
38
- <div class="row">
39
- <div class="alpha four columns">
40
- <div class="field ">
41
- <%= f.label :address1, Spree.t(:street_address) %>
42
- <%= f.text_field :address1, :class => 'fullwidth' %>
43
- </div>
44
- </div>
17
+ <div class="omega three columns" data-hook="stock_location_status">
18
+ <%= f.field_container :active do %>
19
+ <label for="active"><%= Spree.t(:status) %></label>
20
+ <ul>
21
+ <li class="fullwidth" data-hook="stock_location_active">
22
+ <%= f.check_box :active %>
23
+ <%= f.label :active, Spree.t(:active) %>
24
+ </li>
25
+ <li class="fullwidth" data-hook="stock_location_default">
26
+ <%= f.check_box :default %>
27
+ <%= f.label :default, Spree.t(:default) %>
28
+ </li>
29
+ <li class="fullwidth" data-hook="stock_location_backorderable_default">
30
+ <%= f.check_box :backorderable_default %>
31
+ <%= f.label :backorderable_default, Spree.t(:backorderable_default) %>
32
+ </li>
33
+ <li class="fullwidth" data-hook="stock_location_propagate_all_variants">
34
+ <%= f.check_box :propagate_all_variants %>
35
+ <%= f.label :propagate_all_variants, Spree.t(:propagate_all_variants) %>
36
+ </li>
37
+ </ul>
38
+ <% end %>
39
+ </div>
45
40
 
46
- <div class="four columns">
47
- <div class="field ">
48
- <%= f.label :address2, Spree.t(:street_address_2) %>
49
- <%= f.text_field :address2, :class => 'fullwidth' %>
50
- </div>
51
- </div>
52
- <div class="four columns">
53
- <div class="field ">
54
- <%= f.label :city, Spree.t(:city) %>
55
- <%= f.text_field :city, :class => 'fullwidth' %>
56
- </div>
57
- </div>
41
+ <div class="alpha six columns field" data-hook="stock_location_address1">
42
+ <%= f.label :address1, Spree.t(:street_address) %>
43
+ <%= f.text_field :address1, class: 'fullwidth' %>
44
+ </div>
58
45
 
59
- <div class="omega four columns">
60
- <div class="field ">
61
- <%= f.label :zipcode, Spree.t(:zip) %>
62
- <%= f.text_field :zipcode, :class => 'fullwidth' %>
63
- </div>
64
- </div>
46
+ <div class="omega six columns field" data-hook="stock_location_city">
47
+ <%= f.label :city, Spree.t(:city) %>
48
+ <%= f.text_field :city, class: 'fullwidth' %>
65
49
  </div>
66
50
 
67
- <div class="row">
68
- <div class="alpha eight columns">
69
- <div class="field ">
70
- <%= f.label :country_id, Spree.t(:country) %>
71
- <span id="country"><%= f.collection_select :country_id, available_countries, :id, :name, {}, {:class => 'select2 fullwidth'} %></span>
72
- </div>
73
- </div>
51
+ <div class="alpha six columns field" data-hook="stock_location_address2">
52
+ <%= f.label :address2, Spree.t(:street_address_2) %>
53
+ <%= f.text_field :address2, class: 'fullwidth' %>
54
+ </div>
74
55
 
75
- <div class="four columns">
76
- <div class="field ">
77
- <% if f.object.country %>
78
- <%= f.label :state_id, Spree.t(:state) %>
79
- <span id="state" class="region">
80
- <%= f.text_field :state_name, :style => "display: #{f.object.country.states.empty? ? 'block' : 'none' };", :disabled => !f.object.country.states.empty?, :class => 'fullwidth state_name' %>
81
- <%= f.collection_select :state_id, f.object.country.states.sort, :id, :name, {:include_blank => true}, {:class => 'select2 fullwidth', :style => "display: #{f.object.country.states.empty? ? 'none' : 'block' };", :disabled => f.object.country.states.empty?} %>
82
- </span>
83
- <% end %>
84
- </div>
85
- </div>
56
+ <div class="three columns field" data-hook="stock_location_zipcode">
57
+ <%= f.label :zipcode, Spree.t(:zip) %>
58
+ <%= f.text_field :zipcode, class: 'fullwidth' %>
59
+ </div>
86
60
 
87
- <div class="omega four columns">
88
- <div class="field ">
89
- <%= f.label :phone, Spree.t(:phone) %>
90
- <%= f.phone_field :phone, :class => 'fullwidth' %>
91
- </div>
92
- </div>
61
+ <div class="omega three columns field" data-hook="stock_location_phone">
62
+ <%= f.label :phone, Spree.t(:phone) %>
63
+ <%= f.phone_field :phone, class: 'fullwidth' %>
64
+ </div>
65
+
66
+ <div class="alpha six columns field" data-hook="stock_location_country">
67
+ <%= f.label :country_id, Spree.t(:country) %>
68
+ <span id="country"><%= f.collection_select :country_id, available_countries, :id, :name, {}, { class: 'select2 fullwidth' } %></span>
69
+ </div>
70
+
71
+ <div class="omega six columns field" data-hook="stock_location_state">
72
+ <% if f.object.country %>
73
+ <%= f.label :state_id, Spree.t(:state) %>
74
+ <span id="state" class="region">
75
+ <%= f.text_field :state_name, style: "display: #{f.object.country.states.empty? ? 'block' : 'none' };", disabled: !f.object.country.states.empty?, class: 'fullwidth state_name' %>
76
+ <%= f.collection_select :state_id, f.object.country.states.sort, :id, :name, { include_blank: true }, {class: 'select2 fullwidth', style: "display: #{f.object.country.states.empty? ? 'none' : 'block' };", disabled: f.object.country.states.empty?} %>
77
+ </span>
78
+ <% end %>
93
79
  </div>
94
80
  </div>
95
81
 
@@ -1,4 +1,4 @@
1
- <%= render :partial => 'spree/admin/shared/configuration_menu' %>
1
+ <%= render 'spree/admin/shared/configuration_menu' %>
2
2
 
3
3
  <% content_for :page_title do %>
4
4
  <%= Spree.t(:new_taxonomy) %>
@@ -10,6 +10,8 @@
10
10
  </li>
11
11
  <% end %>
12
12
 
13
+ <%= render 'spree/admin/shared/product_sub_menu' %>
14
+
13
15
  <%= form_for [:admin, @taxonomy] do |f| %>
14
16
 
15
17
  <%= render :partial => 'form', :locals => { :f => f } %>
data/config/routes.rb CHANGED
@@ -1,13 +1,13 @@
1
1
  Spree::Core::Engine.add_routes do
2
2
  namespace :admin do
3
- get '/search/users', :to => "search#users", :as => :search_users
3
+ get '/search/users', to: "search#users", as: :search_users
4
4
 
5
5
  resources :promotions do
6
6
  resources :promotion_rules
7
7
  resources :promotion_actions
8
8
  end
9
9
 
10
- resources :promotion_categories, :except => [:show]
10
+ resources :promotion_categories, except: [:show]
11
11
 
12
12
  resources :zones
13
13
 
@@ -37,10 +37,10 @@ Spree::Core::Engine.add_routes do
37
37
  post :update_positions
38
38
  end
39
39
  end
40
- resources :variants_including_master, :only => [:update]
40
+ resources :variants_including_master, only: [:update]
41
41
  end
42
42
 
43
- get '/variants/search', :to => "variants#search", :as => :search_variants
43
+ get '/variants/search', to: "variants#search", as: :search_variants
44
44
 
45
45
  resources :option_types do
46
46
  collection do
@@ -49,7 +49,7 @@ Spree::Core::Engine.add_routes do
49
49
  end
50
50
  end
51
51
 
52
- delete '/option_values/:id', :to => "option_values#destroy", :as => :option_value
52
+ delete '/option_values/:id', to: "option_values#destroy", as: :option_value
53
53
 
54
54
  resources :properties do
55
55
  collection do
@@ -57,7 +57,7 @@ Spree::Core::Engine.add_routes do
57
57
  end
58
58
  end
59
59
 
60
- delete '/product_properties/:id', :to => "product_properties#destroy", :as => :product_property
60
+ delete '/product_properties/:id', to: "product_properties#destroy", as: :product_property
61
61
 
62
62
  resources :prototypes do
63
63
  member do
@@ -69,7 +69,7 @@ Spree::Core::Engine.add_routes do
69
69
  end
70
70
  end
71
71
 
72
- resources :orders, :except => [:show] do
72
+ resources :orders, except: [:show] do
73
73
  member do
74
74
  get :cart
75
75
  post :resend
@@ -80,7 +80,7 @@ Spree::Core::Engine.add_routes do
80
80
  put :resume
81
81
  end
82
82
 
83
- resource :customer, :controller => "orders/customer_details"
83
+ resource :customer, controller: "orders/customer_details"
84
84
  resources :customer_returns, only: [:index, :new, :edit, :create, :update] do
85
85
  member do
86
86
  put :refund
@@ -128,34 +128,34 @@ Spree::Core::Engine.add_routes do
128
128
  resources :taxons
129
129
  end
130
130
 
131
- resources :taxons, :only => [:index, :show] do
131
+ resources :taxons, only: [:index, :show] do
132
132
  collection do
133
133
  get :search
134
134
  end
135
135
  end
136
136
 
137
- resources :reports, :only => [:index] do
137
+ resources :reports, only: [:index] do
138
138
  collection do
139
139
  get :sales_total
140
140
  post :sales_total
141
141
  end
142
142
  end
143
143
 
144
- resources :reimbursement_types, :only => [:index]
145
- resources :refund_reasons, :except => [:show, :destroy]
146
- resources :return_authorization_reasons, :except => [:show, :destroy]
144
+ resources :reimbursement_types, only: [:index]
145
+ resources :refund_reasons, except: [:show, :destroy]
146
+ resources :return_authorization_reasons, except: [:show, :destroy]
147
147
 
148
148
  resources :shipping_methods
149
149
  resources :shipping_categories
150
- resources :stock_transfers, :only => [:index, :show, :new, :create]
150
+ resources :stock_transfers, only: [:index, :show, :new, :create]
151
151
  resources :stock_locations do
152
- resources :stock_movements, :except => [:edit, :update, :destroy]
152
+ resources :stock_movements, except: [:edit, :update, :destroy]
153
153
  collection do
154
154
  post :transfer_stock
155
155
  end
156
156
  end
157
157
 
158
- resources :stock_items, :only => [:create, :update, :destroy]
158
+ resources :stock_items, only: [:create, :update, :destroy]
159
159
  resources :tax_rates
160
160
 
161
161
  resources :trackers
@@ -171,5 +171,5 @@ Spree::Core::Engine.add_routes do
171
171
  end
172
172
  end
173
173
 
174
- get '/admin', :to => 'admin/orders#index', :as => :admin
174
+ get '/admin', to: 'admin/root#index', as: :admin
175
175
  end
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.4.0.rc2
4
+ version: 2.4.0.rc3
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-10-09 00:00:00.000000000 Z
11
+ date: 2014-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree_api
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 2.4.0.rc2
19
+ version: 2.4.0.rc3
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.4.0.rc2
26
+ version: 2.4.0.rc3
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.4.0.rc2
33
+ version: 2.4.0.rc3
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.4.0.rc2
40
+ version: 2.4.0.rc3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: jquery-rails
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -203,6 +203,7 @@ files:
203
203
  - app/controllers/spree/admin/return_authorization_reasons_controller.rb
204
204
  - app/controllers/spree/admin/return_authorizations_controller.rb
205
205
  - app/controllers/spree/admin/return_items_controller.rb
206
+ - app/controllers/spree/admin/root_controller.rb
206
207
  - app/controllers/spree/admin/search_controller.rb
207
208
  - app/controllers/spree/admin/shipping_categories_controller.rb
208
209
  - app/controllers/spree/admin/shipping_methods_controller.rb
@@ -261,7 +262,6 @@ files:
261
262
  - app/views/spree/admin/images/new.html.erb
262
263
  - app/views/spree/admin/line_items/create.js.erb
263
264
  - app/views/spree/admin/line_items/destroy.js.erb
264
- - app/views/spree/admin/log_entries/_credit_card.html.erb
265
265
  - app/views/spree/admin/log_entries/index.html.erb
266
266
  - app/views/spree/admin/option_types/_form.html.erb
267
267
  - app/views/spree/admin/option_types/_option_value_fields.html.erb
@@ -317,6 +317,7 @@ files:
317
317
  - app/views/spree/admin/promotion_categories/edit.html.erb
318
318
  - app/views/spree/admin/promotion_categories/index.html.erb
319
319
  - app/views/spree/admin/promotion_categories/new.html.erb
320
+ - app/views/spree/admin/promotion_categories/new.js.erb
320
321
  - app/views/spree/admin/promotion_rules/create.js.erb
321
322
  - app/views/spree/admin/promotion_rules/destroy.js.erb
322
323
  - app/views/spree/admin/promotions/_actions.html.erb
@@ -394,6 +395,7 @@ files:
394
395
  - app/views/spree/admin/shared/_order_tabs.html.erb
395
396
  - app/views/spree/admin/shared/_product_sub_menu.html.erb
396
397
  - app/views/spree/admin/shared/_product_tabs.html.erb
398
+ - app/views/spree/admin/shared/_promotion_sub_menu.html.erb
397
399
  - app/views/spree/admin/shared/_refunds.html.erb
398
400
  - app/views/spree/admin/shared/_report_criteria.html.erb
399
401
  - app/views/spree/admin/shared/_report_order_criteria.html.erb
@@ -1,4 +0,0 @@
1
- <tr>
2
- <td>Message</td>
3
- <td><%= entry.parsed_details.message %></td>
4
- </tr>