solidus_backend 2.10.5 → 2.11.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of solidus_backend might be problematic. Click here for more details.

Files changed (233) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/spree/backend.js +4 -1
  3. data/app/assets/javascripts/spree/backend/adjustments.js +1 -1
  4. data/app/assets/javascripts/spree/backend/admin.js +18 -29
  5. data/app/assets/javascripts/spree/backend/collections/states.js +1 -1
  6. data/app/assets/javascripts/spree/backend/components/selectable_table.js +5 -0
  7. data/app/assets/javascripts/spree/backend/components/selectable_table/return_items.js +5 -0
  8. data/app/assets/javascripts/spree/backend/components/selectable_table/summary.js +7 -0
  9. data/app/assets/javascripts/spree/backend/components/sortable_table.js +31 -25
  10. data/app/assets/javascripts/spree/backend/models/order.js +3 -3
  11. data/app/assets/javascripts/spree/backend/models/payment.js +1 -1
  12. data/app/assets/javascripts/spree/backend/models/shipment.js +1 -1
  13. data/app/assets/javascripts/spree/backend/models/stock_item.js +1 -1
  14. data/app/assets/javascripts/spree/backend/option_type_autocomplete.js +2 -2
  15. data/app/assets/javascripts/spree/backend/option_value_picker.js +2 -2
  16. data/app/assets/javascripts/spree/backend/product_picker.js +2 -2
  17. data/app/assets/javascripts/spree/backend/routes.js +40 -21
  18. data/app/assets/javascripts/spree/backend/shipments.js +5 -5
  19. data/app/assets/javascripts/spree/backend/shipping_methods/stock_locations_picker.js +18 -0
  20. data/app/assets/javascripts/spree/backend/stock_management.js +4 -2
  21. data/app/assets/javascripts/spree/backend/taxon_autocomplete.js +2 -2
  22. data/app/assets/javascripts/spree/backend/taxons.js +3 -3
  23. data/app/assets/javascripts/spree/backend/templates/index.js +2 -0
  24. data/app/assets/javascripts/spree/backend/templates/orders/customer_details/autocomplete.hbs +2 -2
  25. data/app/assets/javascripts/spree/backend/templates/stock_items/stock_location_stock_item.hbs +5 -1
  26. data/app/assets/javascripts/spree/backend/templates/tables/return_item_sum_amount.hbs +7 -0
  27. data/app/assets/javascripts/spree/backend/templates/tables/selectable_label.hbs +6 -0
  28. data/app/assets/javascripts/spree/backend/user_picker.js +3 -4
  29. data/app/assets/javascripts/spree/backend/variant_autocomplete.js +2 -2
  30. data/app/assets/javascripts/spree/backend/views/cart/empty_cart_button.js +2 -2
  31. data/app/assets/javascripts/spree/backend/views/index.js +4 -0
  32. data/app/assets/javascripts/spree/backend/views/order/address.js +1 -1
  33. data/app/assets/javascripts/spree/backend/views/order/customer_select.js +2 -3
  34. data/app/assets/javascripts/spree/backend/views/order/details_adjustments.js +4 -1
  35. data/app/assets/javascripts/spree/backend/views/stock/edit_stock_item_row.js +4 -0
  36. data/app/assets/javascripts/spree/backend/views/tables/return_items.js +9 -0
  37. data/app/assets/javascripts/spree/backend/views/tables/selectable_table.js +70 -0
  38. data/app/assets/javascripts/spree/backend/views/tables/selectable_table/sum_return_item_amount.js +32 -0
  39. data/app/assets/javascripts/spree/backend/views/tables/selectable_table/summary.js +45 -0
  40. data/app/assets/stylesheets/spree/backend/components/_navigation.scss +4 -5
  41. data/app/assets/stylesheets/spree/backend/sections/_orders.scss +5 -1
  42. data/app/assets/stylesheets/spree/backend/sections/_style_guide.scss +4 -0
  43. data/app/assets/stylesheets/spree/backend/shared/_forms.scss +1 -0
  44. data/app/controllers/spree/admin/base_controller.rb +6 -0
  45. data/app/controllers/spree/admin/cancellations_controller.rb +2 -0
  46. data/app/controllers/spree/admin/customer_returns_controller.rb +4 -4
  47. data/app/controllers/spree/admin/images_controller.rb +2 -1
  48. data/app/controllers/spree/admin/orders/customer_details_controller.rb +2 -0
  49. data/app/controllers/spree/admin/orders_controller.rb +7 -2
  50. data/app/controllers/spree/admin/payments_controller.rb +3 -1
  51. data/app/controllers/spree/admin/product_properties_controller.rb +1 -1
  52. data/app/controllers/spree/admin/products_controller.rb +18 -24
  53. data/app/controllers/spree/admin/promotion_codes_controller.rb +9 -4
  54. data/app/controllers/spree/admin/refunds_controller.rb +19 -0
  55. data/app/controllers/spree/admin/resource_controller.rb +27 -7
  56. data/app/controllers/spree/admin/return_authorizations_controller.rb +1 -1
  57. data/app/controllers/spree/admin/root_controller.rb +1 -1
  58. data/app/controllers/spree/admin/search_controller.rb +1 -2
  59. data/app/controllers/spree/admin/stock_items_controller.rb +6 -5
  60. data/app/controllers/spree/admin/stock_locations_controller.rb +4 -0
  61. data/app/controllers/spree/admin/stock_movements_controller.rb +7 -0
  62. data/app/controllers/spree/admin/taxons_controller.rb +12 -1
  63. data/app/controllers/spree/admin/users/api_key_controller.rb +29 -0
  64. data/app/controllers/spree/admin/users_controller.rb +37 -20
  65. data/app/controllers/spree/admin/variants_controller.rb +4 -2
  66. data/app/controllers/spree/admin/zones_controller.rb +1 -1
  67. data/app/helpers/spree/admin/base_helper.rb +4 -0
  68. data/app/helpers/spree/admin/customer_returns_helper.rb +1 -1
  69. data/app/helpers/spree/admin/navigation_helper.rb +1 -1
  70. data/app/helpers/spree/admin/orders_helper.rb +8 -4
  71. data/app/helpers/spree/admin/stock_movements_helper.rb +8 -4
  72. data/app/views/spree/admin/customer_returns/_return_item_selection.html.erb +2 -3
  73. data/app/views/spree/admin/images/index.html.erb +25 -21
  74. data/app/views/spree/admin/option_types/_option_value_fields.html.erb +8 -1
  75. data/app/views/spree/admin/option_types/edit.html.erb +3 -1
  76. data/app/views/spree/admin/orders/customer_details/_form.html.erb +13 -13
  77. data/app/views/spree/admin/orders/index.html.erb +23 -13
  78. data/app/views/spree/admin/payment_methods/_form.html.erb +7 -2
  79. data/app/views/spree/admin/payments/index.html.erb +3 -1
  80. data/app/views/spree/admin/prices/_master_variant_table.html.erb +3 -3
  81. data/app/views/spree/admin/prices/_table.html.erb +3 -3
  82. data/app/views/spree/admin/product_properties/_product_property_fields.html.erb +7 -2
  83. data/app/views/spree/admin/product_properties/index.html.erb +14 -2
  84. data/app/views/spree/admin/products/_form.html.erb +13 -2
  85. data/app/views/spree/admin/products/index.html.erb +1 -1
  86. data/app/views/spree/admin/promotion_codes/index.html.erb +1 -1
  87. data/app/views/spree/admin/promotions/_actions.html.erb +1 -1
  88. data/app/views/spree/admin/promotions/_activations_new.html.erb +1 -1
  89. data/app/views/spree/admin/promotions/_rules.html.erb +1 -1
  90. data/app/views/spree/admin/promotions/edit.html.erb +2 -2
  91. data/app/views/spree/admin/promotions/index.html.erb +12 -5
  92. data/app/views/spree/admin/return_authorizations/_form.html.erb +3 -10
  93. data/app/views/spree/admin/return_authorizations/index.html.erb +1 -1
  94. data/app/views/spree/admin/search/users.json.jbuilder +15 -1
  95. data/app/views/spree/admin/shared/_address.html.erb +6 -6
  96. data/app/views/spree/admin/shared/_address_form.html.erb +15 -8
  97. data/app/views/spree/admin/shared/_order_submenu.html.erb +4 -4
  98. data/app/views/spree/admin/shared/_payments_tabs.html.erb +1 -1
  99. data/app/views/spree/admin/shared/_settings_checkout_tabs.html.erb +5 -5
  100. data/app/views/spree/admin/shared/_settings_sub_menu.html.erb +6 -6
  101. data/app/views/spree/admin/shared/_shipping_tabs.html.erb +3 -3
  102. data/app/views/spree/admin/shared/_taxes_tabs.html.erb +2 -2
  103. data/app/views/spree/admin/shared/preference_fields/_encrypted_string.html.erb +12 -0
  104. data/app/views/spree/admin/shipping_methods/_form.html.erb +18 -0
  105. data/app/views/spree/admin/stock_items/_stock_management.html.erb +1 -1
  106. data/app/views/spree/admin/stock_locations/edit.html.erb +1 -1
  107. data/app/views/spree/admin/stock_locations/index.html.erb +3 -1
  108. data/app/views/spree/admin/stock_movements/index.html.erb +30 -1
  109. data/app/views/spree/admin/stores/_form.html.erb +6 -0
  110. data/app/views/spree/admin/style_guide/topics/tables/_building_tables.html.erb +27 -3
  111. data/app/views/spree/admin/tax_categories/_form.html.erb +1 -0
  112. data/app/views/spree/admin/users/_form.html.erb +2 -2
  113. data/app/views/spree/admin/users/_tabs.html.erb +1 -1
  114. data/app/views/spree/admin/users/edit.html.erb +4 -4
  115. data/app/views/spree/admin/users/items.html.erb +5 -3
  116. data/app/views/spree/admin/users/orders.html.erb +5 -3
  117. data/app/views/spree/admin/variants/_table_filter.html.erb +1 -1
  118. data/app/views/spree/admin/variants/index.html.erb +2 -2
  119. data/config/initializers/form_builder.rb +2 -2
  120. data/lib/spree/backend/engine.rb +0 -2
  121. data/lib/spree/backend_configuration.rb +14 -1
  122. data/solidus_backend.gemspec +4 -4
  123. metadata +21 -120
  124. data/app/assets/javascripts/spree/backend/returns/return_item_selection.js +0 -35
  125. data/script/rails +0 -10
  126. data/spec/controllers/spree/admin/base_controller_spec.rb +0 -26
  127. data/spec/controllers/spree/admin/cancellations_controller_spec.rb +0 -83
  128. data/spec/controllers/spree/admin/customer_returns_controller_spec.rb +0 -235
  129. data/spec/controllers/spree/admin/locale_controller_spec.rb +0 -45
  130. data/spec/controllers/spree/admin/missing_products_controller_spec.rb +0 -18
  131. data/spec/controllers/spree/admin/orders/customer_details_controller_spec.rb +0 -128
  132. data/spec/controllers/spree/admin/orders_controller_spec.rb +0 -408
  133. data/spec/controllers/spree/admin/payment_methods_controller_spec.rb +0 -95
  134. data/spec/controllers/spree/admin/payments_controller_spec.rb +0 -194
  135. data/spec/controllers/spree/admin/prices_controller_spec.rb +0 -45
  136. data/spec/controllers/spree/admin/product_properties_controller_spec.rb +0 -71
  137. data/spec/controllers/spree/admin/products_controller_spec.rb +0 -270
  138. data/spec/controllers/spree/admin/promotion_actions_controller_spec.rb +0 -23
  139. data/spec/controllers/spree/admin/promotion_codes_controller_spec.rb +0 -32
  140. data/spec/controllers/spree/admin/promotion_rules_controller_spec.rb +0 -36
  141. data/spec/controllers/spree/admin/promotions_controller_spec.rb +0 -122
  142. data/spec/controllers/spree/admin/refunds_controller_spec.rb +0 -35
  143. data/spec/controllers/spree/admin/reimbursements_controller_spec.rb +0 -137
  144. data/spec/controllers/spree/admin/resource_controller_spec.rb +0 -201
  145. data/spec/controllers/spree/admin/return_authorizations_controller_spec.rb +0 -291
  146. data/spec/controllers/spree/admin/return_items_controller_spec.rb +0 -29
  147. data/spec/controllers/spree/admin/root_controller_spec.rb +0 -43
  148. data/spec/controllers/spree/admin/search_controller_spec.rb +0 -106
  149. data/spec/controllers/spree/admin/shipping_methods_controller_spec.rb +0 -16
  150. data/spec/controllers/spree/admin/stock_items_controller_spec.rb +0 -52
  151. data/spec/controllers/spree/admin/stock_locations_controller_spec.rb +0 -44
  152. data/spec/controllers/spree/admin/store_credits_controller_spec.rb +0 -311
  153. data/spec/controllers/spree/admin/users_controller_spec.rb +0 -287
  154. data/spec/controllers/spree/admin/variants_controller_spec.rb +0 -71
  155. data/spec/features/admin/configuration/payment_methods_spec.rb +0 -176
  156. data/spec/features/admin/configuration/shipping_methods_spec.rb +0 -126
  157. data/spec/features/admin/configuration/stock_locations_spec.rb +0 -54
  158. data/spec/features/admin/configuration/store_spec.rb +0 -62
  159. data/spec/features/admin/configuration/tax_categories_spec.rb +0 -58
  160. data/spec/features/admin/configuration/tax_rates_spec.rb +0 -31
  161. data/spec/features/admin/configuration/taxonomies_spec.rb +0 -61
  162. data/spec/features/admin/configuration/zones_spec.rb +0 -41
  163. data/spec/features/admin/homepage_spec.rb +0 -86
  164. data/spec/features/admin/javascript_format_money_spec.rb +0 -22
  165. data/spec/features/admin/locale_spec.rb +0 -34
  166. data/spec/features/admin/orders/adjustments_promotions_spec.rb +0 -55
  167. data/spec/features/admin/orders/adjustments_spec.rb +0 -130
  168. data/spec/features/admin/orders/cancelling_and_resuming_spec.rb +0 -45
  169. data/spec/features/admin/orders/cancelling_inventory_spec.rb +0 -50
  170. data/spec/features/admin/orders/customer_details_spec.rb +0 -203
  171. data/spec/features/admin/orders/customer_returns_spec.rb +0 -41
  172. data/spec/features/admin/orders/line_items_spec.rb +0 -52
  173. data/spec/features/admin/orders/listing_spec.rb +0 -186
  174. data/spec/features/admin/orders/log_entries_spec.rb +0 -56
  175. data/spec/features/admin/orders/new_order_spec.rb +0 -379
  176. data/spec/features/admin/orders/new_refund_spec.rb +0 -35
  177. data/spec/features/admin/orders/order_details_spec.rb +0 -591
  178. data/spec/features/admin/orders/payments_spec.rb +0 -330
  179. data/spec/features/admin/orders/return_authorizations_spec.rb +0 -56
  180. data/spec/features/admin/orders/return_payment_state_spec.rb +0 -65
  181. data/spec/features/admin/orders/risk_analysis_spec.rb +0 -49
  182. data/spec/features/admin/orders/shipments_spec.rb +0 -145
  183. data/spec/features/admin/payments/store_credits_spec.rb +0 -23
  184. data/spec/features/admin/products/edit/images_spec.rb +0 -76
  185. data/spec/features/admin/products/edit/products_spec.rb +0 -92
  186. data/spec/features/admin/products/edit/taxons_spec.rb +0 -57
  187. data/spec/features/admin/products/edit/variants_spec.rb +0 -63
  188. data/spec/features/admin/products/option_types_spec.rb +0 -116
  189. data/spec/features/admin/products/pricing_spec.rb +0 -127
  190. data/spec/features/admin/products/products_spec.rb +0 -348
  191. data/spec/features/admin/products/properties_spec.rb +0 -141
  192. data/spec/features/admin/products/stock_management_spec.rb +0 -101
  193. data/spec/features/admin/products/variant_spec.rb +0 -89
  194. data/spec/features/admin/promotion_adjustments_spec.rb +0 -286
  195. data/spec/features/admin/promotions/option_value_rule_spec.rb +0 -90
  196. data/spec/features/admin/promotions/product_rule_spec.rb +0 -35
  197. data/spec/features/admin/promotions/promotion_categories_spec.rb +0 -83
  198. data/spec/features/admin/promotions/promotion_code_batches_spec.rb +0 -37
  199. data/spec/features/admin/promotions/promotion_code_spec.rb +0 -31
  200. data/spec/features/admin/promotions/promotion_spec.rb +0 -52
  201. data/spec/features/admin/promotions/tiered_calculator_spec.rb +0 -76
  202. data/spec/features/admin/promotions/user_rule_spec.rb +0 -42
  203. data/spec/features/admin/reimbursements_spec.rb +0 -18
  204. data/spec/features/admin/store_credits_spec.rb +0 -132
  205. data/spec/features/admin/stores_spec.rb +0 -37
  206. data/spec/features/admin/style_guide_spec.rb +0 -14
  207. data/spec/features/admin/taxons_spec.rb +0 -90
  208. data/spec/features/admin/users_spec.rb +0 -412
  209. data/spec/fixtures/files/ror_ringer.jpeg +0 -0
  210. data/spec/helpers/admin/base_helper_spec.rb +0 -49
  211. data/spec/helpers/admin/navigation_helper_spec.rb +0 -139
  212. data/spec/helpers/admin/stock_movements_helper_spec.rb +0 -29
  213. data/spec/helpers/admin/store_credit_events_helper_spec.rb +0 -97
  214. data/spec/helpers/promotion_rules_helper_spec.rb +0 -14
  215. data/spec/javascripts/fixtures/_boot.html.erb +0 -8
  216. data/spec/javascripts/fixtures/number_with_currency/with_currency_select.html.erb +0 -3
  217. data/spec/javascripts/fixtures/number_with_currency/without_select.html.erb +0 -3
  218. data/spec/javascripts/format_money_spec.js +0 -48
  219. data/spec/javascripts/spec_helper.js +0 -13
  220. data/spec/javascripts/support/show_errors.js +0 -8
  221. data/spec/javascripts/support/with_translations.js +0 -11
  222. data/spec/javascripts/translation_spec.js +0 -58
  223. data/spec/javascripts/views/number_with_currency_spec.js +0 -72
  224. data/spec/lib/spree/backend_configuration/menu_item_spec.rb +0 -17
  225. data/spec/lib/spree/backend_configuration_spec.rb +0 -22
  226. data/spec/spec_helper.rb +0 -123
  227. data/spec/support/appear_before_matcher.rb +0 -10
  228. data/spec/support/feature/base_feature_helper.rb +0 -17
  229. data/spec/support/feature/order_feature_helper.rb +0 -27
  230. data/spec/teaspoon_env.rb +0 -51
  231. data/spec/test_views/spree/admin/widgets/edit.html.erb +0 -1
  232. data/spec/test_views/spree/admin/widgets/new.html.erb +0 -1
  233. data/spec/views/spree/admin/shared/navigation_footer_spec.rb +0 -67
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d77a5049c9373ee4c417b2d28b5ca09ae01e301de70ffc90db790e188cce1ff9
4
- data.tar.gz: 5f7083196306a532c49d463979bc287f161fa815407921621e5b13c74c1e32fa
3
+ metadata.gz: 459a4aba07f53417bf6889367686e009ac3d7e33c967a49aef2e2126ba7028ca
4
+ data.tar.gz: 1087ef57f666aa3b608dbd8e3d8d30314ba112e6e2d3b1de70524bec9e36cb48
5
5
  SHA512:
