lang = translate.getLocale();

function edit_carrello_riga(dom, modulo, controller, controller_id) {

    dom_elem = $(dom).data('target');
    operazione = $(dom).data('operazione');

    try {
        step = $(dom).data('step');
        // guardare qui guido (parsefloat?)
        step = ('' == step || 0 == step) ? 1 : parseInt(step);
    } catch (e) {
        step = 1;
    }

    if ('plus' == operazione) {
        add_to_cart(modulo, controller, controller_id, step);
    } else {
        remove_to_cart(modulo, controller, controller_id, step)
    }
}

function add_to_cart(modulo, controller, controller_id, qta) {

    controller_id = parseInt(controller_id);
    qta = parseFloat(qta);

    // aggiungo al carrello
    return $.ajax({
        type: 'POST',
        url: "/" + lang + "/carrello_manager/add",
        data: {
            modulo: modulo,
            controller: controller,
            controller_id: controller_id,
            qta: qta,
        },
        dataType: 'json',
        success: function (data) {
            if ('ok' == data.esito) {
                refresh_cart();
                $('#add_to_cart_ok').show();
                //window.scrollTo(0,0);
            } else {
                alert(data.message);
            }
        }
    });
}

function remove_to_cart(modulo, controller, controller_id, qta) {

    controller_id = parseInt(controller_id);
    qta = parseFloat(qta);

    // aggiungo al carrello
    return $.ajax({
        type: 'POST',
        url: "/" + lang + "/carrello_manager/remove",
        data: {
            modulo: modulo,
            controller: controller,
            controller_id: controller_id,
            qta: qta,
        },
        dataType: 'json',
        success: function (data) {
            if ('ok' == data.esito) {
                refresh_cart();
            } else {
                alert(data.message);
            }
        }
    });
}

function refresh_cart() {

    return $.ajax({
        type: 'POST',
        url: "/" + lang + "/carrello_manager/getHtml",
        data: {
            page: page,
            deliveryChoice: $('input[name="checkout_delivery_choice"]:checked').val(),
        },
        dataType: 'json',
        success: function (data) {
            if ('ok' == data.esito) {
                if ('checkout' == page) {
                    $("#checkout-tabella-block").empty();
                    $("#checkout-tabella-block").html(data.checkout_tabella);
                    $("#checkout-colonna-riepilogo-block").empty();
                    $("#checkout-colonna-riepilogo-block").html(data.checkout_colonna_riepilogo);

                    if (0 == parseInt(data.checkout_numero_articoli)) {
                        $('#go-to-step2').hide();
                        $('#btnContinuaAcquisti').show();
                    } else {
                        $('#go-to-step2').show();
                        $('#btnContinuaAcquisti').hide();
                    }
                }

                $('#basket-tabella-block').empty();
                $('#basket-tabella-block').html(data.basket_tabella);
                $('#basket_numero_articoli').html(data.numero_articoli);

                $.HSCore.components.HSScrollBar.destroy($('.js-scrollbar'));
                $.HSCore.components.HSScrollBar.init($('.js-scrollbar'));
            }
        }
    });
}