function fsConOrdinalQuitarEnPromo(pnombre) { var i; for (i=0; i<20; i++) pnombre=pnombre.replace('0'+i+'. ', ''); for (i=0; i<20; i++) pnombre=pnombre.replace('0'+i+'.', ''); return pnombre; } function fvPromoShow(piTipoPromo, piIdPromoUnica, piIndicePromos, psIdPromoActiva, poJSONPromo, psURL, psUser, psClave) { //return poJSONPromo.TipoDtoPrecio; var liHoyY = 2020; var liHoyM = 3; var liHoyD = 18; var lasPromocionDiaGratis = new Array(); lasPromocionDiaGratis[1] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; lasPromocionDiaGratis[2] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; lasPromocionDiaGratis[3] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; lasPromocionDiaGratis[4] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; lasPromocionDiaGratis[5] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; lasPromocionDiaGratis[6] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; lasPromocionDiaGratis[7] = "Puede beneficiarse de esta promoción reservando un mínimo de NNNN noches."; var lsHMTLElemento = ""; var lsPrCon = ""; var laFechaInicio, laFechaFin; var lsHMTLElemento=""; var liFecha = 0; var lbEncontrado = false; var lbFin = false; var liData = 0; var lsHTMLSuplementos = ""; var lsCondiciones = ""; //return poJSONPromo.fechasVigencia.length; if ( poJSONPromo.fechasVigencia.length > 0 ){ var lbFin=false; for (var liFecha=0, lbFin=false; lbFin == false; liFecha++){ laFechaInicio = poJSONPromo.fechasVigencia[liFecha]["fechaInicio"].split("/"); laFechaFin = poJSONPromo.fechasVigencia[liFecha]["fechaFin"].split("/"); /* console.log(laFechaInicio); console.log(laFechaFin); console.log("-------------------"); console.log(Date.UTC(laFechaInicio[2], (parseInt(laFechaInicio[1])-1), laFechaInicio[0])); console.log(Date.UTC(laFechaFin[2], (laFechaFin[1]-1), laFechaFin[0])); console.log(Date.UTC(liHoyY, liHoyM-1, liHoyD)); */ if ( (Date.UTC(laFechaInicio[2], (parseInt(laFechaInicio[1])-1), laFechaInicio[0]) <= Date.UTC(liHoyY, liHoyM-1, liHoyD)) && (Date.UTC(laFechaFin[2], (laFechaFin[1]-1), laFechaFin[0]) > Date.UTC(liHoyY, liHoyM-1, liHoyD)) ){ lbEncontrado = true; } if ( ((liFecha +1) >= (poJSONPromo.fechasVigencia.length)) || (lbEncontrado)) lbFin = true; } //return lbEncontrado; if ( lbEncontrado ){ lsHMTLElemento += "
| " if (typeof poJSONPromo.Textos.Titulo != "undefined") { if ((poJSONPromo.Textos.Titulo.length>0) ) lsHMTLElemento += "" + unescape(poJSONPromo.Textos.Titulo) + "" } lsHMTLElemento += " | ||
| ";
if(poJSONPromo.Textos.Titulo){
lsHMTLElemento += "" + poJSONPromo.CCabModEmplazamientoNombre + " "; if ((typeof poJSONPromo.Textos.Titulo != "undefined") && (typeof poJSONPromo.Textos.Descripcion != "undefined")) { if (((poJSONPromo.Textos.Titulo.length==0) && (poJSONPromo.Textos.Descripcion.length==0)) ) { lsHMTLElemento += "" + poJSONPromo.txtTipoDto + ""; switch(poJSONPromo.TipoDtoPrecio){ case "1": // Dto. por porcentaje lsHMTLElemento += " - " + "Se aplicará el descuento:" + " " + poJSONPromo.TipoDtoPrecioValor + "% "; break; case "2": // Precio pack lsHMTLElemento += " - " + "Precio cerrado por noche:" + " " + poJSONPromo.TipoDtoPrecioValor + " EUR "; break; default: lsHMTLElemento += " - " + "Otras:" + " " + poJSONPromo.TipoDtoPrecioValor + " EUR "; break; } } } if (poJSONPromo.Textos.Descripcion.length>0) lsHMTLElemento += "" + poJSONPromo.Textos.Descripcion + " " } lsHMTLElemento += " CONCEPTOS PROMOCIÓN "; for(liData=0; liData< poJSONPromo.ConceptosPack.length; liData++){ lsPrCon = fsConOrdinalQuitarEnPromo(poJSONPromo.ConceptosPack[liData]["TxtConcepto"]); lsPrCon = lsPrCon.replace(/\//gi, " / ") lsPrCon = lsPrCon.replace(/\+/gi, " + ") lsHMTLElemento += poJSONPromo.ConceptosPack[liData]["Cantidad"] + " X " + lsPrCon + " "; } lsHTMLSuplementos = ""; for(liData=0; liData< poJSONPromo.SuplementosPack.length; liData++){ lsHTMLSuplementos += poJSONPromo.SuplementosPack[liData]["Cantidad"] + " X " + poJSONPromo.SuplementosPack[liData]["TxtSuplemento"] + " "; } if (lsHTMLSuplementos.length>0){ lsHMTLElemento += " + ";
lsHMTLElemento += lsHTMLSuplementos;
}
lsHMTLElemento += "FECHAS CON PROMOCIÓN "; for(liData=0; liData< poJSONPromo.fechasImplicadas.length; liData++){ lsHMTLElemento += poJSONPromo.fechasImplicadas[liData]["fechaInicio"] + " - " + poJSONPromo.fechasImplicadas[liData]["fechaFin"] + " "; } //lsHMTLElemento += " Antelación mínima: " + poJSONPromo.DiasAntelacion + " días "; //lsHMTLElemento += "Estancia mínima: " + poJSONPromo.MinimoNoches + " noches "; //Reserva mínima //lsHMTLElemento += " Antelación mínima para reservar: " + poJSONPromo.DiasAntelacion + " días "; //lsHMTLElemento += "Exigir número de noches mínimo de toda la reserva: " + poJSONPromo.MinimoNoches + " noches "; lsHMTLElemento += " | ";
lsHMTLElemento += "";
switch (parseInt(piTipoPromo)){
case 1: { //código de validación
switch (parseInt(poJSONPromo.TipoDtoPrecio)){
case 1: //Dto. porcentaje
lsHMTLElemento += " DTO. ESPECIAL DTO. ESPECIAL DTO. ESPECIAL DTO. ESPECIAL Promo Promo Promo Promo Promo Promo Promo CLIENTE Promo CKE CKE CKE
Promoción activada!!"; }else{ if ( piIdPromoUnica == poJSONPromo.Id ) { lsHMTLElemento += " Promoción activada!!"; }else{ if (psURL.length>0){ psURL+=(psURL.indexOf("?")<0)?"?":"&"; psURL+="rqsPromoCode=" + poJSONPromo.PromoCode + "&rqiIdPromo=" + poJSONPromo.Id psURL+="&rqiTipoPromo="+piTipoPromo; if (parseInt(piTipoPromo)==3){ if ((psUser.length>0) && (psClave.length>0)){ psURL+="&rqsFCNick=" + psUser + "&rqsFCCodTar=" + psClave; } } lsHMTLElemento += " "; }else{ lsHMTLElemento += " "; } } } lsHMTLElemento += " | |
| (*) " + lsCondiciones.replace(/DDDD/gi, poJSONPromo.DiasAntelacion ).replace(/NNNN/gi, poJSONPromo.MinimoNoches ) + " | ||