6
- metadata.gz: 3eb638d8544eef741cf4d6c5559cdf6ded6426fb2971d12a32cc10e214b840e578d208514999f2617af115502548923c0d0088381141ca9465b346dd036ca3ec
7
- data.tar.gz: 437679ef077e5b67833f4b1875caa0e9f8737ae1e55f63e713ff8c8c81a0604d5e252a6d3f8351990ce36b6adab45c71f9b7e2d0a6da8067e6893fa7d1e5fc2d
6
+ metadata.gz: 1cb9527cb3d0f3012f46804eb3e2d0ef200382c91adec7e808cdc0d97dd6a865c60d9d3d9aff9225ecdee8f35046385047337a9338e328f29d9b8231a4519cc3
7
+ data.tar.gz: 6ecf675ed819d3ebd0f61dc31b704dd24d755849c61cbf1b9569e325a21b70a00e01c7a4937bfa83312288e6d6cd9dd61253a8f6bf5903e18db3cddac2bd4132
@@ -29,6 +29,9 @@
29
29
  //= require spree/backend/components/tabs
30
30
  //= require spree/backend/components/tooltips
31
31
  //= require spree/backend/components/editable_table
32
+ //= require spree/backend/components/selectable_table
33
+ //= require spree/backend/components/selectable_table/summary
34
+ //= require spree/backend/components/selectable_table/return_items
32
35
  //= require spree/backend/components/sortable_table
