Sha256: 612f4e01e706d9cc78c5aba18c1879e1cc6474ac1456886a59581a0422e02bea

Contents?: true

Size: 1.47 KB

Versions: 19

Compression:

Stored size: 1.47 KB

Contents

/* global variantLineItemTemplate, order_number */
// This file contains the code for interacting with line items in the manual cart
$(document).ready(function () {
  'use strict'

  // handle variant selection, show stock level.
  $('#add_line_item_variant_id').change(function () {
    var variantId = $(this).val()

    var variant = _.find(window.variants, function (variant) {
      // eslint-disable-next-line eqeqeq
      return variant.id == variantId
    })
    $('#stock_details').html(variantLineItemTemplate({ variant: variant }))
    $('#stock_details').show()
    $('button.add_variant').click(addVariant)
  })
})

function addVariant () {
  $('#stock_details').hide()
  var variantId = $('select.variant_autocomplete').val()
  var quantity = $('input#variant_quantity').val()

  adjustLineItems(order_number, variantId, quantity)
  return 1
}

adjustLineItems = function(order_number, variant_id, quantity){
    var url = Spree.routes.orders_api + '/' + order_number + '/line_items'

    $.ajax({
      type: 'POST',
      url: Spree.url(url),
      data: {
        line_item: {
          variant_id: variant_id,
          quantity: quantity
        },
        token: Spree.api_key
      }
    }).done(function () {
        window.Spree.advanceOrder()
        window.location.reload()
    }).fail(function (msg) {
      if (typeof msg.responseJSON.message != 'undefined') {
        alert(msg.responseJSON.message)
      } else {
        alert(msg.responseJSON.exception)
      }
    })
}

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
spree_backend-4.2.7 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.6 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.0 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.0.rc3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.0.rc2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.3.0.rc1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.5 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.4 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.3.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0.rc5 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0.rc4 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0.rc3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js