spree_backend 2.1.12 → 2.2.0

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 (157) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/{admin → spree/backend}/address_states.js +1 -1
  3. data/app/assets/javascripts/spree/backend/adjustments.js.coffee +16 -0
  4. data/app/assets/javascripts/{admin → spree/backend}/admin.js.erb +22 -23
  5. data/app/assets/javascripts/{admin → spree/backend}/calculator.js +2 -2
  6. data/app/assets/javascripts/{admin → spree/backend}/checkouts/edit.js +0 -0
  7. data/app/assets/javascripts/{admin → spree/backend}/gateway.js +2 -2
  8. data/app/assets/javascripts/spree/backend/handlebar_extensions.js +9 -0
  9. data/app/assets/javascripts/{admin → spree/backend}/images/index.js.coffee +0 -0
  10. data/app/assets/javascripts/{admin → spree/backend}/images/new.js.coffee +0 -0
  11. data/app/assets/javascripts/spree/backend/index.html +15 -0
  12. data/app/assets/javascripts/{admin → spree/backend}/line_items.js.coffee +0 -0
  13. data/app/assets/javascripts/{admin → spree/backend}/nested-attribute.js +2 -2
  14. data/app/assets/javascripts/{admin → spree/backend}/option_type_autocomplete.js.erb +1 -4
  15. data/app/assets/javascripts/{admin → spree/backend}/orders/edit.js +0 -0
  16. data/app/assets/javascripts/{admin → spree/backend}/orders/edit_form.js +1 -1
  17. data/app/assets/javascripts/{admin → spree/backend}/payments/edit.js.coffee +2 -2
  18. data/app/assets/javascripts/{admin → spree/backend}/payments/new.js +1 -1
  19. data/app/assets/javascripts/{admin → spree/backend}/product_picker.js +0 -0
  20. data/app/assets/javascripts/{admin → spree/backend}/progress.coffee +0 -0
  21. data/app/assets/javascripts/{admin → spree/backend}/promotions.js +1 -8
  22. data/app/assets/javascripts/{admin → spree/backend}/shipments.js.erb +1 -0
  23. data/app/assets/javascripts/{admin → spree/backend}/spree-select2.js.erb +0 -0
  24. data/app/assets/javascripts/{admin → spree/backend}/spree_backend.js +1 -1
  25. data/app/assets/javascripts/{admin → spree/backend}/states.js +2 -2
  26. data/app/assets/javascripts/{admin → spree/backend}/stock_management.js.coffee +0 -0
  27. data/app/assets/javascripts/{admin → spree/backend}/stock_movement.js.coffee +0 -0
  28. data/app/assets/javascripts/{admin → spree/backend}/stock_transfer.js.coffee +1 -1
  29. data/app/assets/javascripts/{admin → spree/backend}/taxon_autocomplete.js.erb +0 -0
  30. data/app/assets/javascripts/{admin → spree/backend}/taxon_tree_menu.js.coffee +0 -0
  31. data/app/assets/javascripts/{admin → spree/backend}/taxonomy.js.coffee +10 -10
  32. data/app/assets/javascripts/spree/backend/taxons.js.coffee +51 -0
  33. data/app/assets/javascripts/{admin → spree/backend}/underscore-min.js +0 -0
  34. data/app/assets/javascripts/{admin → spree/backend}/user_picker.js +0 -0
  35. data/app/assets/javascripts/{admin → spree/backend}/variant_autocomplete.js.erb +1 -1
  36. data/app/assets/javascripts/{admin → spree/backend}/variant_management.js.coffee +0 -0
  37. data/app/assets/javascripts/{admin → spree/backend}/zone.js.coffee +0 -0
  38. data/app/assets/javascripts/spree/backend.js +22 -0
  39. data/app/assets/javascripts/{store → spree/frontend}/backend.js +0 -0
  40. data/app/assets/stylesheets/{admin → spree/backend}/components/_actions.scss +0 -0
  41. data/app/assets/stylesheets/{admin → spree/backend}/components/_date-picker.scss +0 -0
  42. data/app/assets/stylesheets/{admin → spree/backend}/components/_messages.scss +12 -1
  43. data/app/assets/stylesheets/{admin → spree/backend}/components/_navigation.scss +0 -0
  44. data/app/assets/stylesheets/{admin → spree/backend}/components/_pagination.scss +0 -0
  45. data/app/assets/stylesheets/{admin → spree/backend}/components/_product_autocomplete.scss +0 -0
  46. data/app/assets/stylesheets/{admin → spree/backend}/components/_progress.scss +0 -0
  47. data/app/assets/stylesheets/{admin → spree/backend}/components/_sidebar.scss +0 -0
  48. data/app/assets/stylesheets/{admin → spree/backend}/components/_states.scss +0 -0
  49. data/app/assets/stylesheets/{admin → spree/backend}/components/_table-filter.scss +0 -0
  50. data/app/assets/stylesheets/{admin → spree/backend}/globals/_functions.scss +0 -0
  51. data/app/assets/stylesheets/{admin → spree/backend}/globals/_mixins.scss +0 -0
  52. data/app/assets/stylesheets/{admin → spree/backend}/globals/_variables.scss +17 -6
  53. data/app/assets/stylesheets/{admin → spree/backend}/globals/_variables_override.scss +0 -0
  54. data/app/assets/stylesheets/{admin → spree/backend}/hacks/_ie.scss +0 -0
  55. data/app/assets/stylesheets/{admin → spree/backend}/hacks/_mozilla.scss +0 -0
  56. data/app/assets/stylesheets/{admin → spree/backend}/hacks/_opera.scss +0 -0
  57. data/app/assets/stylesheets/{admin → spree/backend}/plugins/_jstree.scss +0 -0
  58. data/app/assets/stylesheets/{admin → spree/backend}/plugins/_powertip.scss +0 -0
  59. data/app/assets/stylesheets/{admin → spree/backend}/plugins/_select2.scss +0 -0
  60. data/app/assets/stylesheets/{admin → spree/backend}/plugins/_token-input.scss +0 -0
  61. data/app/assets/stylesheets/{admin → spree/backend}/sections/_alerts.scss +0 -0
  62. data/app/assets/stylesheets/{admin → spree/backend}/sections/_bulk_transfer.scss +0 -0
  63. data/app/assets/stylesheets/{admin → spree/backend}/sections/_edit_checkouts.scss +0 -0
  64. data/app/assets/stylesheets/{admin → spree/backend}/sections/_image_settings.scss +0 -0
  65. data/app/assets/stylesheets/{admin → spree/backend}/sections/_log_entries.scss +0 -0
  66. data/app/assets/stylesheets/{admin → spree/backend}/sections/_orders.scss +10 -0
  67. data/app/assets/stylesheets/{admin → spree/backend}/sections/_overview.scss +0 -0
  68. data/app/assets/stylesheets/{admin → spree/backend}/sections/_products.scss +0 -0
  69. data/app/assets/stylesheets/{admin → spree/backend}/sections/_promotions.scss +0 -0
  70. data/app/assets/stylesheets/{admin → spree/backend}/sections/_tax_zones.scss +0 -0
  71. data/app/assets/stylesheets/spree/backend/sections/_taxons.scss +15 -0
  72. data/app/assets/stylesheets/{admin → spree/backend}/shared/_forms.scss +0 -0
  73. data/app/assets/stylesheets/{admin → spree/backend}/shared/_icons.scss +1 -0
  74. data/app/assets/stylesheets/{admin → spree/backend}/shared/_layout.scss +0 -0
  75. data/app/assets/stylesheets/{admin → spree/backend}/shared/_tables.scss +0 -0
  76. data/app/assets/stylesheets/{admin → spree/backend}/shared/_typography.scss +0 -0
  77. data/app/assets/stylesheets/spree/backend/spree_admin.scss +42 -0
  78. data/app/assets/stylesheets/{admin → spree/backend}/spree_backend.css +1 -1
  79. data/app/assets/stylesheets/spree/backend.css +17 -0
  80. data/app/assets/stylesheets/{store → spree/frontend}/backend.css +0 -0
  81. data/app/controllers/spree/admin/adjustments_controller.rb +30 -13
  82. data/app/controllers/spree/admin/images_controller.rb +1 -1
  83. data/app/controllers/spree/admin/orders_controller.rb +17 -15
  84. data/app/controllers/spree/admin/payment_methods_controller.rb +4 -1
  85. data/app/controllers/spree/admin/payments_controller.rb +8 -14
  86. data/app/controllers/spree/admin/product_properties_controller.rb +1 -1
  87. data/app/controllers/spree/admin/products_controller.rb +16 -3
  88. data/app/controllers/spree/admin/promotions_controller.rb +0 -5
  89. data/app/controllers/spree/admin/shipping_methods_controller.rb +2 -1
  90. data/app/controllers/spree/admin/tax_rates_controller.rb +0 -11
  91. data/app/controllers/spree/admin/taxons_controller.rb +4 -0
  92. data/app/controllers/spree/admin/variants_controller.rb +7 -1
  93. data/app/helpers/spree/admin/adjustments_helper.rb +42 -0
  94. data/app/helpers/spree/admin/images_helper.rb +18 -0
  95. data/app/helpers/spree/admin/orders_helper.rb +1 -1
  96. data/app/views/spree/admin/adjustments/_adjustment.html.erb +16 -0
  97. data/app/views/spree/admin/adjustments/_adjustments_table.html.erb +3 -18
  98. data/app/views/spree/admin/adjustments/index.html.erb +11 -1
  99. data/app/views/spree/admin/images/new.html.erb +1 -1
  100. data/app/views/spree/admin/log_entries/_credit_card.html.erb +4 -0
  101. data/app/views/spree/admin/log_entries/index.html.erb +2 -5
  102. data/app/views/spree/admin/orders/_adjustments.html.erb +19 -0
  103. data/app/views/spree/admin/orders/_form.html.erb +15 -24
  104. data/app/views/spree/admin/orders/_risk_analysis.html.erb +1 -1
  105. data/app/views/spree/admin/orders/_shipment.html.erb +13 -26
  106. data/app/views/spree/admin/orders/_shipment_manifest.html.erb +2 -3
  107. data/app/views/spree/admin/orders/customer_details/_form.html.erb +18 -12
  108. data/app/views/spree/admin/orders/edit.html.erb +4 -0
  109. data/app/views/spree/admin/orders/index.html.erb +5 -1
  110. data/app/views/spree/admin/payments/_capture_events.html.erb +19 -0
  111. data/app/views/spree/admin/payments/_form.html.erb +1 -1
  112. data/app/views/spree/admin/payments/show.html.erb +7 -1
  113. data/app/views/spree/admin/payments/source_forms/_gateway.html.erb +9 -1
  114. data/app/views/spree/admin/payments/source_views/_gateway.html.erb +3 -1
  115. data/app/views/spree/admin/products/_autocomplete.js.erb +14 -0
  116. data/app/views/spree/admin/products/_form.html.erb +58 -82
  117. data/app/views/spree/admin/products/new.html.erb +5 -5
  118. data/app/views/spree/admin/promotions/_form.html.erb +1 -6
  119. data/app/views/spree/admin/promotions/actions/_create_item_adjustments.html.erb +26 -0
  120. data/app/views/spree/admin/promotions/actions/_free_shipping.html.erb +0 -0
  121. data/app/views/spree/admin/promotions/index.html.erb +6 -3
  122. data/app/views/spree/admin/prototypes/_form.html.erb +2 -2
  123. data/app/views/spree/admin/prototypes/show.html.erb +2 -2
  124. data/app/views/spree/admin/return_authorizations/_form.html.erb +1 -1
  125. data/app/views/spree/admin/shared/_configuration_menu.html.erb +0 -1
  126. data/app/views/spree/admin/shared/_head.html.erb +2 -2
  127. data/app/views/spree/admin/shared/_order_submenu.html.erb +35 -0
  128. data/app/views/spree/admin/shared/_order_summary.html.erb +41 -0
  129. data/app/views/spree/admin/shared/_order_tabs.html.erb +2 -65
  130. data/app/views/spree/admin/shared/_product_sub_menu.html.erb +2 -0
  131. data/app/views/spree/admin/shared/_routes.html.erb +2 -0
  132. data/app/views/spree/admin/shared/_tabs.html.erb +3 -3
  133. data/app/views/spree/admin/shared/_translations.html.erb +2 -0
  134. data/app/views/spree/admin/shipping_methods/_form.html.erb +18 -7
  135. data/app/views/spree/admin/shipping_methods/index.html.erb +1 -1
  136. data/app/views/spree/admin/stock_locations/_form.html.erb +1 -1
  137. data/app/views/spree/admin/stock_movements/index.html.erb +1 -1
  138. data/app/views/spree/admin/stock_transfers/new.html.erb +1 -1
  139. data/app/views/spree/admin/taxonomies/index.html.erb +2 -0
  140. data/app/views/spree/admin/taxons/index.html.erb +16 -0
  141. data/app/views/spree/admin/variants/_form.html.erb +5 -0
  142. data/config/routes.rb +7 -12
  143. data/lib/spree/backend/engine.rb +4 -8
  144. data/lib/spree/backend.rb +0 -7
  145. metadata +98 -90
  146. data/app/assets/fonts/FontAwesome.otf +0 -0
  147. data/app/assets/fonts/fontawesome-webfont.eot +0 -0
  148. data/app/assets/fonts/fontawesome-webfont.svg +0 -399
  149. data/app/assets/fonts/fontawesome-webfont.ttf +0 -0
  150. data/app/assets/fonts/fontawesome-webfont.woff +0 -0
  151. data/app/assets/javascripts/admin/image_settings.js.erb +0 -61
  152. data/app/assets/javascripts/spree/backend/select_payments.js.coffee +0 -7
  153. data/app/assets/stylesheets/admin/plugins/_font-awesome.scss +0 -1475
  154. data/app/assets/stylesheets/admin/spree_admin.scss +0 -42
  155. data/app/controllers/spree/admin/image_settings_controller.rb +0 -64
  156. data/app/views/spree/admin/image_settings/edit.html.erb +0 -126
  157. data/app/views/spree/admin/shared/_order_details.html.erb +0 -56
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7516bdc5334462347a1bc6272c9192f4c5a7e8f5
4
- data.tar.gz: 0d74ca795d60169edb469909967f86756db48783
3
+ metadata.gz: 0eb4b17ed3a2191a75982b34586811474e257424
4
+ data.tar.gz: 11d1332518050f7b4cc0d918ed90202876e8fb0c
5
5
  SHA512:
6
- metadata.gz: dd560e534cb1ff82ac9cd043ce4b3088235e6e4789008b33402b4733d7c3c3e7028db82af9830b87864b8fc67c7410c1dc3e0c832f2732f182730bc9d1942235
7
- data.tar.gz: 44ceeeb179d3cff03ecce0ceeb26b291944ac4526d17fe93e017b593b281cec276dc8c1fcb71400b676a0ea34c7b40d8cb8b81b72eb122c5783311a2db8d524f
6
+ metadata.gz: 51695cae86f3f9fd40b797749b05c15d78d4d80b7c1e7f995d86e473fe00e1e34c1812a626f6f071999898ee0feec3fd391c8925c65a04fe5132627311380384
7
+ data.tar.gz: 2956047cd5b1b703bd524c539f3f2b9d2dffe729a100a33119e257fbf3b58b459a5b4aa555eb80bfe6882bec038b51afd1eb2b463b4a39c9f7ff46a0d2c543f1
@@ -15,7 +15,7 @@ var update_state = function (region) {
15
15
  }].concat(states);
16
16
  $.each(states_with_blank, function (pos, state) {
17
17
  var opt = $(document.createElement('option'))
18
- .attr('value', state.id)
18
+ .prop('value', state.id)
19
19
  .html(state.name);
20
20
  state_select.append(opt);
21
21
  });
