Sha256: 8bef74b7d92cd741e620801919f508618cffc2546d8338dade4572b1cf466e7e

Contents?: true

Size: 1.57 KB

Versions: 19

Compression:

Stored size: 1.57 KB

Contents

(function() {
  var variantTemplate = HandlebarsTemplates["variants/autocomplete"];

  var formatVariantResult = function(variant) {
    return variantTemplate({
      variant: variant
    });
  };

  $.fn.variantAutocomplete = function(searchOptions) {
    if (searchOptions == null) {
      searchOptions = {};
    }
    this.select2({
      placeholder: Spree.translations.variant_placeholder,
      minimumInputLength: 3,
      initSelection: function(element, callback) {
        Spree.ajax({
          url: Spree.routes.variants_api + "/" + element.val(),
          success: callback
        });
      },
      ajax: {
        url: Spree.routes.variants_api,
        datatype: "json",
        quietMillis: 500,
        params: {
          "headers": {
            "X-Spree-Token": Spree.api_key
          }
        },
        data: function(term, page) {
          var searchData = {
            q: {
              product_name_or_sku_cont: term
            },
            token: Spree.api_key
          };
          return _.extend(searchData, searchOptions);
        },

        results: function(data, page) {
          window.variants = data["variants"];
          return {
            results: data["variants"]
          };
        }
      },

      formatResult: formatVariantResult,
      formatSelection: function(variant, container, escapeMarkup) {
        if (variant.options_text) {
          return Select2.util.escapeMarkup(variant.name + " (" + variant.options_text + ")");
        } else {
          return Select2.util.escapeMarkup(variant.name);
        }
      }
    });
  };
})();

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
solidus_backend-2.6.6 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.7.4 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.7.3 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.5 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.5.2 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.7.2 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.4 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.5.1 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.3 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.7.1 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.2 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.7.0 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.1 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.0 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.6.0.rc1 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.5.0 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.5.0.rc1 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.5.0.beta2 app/assets/javascripts/spree/backend/variant_autocomplete.js
solidus_backend-2.5.0.beta1 app/assets/javascripts/spree/backend/variant_autocomplete.js