Sha256: 5dd4cb282d02f1dd3fdf577d933f41a6bc1d5e4344a7ca05dd486159a8ce1ed3

Contents?: true

Size: 1.17 KB

Versions: 57

Compression:

Stored size: 1.17 KB

Contents

$.fn.optionValueAutocomplete = function (options) {
  'use strict'

  // Default options
  options = options || {}
  var multiple = typeof (options.multiple) !== 'undefined' ? options.multiple : true
  var productSelect = options.productSelect

  this.select2({
    minimumInputLength: 3,
    multiple: multiple,
    initSelection: function (element, callback) {
      $.get(Spree.routes.option_values_api, {
        ids: element.val().split(','),
        token: Spree.api_key
      }, function (data) {
        callback(multiple ? data : data[0])
      })
    },
    ajax: {
      url: Spree.routes.option_values_api,
      datatype: 'json',
      data: function (term) {
        var productId = typeof (productSelect) !== 'undefined' ? $(productSelect).select2('val') : null
        return {
          q: {
            name_cont: term,
            variants_product_id_eq: productId
          },
          token: Spree.api_key
        }
      },
      results: function (data) {
        return { results: data }
      }
    },
    formatResult: function (optionValue) {
      return optionValue.name
    },
    formatSelection: function (optionValue) {
      return optionValue.name
    }
  })
}

Version data entries

57 entries across 57 versions & 1 rubygems

Version Path
spree_backend-4.0.9 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.1.15 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.1.14 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.0.8 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-3.7.14.1 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.1.13.1 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.0.7.1 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.0.7 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-3.7.14 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.1.13 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.0.6 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.2.0.rc2 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-3.7.13 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.0.5 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.1.12 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-3.7.12 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.2.0.rc1 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.0.4 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-3.7.11 app/assets/javascripts/spree/backend/option_value_picker.js
spree_backend-4.1.11 app/assets/javascripts/spree/backend/option_value_picker.js