@@ -0,0 +1,16 @@
1
+ $(@).ready( ->
2
+ $('[data-hook=adjustments_new_coupon_code] #add_coupon_code').click ->
3
+ return if $("#coupon_code").val().length == 0
4
+ $.ajax
5
+ type: 'PUT'
6
+ url: Spree.url(Spree.routes.orders_api + '/' + order_number + '/apply_coupon_code.json');
7
+ data:
8
+ coupon_code: $("#coupon_code").val()
9
+ success: ->
10
+ window.location.reload();
11
+ error: (msg) ->
12
+ if msg.responseJSON["error"]
13
+ show_flash 'error', msg.responseJSON["error"]
14
+ else
15
+ show_flash 'error', "There was a problem adding this coupon code."
16
+ )
@@ -1,10 +1,11 @@
1
1
  //= require_self
2
- //= require admin/handlebar_extensions
3
- //= require admin/variant_autocomplete
4
- //= require admin/taxon_autocomplete
5
- //= require admin/option_type_autocomplete
6
- //= require admin/user_picker
7
- //= require admin/product_picker
2
+ //= require spree/backend/handlebar_extensions
3
+ //= require spree/backend/variant_autocomplete
4
+ //= require spree/backend/taxon_autocomplete
5
+ //= require spree/backend/option_type_autocomplete
6
+ //= require spree/backend/user_picker
7
+ //= require spree/backend/product_picker
8
+ //= require spree/backend/taxons
8
9
 