33
36
  //= require spree/backend/components/admin_nav
34
37
  //= require spree/backend/datepicker
@@ -48,7 +51,6 @@
48
51
  //= require spree/backend/progress
49
52
  //= require spree/backend/promotions
50
53
  //= require spree/backend/promotions/activation
51
- //= require spree/backend/returns/return_item_selection
52
54
  //= require spree/backend/routes
53
55
  //= require spree/backend/shipments
54
56
  //= require spree/backend/spree-select2
@@ -61,3 +63,4 @@
61
63
  //= require spree/backend/user_picker
62
64
  //= require spree/backend/variant_autocomplete
63
65
  //= require spree/backend/zone
66
+ //= require spree/backend/shipping_methods/stock_locations_picker
@@ -6,7 +6,7 @@ Spree.ready(function() {
6
6
 
7
7
  Spree.ajax({
8
8
  type: 'POST',
9
- url: Spree.routes.apply_coupon_code(window.order_number),
9
+ url: Spree.pathFor('api/orders/' + window.order_number + '/coupon_codes'),
10
10
  data: {
11
11
  coupon_code: $("#coupon_code").val(),
12
12
  token: Spree.api_key
@@ -58,6 +58,14 @@ Spree.ready(function(){
58
58
  $('.spree_add_fields').click(function() {
59
59
  var target = $(this).data("target");
60
60
  var new_table_row = $(target + ' tr:visible:last').clone();
61
+
62
+ // remove id
63
+ new_table_row.attr("id", "");
64
+
65
+ // Remove sort handle
66
+ new_table_row.find("td").first().empty();
67
+
68
+ // set unique form ids and names of new item
61
69
  var new_id = new Date().getTime() + (uniqueId++);
62
70
  new_table_row.find("input, select").each(function () {
63
71
  var el = $(this);
@@ -66,14 +74,11 @@ Spree.ready(function(){
66
74
  el.prop("id", el.prop("id").replace(/\d+(?=[^\d]*$)/, new_id))
67
75
  el.prop("name", el.prop("name").replace(/\d+(?=[^\d]*$)/, new_id))
68
76
  })
69
- // When cloning a new row, set the href of all icons to be an empty "#"
70
- // This is so that clicking on them does not perform the actions for the
71
- // duplicated row
72
- new_table_row.find("a").each(function () {
73
- var el = $(this);
74
- el.prop('href', '#');
75
- })
76
- $(target).prepend(new_table_row);
77
+
78
+ // Add a remove button to the actions column of the new row
79
+ new_table_row.find("td").last().empty().append('<a class="spree_remove_fields no-text with-tip fa fa-trash icon_link with-tip" data-action="remove" href="#" data-original-title="Remove"><span class="text"></span></a>');
80
+
81
+ $(target).append(new_table_row);
77
82
  })
78
83
 
79
84
  $('body').on('click', '.delete-resource', function() {
@@ -101,26 +106,10 @@ Spree.ready(function(){
101
106
 
102
107
  $('body').on('click', 'a.spree_remove_fields', function() {
103
108
  var el = $(this);
104
- el.prev("input[type=hidden]").val("1");
105
- el.closest(".fields").hide();
106
- if (el.prop("href").substr(-1) == '#') {
107
- el.parents("tr").fadeOut('hide');
108
- }else if (el.prop("href")) {
109
- Spree.ajax({
110
- type: 'POST',
111
- url: el.prop("href"),
112
- data: {
113
- _method: 'delete',
114
- },
115
- success: function(response) {
116
- el.parents("tr").fadeOut('hide');
117
- },
118
- error: function(response, textStatus, errorThrown) {
119
- show_flash('error', response.responseText);
120
- }
121
-
122
- })
123
- }
109
+ var table_row = el.parents("tr").first();
110
+ table_row.fadeOut("hide", function() {
111
+ table_row.remove();
112
+ });
124
113
  return false;
125
114
  });
126
115
 
@@ -131,7 +120,7 @@ Spree.ready(function(){
131
120
  data: {
132
121
  token: Spree.api_key
133
122
  },
134
- url: Spree.routes.checkouts_api + "/" + window.order_number + "/advance"
123
+ url: Spree.pathFor('api/checkouts/' + window.order_number + '/advance')
135
124
  }).done(function() {
136
125
  window.location.reload();
137
126
  });
@@ -4,7 +4,7 @@ Spree.Collections.States = Backbone.Collection.extend({
4
4
  },
5
5
 
6
6
  url: function () {
7
- return Spree.routes.states_search + "?country_id=" + this.country_id
7
+ return Spree.pathFor('api/states?country_id=' + this.country_id)
8
8
  },
9
9
 
10
10
  parse: function(resp, options) {
@@ -0,0 +1,5 @@
1
+ Spree.ready(function() {
2
+ $('table.selectable-table').each(function() {
3
+ new Spree.Views.Tables.SelectableTable({el: this})
4
+ })
5
+ });
@@ -0,0 +1,5 @@
1
+ Backbone.on('selectableTable:init', function(selectableTable){
2
+ if(selectableTable.$el.hasClass('return-items-table')) {
3
+ new Spree.Views.Tables.ReturnItems({el: selectableTable.el, model: selectableTable.model});
4
+ }
5
+ })
@@ -0,0 +1,7 @@
1
+ Backbone.on('selectableTable:init', function(selectableTable){
2
+ if(selectableTable.$el.find('.selectable').length > 0) {
3
+ var tr = document.createElement('tr')
4
+ new Spree.Views.Tables.SelectableTable.Summary({el: tr, model: selectableTable.model , columns: selectableTable.maxColumns()});
5
+ selectableTable.$el.find('thead').prepend(tr);
6
+ }
7
+ })
@@ -1,30 +1,36 @@
1
1
  //= require solidus_admin/Sortable
2
2
  /* eslint no-unused-vars: "off" */
3
3
 
4
- Spree.ready(function() {
5
- var sortable_tables = document.querySelectorAll('table.sortable');
4
+ Spree.SortableTable = {
5
+ refresh: function() {
6
+ var sortable_tables = document.querySelectorAll('table.sortable');
6
7
 
7
- _.each(sortable_tables, function(table) {
8
- var url = table.getAttribute('data-sortable-link');
9
- var tbody = table.querySelector('tbody');
10
- var sortable = Sortable.create(tbody,{
11
- handle: ".handle",
12
- onEnd: function(e) {
13
- var positions = {};
14
- _.each(e.to.querySelectorAll('tr'), function(el, index) {
15
- var idAttr = el.id;
16
- if (idAttr) {
17
- var objId = idAttr.split('_').slice(-1);
18
- positions['positions['+objId+']'] = index + 1;
19
- }
20
- });
21
- Spree.ajax({
22
- type: 'POST',
23
- dataType: 'json',
24
- url: url,
25
- data: positions,
26
- });
27
- }
8
+ _.each(sortable_tables, function(table) {
9
+ var url = table.getAttribute('data-sortable-link');
10
+ var tbody = table.querySelector('tbody');
11
+ var sortable = Sortable.create(tbody,{
12
+ handle: ".handle",
13
+ onEnd: function(e) {
14
+ var positions = {};
15
+ _.each(e.to.querySelectorAll('tr'), function(el, index) {
16
+ var idAttr = el.id;
17
+ if (idAttr) {
18
+ var objId = idAttr.split('_').slice(-1);
19
+ if (!isNaN(objId)) {
20
+ positions['positions['+objId+']'] = index + 1;
21
+ }
22
+ }
23
+ });
24
+ Spree.ajax({
25
+ type: 'POST',
26
+ dataType: 'json',
27
+ url: url,
28
+ data: positions,
29
+ });
30
+ }
31
+ });
28
32
  });
29
- });
30
- });
33
+ }
34
+ };
35
+
36
+ Spree.ready(Spree.SortableTable.refresh);
@@ -4,7 +4,7 @@
4
4
  //= require spree/backend/models/address
5
5
 
6
6
  Spree.Models.Order = Backbone.Model.extend({
7
- urlRoot: Spree.routes.orders_api,
7
+ urlRoot: Spree.pathFor('api/orders'),
8
8
  idAttribute: "number",
9
9
 
10
10
  relations: {
@@ -16,7 +16,7 @@ Spree.Models.Order = Backbone.Model.extend({
16
16
 
17
17
  advance: function(opts) {
18
18
  var options = {
19
- url: Spree.routes.checkouts_api + "/" + this.id + "/advance",
19
+ url: Spree.pathFor('api/checkouts/' + this.id + '/advance'),
20
20
  type: 'PUT',
21
21
  };
22
22
  _.extend(options, opts);
@@ -25,7 +25,7 @@ Spree.Models.Order = Backbone.Model.extend({
25
25
 
26
26
  empty: function (opts) {
27
27
  var options = {
28
- url: Spree.routes.orders_api + "/" + this.id + "/empty",
28
+ url: Spree.pathFor('api/orders/' + this.id + '/empty'),
29
29
  type: 'PUT',
30
30
  };
31
31
  _.extend(options, opts);
@@ -1,5 +1,5 @@
1
1
  Spree.Models.Payment = Backbone.Model.extend({
2
2
  urlRoot: function() {
3
- return Spree.routes.payments_api(this.get('order_id'));
3
+ return Spree.pathFor('api/orders/' + this.get('order_id') + '/payments')
4
4
  }
5
5
  });
@@ -1,7 +1,7 @@
1
1
  Spree.Models.Shipment = Backbone.Model.extend({
2
2
  idAttribute: "number",
3
3
  paramRoot: "shipment",
4
- urlRoot: Spree.routes.shipments_api,
4
+ urlRoot: Spree.pathFor('api/shipments'),
5
5
 
6
6
  relations: {
7
7
  "selected_shipping_rate": Backbone.Model,
@@ -1,6 +1,6 @@
1
1
  Spree.Models.StockItem = Backbone.Model.extend({
2
2
  paramRoot: 'stock_item',
3
3
  urlRoot: function() {
4
- return Spree.routes.stock_items_api(this.get('stock_location_id'));
4
+ return Spree.pathFor('api/stock_locations/' + this.get('stock_location_id') + '/stock_items');
5
5
  }
6
6
  });
@@ -11,7 +11,7 @@ Spree.ready(function () {
11
11
  multiple: true,
12
12
  initSelection: function (element, callback) {
13
13
  return Spree.ajax({
14
- url: Spree.routes.option_type_search,
14
+ url: Spree.pathFor('api/option_types'),
15
15
  data: { ids: element.val() },
16
16
  type: 'get',
17
17
  success: function(data) {
@@ -20,7 +20,7 @@ Spree.ready(function () {
20
20
  });
21
21
  },
22
22
  ajax: {
23
- url: Spree.routes.option_type_search,
23
+ url: Spree.pathFor('api/option_types'),
24
24
  quietMillis: 200,
25
25
  datatype: 'json',
26
26
  params: { "headers": { 'Authorization': 'Bearer ' + Spree.api_key } },
@@ -14,7 +14,7 @@ $.fn.optionValueAutocomplete = function (options) {
14
14
  minimumInputLength: 3,
15
15
  multiple: multiple,
16
16
  initSelection: function (element, callback) {
17
- $.get(Spree.routes.option_value_search, {
17
+ $.get(Spree.pathFor('api/option_values'), {
18
18
  ids: element.val().split(','),
19
19
  token: Spree.api_key
20
20
  }, function (data) {
@@ -22,7 +22,7 @@ $.fn.optionValueAutocomplete = function (options) {
22
22
  });
23
23
  },
24
24
  ajax: {
25
- url: Spree.routes.option_value_search,
25
+ url: Spree.pathFor('api/option_values'),
26
26
  datatype: 'json',
27
27
  data: function (term, page) {
28
28
  // Note: This doesn't work. variants_product_id isn't an allowed filter
@@ -13,7 +13,7 @@ $.fn.productAutocomplete = function (options) {
13
13
  minimumInputLength: 3,
14
14
  multiple: multiple,
15
15
  initSelection: function (element, callback) {
16
- $.get(Spree.routes.admin_product_search, {
16
+ $.get(Spree.pathFor('admin/search/products'), {
17
17
  ids: element.val().split(','),
18
18
  token: Spree.api_key
19
19
  }, function (data) {
@@ -21,7 +21,7 @@ $.fn.productAutocomplete = function (options) {
21
21
  });
22
22
  },
23
23
  ajax: {
24
- url: Spree.routes.admin_product_search,
24
+ url: Spree.pathFor('admin/search/products'),
25
25
  datatype: 'json',
26
26
  params: { "headers": { 'Authorization': 'Bearer ' + Spree.api_key } },
27
27
  data: function (term, page) {
@@ -1,27 +1,46 @@
1
- Spree.routes.checkouts_api = Spree.pathFor('api/checkouts')
2
- Spree.routes.classifications_api = Spree.pathFor('api/classifications')
3
- Spree.routes.option_value_search = Spree.pathFor('api/option_values')
4
- Spree.routes.option_type_search = Spree.pathFor('api/option_types')
5
- Spree.routes.orders_api = Spree.pathFor('api/orders')
6
- Spree.routes.product_search = Spree.pathFor('api/products')
7
- Spree.routes.admin_product_search = Spree.pathFor('admin/search/products')
8
- Spree.routes.shipments_api = Spree.pathFor('api/shipments')
9
- Spree.routes.checkouts_api = Spree.pathFor('api/checkouts')
10
- Spree.routes.stock_locations_api = Spree.pathFor('api/stock_locations')
11
- Spree.routes.taxon_products_api = Spree.pathFor('api/taxons/products')
12
- Spree.routes.taxons_search = Spree.pathFor('api/taxons')
13
- Spree.routes.user_search = Spree.pathFor('admin/search/users')
14
- Spree.routes.variants_api = Spree.pathFor('api/variants')
15
- Spree.routes.users_api = Spree.pathFor('api/users')
1
+ /**
2
+ * @deprecated Spree.routes will be removed in a future release. Please use Spree.pathFor instead.
3
+ * See: https://github.com/solidusio/solidus/issues/3405
4
+ */
16
5
 
17
- Spree.routes.line_items_api = function(order_id) {
18
- return Spree.pathFor('api/orders/' + order_id + '/line_items')
6
+ var admin_routes = {
7
+ classifications_api: Spree.pathFor('api/classifications'),
8
+ option_value_search: Spree.pathFor('api/option_values'),
9
+ option_type_search: Spree.pathFor('api/option_types'),
10
+ orders_api: Spree.pathFor('api/orders'),
11
+ product_search: Spree.pathFor('api/products'),
12
+ admin_product_search: Spree.pathFor('admin/search/products'),
13
+ shipments_api: Spree.pathFor('api/shipments'),
14
+ checkouts_api: Spree.pathFor('api/checkouts'),
15
+ stock_locations_api: Spree.pathFor('api/stock_locations'),
16
+ taxon_products_api: Spree.pathFor('api/taxons/products'),
17
+ taxons_search: Spree.pathFor('api/taxons'),
18
+ user_search: Spree.pathFor('admin/search/users'),
19
+ variants_api: Spree.pathFor('api/variants'),
20
+ users_api: Spree.pathFor('api/users'),
21
+
22
+ line_items_api: function(order_id) {
23
+ return Spree.pathFor('api/orders/' + order_id + '/line_items')
24
+ },
25
+
26
+ payments_api: function(order_id) {
27
+ return Spree.pathFor('api/orders/' + order_id + '/payments')
28
+ },
29
+
30
+ stock_items_api: function(stock_location_id) {
31
+ return Spree.pathFor('api/stock_locations/' + stock_location_id + '/stock_items')
32
+ }
19
33
  }
20
34
 
21
- Spree.routes.payments_api = function(order_id) {
22
- return Spree.pathFor('api/orders/' + order_id + '/payments')
35
+ var frontend_routes = {
36
+ states_search: Spree.pathFor('api/states'),
37
+ apply_coupon_code: function(order_id) {
38
+ return Spree.pathFor("api/orders/" + order_id + "/coupon_codes");
39
+ }
23
40
  }
24
41
 
25
- Spree.routes.stock_items_api = function(stock_location_id) {
26
- return Spree.pathFor('api/stock_locations/' + stock_location_id + '/stock_items')
42
+ if(typeof Proxy == "function") {
43
+ Spree.routes = new Proxy(Object.assign(admin_routes, frontend_routes), Spree.routesDeprecationProxy);
44
+ } else {
45
+ Object.assign(Spree.routes, admin_routes)
27
46
  }
@@ -11,7 +11,7 @@ var ShipShipmentView = Backbone.View.extend({
11
11
  onSubmit: function(e){
12
12
  Spree.ajax({
13
13
  type: "PUT",
14
- url: Spree.routes.shipments_api + "/" + this.shipment_number + "/ship",
14
+ url: Spree.pathFor('api/shipments/' + this.shipment_number + '/ship'),
15
15
  data: {
16
16
  send_mailer: this.$("[name='send_mailer']").is(":checked")
17
17
  },
@@ -27,7 +27,7 @@ adjustShipmentItems = function(shipment_number, variant_id, quantity){
27
27
  var shipment = _.findWhere(shipments, {number: shipment_number});
28
28
  var inventory_units = _.where(shipment.inventory_units, {variant_id: variant_id});
29
29
 
30
- var url = Spree.routes.shipments_api + "/" + shipment_number;
30
+ var url = Spree.pathFor('api/shipments/' + shipment_number);
31
31
 
32
32
  var new_quantity = 0;
33
33
  if(inventory_units.length<quantity){
@@ -106,7 +106,7 @@ var ShipmentSplitItemView = Backbone.View.extend({
106
106
  split_attr.stock_location_id = target_id;
107
107
  jqXHR = Spree.ajax({
108
108
  type: "POST",
109
- url: Spree.routes.shipments_api + "/transfer_to_location",
109
+ url: Spree.pathFor('api/shipments/transfer_to_location'),
110
110
  data: split_attr
111
111
  });
112
112
  } else if (target_type == 'shipment') {
@@ -114,7 +114,7 @@ var ShipmentSplitItemView = Backbone.View.extend({
114
114
  split_attr.target_shipment_number = target_id;
115
115
  jqXHR = Spree.ajax({
116
116
  type: "POST",
117
- url: Spree.routes.shipments_api + "/transfer_to_shipment",
117
+ url: Spree.pathFor('api/shipments/transfer_to_shipment'),
118
118
  data: split_attr
119
119
  });
120
120
  } else {
@@ -179,7 +179,7 @@ var ShipmentItemView = Backbone.View.extend({
179
179
  var _this = this;
180
180
  Spree.ajax({
181
181
  type: "GET",
182
- url: Spree.routes.variants_api + "/" + this.variant_id,
182
+ url: Spree.pathFor('api/variants/' + this.variant_id),
183
183
  }).success(function(variant){
184
184
  var split = new ShipmentSplitItemView({
185
185
  shipmentItemView: _this,
@@ -0,0 +1,18 @@
1
+ Spree.ready(function() {
2
+ var $stockLocationsSelect = $('#shipping_method_stock_location_ids'),
3
+ $availableToAllCheckbox = $('#shipping_method_available_to_all');
4
+
5
+ if ($stockLocationsSelect.length === 0 || $availableToAllCheckbox.length === 0) {
6
+ return;
7
+ }
8
+
9
+ function toggleLocationSelectVisibility() {
10
+ $stockLocationsSelect.toggleClass('hidden', $availableToAllCheckbox[0].checked);
11
+ }
12
+
13
+ $availableToAllCheckbox.on('click', function() {
14
+ toggleLocationSelectVisibility();
15
+ });
16
+
17
+ toggleLocationSelectVisibility();
18
+ })