Sha256: 74848a6defb7e7b1208a2b92b29728b293d49a7ec7d408163e5189ac2d726a66

Contents?: true

Size: 2 KB

Versions: 28

Compression:

Stored size: 2 KB

Contents

// 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 variant_id = $(this).val();

        var variant = _.find(window.variants, function(variant){
            return variant.id == variant_id
        })
        $('#stock_details').html(variantLineItemTemplate({variant: variant}));
        $('#stock_details').show();

        $('button.add_variant').click(addVariant);

        // Add some tips
        $('.with-tip').powerTip({
            smartPlacement: true,
            fadeInTime: 50,
            fadeOutTime: 50,
            intentPollInterval: 300
        });

    });
});

addVariant = function() {
    $('#stock_details').hide();

    var variant_id = $('input.variant_autocomplete').val();
    var total_quantity = 0;
    var stock_location_quantities = {};

    if ($(".stock-levels.untracked-inventory").length > 0) {
        total_quantity = $("input#variant_quantity").val();
    }
    else {
        var quantities = $("input.quantity[data-variant-id='" + variant_id + "']");

        quantities.each(function() {
            total_quantity += Number($(this).val());
            stock_location_quantities[$(this).attr('data-stock-location-id')] = $(this).val();
        });
    }

    adjustLineItems(order_number, variant_id, total_quantity, stock_location_quantities);
    return 1
}

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

    Spree.ajax({
        type: "POST",
        url: Spree.url(url),
        data: {
          line_item: {
            variant_id: variant_id,
            quantity: quantity,
            stock_location_quantities: stock_location_quantities
          },
        }
    }).done(function( msg ) {
        window.Spree.advanceOrder();
        window.location.reload();
    });

}

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
solidus_backend-1.2.3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.4 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.0.7 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.0.6 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.2.2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.2.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.0.5 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.2.0 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.2.0.rc2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.0.4 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.2.0.rc1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.2.0.beta1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.0.3 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.0 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.0.pre2 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.0.pre1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb
solidus_backend-1.1.0.beta1 app/assets/javascripts/spree/backend/line_items_on_order_edit.js.erb