UMI.CMS example add item to cart

Простой пример добавления товар в корзину

HTML

<a class="actionAdd" href="#" data-id="2">Добавить в корзину</a>

CSS

#overlay {
    opacity: 0.4;
    position: absolute;
    top: 0;
    left: 0;
    background-color: black;
    width: 100%;
    z-index: 5000;
}

JavaScript

var site = {};

site.overlayOn = function () {
    var docHeight = jQuery(document).height();
    jQuery("body").append("<div id='overlay'></div>");
    jQuery("#overlay").height(docHeight);
};

site.overlayOff = function () {
    jQuery("#overlay").remove();
};

/**
 * Добавление товар в корзину
 * @param {itemId} идентификатора товара
 */
site.addItem = function (itemId) {
    var url = '/echo/jsonp/?delay=' + itemId; // FIXME: заменить на var url = '/udata/emarket/basket/put/element/" + itemId + ".json"'
    site.overlayOn();
    site.request(url, {}, function (response) {
        site.overlayOff();
    });
};

site.request = function (url, data, callback) {
    console.log({ 'data': data }); // для отладки
    jQuery.ajax({
        url: url,
        type: 'POST',
        dataType: 'json',
        data: data,
        success: function (response) {
            console.log({ 'response': response }); // для отладки
            if (callback) callback(response);
        }
    });
};


site.init = function () {
    // кнопка добавить в корзину
    jQuery('.actionAdd').click(function (event) {
        event.preventDefault();
        var data = jQuery(this).data();
        site.addItem(data.id);
    });
};


jQuery(document).ready(function () {
    site.init();
});