9
10
  /**
10
11
  This is a collection of javascript functions and whatnot
@@ -48,12 +49,12 @@ jQuery(function($) {
48
49
  // Highlight hovered table column
49
50
  $('table tbody tr td.actions a').hover(function(){
50
51
  var tr = $(this).closest('tr');
51
- var klass = 'highlight action-' + $(this).attr('data-action')
52
+ var klass = 'highlight action-' + $(this).data('action')
52
53
  tr.addClass(klass)
53
54
  tr.prev().addClass('before-' + klass);
54
55
  }, function(){
55
56
  var tr = $(this).closest('tr');
56
- var klass = 'highlight action-' + $(this).attr('data-action')
57
+ var klass = 'highlight action-' + $(this).data('action')
57
58
  tr.removeClass(klass)
58
59
  tr.prev().removeClass('before-' + klass);
59
60
  });
@@ -125,12 +126,12 @@ handle_date_picker_fields = function(){
125
126
  $(document).ready(function(){
126
127
  handle_date_picker_fields();
127
128
  $(".observe_field").on('change', function() {
128
- target = $(this).attr("data-update");
129
- ajax_indicator = $(this).attr("data-ajax-indicator") || '#busy_indicator';
129
+ target = $(this).data("update");
130
+ ajax_indicator = $(this).data("ajax-indicator") || '#busy_indicator';
130
131
  $(target).hide();
131
132
  $(ajax_indicator).show();
132
133
  $.ajax({ dataType: 'html',
133
- url: $(this).attr("data-base-url")+encodeURIComponent($(this).val()),
134
+ url: $(this).data("base-url")+encodeURIComponent($(this).val()),
134
135
  type: 'get',
135
136
  success: function(data){
136
137
  $(target).html(data);
@@ -147,15 +148,15 @@ $(document).ready(function(){
147
148
  new_table_row.find("input, select").each(function () {
148
149
  var el = $(this);
149
150
  el.val("");
150
- el.attr("id", el.attr("id").replace(/\d+/, new_id))
151
- el.attr("name", el.attr("name").replace(/\d+/, new_id))
151
+ el.prop("id", el.prop("id").replace(/\d+/, new_id))
152
+ el.prop("name", el.prop("name").replace(/\d+/, new_id))
152
153
  })
153
154
  // When cloning a new row, set the href of all icons to be an empty "#"
154
155
  // This is so that clicking on them does not perform the actions for the
155
156
  // duplicated row
156
157
  new_table_row.find("a").each(function () {
157
158
  var el = $(this);
158
- el.attr('href', '#');
159
+ el.prop('href', '#');
159
160
  })
160
161
  $(target).prepend(new_table_row);
161
162
  })
@@ -165,16 +166,14 @@ $(document).ready(function(){
165
166
  if (confirm(el.data("confirm"))) {
166
167
  $.ajax({
167
168
  type: 'POST',
168
- url: $(this).attr("href"),
169
+ url: $(this).prop("href"),
169
170
  data: {
170
171
  _method: 'delete',
171
172
  authenticity_token: AUTH_TOKEN
172
173
  },
173
174
  dataType: 'script',
174
175
  success: function(response) {
175
- el.parents("tr").fadeOut('hide', function() {
176
- $(this).remove();
177
- });
176
+ el.parents("tr").fadeOut('hide');
178
177
  },
179
178
  error: function(response, textStatus, errorThrown) {
180
179
  show_flash('error', response.responseText);
@@ -188,12 +187,12 @@ $(document).ready(function(){
188
187
  el = $(this);
189
188
  el.prev("input[type=hidden]").val("1");
190
189
  el.closest(".fields").hide();
191
- if (el.attr("href") == '#') {
190
+ if (el.prop("href").substr(-1) == '#') {
192
191
  el.parents("tr").fadeOut('hide');
193
- }else if (el.attr("href")) {
192
+ }else if (el.prop("href")) {
194
193
  $.ajax({
195
194
  type: 'POST',
196
- url: el.attr("href"),
195
+ url: el.prop("href"),
197
196
  data: {
198
197
  _method: 'delete',
199
198
  authenticity_token: AUTH_TOKEN
@@ -213,7 +212,7 @@ $(document).ready(function(){
213
212
  $('body').on('click', '.select_properties_from_prototype', function(){
214
213
  $("#busy_indicator").show();
215
214
  var clicked_link = $(this);
216
- $.ajax({ dataType: 'script', url: clicked_link.attr("href"), type: 'get',
215
+ $.ajax({ dataType: 'script', url: clicked_link.prop("href"), type: 'get',
217
216
  success: function(data){
218
217
  clicked_link.parent("td").parent("tr").hide();
219
218
  $("#busy_indicator").hide();
@@ -242,7 +241,7 @@ $(document).ready(function(){
242
241
  positions = {};
243
242
  $.each($('table.sortable tbody tr'), function(position, obj){
244
243
  reg = /spree_(\w+_?)+_(\d+)/;
245
- parts = reg.exec($(obj).attr('id'));
244
+ parts = reg.exec($(obj).prop('id'));
246
245
  if (parts) {
247
246
  positions['positions['+parts[2]+']'] = position;
248
247
  }
@@ -1,9 +1,9 @@
1
1
  $(function() {
2
2
  var calculator_select = $('select#calc_type')
3
- var original_calc_type = calculator_select.attr('value');
3
+ var original_calc_type = calculator_select.prop('value');
4
4
  $('.calculator-settings-warning').hide();
5
5
  calculator_select.change(function() {
6
- if (calculator_select.attr('value') == original_calc_type) {
6
+ if (calculator_select.prop('value') == original_calc_type) {
7
7
  $('div.calculator-settings').show();
8
8
  $('.calculator-settings-warning').hide();
9
9
  $('.calculator-settings').find('input,textarea').prop("disabled", false);
@@ -1,8 +1,8 @@
1
1
  $(function() {
2
- var original_gtwy_type = $('#gtwy-type').attr('value');
2
+ var original_gtwy_type = $('#gtwy-type').prop('value');
3
3
  $('div#gateway-settings-warning').hide();
4
4
  $('#gtwy-type').change(function() {
5
- if ($('#gtwy-type').attr('value') == original_gtwy_type) {
5
+ if ($('#gtwy-type').prop('value') == original_gtwy_type) {
6
6
  $('div.gateway-settings').show();
7
7
  $('div#gateway-settings-warning').hide();
8
8
  } else {
@@ -0,0 +1,9 @@
1
+ //= require handlebars
2
+ Handlebars.registerHelper("t", function(key) {
3
+ if (Spree.translations[key]) {
4
+ return Spree.translations[key]
5
+ } else {
6
+ console.error("No translation found for " + key + ". Does it exist within spree/admin/shared/_translations.html.erb?")
7
+ }
8
+ });
9
+
@@ -0,0 +1,15 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
5
+ <style type="text/css">
6
+ html { height: 100% }
7
+ body { height: 100%; margin: 0; padding: 0 }
8
+ #map-canvas { height: 100% }
9
+ </style>
10
+
11
+ </head>
12
+ <body>
13
+ <div id="map-canvas"/>
14
+ </body>
15
+ </html>
@@ -8,9 +8,9 @@ $(function () {
8
8
  'use strict';
9
9
 
10
10
  $('a[id*=nested]').on('click', function () {
11
- var template = $(this).attr('href').replace(/.*#/, '');
11
+ var template = $(this).prop('href').replace(/.*#/, '');
12
12
  var html = replace_ids(eval(template));
13
- $('#ul-' + $(this).attr('id')).append(html);
13
+ $('#ul-' + $(this).prop('id')).append(html);
14
14
  update_remove_links();
15
15
  });
16
16
  update_remove_links();
@@ -6,10 +6,7 @@ $(document).ready(function () {
6
6
  placeholder: Spree.translations.option_type_placeholder,
7
7
  multiple: true,
8
8
  initSelection: function (element, callback) {
9
- var url = Spree.url(Spree.routes.option_type_search, {
10
- ids: element.val()
11
- });
12
- return $.getJSON(url, null, function (data) {
9
+ return $.getJSON(Spree.routes.option_type_search + '?ids=' + (element.val()), null, function (data) {
13
10
  return callback(data);
14
11
  });
15
12
  },
@@ -5,7 +5,7 @@ $(document).ready(function () {
5
5
 
6
6
  $(input).on('change', function () {
7
7
 
8
- var id = '#' + $(this).attr('id').replace('_quantity', '_id');
8
+ var id = '#' + $(this).prop('id').replace('_quantity', '_id');
9
9
 
10
10
  $.post('/admin/orders/' + $('input#order_number').val() + '/line_items/' + $(id).val(), {
11
11
  _method: 'put',
@@ -126,7 +126,7 @@ jQuery ($) ->
126
126
  $new_input: (width) ->
127
127
  amount = @constructor.normalize_amount(@payment.display_amount())
128
128
  $('<input />')
129
- .attr(id: 'amount', value: amount)
129
+ .prop(id: 'amount', value: amount)
130
130
  .width(width)
131
131
  .one
132
132
  blur: =>
@@ -144,5 +144,5 @@ jQuery ($) ->
144
144
  # Attach ShowPaymentView to each pending payment in the table
145
145
  $('.admin tr[data-hook=payments_row]').each ->
146
146
  $el = $(@)
147
- payment = new Payment($el.attr('id').match(/\d+$/))
147
+ payment = new Payment($el.prop('id').match(/\d+$/))
148
148
  payment.if_pending -> new ShowPaymentView($el, payment)
@@ -9,7 +9,7 @@ $(document).ready(function(){
9
9
  $('#cvv_link').click(function(event){
10
10
  window_name = 'cvv_info';
11
11
  window_options = 'left=20,top=20,width=500,height=500,toolbar=0,resizable=0,scrollbars=1';
12
- window.open($(this).attr('href'), window_name, window_options);
12
+ window.open($(this).prop('href'), window_name, window_options);
13
13
  event.preventDefault();
14
14
  });
15
15
 
@@ -24,7 +24,7 @@ var initProductActions = function () {
24
24
  if ($(this).val() === originalType) {
25
25
  $warning.hide();
26
26
  $settings.show();
27
- $settings.find('input').removeAttr('disabled');
27
+ $settings.find('input').removeProp('disabled');
28
28
  } else {
29
29
  $warning.show();
30
30
  $settings.hide();
@@ -87,11 +87,4 @@ $(document).ready(function () {
87
87
 
88
88
  initProductActions();
89
89
 
90
- // toggle fields for specific events
91
- $('#promotion_event_name').on('change', function () {
92
- $('#promotion_code_field').toggle($('#promotion_event_name').val() === 'spree.checkout.coupon_code_added');
93
- $('#promotion_path_field').toggle($('#promotion_event_name').val() === 'spree.content.visited');
94
- });
95
- $('#promotion_event_name').change();
96
-
97
90
  });
@@ -129,6 +129,7 @@ $(document).ready(function () {
129
129
 
130
130
  });
131
131
 
132
+
132
133
  adjustShipmentItems = function(shipment_number, variant_id, quantity){
133
134
  var shipment = _.findWhere(shipments, {number: shipment_number + ''});
134
135
  var inventory_units = _.where(shipment.inventory_units, {variant_id: variant_id});
@@ -16,5 +16,5 @@
16
16
  //= require equalize
17
17
  //= require responsive-tables
18
18
  //= require spree
19
- //= require admin/spree-select2
19
+ //= require spree/backend/spree-select2
20
20
  //= require_tree .
@@ -2,8 +2,8 @@ $(document).ready(function () {
2
2
  'use strict';
3
3
 
4
4
  $('#country').on('change', function () {
5
- var new_state_link_href = $('#new_state_link a').attr('href');
6
- var selected_country_id = $('#country option:selected').attr('value');
5
+ var new_state_link_href = $('#new_state_link a').prop('href');
6
+ var selected_country_id = $('#country option:selected').prop('value');
7
7
  var new_link = new_state_link_href.replace(/countries\/(\d+)/,
8
8
  'countries/' + selected_country_id);
9
9
  $('#new_state_link a').attr('href', new_link);
@@ -105,7 +105,7 @@ $ ->
105
105
  for variant in variants
106
106
  $('#transfer_variant').append($('<option></option>')
107
107
  .text(variant.name)
108
- .attr('value', variant.id)
108
+ .prop('value', variant.id)
109
109
  .data('variant', variant))
110
110
 
111
111
  $('#transfer_variant').select2()
@@ -9,12 +9,12 @@ handle_move = (e, data) ->
9
9
  new_parent = data.rslt.np
10
10
 
11
11
  url = Spree.url(base_url).clone()
12
- url.setPath url.path() + '/' + node.attr("id")
12
+ url.setPath url.path() + '/' + node.prop("id")
13
13
  $.ajax
14
14
  type: "POST",
15
15
  dataType: "json",
16
16
  url: url.toString(),
17
- data: ({_method: "put", "taxon[parent_id]": new_parent.attr("id"), "taxon[child_index]": position }),
17
+ data: ({_method: "put", "taxon[parent_id]": new_parent.prop("id"), "taxon[child_index]": position }),
18
18
  error: handle_ajax_error
19
19
 
20
20
  true
@@ -30,10 +30,10 @@ handle_create = (e, data) ->
30
30
  type: "POST",
31
31
  dataType: "json",
32
32
  url: base_url.toString(),
33
- data: ({"taxon[name]": name, "taxon[parent_id]": new_parent.attr("id"), "taxon[child_index]": position }),
33
+ data: ({"taxon[name]": name, "taxon[parent_id]": new_parent.prop("id"), "taxon[child_index]": position }),
34
34
  error: handle_ajax_error,
35
35
  success: (data,result) ->
36
- node.attr('id', data.id)
36
+ node.prop('id', data.id)
37
37
 
38
38
  handle_rename = (e, data) ->
39
39
  last_rollback = data.rlbk
@@ -41,7 +41,7 @@ handle_rename = (e, data) ->
41
41
  name = data.rslt.new_name
42
42
 
43
43
  url = Spree.url(base_url).clone()
44
- url.setPath(url.path() + '/' + node.attr("id"))
44
+ url.setPath(url.path() + '/' + node.prop("id"))
45
45
 
46
46
  $.ajax
47
47
  type: "POST",
@@ -54,7 +54,7 @@ handle_delete = (e, data) ->
54
54
  last_rollback = data.rlbk
55
55
  node = data.rslt.obj
56
56
  delete_url = base_url.clone()
57
- delete_url.setPath delete_url.path() + '/' + node.attr("id")
57
+ delete_url.setPath delete_url.path() + '/' + node.prop("id")
58
58
  jConfirm Spree.translations.are_you_sure_delete, Spree.translations.confirm_delete, (r) ->
59
59
  if r
60
60
  $.ajax
@@ -74,7 +74,7 @@ root.setup_taxonomy_tree = (taxonomy_id) ->
74
74
  root.base_url = Spree.url(Spree.routes.taxonomy_taxons_path)
75
75
 
76
76
  $.ajax
77
- url: Spree.url(base_url.path().replace("/taxons", "/jstree")).toString(),
77
+ url: base_url.path().replace("/taxons", "/jstree"),
78
78
  success: (taxonomy) ->
79
79
  last_rollback = null
80
80
 
@@ -83,7 +83,7 @@ root.setup_taxonomy_tree = (taxonomy_id) ->
83
83
  data: taxonomy,
84
84
  ajax:
85
85
  url: (e) ->
86
- Spree.url(base_url.path() + '/' + e.prop('id') + '/jstree').toString()
86
+ base_url.path() + '/' + e.prop('id') + '/jstree'
87
87
  themes:
88
88
  theme: "apple",
89
89
  url: Spree.url(Spree.routes.jstree_theme_path)
@@ -98,11 +98,11 @@ root.setup_taxonomy_tree = (taxonomy_id) ->
98
98
  new_parent = m.np
99
99
 
100
100
  # no parent or cant drag and drop
101
- if !new_parent || node.attr("rel") == "root"
101
+ if !new_parent || node.prop("rel") == "root"
102
102
  return false
103
103
 
104
104
  # can't drop before root
105
- if new_parent.attr("id") == "taxonomy_tree" && position == 0
105
+ if new_parent.prop("id") == "taxonomy_tree" && position == 0
106
106
  return false
107
107
 
108
108
  true
@@ -0,0 +1,51 @@
1
+ $(document).ready ->
2
+ window.productTemplate = Handlebars.compile($('#product_template').text());
3
+ $('#taxon_products').sortable();
4
+ $('#taxon_products').on "sortstop", (event, ui) ->
5
+ $.ajax
6
+ url: Spree.routes.classifications_api,
7
+ method: 'PUT',
8
+ data:
9
+ product_id: ui.item.data('product-id'),
10
+ taxon_id: $('#taxon_id').val(),
11
+ position: ui.item.index()
12
+
13
+ if $('#taxon_id').length > 0
14
+ $('#taxon_id').select2
15
+ dropdownCssClass: "taxon_select_box",
16
+ placeholder: Spree.translations.find_a_taxon,
17
+ ajax:
18
+ url: Spree.routes.taxons_search,
19
+ datatype: 'json',
20
+ data: (term, page) ->
21
+ per_page: 50,
22
+ page: page,
23
+ q:
24
+ name_cont: term
25
+ results: (data, page) ->
26
+ more = page < data.pages;
27
+ results: data['taxons'],
28
+ more: more
29
+ formatResult: (taxon) ->
30
+ taxon.pretty_name;
31
+ formatSelection: (taxon) ->
32
+ taxon.pretty_name;
33
+
34
+ $('#taxon_id').on "change", (e) ->
35
+ el = $('#taxon_products')
36
+ $.ajax
37
+ url: Spree.routes.taxon_products_api,
38
+ data:
39
+ id: e.val
40
+ success: (data) ->
41
+ el.empty();
42
+ if data.products.length == 0
43
+ $('#sorting_explanation').hide()
44
+ $('#taxon_products').html("<h4>" + Spree.translations.no_results + "</h4>")
45
+ else
46
+ for product in data.products
47
+ if product.master.images[0] != undefined && product.master.images[0].small_url != undefined
48
+ product.image = product.master.images[0].small_url
49
+ el.append(productTemplate({ product: product }))
50
+ $('#sorting_explanation').show()
51
+