Sha256: 14d9b838248f622c2844fcff9dd65a53d817d12239c10bfb96bd1e50cbd834aa

Contents?: true

Size: 883 Bytes

Versions: 6

Compression:

Stored size: 883 Bytes

Contents

$.fn.productAutocomplete = function() {
  this.select2({
    minimumInputLength: 1,
    multiple: true,
    initSelection: function(element, callback) {
      $.get(Spree.routes.product_search, { ids: element.val().split(',') }, function(data) { 
        callback(data['products'])
      })
    },
    ajax: {
      url: Spree.routes.product_search,
      datatype: 'json',
      data: function(term, page) {
        return { 
          q: {
            name_cont: term,
            sku_cont: term,
          },
          m: "OR"
        }
      },
      results: function(data, page) {
        return { results: data['products'] }
      }
    },
    formatResult: function(product) {
      return product.name;
    },
    formatSelection: function(product) {
      return product.name;
    }
  });
}

$(document).ready(function () {
  $('.product_picker').productAutocomplete();
})

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
spree_backend-2.0.4 app/assets/javascripts/admin/product_picker.js
spree_backend-2.0.3 app/assets/javascripts/admin/product_picker.js
spree_backend-2.0.2 app/assets/javascripts/admin/product_picker.js
spree_backend-2.0.1 app/assets/javascripts/admin/product_picker.js
spree_backend-2.0.0 app/assets/javascripts/admin/product_picker.js
spree_backend-2.0.0.rc1 app/assets/javascripts/admin/product_picker.js