function aumentar_cantidad_cesta (referencia, proveedor, linea) {
var cantidad = parseFloat($("#cantidad-" + linea).val());
uds_envase = parseFloat($("#uds-envase-" + linea).val());
if (uds_envase == 0) {
uds_envase = 1;
}
var nueva_cantidad = cantidad + uds_envase;
$("#cantidad-" + linea).val(nueva_cantidad);
recalcular_cantidad_producto(referencia, proveedor, linea);
}
function disminuir_cantidad_cesta (referencia, proveedor, linea) {
var cantidad = parseFloat($("#cantidad-" + linea).val());
uds_envase = parseFloat($("#uds-envase-" + linea).val());
if (uds_envase == 0) {
uds_envase = 1;
}
var nueva_cantidad;
if (cantidad > uds_envase) {
nueva_cantidad = cantidad - uds_envase;
}
else {
nueva_cantidad = uds_envase;
}
$("#cantidad-" + linea).val(nueva_cantidad);
recalcular_cantidad_producto(referencia, proveedor, linea);
}
function cantidad_uds_envase_cesta (referencia, proveedor, linea) {
var cantidad = $("#cantidad-" + linea).val();
var nueva_cantidad;
uds_envase = parseFloat($("#uds-envase-" + linea).val());
if (uds_envase == 0) {
uds_envase = 1;
}
if (cantidad > uds_envase) {
nueva_cantidad = cantidad / uds_envase;
nueva_cantidad = Math.ceil(nueva_cantidad);
nueva_cantidad = nueva_cantidad * uds_envase;
} else {
nueva_cantidad = uds_envase;
}
$("#cantidad-" + linea).val(nueva_cantidad);
recalcular_cantidad_producto(referencia, proveedor, linea);
}
function recalcular_cantidad_producto (referencia, proveedor, linea) {
var cantidad = $("#cantidad-" + linea).val();
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1, id_referencia: referencia, old_id_linea: linea, id_ref_proveedor: proveedor, cantidad: cantidad, ces_conectado: 0, ces_contado: 0, estado: 2, tabla: 3},
success: function (response){
if (response == 0) {
location.reload();
} else if (response == -1) {
$("#modal-sesion-caducada" + response).modal("show");
$("#modal-sesion-caducada" + response).on('hide.bs.modal', function (e) {
window.location.href = "login.jsp?inicio_aplicacion=4&origen=5";
});
} else if (response == -2) {
$("#modal-sesion-caducada" + response).modal("show");
$("#modal-sesion-caducada" + response).on('hide.bs.modal', function (e) {
location.reload();
});
}
},
error: function (response){
console.log("error");
}
});
}
// ================== Eliminar lineas =================
function eliminar_linea (linea) {
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1, id_linea: linea, estado: 3, tabla: 3},
success: function (response){
if (response == 0 ) {
location.reload();
};
},
error: function (response){
console.log("error");
}
});
}
function vaciar_cesta () {
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1, estado: 4, tabla: 3},
success: function (response){
location.reload();
},
error: function (response){
console.log("error");
}
});
}
// =================== Añadir regalo a la cesta ==============
function anadir_regalo (referencia) {
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1, estado: 5, tabla: 3, id_referencia: referencia, ces_conectado: 0, ces_contado: 0},
success: function (response){
switch (response){
case 0:
location.reload();
break;
case -1:
$("#modal-sesion-caducada" + response).modal("show");
$("#modal-sesion-caducada" + response).on('hide.bs.modal', function (e) {
window.location.href = "login.jsp?inicio_aplicacion=4&origen=5";
});
break;
case -2:
$("#modal-sesion-caducada" + response).modal("show");
$("#modal-sesion-caducada" + response).on('hide.bs.modal', function (e) {
location.reload();
});
break;
default:
$(".validation-msj:not(#anadir-regalo-" + response + ")").hide();
$("#anadir-regalo-" + response).show();
break;
}
},
error: function (response){
console.log("error");
console.log(response);
}
});
}
// ==================== Calcular gastos de envío =================
function calcular_envio_cesta() {
var pais = $("#cod-pais").val();
var provincia = $("#dropdown-provincia").val();
var data = { json: 1,
cod_pais: pais,
provincia: provincia,
estado: 8,
tabla: 3
};
consultar_gastos_envio(data);
}
// ==================== Dirección de envío ==================
function cargar_direccion_cesta () {
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1, id_usu_dir_envio: $("#direccion").val(), estado: 14, tabla: 1},
success: function (response){
$("#calle, #cp-ciudad, #pais").empty();
$("#calle").append(response["via"] + " " + response["direccion1"]);
$("#cp-ciudad").append(response["cod_postal"] + " " + response["poblacion"] + " " + response["provincia"]);
$("#pais").append(response["pais"]);
recalcular_precios_cesta(1);
},
error: function (response){
console.log("error");
console.log(response);
}
});
}
// ====================== Recalcular precios en funcion de las opciones seleccionadas ======================
function recalcular_precios_cesta (inicial) {
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1,
for_envio: $('input[name=1]:checked').val(),
for_pago: $('input[name=2]:checked').val(),
id_usu_dir_envio: $("#direccion").val(),
inicial: inicial,
estado: 7,
tabla: 3
},
success: function (response){
if (response["resultado"] == "-1") {
online_offline();
} else {
var envio = parseInt(replace( response["for_envio"], ",", "." ));
var pago = parseInt(replace( response["for_pago"], ",", "." ));
var portes = parseInt(replace( response["imp_portes"], ",", "." ));
// Envio
for (var i = 0; i < 5; i++) {
if ( response["for_envio_" + i] == "0" ) {
$("#for_envio_" + i).hide();
} else if ( response["for_envio_" + i] == "1" ) {
$("#for_envio_" + i).show();
}
}
// Pago
for (var i = 1; i < 7; i++) {
if ( response["for_pago_" + i] == "0" ) {
$("#for_pago_" + i).hide();
} else if ( response["for_pago_" + i] == "1" ) {
$("#for_pago_" + i).show();
}
}
// Activar radios
$("input[name=1]:checked").prop("checked", false);
$("#for_envio_" + envio + " input").prop("checked", true);
$("input[name=2]:checked").prop("checked", false);
$("#for_pago_" + pago + " input").prop("checked", true);
// Importes
$("#imp-ces-neto, #imp-ces-neto-xs").empty().append(response["imp_ces_neto"]);
$("#imp-ces-iva, #imp-ces-iva-xs").empty().append(response["imp_ces_iva"]);
$("#imp-cesta, #imp-cesta-xs").empty().append(response["imp_cesta"]);
if (envio == 4 && portes == 0) {
$("#imp-portes, #imp-portes-xs").empty();
$("#precio-envio, #precio-envio-xs").hide();
} else {
$("#precio-envio, #precio-envio-xs").show();
$("#imp-portes, #imp-portes-xs").empty().append(response["imp_portes"]);
}
$("#imp-gastos, #imp-gastos-xs").empty();
if ( response["imp_gastos"] == "0,00" ) {
$("#precio-gestion, #precio-gestion-xs").hide();
} else {
$("#precio-gestion, #precio-gestion-xs").show();
$("#imp-gastos, #imp-gastos-xs").append(response["imp_gastos"]);
}
$("#imp-total, #imp-total-xs").empty().append(response["imp_total"]);
}
},
error: function (response){
console.log("error");
console.log(response);
}
});
}
// ==================== Actualizar el botón principal dependiendo del tipo de envío seleccionado ==========
function actualizar_boton_cesta (){
if ( ($("#contrareembolso").is(":checked")) || ($("#pagar-tienda").is(":checked")) || ($("#tb").is(":checked")) || ($("#confirmar").is(":checked")) ) {
$("#on-pagar").html(" Enviar pedido");
}else {
$("#on-pagar").html(" Pagar");
}
}
// ===================== Cuando le des al boton de pagar o enviar pedido ======================
function validar_cesta (){
var importe_cesta = parseFloat($("#imp-cesta").text().slice(0,-1).replace(/,/g, '.'));
var maximo_importe_contrareembolso = $("#max-cr").val();
if ($("#pagar-tienda").is(":checked") && !$("#recoger").is(":checked")) {
$("#msj-contrareembolso, #accept-terms-error, #msj-max-cr").hide();
$("#msj-tienda").show();
} else if ( $("#contrareembolso").is(":checked") && $("#recoger").is(":checked") ) {
$("#msj-tienda, #accept-terms-error, #msj-max-cr").hide();
$("#msj-contrareembolso").show();
} else if ( maximo_importe_contrareembolso != 0 && $("#contrareembolso").is(":checked") && importe_cesta > maximo_importe_contrareembolso ) {
$("#msj-contrareembolso, #accept-terms-error, #msj-tienda").hide();
$("#msj-max-cr").show();
} else {
$("#msj-contrareembolso, #msj-tienda, #msj-max-cr").hide();
if ($("#chk-privacidad").is(":checked")) {
$("#accept-terms-error").hide();
if (importe_cesta > 0) {
var texto_anterior = $("button.btn-pagar").html();
$("button.btn-pagar").html("Conectando, espere por favor...").prop('disabled', true);
$.ajax({
dataType: "json",
type: "POST",
url: "ControlB2C",
data: { json: 1, estado: 3, tabla: 2},
success: function (response){
if (response == "0") {
pagar();
} else if (response == "-1") {
window.location.href = "login.jsp?origen=5";
}
},
error: function (response){
console.log("error");
return false;
}
});
} else {
$("#cesta-empty-error").show();
}
} else {
$("#accept-terms-error").show();
$("#chk-privacidad").focus();
}
}
}
function pagar(){
var pago = $('input[name=2]:checked', '#metodo-pago').val();
var envio = $('input[name=1]:checked', '#forma-envio').val();
var url = "ControlTiendaVirtual";
if (pago == 1) {
url = url + "?estado=10";
}
else if (pago == 2 || pago == 3 || pago == 4 || pago == 6) {
url = url + "?estado=8";
}
else if (pago == 5) {
url = url + "?estado=11";
};
url = url + "&id_usu_dir_envio=" + $("#direccion").val();
url = url + "&for_envio=" + envio;
url = url + "&for_pago=" + pago;
url = url + "&portes_especiales=" + $("#portes-especiales").val();
window.location.href = url;
}