Sha256: 6eeeb1a1ae6add0505ec025097776f5366eadf680a63debeefbdd45192d2672c

Contents?: true

Size: 1.17 KB

Versions: 3

Compression:

Stored size: 1.17 KB

Contents

<%#encoding: UTF-8%>
// variant autocompletion

$(document).ready(function() {
  if ($('#variant_autocomplete_template').length > 0) {
    window.variantTemplate = Handlebars.compile($('#variant_autocomplete_template').text());
  }
})

formatVariantResult = function(variant) {
  if (variant["images"][0] != undefined && variant["images"][0].image != undefined) {
    variant.image = variant.images[0].image.mini_url
  }
  return variantTemplate({ variant: variant })
}

$.fn.variantAutocomplete = function() {
  if (Spree.routes) {
    this.parent().children(".options_placeholder").attr('id', this.parent().data('index'))
    this.select2({
      placeholder: "Select a variant",
      minimumInputLength: 3,
      ajax: {
        url: Spree.routes.variants_search,
        datatype: 'json',
        data: function(term, page) {
          return { q: term }
        },
        results: function (data, page) {
          return { results: data }
        }
      },
      formatResult: formatVariantResult,
      formatSelection: function (variant) {
        $(this.element).parent().children('.options_placeholder').html(variant.options_text)
        return variant.name;
      }
    })
  }
}

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
spree_core-1.3.5 app/assets/javascripts/admin/variant_autocomplete.js.erb
spree_core-1.3.4 app/assets/javascripts/admin/variant_autocomplete.js.erb
spree_core-1.3.3 app/assets/javascripts/admin/variant_autocomplete.js.erb