var ta_emp = 1;
var isMobile = false;
console.log(isMobile);
var formatNumber = {
separador: ".", // separador para los miles
sepDecimal: ',', // separador para los decimales
formatear:function (num,dec){
num +='';
var splitStr = num.split('.');
var splitLeft = splitStr[0];
var splitRight = splitStr.length > 1 ? this.sepDecimal + splitStr[1] : '';
var regx = /(\d+)(\d{3})/;
while (regx.test(splitLeft)) {
splitLeft = splitLeft.replace(regx, '$1' + this.separador + '$2');
}
return this.simbol + splitLeft +splitRight;
},
new:function(num, simbol){
this.simbol = simbol ||'';
return this.formatear(num,2);
}
}
function moneda(valor){
return formatNumber.new(valor)+" €";
}
var path = "/wp-content/themes/stockholm-child/takeaway/ta_ajaxV2_empresas.php";
var path_neto = "/wp-content/themes/stockholm-child/takeaway/";
var accept=0;
var cliente_filled=0;
var menu_filled=0;
var pago_filled=0;
var calendar_filled=0;
//Funciones REDSYS
function merchantValidationEjemplo(){
//Insertar validaciones…
alert("Validado!");
return true;
}
/*
Listener de recepción de ID de operación
window.addEventListener("message", function receiveMessage(event) {
storeIdOper(event,"token", "errorCode", "merchantValidationEjemplo");
});
*/
//Fin funciones REDSYS
jQuery(function ($) {
function js_msg_errOLD(msg){
$('#pop-msg').show();
$('#pop-msg').html('
'+msg+'
');
setTimeout(function(){
$('#pop-msg').hide();
},6000);
}
function js_msg_err(msg){
alert(msg);
}
function carga_tpv(){
return true;
}
function quitaTPV(){
$('#radio3').prop("checked",false);
$('#ajax-tpv').html("");
}
function carga_monedero(){
//Alta del pedido en temp
if(accept+cliente_filled+menu_filled+calendar_filled==4){
//Saber si tiene promo importante para cuando se resuelva la notificación para poder quemar el código para ese mail.
var promo = $('#promo').val();
var total = $('#nuTotalPedido').val();
//$('#ajax-tpv').html('
');
//Handlers de botones
$('#pay-monedero').click(function(){
pay_monedero();
});
} else {
$('#ajax-tpv').html("");
}
}
function pay_now(){
var jqxr = $.post(path+"?option=add-cabecera",$('#form-data-pers').serialize())
.done(function(){
var jqxr = $.getJSON(path+"?option=graba-tempV4&tipo=TPVV")
.done(function(data){
$('#IDPedido').val(data.idp);
$('#TPV').submit();
});
});
}
function pay_monedero(){
var jqxr = $.post(path+"?option=add-cabecera",$('#form-data-pers').serialize())
.done(function(){
var jqxr = $.getJSON(path+"?option=graba-tempV4&tipo=EMPRESES")
.done(function(data){
if(data.err==1){
alert(data.err_msg);
return false;
} else {
$('#IDPedido').val(data.idp);
$(location).attr("href",data.qs);
$('#valida-comanda-div').html('
Validant comanda. Esperi uns instants...
');
return true;
}
});
});
}
function recalc_comanda(){
return true;
}
function button_trash() {
$('.item-trash').unbind("click");
$('.item-trash').click(function(){
if(confirm("Està segur de esborra aquest menu?")){
//Borramos
var i = $(this).attr("lin");
//Quitamos la clase calendar_selected del item seleccionado por clase_calendar
var cc = "."+$(this).attr("d");
$(cc).removeClass("calendar_off calendar_unique");
$(cc).addClass("calendar_on");
//Ponemos también el disabled green como imagen en ese apartado
var img = $(cc).children("img");
$(img).attr("src","https://restaurantlarambla.com/wp-content/themes/stockholm-child/takeaway//img/calendar.png");
var jqxr = $.getJSON(path+"?option=delete-item-detalle&lin="+i)
.done(function(data){
$('.menuses').html(data.pinta);
$('#nuTotalPedidoBase').val(data.suma_pedido);
$('#nuTotalPedido').val(data.suma_pedido+data.suma_costes.nuCosteTrans+data.suma_costes.nuCostePrep);
//Añadimos costes de transporte y preparación para desglose
$('#nuCosteTrans').val(data.suma_costes.nuCosteTrans);
$('#nuCostePrep').val(data.suma_costes.nuCostePrep);
button_trash();
$('#billing-nuPreu').text($('#total_pedido').text());
menu_filled = (data.items==0) ? 0 : 1;
recalc_comanda();
isDelivery($('#txtTipoServicio').val());
//Si no hay menus, quitamos el botón de validar comanda.
if(menu_filled==0){
$('#valida-comanda').hide();
}
});
return true;
} else {
return false;
}
});
}
function validate_menu(){
//Valida que se haya puesto un plato de cada categoria y se haya puesto un nombre
var p1 = $('.p1_radio').is(":checked");
var p2 = $('.p2_radio').is(":checked");
var pp = $('.pp_radio').is(":checked");
var nom = $('#ta_nombre').val();
var f = $('#dtFechaEntrega').val();
//Devolvemos mensajes
var caderr="";var err=0;
if((!p1)&&(!p2)) {
//Solo en el caso de que no se haya seleccionado ningun plato principal
err=1;
caderr="Tria un primer o un segoni postre. Ah i no oblidis posar per qui és el menú.\r\n";
}
if(!pp){
err=1;
caderr+="Ha d'inclure un postre al menú. \r\n";
}
if(nom==""){
err=1;
caderr+="¿Per a quí és el menú?\r\nIndica per quí és el menú\r\n";
}
if(f=="0"){
err=1;
caderr+="Falta que indiquis quin dia vols que et fem aquest menu\r\n";
}
if(err==1){
caderr = "Ooops! "+caderr;
} else {
caderr="0";
}
return caderr;
}
function validate_contact(){
var n = $('#txtNom').val();
var c = $('#txtCognoms').val();
var t = $('#txtTelefon').val();
var m = $('#txtEMail').val();
console.log(n!="" && c!="" && t!="" && m!="");
return (n!="" && c!="" && t!="" && m!="");
}
//Funciones indepes asociadas a mi cuenta
function CheckPasswordOLD(inputtxt) {
var passw = /^[A-Za-z0-9$@$!%*#?&]\w{7,14}/;
if(inputtxt.match(passw)) {
return true;
} else {
return false;
}
}
function CheckPassword(inputtxt) {
//var passw = /^[A-Za-z0-9$@$!%*#?&]\w{7,14}/;
if(inputtxt.length >= 6) {
return true;
} else {
return false;
}
}
function mayusc(c){
return c.toUpperCase();
}
function validatePassword(password) {
// Do not show anything when the length of password is zero.
if (password.length === 0) {
document.getElementById("msg").innerHTML = "";
return;
}
// Create an array and push all possible values that you want in password
var matchedCase = new Array();
matchedCase.push("[$@$!%*#?&]"); // Special Charector
matchedCase.push("[A-Z]"); // Uppercase Alpabates
matchedCase.push("[0-9]"); // Numbers
matchedCase.push("[a-z]"); // Lowercase Alphabates
// Check the conditions
var ctr = 0;
for (var i = 0; i < matchedCase.length; i++) {
if (new RegExp(matchedCase[i]).test(password)) {
ctr++;
}
}
// Display it
var color = "";
var strength = "";
switch (ctr) {
case 0:
case 1:
case 2:
strength = "Very Weak";
color = "red";
break;
case 3:
strength = "Medium";
color = "orange";
break;
case 4:
strength = "Strong";
color = "green";
break;
}
document.getElementById("msg").innerHTML = strength;
document.getElementById("msg").style.color = color;
}
function validate_profile(){
var n = $('#txtNombre_profile').val();
var c = $('#txtCognoms_profile').val();
var t = $('#txtTelefon_profile').val();
var m = $('#txtEMail_profile').val();
console.log(n!="" && c!="" && t!="" && m!="");
return (n!="" && c!="" && t!="" && m!="");
}
function validate_customer(){
var n = $('#txtNombre_customer').val();
var c = $('#txtCognoms_customer').val();
var t = $('#txtTelefono1_customer').val();
var m = $('#txtEMail_customer').val();
var d = $('#txtDP_customer').val();
var a = $('#lgAcepta_customer').is(":checked");
console.log(t);
console.log(n!="" && c!="" && t!="" && m!="" && a && d!="");
return (n!="" && c!="" && t!="" && m!="" && a && d!="");
}
function get_cost_delivery(){
return 0;
}
function funct_user_dirs(){
var jqxr = $.getJSON(path+"?option=direcciones-cliente")
.done(function(data){
var user_dirs = 1;
return user_dirs;
});
}
function isDelivery(t){
$('#txtTipoServicio').val("D");
}
function combo_promo(){
return true;
}
//Funciones indepes asociadas a CARTA
/* Puedes usar $ con seguridad para hacer referencia a jQuery */
$(document).ready(function(){
//Directo para take away
//User debe seleccionar inicialmente la forma de pago.
$("input[name='payment']").prop("checked",false);
//Cargamos los menus aun no registrado el usuario
//Ponemos en la capa el resultado del envío (detalle de pedido y despues clonamos en la parte del checkout
//Borramos los datos de detalle pedido cuando se entra por primera vez (carga de la página)
$.ajax(path+"?option=initialize")
.done(function(){
$.getJSON(path+"?option=carga-menuses")
.done(function(data){
$('.menuses').html(data.pinta);
$('#nuTotalPedido').val(data.suma_pedido);
$('#nuTotalPedidoBase').val(data.suma_pedido);
//Añadimos costes de transporte y preparación para desglose
$('#nuCosteTrans').val(data.suma_costes.nuCosteTrans);
$('#nuCostePrep').val(data.suma_costes.nuCostePrep);
button_trash();
$('div#cloned_detall > div.btn-erase').remove();
$('#billing-nuPreu').text($('#total_pedido').text());
//$('#precioTotal_text').html("");
//$('#precioTotal').val("");
recalc_comanda();
menu_filled = data.menuses;
//si hay menu cargado también hay fecha cargada en lo que se refiere a TA diario.
if(menu_filled==1) calendar_filled=1;
});
});
//Carga directa de datos en cabecera de pedido si el cliente ya está logonado (evita la perdida en el refresco de los datos)
if(idc!=0) {
var jqxr = $.post(path+"?option=add-cabecera",$('#form-data-pers').serialize())
.done(function(){
cliente_filled=1;
//Fijamos a 0 diferentes campos hidden
$('#nuTotalPedidoBase').val(0);
$('#nuTotalPedido').val(0);
$('#promo').val(0);
$('#nuDescuentoPromo').val(0);
//$('#IDDireccion').val(0);
$('#lgAbonoFianza').val(0);
$('#billing-nuPreu').text("");
$('#txtTipoServicio').val("D");
})
}
$('#send').click(function(){
var jqxr = $.ajax(path+"?option=enviar")
.done(function(data){
$('#test').html("
"+data+"
");
});
});
$('#ta_extras_b,#ta_extras_p').change(function(){
var isMedio = $('#is_medio').val();
var pb=0;
if(isMedio==0) {
pb = parseFloat($('#precio_base').val());
} else {
pb = parseFloat($('#precio_base_medio').val());
}
var be = $('#ta_extras_b').val();
var pa = $('#ta_extras_p').val();
var jqxr = $.getJSON(path+"?option=get-extra&be="+be+"&pa="+pa+"&pb="+pb)
.done(function(data){
$('#precioTotal_text').html(data.precio_total_text);
$('#precioTotal').val(data.precio_total);
});
});
$('#add-menu').click(function(){
var msg = validate_menu();
var ok = (msg=="0") ? true : false;
var isMedio = $('#is_medio').val();
if(ok){
$('#add-menu').hide();
acepta = 0;
menu_filled=1; //al menos se ha llenado un menu
//Si hay errores en los menus que no se agregan, no se han de realizar las partes comunes
var errcheck = 0;
if(isMedio==1){
//si es medio es medio y no existe ningun tipo de confirmación al respecto por lo que se agrega automáticamente
var jqxr = $.post(path+"?option=add-menu",$('#ta_form').serialize(),function(){},'json')
.done(function(data){
if(data.dupli==false){
//Ponemos en la capa el resultado del envío (detalle de pedido y despues clonamos en la parte del checkout
$('.menuses').html(data.pinta);
$('#nuTotalPedido').val(data.suma_pedido+data.suma_costes.nuCosteTrans+data.suma_costes.nuCostePrep);
$('#nuTotalPedidoBase').val(data.suma_pedido);
//Añadimos costes de transporte y preparación para desglose
$('#nuCosteTrans').val(data.suma_costes.nuCosteTrans);
$('#nuCostePrep').val(data.suma_costes.nuCostePrep);
button_trash();
$('div#cloned_detall > div.btn-erase').remove();
$('#billing-nuPreu').text($('#total_pedido').text());
$('#precioTotal_text').html("");
$('#precioTotal').val();
recalc_comanda();
}
});
} else { //es entero
//Obligatoriamente ha de ser entero el menu es decir dos primeros o primero y segundo y siempre postre.
//Una vez validate_menu() hemos de saber si se han hecho dos checks los necesarios para completar el menu.
var checks = countChecks("p1");
checks += countChecks("p2");
if(checks < 2){ //Ops! Error
alert("S'han d'escollir obligatoriament dos plats principals.");
errcheck=1;
} else {
var jqxr = $.post(path+"?option=add-menu",$('#ta_form').serialize(),function(){},'json')
.done(function(data){
if(data.dupli==false){
//Ponemos en la capa el resultado del envío (detalle de pedido y despues clonamos en la parte del checkout
$('.menuses').html(data.pinta);
$('#nuTotalPedido').val(data.suma_pedido+data.suma_costes.nuCosteTrans+data.suma_costes.nuCostePrep);
$('#nuTotalPedidoBase').val(data.suma_pedido);
$('#nuCosteTrans').val(data.suma_costes.nuCosteTrans);
$('#nuCostePrep').val(data.suma_costes.nuCostePrep);
button_trash();
$('div#cloned_detall > div.btn-erase').remove();
$('#billing-nuPreu').text($('#total_pedido').text());
$('#precioTotal_text').html("");
$('#precioTotal').val();
recalc_comanda();
}
});
} // de if(checks < 2)
} // isMedio
//Parte común
//reiniciamos el form
if(errcheck==0){
$('#ta_form')[0].reset();
$('#checkout').prop("disabled",false);
//Limpia marcos selected del anterior menu
$('img').removeClass("plat_selected")
$('.add-more-review').show();
//Visores de dias
if(isGuest==0){
$('.calendar').removeClass("calendar_selected");
$('.calendar').removeClass("calendar_not_selected");
$('.calendar_unique').removeClass("calendar_on");
$('.calendar_unique').addClass("calendar_off");
//Ponemos también el disabled green como imagen en ese apartado
var img = $('.calendar_unique').children('img');
$(img).attr("src","https://restaurantlarambla.com/wp-content/themes/stockholm-child/takeaway//img/calendar_disabled_green.png");
} else {
$('.calendar').removeClass("calendar_selected");
$('.calendar_unique').addClass("calendar_not_selected");
$('.calendar').removeClass("calendar_unique");
}
$('#dtFechaEntrega').val(0);
//Mostramos el botón de validar el pedido.
$('#valida-comanda').show();
}
} else {
alert(msg);
menu_filled=0;
}
})
$('#add-more').click(function(){
$('html, body').animate({
scrollTop: $('#inicio').offset().top
}, 500);
$('.add-more-review').hide();
});
$('#checkout').click(function(){
if(isMobile==0){
$('html, body').animate({
scrollTop: $('#inicio').offset().top
}, 500);
} else {
/*
$('html, body').animate({
scrollBottom: $("#mobile").offset().bottom
}, 500);
*/
$('body').scrollTo('#mobile', 1000);
}
//$('.add-more-review').hide();
});
$('#cancel-buy').click(function(){
//$('#ciberpack').hide();
});
$('#clientTA').click(function(){
//Validar si se han introducido todos los datos
//No se pueden entrar los datos del cliente hasta que no se haya hecho una selección de menu
if(menu_filled==1){
if(validate_contact()){
$('#mensaje_user').hide();
cliente_filled=1
var jqxr = $.post(path+"?option=add-cabecera",$('#form-data-pers').serialize())
.done(function(data){
//Datos del cliente introducidos, es uno de los pasos para que pueda acceder al pago.
$('#msg-validate').removeClass("alert-danger");
$('#msg-validate').addClass("alert-success");
$('#mensaje_user').show();
$('#msg-validate').html("Sessió iniciada. ");
}); //.done(function(data) outer
} else {
//Mensaje de error
$('#msg-validate').removeClass("alert-success");
$('#msg-validate').addClass("alert-danger");
$('#mensaje_user').show();
$('#msg-validate').html("Dades incomplertes. Ha d'omplir tots els camps que es demanen.");
cliente_filled=0;
}
//PARA ASEGURARNOS DE LA CARGA CORRECTA DEL FORM DE FORMA DE PAGO
//DESACTIVAMOS LOS RADIOS DE FORMA DE PAGO Y LA APROBACIÓN DE CONDICIONES PARA QUE LO VUELVA A HACER
$("input[name='payment']").prop("checked",false);
$('#acepta-condiciones').prop("checked",false);
carga_tpv();
} else { //no se ha comprado un menú. Se avisa que no se pueden guardar los datos de cabecera hasta que eso no suceda
$('#msg-validate').removeClass("alert-success");
$('#msg-validate').addClass("alert-danger");
$('#msg-validate').html("No pot guardar les dades de una comanda fins que no esculli el seu menú take away. ");
$('#mensaje_user').show();
cliente_filled=0;
}
});
$('#cancel-buy').click(function(){
//$('#ciberpack').hide();
});
$('#acepta_tpv').click(function(){
if($(this).is(":checked")) {
//Todo el proceso de carga
accept=1
} else {
//desaparece el contenido del form
$('#ajax-tpv').html("");
accept=0;
}
carga_tpv();
})
function acepta_condicionesOLD(){
//Cuando se aceptan las condiciones se activa el pago.
//Hay dos tipos de pago, por lo que se ha de saber qué se hace si por TPVV o por MONEDERO
var tipo = $("input[name='payment']:checked").val();
accept = ($('#acepta-condiciones').is(":checked")) ? 1 : 0;
var color = (accept==1) ? "black" : "red";
var border = (accept==1) ? "2px solid #404040" : "2px solid #F00";
$('#acepta-condiciones-text').css("color",color);
$('.c-checkbox label > .box').css("border",border);
console.log("accept="+accept);
//Ojo solo si se ha seleccionado un tipo de pago o es TPVV o es MONEDERO no puede ser NULL
if(tipo=="TPVV"){
carga_tpv();
} else {
if(tipo=='MONEDERO'){//Monedero
//Limpiamos el form del contenido TPV
$('#ajax-tpv').html("");
//Tenemos que hacer que el botón vaya a notificación directamente con un paso de parametro que indique que es monedero, reste la cantidad del monedero y
//Guarde en DS_response, el valor que indiquemos de alguna manera (numero aleatorio) para que no vuelva a repetirse la operativa GHOST que a veces sucede.
//Mostramos el botón de pagar
carga_monedero();
} else {
//No haces nada no cargas el PAGAR
return false;
}
}
}
function acepta_condiciones(){
return true;
}
$("input[name='payment']").click(function(){
$('#txtFormaPago').val($(this).val());
acepta_condiciones();
})
$('#acepta-condiciones').click(function(){
acepta_condiciones();
})
function countChecks(clase){
//Devuelve los checks de un tipo de plato p1, p2 o pp
var c = "."+clase+"_radio";
var n=0;
$(c).each(function(){
if($(this).is(":checked")){
n++;
}
});
return n;
}
function if_L(){
//Añadir que si el tipo de menu es L puede ser medio
var tipoMenu = $('#tipoMenu').val();
if(tipoMenu=='L'){
checks = countChecks("p1");
checks+=countChecks("p2");
console.log("tipomenu:"+tipoMenu+" checks:"+checks);
if(checks==1){
$('#is_medio').val(1);
} else {
$('#is_medio').val(0);
}
}
}
$('.p1').click(function(){
//quitar todos los selecteds de ese plato
var plato = $(this).attr("dataid");
var clase_radio = $(this).attr("nplato");
var checks = countChecks("p1");
checks+=countChecks("p2");
if($('#radio_'+plato).is(":checked")){
$('#radio_'+plato).prop("checked",false);
$(this).removeClass("plat_selected");
} else {
//Si hay 2 checks no actua, hasta que no se desactive uno
if(checks < maxchecks){
$('#radio_'+plato).prop("checked",true);
$(this).addClass("plat_selected");
} else {
if(maxchecks==1){
js_msg_err("Solament es pot escollir un primer o un segon en modalitat contractada de Mig Menu. ");
} else {
js_msg_err("Solament es pot seleccionar o dos primers o un primer i un segon plat en menú complet. Revisa si us plau la selecció. ");
}
}
}
//Saber si hay algun plato seleccionado para activar el botón de añadir menu #add-menu
if($('.plat_selected').length > 0) {
$('#add-menu').show();
} else {
$('#add-menu').hide();
}
//Comprobar si es medio menu
//si se ha clicado un p1 y un p2 es menu completo
//Mientras es un medio menu
//Si es modo "L" saber si puede ser medio
if_L();
var isHalf = isMedio();
//console.log(isHalf);
//$('#is_medio').val(isHalf);
var msg_type_menu = (isHalf==1) ? "Mig menú" : "Menu sencer";
//console.log(msg_type_menu);
$('#menu-type').text(msg_type_menu);
precio_menu();
});
$('.p1_radio').click(function(){
console.log(".p1_radio");
console.log($(this).is(":checked"));
$('#add-menu').show();
//quitar todos los selecteds de ese plato
var plato = $(this).attr("plato");
var idplato = $(this).attr("dataid");
var checks = countChecks("p1");
checks+=countChecks("p2");
console.log(checks);
if($(this).is(":checked")){
//Si hay 2 checks no actua, hasta que no se desactive uno
if(checks <= maxchecks){
$('#p_'+idplato).addClass("plat_selected");
$('#radio_'+idplato).prop("checked",true);
} else {
$(this).prop("checked",false);
if(maxchecks==1){
js_msg_err("Solament es pot escollir un primer o un segon en modalitat contractada de Mig Menu. ");
} else {
js_msg_err("Solament es pot seleccionar o dos primers o un primer i un segon plat en menú complet. Revisa si us plau la selecció. ");
}
}
} else {
$('#p_'+idplato).removeClass("plat_selected");
$('#radio_'+idplato).prop("checked",false);
}
//Si es modo "L" saber si puede ser medio
if_L();
var isHalf = isMedio();
//$('#is_medio').val(isHalf);
console.log(isHalf);
var msg_type_menu = (isHalf) ? "Mig menú" : "Menu sencer";
$('#menu-type').text(msg_type_menu);
precio_menu();
//Los extras se reinician
//$('#ta_extras_b').val(1);
//$('#ta_extras_p').val(9);
});
$('.p2').click(function(){
//quitar todos los selecteds de ese plato
var plato = $(this).attr("dataid");
var clase_radio = $(this).attr("nplato");
var checks = countChecks("p1");
if(checks!=maxchecks){
$('.'+clase_radio).removeClass("plat_selected");
if($('#radio_'+plato).is(":checked")){
$('.'+clase_radio+'_radio').prop("checked",false);
$('#radio_'+plato).prop("checked",false);
} else {
//Todos los checks a uncheck
$('.'+clase_radio+'_radio').prop("checked",false);
$('#radio_'+plato).prop("checked",true);
$(this).addClass("plat_selected");
}
//Saber si hay algun plato seleccionado para activar el botón de añadir menu #add-menu
if($('.plat_selected').length > 0) {
$('#add-menu').show();
} else {
$('#add-menu').hide();
}
//alert(plato);
//Comprobar si es medio menu
//si se ha clicado un p1 y un p2 es menu completo
//Mientras es un medio menu
//Si es modo "L" saber si puede ser medio
if_L();
var isHalf = isMedio();
//console.log(isHalf);
//$('#is_medio').val(isHalf);
var msg_type_menu = (isHalf==1) ? "Mig menú" : "Menu sencer";
//console.log(msg_type_menu);
$('#menu-type').text(msg_type_menu);
precio_menu();
//Los extras se reinician
//$('#ta_extras_b').val(1);
//$('#ta_extras_p').val(9);
} else {
if(maxchecks==1){
js_msg_err("Solament es pot escollir un primer o un segon en modalitat contractada de Mig Menu. ");
} else {
js_msg_err("Solament es pot seleccionar o dos primers o un primer i un segon plat en menú complet. Revisa si us plau la selecció. ");
}
}
});
$('.p2_radio').click(function(){
$('#add-menu').show();
//quitar todos los selecteds de ese plato
var plato = $(this).attr("plato");
var idplato = $(this).attr("dataid");
var checks = countChecks("p1");
if(checks!=maxchecks && plato=="p2"){
$('.'+plato).removeClass("plat_selected")
//$('#p_'+idplato).addClass("plat_selected");
console.log('.'+plato+'_radio');
if($(this).is(":checked")){
$('.'+plato+'_radio').prop("checked",false);
$('#p_'+idplato).addClass("plat_selected");
$('#radio_'+idplato).prop("checked",true);
} else {
$('#p_'+idplato).removeClass("plat_selected");
$('#radio_'+idplato).prop("checked",false);
}
//Si es modo "L" saber si puede ser medio
if_L();
var isHalf = isMedio();
var msg_type_menu = (isHalf) ? "Mig menú" : "Menu sencer";
$('#menu-type').text(msg_type_menu);
precio_menu();
//Los extras se reinician
//$('#ta_extras_b').val(1);
//$('#ta_extras_p').val(9);
} else {
if(maxchecks==1){
js_msg_err("Solament es pot escollir un primer o un segon en modalitat contractada de Mig Menu. ");
} else {
js_msg_err("Solament es pot seleccionar o dos primers o un primer i un segon plat en menú complet. Revisa si us plau la selecció. ");
}
}
});
$('.pp').click(function(){
//quitar todos los selecteds de ese plato
var plato = $(this).attr("dataid");
var clase_radio = $(this).attr("nplato");
$('.'+clase_radio).removeClass("plat_selected");
if($('#radio_'+plato).is(":checked")){
$('.'+clase_radio+'_radio').prop("checked",false);
$('#radio_'+plato).prop("checked",false);
} else {
//Todos los checks a uncheck
$('.'+clase_radio+'_radio').prop("checked",false);
$('#radio_'+plato).prop("checked",true);
$(this).addClass("plat_selected");
}
//Saber si hay algun plato seleccionado para activar el botón de añadir menu #add-menu
if($('.plat_selected').length > 0) {
$('#add-menu').show();
} else {
$('#add-menu').hide();
}
//alert(plato);
//Comprobar si es medio menu
//si se ha clicado un p1 y un p2 es menu completo
//Mientras es un medio menu
var isHalf = isMedio();
var msg_type_menu = (isHalf==1) ? "Mig menú" : "Menu sencer";
$('#menu-type').text(msg_type_menu);
precio_menu();
});
$('.pp_radio').click(function(){
$('#add-menu').show();
//quitar todos los selecteds de ese plato
var plato = $(this).attr("plato");
var idplato = $(this).attr("dataid");
$('.'+plato).removeClass("plat_selected")
//$('#p_'+idplato).addClass("plat_selected");
console.log('.'+plato+'_radio');
if($(this).is(":checked")){
$('.'+plato+'_radio').prop("checked",false);
$('#p_'+idplato).addClass("plat_selected");
$('#radio_'+idplato).prop("checked",true);
} else {
$('#p_'+idplato).removeClass("plat_selected");
$('#radio_'+idplato).prop("checked",false);
}
var isHalf = isMedio();
var msg_type_menu = (isHalf) ? "Mig menú" : "Menu sencer";
$('#menu-type').text(msg_type_menu);
precio_menu();
});
function isMedio(){
//Ojo ahora son checks y el comportamiento es diferente
var p = countChecks("p1");
p = p + countChecks("p2");
//Ponemos el precio del menú ya en pantalla
var uno = $('#precio_base').val();
var medio = $('#precio_base_medio').val();
var precio_total = (p==2) ? uno : medio;
$('#precioTotal_text').html(moneda(precio_total));
$('#precioTotal').val(precio_total);
//var isHalf = (p==2) ? 0 : 1;
var isHalf = $('#is_medio').val();
var msg_type_menu = (isHalf) ? "Mig menú" : "Menu sencer";
$('#menu-type').text(msg_type_menu);
return isHalf;
}
$('.reset_plato').click(function(){
var plato = $(this).attr("plato");
$("."+plato+"_radio").prop("checked",false);
$('.'+plato).removeClass("plat_selected");
precio_menu();
})
function precio_menu(){
//Rehacer las opciones por ser checks
var c = "";
$('.platos_total').each(function(){
if($(this).is(":checked")){
c = c + $(this).val()+",";
}
});
c = c.substr(0,c.length - 1);
console.log(c);
var ar = c.split(",");
//Esto se ha de recalcular para los menus o medios menus
var p1 = ar[0];
var p2 = ar[1];
var isMedio = (p1===undefined || p2===undefined) ? 1 : 0;
console.log(p1+" "+p2+" "+isMedio);
//$('#is_medio').val(isMedio);
var t=0;
var b = $("#IDExtraB").val();
var p = $("#IDExtraP").val();
var jqxr = $.getJSON(path+"?option=get-current-extras&b="+b+"&p="+p)
.done(function (data){
b = parseFloat(data.b);
p = parseFloat(data.p);
if(isMedio==1){
t = parseFloat($("#precio_base_medio").val());
} else {
t = parseFloat($("#precio_base").val());
}
t = t+p+b;
$('#precioTotal').val(t);
$('#precioTotal_text').html(moneda(t));
})
}
$('.calendar_on').on("click",function(){
var f = $(this).attr("fecha");
//viewers Poner todas en calendar_not_selected excepto el seleccionado.
$('.calendar_on').removeClass("calendar_selected");
$('.calendar_on').addClass("calendar_not_selected");
$(this).removeClass("calendar_not_selected");
$(this).addClass("calendar_selected calendar_unique");
//añadimos al campo clase_calendar el dia que se ha escogido
$('#clase_calendar').val($(this).attr("d"));
//actuación
$('#dtFechaEntrega').val(f);
calendar_filled=1;
acepta_condiciones();
//Mensaje
var msg='';
if((f=='2020-12-24') || (f=='2020-12-31')){
msg='La seva comanda estarà disponible el dia escollit de 12:00 a 17:00';
} else {
msg='La seva comanda estarà disponible el dia escollit de 10:00 a 12:00';
}
$('#msg-delivery-festes').html('
'+msg+'
');
$('#msg-delivery-festes').show();
//El precio del menú ha de cambiar si es domingo Lo sacamos de las variables para la V9
var fe = new Date(f);
var ds = fe.getUTCDay()
var menuTA = 0;
var menuMed_TA = 0;
console.log("Fecha:"+ fe +" Dia semana:"+ds+" Precios:" + menuTA+"/"+menuMed_TA);
//Ponemos el precio base en el campo segun fecha
$('#precio_base').val(menuTA);
$('#precio_base_medio').val(menuMed_TA);
var isMedio = $('#is_medio').val();
if(isMedio==1){
$('#precioTotal_text').html(moneda(menuMed_TA));
$('#precioTotal').val(menuMed_TA);
} else {
$('#precioTotal_text').html(moneda(menuTA));
$('#precioTotal').val(menuTA);
}
});
function load_calendar(){
console.log("load_calendar()");
$.getJSON(path+"?option=load-calendar")
.done(function(data){
//Carga el calendario
$('#container-calendar').html(data.html);
//Carga de elementos variantes, nombre de la empresa, nombre de la subcuenta, precios, extras.
$('#especificos-empresa').text(data.especificos.empresa);
$('#ta_nombre').val(data.ta_user.txtNombre+" "+data.ta_user.txtApellidos);
$('#ta_nombreText').text(data.ta_user.txtNombre+" "+data.ta_user.txtApellidos);
$('#extras-cliente').text(data.extras);
$('#IDMain').val(data.ta_user.IDMain);
$('#IDDireccion').val(data.especificos.IDDireccion);
$('#txtFormaPago').val("EMPRESES");
//Mostrar la hora de entrega de delivery
$('#tmHoraEntrega').val(data.especificos.hrHoraEntrega);
$('#hora-entrega-empresa').text(data.especificos.hrHoraEntrega);
//Campos a cargar extras
var pan = (data.especificos.lgPan==1) ? 9 : 0;
var bebida = (data.especificos.lgBebidas==1) ? 1 : 0;
$('#IDExtraP').val(pan);
$('#IDExtraB').val(bebida);
$('#IDExtraC').val(data.especificos.lgCubiertos);
//maxchecks que se han de seleccionar segun tipo de menu M(1) C(2)
if(data.especificos.txtTipoMenu=='M'){
maxchecks=1;
} else {
maxchecks=2;
}
//Carga este ID con el valor obligado si es medio o completo el menu que se selecciona
var isMedio = (data.especificos.txtTipoMenu=='M') ? 1 : 0;
$('#is_medio').val(isMedio);
//Handlers de calendar_on
$('.calendar_on').on("click",function(){
//console.log(JSON.stringify(data));
var f = $(this).attr("fecha");
//viewers Poner todas en calendar_not_selected excepto el seleccionado.
$('.calendar_on').removeClass("calendar_selected");
$('.calendar_on').addClass("calendar_not_selected");
$(this).removeClass("calendar_not_selected");
$(this).addClass("calendar_selected calendar_unique");
//añadimos al campo clase_calendar el dia que se ha escogido
$('#clase_calendar').val($(this).attr("d"));
//actuación
$('#dtFechaEntrega').val(f);
calendar_filled=1;
acepta_condiciones();
//Mensaje
var msg='';
if((f=='2020-12-24') || (f=='2020-12-31')){
msg='La seva comanda estarà disponible el dia escollit de 12:00 a 17:00';
} else {
msg='La seva comanda estarà disponible el dia escollit de 10:00 a 12:00';
}
$('#msg-delivery-festes').html('
'+msg+'
');
$('#msg-delivery-festes').show();
//El precio del menú ha de cambiar si es domingo Lo sacamos de las variables para la V9
var fe = new Date(f);
var ds = fe.getUTCDay()
var menuTA = data.especificos.nuPrecioCompleto;
var menuMed_TA = data.especificos.nuPrecioMedio;
console.log("Fecha:"+ fe +" Dia semana:"+ds+" Precios:" + menuTA+"/"+menuMed_TA);
//Ponemos el precio base en el campo segun fecha
$('#precio_base').val(menuTA);
$('#precio_base_medio').val(menuMed_TA);
var isMedio = $('#is_medio').val();
if(isMedio==1){
$('#precioTotal_text').html(moneda(menuMed_TA));
$('#precioTotal').val(menuMed_TA);
} else {
$('#precioTotal_text').html(moneda(menuTA));
$('#precioTotal').val(menuTA);
}
});
});
}
// desde take away
$('#btn-login-ta').click(function(){
//Comprobación de credenciales
$.post(path+"?option=login",$('#form-login').serialize(),function(){},"json")
.done(function(data){
if (data.err==0) {
if(data.no_empresa==1){
location.href= "https://restaurantlarambla.com/index.php/take-away/";
} else {
$('#msg-login').html('
'+data.msg+'
');
//Carga en el formulario de contacto los datos devueltos
$('#txtNom').val(data.user.txtNombre);
$('#txtCognoms').val(data.user.txtApellidos);
$('#txtTelefon').val(data.user.txtTelefono1);
$('#txtEMail').val(data.user.txtEMail);
$('#IDCliente').val(data.user.ID);
//Muestra si es Guest user el mensaje de que está en ese modo.
if(data.especificos.lgGuest == "1"){
$('#isGuest').show();
//Cambia el estilo de una capa
$('#select-platos-menu').css("background-color","#FFD");
$('#ciberpack').css("background-color","#FFD");
}
//Tipo de Menu contratado
$('#tipoMenu').val(data.especificos.txtTipoMenu);
//tipoMenu = $('#tipoMenu').val();
//Carga el valor de la promo si tiene
$('#billing-oferta').html(moneda(data.user.nuDtoPromo));
$('#no-log').show();
$('#div-sign-in').hide();
//muestra los platos de menú
$('#select-platos-menu').show();
cliente_filled = 1;
//Es un cliente de empresas, por lo que en el el id="container-calendar" de la página de menu, ha de cargar el calendario disponible
//Acorde con lo que ha pedido el subcliente (esa semana) y la imitación de días que ese subcliente puede pedir menu.
load_calendar();
//Comprueba si tiene direcciones sino elimina el radio de Delivery
if(data.user.dirs==0) {
$('.radio-delivery').hide();
//Muestro mensaje que indica que no puedo hacer delivery pq no tengo direcciones asignadas.
$('#msg-radio').html('
');
}
//Una vez login OK ya añade la cabecera de pedido
var jqxr = $.post(path+"?option=add-cabecera",$('#form-data-pers').serialize())
setTimeout(function(){
$('#msg-login').hide();
$('#login-ta-customer').hide();
$('#data-pers').show();
$('#ta-customer').hide(); //Botón de ya estas logonado.
//Mostrar el monedero si lo tiene
//Vemos si se carga el monedero
if(data.user.isMonedero==1){
$('#monedero-radio').show();
$('#monedero-value').html(moneda(data.user.nuMonedero));
$('#monedero-radio').attr("amount",data.user.nuMonedero);
}
},3000);
}
} else {
$('#msg-login').html("
"+data.msg+"
");
}
});
});
//Parte de mi cuenta
//arranque directo sin funciones
var isGuest = 0;
var isCustomer = 0;
var renew = 0;
if(isGuest==1){
$('#isGuest').show();
$('#select-platos-menu').css("background-color","#FFD");
$('#ciberpack').css("background-color","#FFD");
}
if(isCustomer==1){
$('#msg-login').hide();
$('#tabs').show();
$('#login').hide();
//Reset de password
$('#renew').hide();
//Parte en la página de takeaway
$('#login-ta-customer').hide();
$('#data-pers').show();
$('#ta-customer').hide(); //Botón de ya estas logonado.
//Carga del perfil
$.getJSON(path+"?option=load-customer-profile")
.done(function(data){
$('#form-data-profile input').each(function(){
$('#form-data-profile input').each(function(){
var id = $(this).attr("name");
$('#'+id+"_profile").val(data.user[id]);
});
//(PARCHE 4/5/22) añadimos checked al lgRecordatorioMenu si está activado
if(data.user.lgRecordatorioMenu=="1"){
$('#lgRecordatorioMenu_profile').prop("checked",true);
}
})
//Nombre de bienvenida
if(data.user.IDMain==0){ //Es la empresa
$('#customer-name').text("Administrador de "+ data.user.txtEmpresa);
} else {
$('#customer-name').text(data.user.txtNombre+" "+data.user.txtApellidos);
}
//Parte en la página de takeaway
$('#txtNom').val(data.user.txtNombre);
$('#txtCognoms').val(data.user.txtApellidos);
$('#txtTelefon').val(data.user.txtTelefono1);
$('#txtEMail').val(data.user.txtEMail);
});
} else {
if(renew==1){
$('#renew').show();
$('#login').hide();
} else {
$('#login').show();
$('#msg-login').show();
}
}
//Carga las direcciones del usuario
$('.datepicker').datepicker({
dateFormat: 'dd-mm-yy',
languaje: 'ca'
});
//Carga directa de comprobación de si tiene datos fiscales si es asi se habilita el botón enviar tickets-factura, sino se avisa del caso.
var txtEmpresa = "";
var txtNIF = "";
var txtDireccion = "";
var txtPoblacion = "";
var txtDP = "";
if(txtEmpresa!="" && txtNIF!="" && txtDireccion!="" && txtPoblacion!="" && txtDP!=""){
//OK
$('#btn-send-ticket-factura').show();
$('#msg-ticket-factura').html('');
} else {
//KO
$('#btn-send-ticket-factura').hide();
$('#msg-ticket-factura').html('
No pot demanar factures fins que no hagi emplenat totes les dades fiscals que li demanem en la 3ª pestanya Dades Fiscals (factures)
');
}
$('#btn-login').click(function(){
//Comprobación de credenciales
$.post(path+"?option=login",$('#form-login').serialize(),function(){},"json")
.done(function(data){
if (data.err==0) {
$('#msg-login').html("
"+data.msg+"
");
setTimeout(function(){
location.reload();
},3000);
//acciones - Muestra la capa con las tabs
//Cargamos en los campos correspondientes los datos del cliente.
$('#form-data-profile input').each(function(){
var id = $(this).attr("name");
$('#'+id+"_profile").val(data.user[id]);
});
//Nombre de bienvenida
$('#customer-name').text(data.user.txtNombre+" "+data.user.txtApellidos);
} else {
$('#msg-login').html("
"+data.msg+"
");
}
});
});
$(".toggle-password").click(function() {
$(this).toggleClass("fa-eye fa-eye-slash");
var input = $($(this).attr("toggle"));
if (input.attr("type") == "password") {
input.attr("type", "text");
} else {
input.attr("type", "password");
}
});
$('#lost-password').click(function(){
//envio de mail con la nueva contraseña para ese usuario.
var mail = $('#txtEMailLog').val();
$.getJSON(path+"?option=send-mail-lost-pass&mail="+mail)
.done(function(data){
if (data.err==0) {
$('#msg-login').html("
"+data.msg+"
");
} else {
$('#msg-login').html("
"+data.msg+"
");
}
});
})
$('#btn-change-pass').click(function(){
//Validar que sean strong
var p1 = $('#txtPassChange').val();
var p2 = $('#txtPassChange2').val();
var err=0; //No hay inicialmente error
var passOK = CheckPassword(p1);
if(passOK){
//Son iguales?
if(p1==p2){
err=0;
} else {
err=2;
}
} else {
err=1;
}
switch(err){
case 0:
$.post(path+"?option=change-pass",$('#change-password').serialize())
.done(function(){
$('#msg-err').html("
Contrasenya canviada correctament
");
});
break;
case 1:
$('#msg-err').html("
La contrasenya no és vàlida. S'ha de posar una contrasenya de al menys 6 caracters.
");
break;
case 2:
$('#msg-err').html("
Les contrasenyes no coincideixen
");
break;
}
});
$('#btn-save-profile').click(function(){
var ok = validate_profile();
if(ok){
$.post(path+"?option=save-profile",$('#form-data-profile').serialize(),"json")
.done(function(data){
$('#msg-profile').html("
Perfil actualitzat
");
})
} else {
$('#msg-profile').html("
No s'actualitzat el perfil, ha de posar el seu nom, cognoms, telèfon i mail.
");
}
})
$('#btn-new-customer').click(function(){
//Validar que ha puesto al menos Nombre, Apellidos, Telefono y mail
//Validar si ha puesto un código amigo correcto
var err=0;
var ok = (validate_customer()) ? 1 : 0;
var p1 = $('#txtPass_customer').val();
var p2 = $('#txtPass2_customer').val();
var m = (p1==p2) ? 1 : 0;
//var mail = ($('#txtEMail_customer').val() == $('#txtEMail2_customer').val()) ? 1 : 0;
var okpass = (CheckPassword(p1)) ? 1 : 0;
var msg_err = "";
console.log(ok+m+okpass);
if(ok==1 && m==1 && okpass==1){
//COMPROBAR SI HA PUESTO CODIGO AMIGO Y ES CORRECTO A ALGUN CLIENTE.
var ca = $('#txtCodigoAmigo_customer').val();
var jqxr = $.getJSON(path+"?option=test-ca&ca="+ca)
.done(function(data){
//Evaluar que ha pasado
if(data.error==1){
console.log(status.error);
//No es un código amigo correcto, no se da de alta el usuario y se le avisa
$('#msg-new-customer').html("
");
}
},"json");
}
});
} else {
//Analizar los errores
console.log(ok+" "+m+" "+okpass);
if(ok==0) msg_err += "No s'actualitzat el perfil, ha de posar el seu nom, cognoms, telèfon i mail i ha d'acceptar la política de privacitat. ";
if(m==0) msg_err += "Les contrasenyes no coincideixen ";
if(okpass==0) msg_err += "La contrasenya no és vàlida. S'ha de posar una contrasenya de al menys 6 caracters.";
//if(mail==0) msg_err += "Les adreces de mail no son iguals";
$('#msg-new-customer').html("
"+msg_err+"
");
}
});
$('#new-contact').click(function(){
$('#data-pers').toggle();
});
$('#ta-customer').on('click touchstart',function(){
$('#login-ta-customer').toggle();
});
$('#bt-disconnect').click(function(){
$.ajax(path+"?option=disconnect")
.done(function(){
$(location).attr("href","https://restaurantlarambla.com/index.php/el-meu-compte/");
});
});
$('#renew-password').click(function(){
//Validar que sean strong
var p1 = $('#txtPassMD5-first').val();
var p2 = $('#txtPassMD5-repeat').val();
var err=0; //No hay inicialmente error
var passOK = CheckPassword(p1);
if(passOK){
//Son iguales?
if(p1==p2){
err=0;
} else {
err=2;
}
} else {
err=1;
}
switch(err){
case 0:
var jqxr = $.post(path+"?option=renew-password",$('#form-pass-renew').serialize())
.done(function(data){
$('#msg-login-renew').html("
"+data+"
");
});
break;
case 1:
$('#msg-login-renew').html("
La contrasenya no és vàlida. S'ha de posar una contrasenya de al menys 6 caracters.
");
break;
case 2:
$('#msg-login-renew').html("
Les contrasenyes no coincideixen
");
break;
}
});
//Adreces
//Funciones handlers
function acciones_direcciones(){
$('.radio-favorito').unbind("click");
$('.del-address').unbind("click");
$('.radio-favorito').click(function(){
var id = $(this).val();
var idc = $(this).attr("idc");
$.ajax(path+"?option=set-favorite&id="+id+"&idc="+idc)
});
$('.del-address').click(function(){
if(confirm('Està segur d\'esborrar aquesta adreça. L\'acció no es pot desfer. ')){
//Borra
var id = $(this).attr("dataid");
$.ajax(path+"?option=del-address&id="+id)
.done(function(){
$('#load-addresses').load(path+"?option=load-addresses&idc="+idc, function(){
//Handlers para papelera y borrar alguna dirección, favorito
acciones_direcciones();
return true;
});
});
} else {
return false;
}
});
}
//Menus
$('.btn-pedido').click(function(){
var idp = $(this).attr("pedido");
console.log(idp);
$(".pedido_"+idp).toggle();
//"input[name='payment']"
});
//Carga directa
//Si está en los menus carga directo el calendario
load_calendar();
var idc = 0;
$('#load-addresses').load(path+"?option=load-addresses&idc="+idc, function(){
//Handlers para papelera y borrar alguna dirección, favorito
acciones_direcciones();
})
$('#txtDP_address').change(function(){
var id = $(this).val();
var jqxr = $.ajax(path+"?option=get-pob&id="+id)
.done(function(data){
$('#txtPoblacion').val(data);
});
});
$('#add-address').click(function(){
//Validació dels camps com a mínim la primera linia d'adreça, DP i població.
var d = $('#txtDireccion').val();
var dp = $('#txtDP').val();
var dpsb = $('#txtDP_standby').val();
var psb = $('#txtPoblacion_standby').val();
var p = $('#txtPoblacion').val();
var err = ((d!="") && ((dp!="0")||(dpsb!="")) & ((p!="")||(psb!=""))) ? 0 : 1;
if(err==1){
$('#msg-add-address').html('
Els camps adreça, dp i població son obligatoris, revisi les seves dades.
Adreça introduïda correctament. La teva adreça encara no es pot fer servir pel servei de delivery fins que quedi activada.
');
}
//Carga ajax de las direcciones del cliente.
$('#load-addresses').load(path+"?option=load-addresses&idc="+idc, function(){
//Handlers para papelera y borrar alguna dirección, favorito
acciones_direcciones();
});
});
}
//limpiar todo el formulario de datos
$('#adreces')[0].reset();
});
$('#modi-fiscal').click(function(){
//Validació dels camps com a mínim la primera linia d'adreça, DP i població.
var e = $('#txtEmpresa_fisc').val();
var n = $('#txtNIF_fisc').val();
var d = $('#txtDireccion_fisc').val();
var dp = $('#txtDP_fisc').val();
var p = $('#txtPoblacion_fisc').val();
var err = ((e!="") && (n!="") && (d!="") && (dp!="") & (p!="")) ? 0 : 1;
if(err==1){
$('#msg-fiscal').html('
Els camps adreça, dp i població son obligatoris, revisi les seves dades.
');
$('#btn-send-ticket-factura').show();
$('#msg-ticket-factura').html("");
});
}
});
//Facturación
$('#send-ticket-factura').click(function(){
//Validar la entrada de los tres campos
var t = $('#txtTicket').val();
var i = $('#nuImport').val();
var d = $('#txtFecha').val();
var noerr = (t!="" && i!="" && d!="");
if(noerr){
//Submit de valor
$.post(path+"?option=ticket-factura",$('#ticket-factura').serialize())
.done(function(data){
var msg="";
var cl="";
if(data==0){
cl="alert-danger";
msg="El seu ticket ja ha estat processat anteriorment, no es pot tornar a expedir. Demani la seva factura duplicada contactant per telèfon o per mail";
} else {
cl="alert-success";
msg = "La seva petició està en procés, en breu rebrà la factura a la seva adreça de mail. ";
}
$('#msg-ticket-factura').html('
'+msg+'
');
});
} else {
alert ("Error: s'han d'omlir el tres camps requerits");
}
})
$('.decimal').keypress(function(e){
var key = e.charCode;
var espkey = e.keyCode;
var valor = $(this).val();
//Teclas aceptadas: 48-57 (numeros teclado alfanumerico, 96-105 numes tecl numerico, 188-",", 190--".", 110-"." (numeric pad)
//8 - BS, 46-Del/Supr.
if((key>=48 && key <=57) || (key>=44) && (key<=46) || (espkey==8) || (espkey==46)) {
$(this).val(valor.replace(",","."));
} else {
e.preventDefault();
}
});
function load_facturas(){
$('#comandes').load(path_neto+"ta_load_facturas.php",function(){
$('.download-ticket').unbind("click");
$('.download-factura').unbind("click");
$('.download-ticket').click(function(){
var idp = $(this).attr("idped");
console.log(idp);
//Gestiona desde ajax toda la producción y descarga
$.getJSON(path+"?option=a-ticket&idp="+idp)
.done(function(data){
load_facturas();
//Devuelve el path y link de descarga
//Solo cuando se ha generado el archivo, lo envia al navegador
var url = "https://reservas.restaurantelarambla.es/ta_facturas/larambla/tickets/"+data.fac;
window.open(url, '_blank');
});
});
$('.download-factura').click(function(){
var idp = $(this).attr("idped");
console.log(idp);
//Gestiona desde ajax toda la producción y descarga
$.getJSON(path+"?option=a-factura&idp="+idp)
.done(function(data){
load_facturas();
//Devuelve el path y link de descarga
//Solo cuando se ha generado el archivo, lo envia al navegador
var url = "https://reservas.restaurantelarambla.es/ta_facturas/larambla/facturas/"+data.fac;
window.open(url, '_blank');
});
});
});
}
$('#pest-factures').click(function(){
load_facturas();
});
//Delivery
//Codigos de promoción
$('[data-toggle="tooltip"]').tooltip();
$('.desplegar').on("click",function(){
var capa = $(this).attr("data-toggle");
$('#'+capa).toggle();
});
//Funciones específicas para Sant-Valentí
//Validador de campos del form
function validarEmail(valor) {
if (/^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i.test(valor)){
return true;
} else {
return false;
}
}
//Delivery EMPRESES
//Carga de subclientes
function cargaSubCuentas(){
//Carga las subcuentas de un cliente en modo listado
$('#load-subcuentas').load(path+'?option=load-subcuentas&idc=',
function(){
//Handlers del listado
$('#modify-worker').off("click");
$('#add-worker').off("click");
$('.del-subcuenta').off("click");
$('.edit-subcuenta').off("click");
$('.del-subcuenta').click(function(){
if(confirm("Està segur d'eliminar aquest subclient? \r\nL'acció no es pot desfer")){
//Borra
var id = $(this).attr("dataid");
$.ajax(path+"?option=del-subcuenta&id="+id)
.done(function(){
cargaSubCuentas();
return true;
});
} else {
return false;
}
});
//qodef switcher handler
$('.cb-disable.actiu').click(function() {
var parent = $(this).parents('.switch');
$('.cb-enable', parent).removeClass('selected');
$(this).addClass('selected');
$('.checkbox', parent).attr('checked', false);
//$('.checkboxhidden_yesno', parent).val("0");
//lanzamos lgActivo a 0 para ese ID de trabajador
var idc = $('#IDCliente').val();
$.ajax(path+'?option=set-activo&activo=0&idc='+idc)
});
$('.cb-enable.actiu').click(function() {
var parent = $(this).parents('.switch');
$('.cb-disable', parent).removeClass('selected');
$(this).addClass('selected');
$('.checkbox', parent).attr('checked', true);
//$('.checkboxhidden_yesno', parent).val("1");
//lanzamos lgActivo a 0 para ese ID de trabajador
var idc = $('#IDCliente').val();
$.ajax(path+'?option=set-activo&activo=1&idc='+idc)
});
$('.cb-disable.isguest').click(function() {
var parent = $(this).parents('.switch');
$('.cb-enable', parent).removeClass('selected');
$(this).addClass('selected');
//$('.checkbox', parent).attr('checked', false);
$('#lgGuest').prop("checked",false);
});
$('.cb-enable.isguest').click(function() {
var parent = $(this).parents('.switch');
$('.cb-disable', parent).removeClass('selected');
$(this).addClass('selected');
//$('.checkbox', parent).attr('checked', true);
$('#lgGuest').prop("checked",true);
});
$('.cb-disable.isremember').click(function() {
var parent = $(this).parents('.switch');
$('.cb-enable', parent).removeClass('selected');
$(this).addClass('selected');
//$('.checkbox', parent).attr('checked', false);
$('#lgRecordatorioMenu').prop("checked",false);
});
$('.cb-enable.isremember').click(function() {
var parent = $(this).parents('.switch');
$('.cb-disable', parent).removeClass('selected');
$(this).addClass('selected');
//$('.checkbox', parent).attr('checked', true);
$('#lgRecordatorioMenu').prop("checked",true);
});
$('.edit-subcuenta').click(function(){
//Desplazarse a la zona de edición
$('html, body').animate({
scrollTop: $("#ficha-trabajador").offset().top
}, 500);
var id = $(this).attr("dataid");
$.getJSON(path+"?option=edit-subcuenta&id="+id)
.done(function(data){
//Carga los campos de data en cafa uno de los campos del form
$('.subcuenta').each(function(){
var campo = $(this).attr("id");
console.log(campo+":"+data[campo]);
$('#'+campo).val(data[campo]);
});
//Variante para los días de la semana hábiles para pedir menu
var dias = "0,"+data.txtDias;
for(var i=1;i <= 7;i++){
var campoid = "d"+i;
if(dias.indexOf(i) >= 0){
$('#d'+i).prop("checked",true);
} else {
$('#d'+i).prop("checked",false);
}
}
//Excepcion de lgGuest
if(data.lgGuest=="1"){
$('#lgGuest').prop("checked",true);
$('.cb-enable.isguest').addClass('selected');
$('.cb-disable.isguest').removeClass('selected');
} else {
$('#lgGuest').prop("checked",false);
$('.cb-disable.isguest').addClass('selected');
$('.cb-enable.isguest').removeClass('selected');
}
//Activo o no
if(data.lgActivo=="1"){
$('.cb-enable.actiu').addClass('selected');
$('.cb-disable.actiu').removeClass('selected');
} else {
$('.cb-disable.actiu').addClass('selected');
$('.cb-enable.actiu').removeClass('selected');
}
//Recordatorio menu dia siguiente
//Excepcion de lgRecordatorioMenu
if(data.lgRecordatorioMenu=="1"){
$('#lgRecordatorioMenu').prop("checked",true);
$('.cb-enable.isremember').addClass('selected');
$('.cb-disable.isremember').removeClass('selected');
} else {
$('#lgRecordatorioMenu').prop("checked",false);
$('.cb-disable.isremember').addClass('selected');
$('.cb-enable.isremember').removeClass('selected');
}
});
$('#add-worker').attr("accion","modify");
$('#worker-text-button').text("Gravar dades");
$('#worker-text-icon').removeClass("fa-plus-circle");
$('#worker-text-icon').addClass("fa-pencil-square-o");
});
$('#add-worker').click(function(){
var accion = $(this).attr("accion")
if(accion=='add'){
$.post(path+'?option=add-worker',$('#form-trabajadores').serialize(),
function(data){
//Done devolviendo JSON de estado de la alta.
if(data.err==0){
$('#subcuenta-msg').addClass("alert-success");
$('#subcuenta-msg').removeClass("alert-danger");
} else {
$('#subcuenta-msg').addClass("alert-danger");
$('#subcuenta-msg').removeClass("alert-success");
}
$('#subcuenta-msg').html(data.msg);
$('#form-trabajadores').trigger("reset");
cargaSubCuentas();
},'json');
} else { //es modify
$.post(path+'?option=modify-worker',$('#form-trabajadores').serialize())
.done(function(d){
data = JSON.parse(d);
//Done devolviendo JSON de estado de la modificación.
if(data.err==0){
$('#subcuenta-msg').addClass("alert-success");
$('#subcuenta-msg').removeClass("alert-danger");
} else {
$('#subcuenta-msg').addClass("alert-danger");
$('#subcuenta-msg').removeClass("alert-success");
}
$('#subcuenta-msg').html(data.msg);
console.log("INITIALIZE");
//Inicializamos formulario
$('#form-trabajadores').trigger("reset");
//Cambiamos el aspecto del botón
$('#worker-text-button').text("Afegir empleat");
$('#worker-text-icon').removeClass("fa-pencil-square-o");
$('#worker-text-icon').addClass("fa-plus-circle");
$('#add-worker').attr("accion","add");
cargaSubCuentas();
});
}
})
});
}
btn_edita_menu(); //LLAMADA DIRECTA
function btn_edita_menu(){
$('.btn-edita-menu').off("click");
$('.btn-edita-menu').click(function(){
var menu = $(this).attr("menu");
if ($('.form-menu[menu="'+menu+'"]').is(':visible')) {
$('.form-menu[menu="'+menu+'"]').html("");
$('.form-menu[menu="'+menu+'"]').hide();
} else {
$.getJSON(path+'?option=carga-menu-edit&menu='+menu)
.done(function(data){
//Handlers de submit menu, etc...
$('.form-menu[menu="'+menu+'"]').html(data.tabla);
$('.form-menu[menu="'+menu+'"]').show();
btn_edita_menu();
$('.btn-valida-edicion-menu').click(function(){
var menu = $(this).attr("menu");
//var p1 = $('.IDPlato1').val();
var p1 = $('input[name="IDPlato1"]:checked').val();
var p2 = $('input[name="IDPlato2"]:checked').val();
var pp = $('input[name="IDPlatoP"]:checked').val();
console.log(p1);
var msg = "";
if ((p1==undefined) || (p2==undefined) || (pp==undefined)) {
msg = "
Error, s'han de omplir els tres plats
";
} else {
msg = "
Dades validades correctament
"
$.getJSON(path+'?option=modifica-platos-menu&p1='+p1+'&p2='+p2+'&pp='+pp+'&menu='+menu)
.done(function(data){
console.log(data.prim);
//Carga los platos una vez submitted como los pedidos.
$('#plato1_text').html(data.prim);
$('#plato2_text').html(data.sec);
$('#platoP_text').html(data.postre);
$('button[detalle="'+menu+'"]').attr("title",data.detalle_menu);
});
}
$('#mensaje-status').html(msg);
});
});
}
})
}
//Detalle de facturas en mi cuenta empresas
$('.detalle-factura').click(function(){
var factura = $(this).attr("factura");
$('.container-detalle-factura[factura="'+factura+'"]').toggle();
$('.container-detalle-factura[factura="'+factura+'"]').load(path+"?option=load-detalle-factura&factura="+factura,
function(){
//Handlers de load factura, si los hay
});
})
cargaSubCuentas();
$('#generate-pass').click(function(){
$.ajax(path+"?option=gen-pass")
.done(function(data){
$('#txtPassMD5_sub').val(data);
});
});
$('.mayusc').on("keypress",function(){
$input=$(this);
setTimeout(function () {
$input.val($input.val().toUpperCase());
},50);
});
$('#pay-monedero').click(function(){
pay_monedero();
});
}); //$(document).ready
}); //jQuery(function ($)