Sha256: aebacd36f7cdbef6eb065b9f6d850c6ca52fe563041dc267cb7d0e88aef97b73

Contents?: true

Size: 1.34 KB

Versions: 72

Compression:

Stored size: 1.34 KB

Contents

Spree.Views.Order.CustomerSelect = Backbone.View.extend({
  initialize: function() {
    this.render();
  },

  events: {
    "select2-selecting": "onSelect"
  },

  onSelect: function(e) {
    var customer = e.choice;
    this.trigger("select", customer)
  },

  render: function() {
    var customerTemplate = HandlebarsTemplates['orders/customer_details/autocomplete'];

    var formatCustomerResult = function(customer) {
      return customerTemplate({
        customer: customer,
        bill_address: customer.bill_address,
        ship_address: customer.ship_address
      })
    }

    this.$el.select2({
      placeholder: Spree.translations.choose_a_customer,
      ajax: {
        url: Spree.pathFor('api/users'),
        params: { "headers": {  'Authorization': 'Bearer ' + Spree.api_key } },
        datatype: 'json',
        data: function(term, page) {
          return {
            q: {
              m: 'or',
              email_start: term,
              name_start: term
            }
          }
        },
        results: function(data, page) {
          return {
            results: data.users,
            more: data.current_page < data.pages
          }
        }
      },
      formatResult: formatCustomerResult,
      formatSelection: function (customer) {
        return Select2.util.escapeMarkup(customer.email);
      }
    })
  }
});

Version data entries

72 entries across 72 versions & 1 rubygems

Version Path
solidus_backend-4.5.1 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.5.0 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.3.6 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.2.5 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.1.6 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.4.2 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.4.1 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.4.0 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.3.4 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.2.4 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.1.5 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.3.3 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.3.2 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.1.4 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.3.1 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.3.0 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.2.3 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.1.3 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-4.0.4 app/assets/javascripts/spree/backend/views/order/customer_select.js
solidus_backend-3.4.6 app/assets/javascripts/spree/backend/views/order/customer_select.js