Sha256: 0521b9e47cb58fb2dfb98763689b210425b9e539c4debb3208580a59aba976d3

Contents?: true

Size: 1.27 KB

Versions: 21

Compression:

Stored size: 1.27 KB

Contents

# variant autocompletion

variantTemplate = HandlebarsTemplates["variants/autocomplete"]

formatVariantResult = (variant) ->
  variant.image = variant.images[0].mini_url  if variant["images"][0] isnt `undefined` and variant["images"][0].mini_url isnt `undefined`
  variantTemplate variant: variant

$.fn.variantAutocomplete = (searchOptions = {}) ->
  @select2
    placeholder: Spree.translations.variant_placeholder
    minimumInputLength: 3
    initSelection: (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: (term, page) =>
        searchData =
          q:
            product_name_or_sku_cont: term
          token: Spree.api_key
        _.extend(searchData, searchOptions)

      results: (data, page) ->
        window.variants = data["variants"]
        results: data["variants"]

    formatResult: formatVariantResult
    formatSelection: (variant, container, escapeMarkup) ->
      if !!variant.options_text
        Select2.util.escapeMarkup("#{variant.name} (#{variant.options_text}")
      else
        Select2.util.escapeMarkup(variant.name)

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
solidus_backend-2.1.1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.0.3 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.4.2 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.3.2 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.0.2 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.4.1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.1.0 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.1.0.rc1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.0.1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.1.0.beta1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.0.0 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.4.0 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.0.0.rc1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.4.0.rc1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-2.0.0.beta1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.4.0.beta1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.3.1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.3.0 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.3.0.rc2 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee
solidus_backend-1.3.0.rc1 app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee