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 = 2017; var liHoyM = 12; var liHoyD = 15; var lasPromocionDiaGratis = new Array(); lasPromocionDiaGratis[1] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; lasPromocionDiaGratis[2] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; lasPromocionDiaGratis[3] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; lasPromocionDiaGratis[4] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; lasPromocionDiaGratis[5] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; lasPromocionDiaGratis[6] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; lasPromocionDiaGratis[7] = "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits"; 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 += "" lsHMTLElemento += ""; lsHMTLElemento += ""; lsHMTLElemento += ""; lsHMTLElemento += ""; lsCondiciones=""; if ( parseInt(poJSONPromo.DiasAntelacion) > 1 ){ lsCondiciones += "Anticipation minime pour réserver = DDDD jours." if ( parseInt(poJSONPromo.MinimoNoches) > 1 ){ lsCondiciones += " " + "Nombre de nuit minimum pour toute la réservation = NNNN" }else lsCondiciones += "." } else{ if ( parseInt(poJSONPromo.MinimoNoches) > 1 ){ lsCondiciones += "Vous pouvez bénéficier de cette promotion en réservant un mínimum de NNNN nuits" } } if (lsCondiciones.length>0){ lsHMTLElemento += ""; } 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 += " - " + "La remise sera appliquée:" + " " + poJSONPromo.TipoDtoPrecioValor + "%
"; break; case "2": // Precio pack lsHMTLElemento += " - " + "Prix définitif par nuit:" + " " + poJSONPromo.TipoDtoPrecioValor + " EUR
"; break; default: lsHMTLElemento += " - " + "Autres:" + " " + poJSONPromo.TipoDtoPrecioValor + " EUR
"; break; } } } if (poJSONPromo.Textos.Descripcion.length>0) lsHMTLElemento += "" + poJSONPromo.Textos.Descripcion + "
" } lsHMTLElemento += "
CONCEPTS DE LA PROMOTION
"; 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 += "
DATES DE LA PROMOTION
"; for(liData=0; liData< poJSONPromo.fechasImplicadas.length; liData++){ lsHMTLElemento += poJSONPromo.fechasImplicadas[liData]["fechaInicio"] + " - " + poJSONPromo.fechasImplicadas[liData]["fechaFin"] + "
"; } //lsHMTLElemento += "
Anticipation minime: " + poJSONPromo.DiasAntelacion + " jours
"; //lsHMTLElemento += "Séjour minimum: " + poJSONPromo.MinimoNoches + " nuits
"; //Reserva mínima //lsHMTLElemento += "
Anticipation minime pour réserver: " + poJSONPromo.DiasAntelacion + " jours
"; //lsHMTLElemento += "Exiger un nombre de nuit minimum pour toute la réservation: " + poJSONPromo.MinimoNoches + " nuits
"; lsHMTLElemento += " 
"; switch (parseInt(piTipoPromo)){ case 1: { //código de validación switch (parseInt(poJSONPromo.TipoDtoPrecio)){ case 1: //Dto. porcentaje lsHMTLElemento += "

REMISE SPÉCIALE
" + poJSONPromo.txtTipoDto + "
dto. " + poJSONPromo.TipoDtoPrecioValor + "%

"; break; case 2: //Dto. pack lsHMTLElemento += "

REMISE SPÉCIALE
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; break; case 10: lsHMTLElemento += "

REMISE SPÉCIALE
" + poJSONPromo.txtTipoDto + "
" + lasPromocionDiaGratis[poJSONPromo.TipoDtoPrecioValor] + "

"; break; default: lsHMTLElemento += "

REMISE SPÉCIALE
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; break; } break; }case 2: { //código de validación switch (parseInt(poJSONPromo.TipoDtoPrecio)){ case 1: //Dto. porcentaje lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
dto. " + poJSONPromo.TipoDtoPrecioValor + "%

"; break; case 2: //Dto. pack lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; break; case 10: lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
" + lasPromocionDiaGratis[poJSONPromo.TipoDtoPrecioValor] + "

"; break; default: lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; //alert("else switch INTERIOR CODIGO VAL") break; } break; }case 3: {//forocamping card switch (parseInt(poJSONPromo.TipoDtoPrecio)){ case 1: //Dto. porcentaje lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
dto. " + poJSONPromo.TipoDtoPrecioValor + "%

"; break; case 2: //Dto. pack lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; break; default: lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; //alert("else switch INTERIOR FOROCAMPING") break; } break; }case 4: {//Decathlon switch (parseInt(poJSONPromo.TipoDtoPrecio)){ case 10: lsHMTLElemento += "

CLIENTE
DECATHLON
" + lasPromocionDiaGratis[poJSONPromo.TipoDtoPrecioValor] + "

"; break; default: lsHMTLElemento += "

Promo
" + poJSONPromo.txtTipoDto + "
" + lasPromocionDiaGratis[poJSONPromo.TipoDtoPrecioValor] + "

"; //alert("else switch INTERIOR FOROCAMPING") break; } break; }case 5: {//Promoción CKE switch (parseInt(poJSONPromo.TipoDtoPrecio)){ case 1: //Dto. porcentaje lsHMTLElemento += "

CKE
PROMO
" + poJSONPromo.txtTipoDto + "
dto. " + poJSONPromo.TipoDtoPrecioValor + "%

"; break; case 2: //Dto. pack lsHMTLElemento += "

CKE
PROMO
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; break; case 10: lsHMTLElemento += "

CKE
PROMO
" + poJSONPromo.txtTipoDto + "
" + lasPromocionDiaGratis[poJSONPromo.TipoDtoPrecioValor] + "

"; break; default: lsHMTLElemento += "

PROMO
" + poJSONPromo.txtTipoDto + "
à partir de " + poJSONPromo.TipoDtoPrecioValor + "EUR

"; break; } }default:{ //alert("else switch exterior" + piTipoPromo); break; break; } } if (piIdPromoUnica>0){ lsHMTLElemento += "
Promotion activée!!"; }else{ if ( piIdPromoUnica == poJSONPromo.Id ) { lsHMTLElemento += "
Promotion activée!!"; }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 ) + "
"; } } return (lsHMTLElemento); }