Sha256: 3b0e208fb611f063a6693a84c78e251e4d8f6b8a118d17024c04fa1359da9a24

Contents?: true

Size: 1.47 KB

Versions: 38

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 = $('input.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

38 entries across 38 versions & 1 rubygems

Version Path
spree_backend-4.0.9 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.15 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.14 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.0.8 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.13.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.0.7.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.0.7 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.13 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.0.6 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0.rc2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.0.5 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.12 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0.rc1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.0.4 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.11 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.10 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.2.0.beta app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.9 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.8 app/assets/javascripts/spree/backend/line_items_on_order_edit.js
spree_backend-4.1.7 app/assets/javascripts/spree/backend/line_items_on_order_edit.js