function trim(A){return A.replace(/(^\s*)|(\s*$)/g,"")}function computeParamsAndCallAccorHotels(){var J=$("checkboxContrat").checked;var C=$("accorHotelsUrl").value+"?";var H=$("jour_arrivee").value;var M=$("mois_arrivee_js").value;var K=parseInt(M,10)+1;var E=$("annee_arrivee").value;var I=$("nb_nuit").value;if(J){C+="goto=societe&hotelOuVille="+$("nom_ville").value}else{C+="goto=spec_rate&nom_ville="+$("nom_ville").value;C+="&code_chaine=SOF%7CNOV%7CMER%7CSUI%7CIBI%7CASE%7CPUL%7CMGA%7CADG";C+="&sub=ISP&RA1=RACWEB&RA2=&ragp=1&libelle_tarif=0&showEco=0";var A=new Date(parseInt(E,10),parseInt(M,10),parseInt(parseInt(H,10)+parseInt(I),10),10);var O=A.getDate();var G=parseInt(parseInt(A.getMonth(),10)+1,10);var L=A.getFullYear();C+="&jour_depart="+O+"&mois_depart="+G+"&annee_depart="+L}C+="&jour_arrivee="+H+"&mois_arrivee="+K+"&annee_arrivee="+E;C+="&nb_nuit="+$("nb_nuit").value;C+="&code_avantage="+$("code_avantage").value;C+="&code_langue="+$("code_langue").value;C+="&merchantid=par-aclub";var Q=readCookie("memberCard",false);var B="pro";var D=$("sourceid_type").value;if(Q!=null){C+="&num_carte_fidelite="+Q;B="mem"}var P=readCookie("memberStatut",false);if(null!=P){C+="&type_carte_fidelite="+gAHCardType[parseInt(P)]}C+="&sourceid=aclub-"+B+"-"+D+"-"+$("code_langue").value.toUpperCase();var S=navigator.userAgent;var R=S.match(/MSIE\s([^;]*)/);if(R&&R[1]){var N="chouchou";var F=document.getElementById("chouchou");F.target="_blank";F.href=C;F.click()}else{window.open(C)}}function isValidForm(){var A=new Date($("annee_arrivee").value,$("mois_arrivee_js").value,$("jour_arrivee").value);if(trim($("nom_ville").value)==""){alert(_("common","field.mandatory","'Destination'"))}else{if($("jour_arrivee").value==""||$("mois_arrivee").value==""||$("mois_arrivee").value==""){alert(_("common","field.mandatory","'Date'"))}else{if(!isValidDate($("jour_arrivee").value,$("mois_arrivee").value,$("annee_arrivee").value)||!isBookingDatePossible(A)){alert(_("common","field.invalid","'Date'"))}else{if(document.getElementById("nb_nuit").value==""){alert(_("common","field.mandatory","'Nights'"))}else{if($("checkboxAvantage").checked&&trim($("code_avantage").value)==""){alert(_("common","field.invalid","'Code'"))}else{computeParamsAndCallAccorHotels()}}}}}}function purge_code_avantage(){if(!$("checkboxAvantage").checked){$("code_avantage").value=""}}function checkChouchouParams(){var A=new Date($("annee_arrivee").value,$("mois_arrivee_js").value,$("jour_arrivee").value);if(trim($("nom_ville").value)==""){alert(_("common","field.destination"))}else{if($("jour_arrivee").value==""||$("mois_arrivee_js").value==""||$("annee_arrivee").value==""){alert(_("common","field.mandatory",_("fieldnames","reservation.date_arrivee")))}else{if(!isValidDate($("jour_arrivee").value,$("mois_arrivee_js").value,$("annee_arrivee").value)||!isBookingDatePossible(A)){alert(_("common","field.invalid",_("fieldnames","reservation.date_arrivee")))}else{if($("nb_nuit").value==""){alert(_("common","field.nights.mandatory"))}else{if($("checkboxAvantage").checked){if($("code_avantage")){if(trim($("code_avantage").value)==""){alert(_("common","field.invalid","'Code'"))}else{computeParamsAndCallAccorHotels()}}else{computeParamsAndCallAccorHotels()}}else{computeParamsAndCallAccorHotels()}}}}}}function isValidDate(E,A,G){var D=parseInt(E,10);var F=parseInt(A,10);var C=parseInt(G,10);var B=new Date(C,F,D);return(B.getFullYear()==C&&B.getMonth()==F)}function isBookingDatePossible(B){var A=new Date();A.setHours(0);A.setMinutes(0);A.setSeconds(0);A.setMilliseconds(0);if(B.getTime()<A.getTime()){return false}return true}Event.observe(window,"load",function(){$(document.body).removeClassName("waiting");if($("detachedLogin")){hideLoginDiv()}if($("checkboxAvantage")){if($("checkboxAvantage").checked){if($("book_hotel_code")){$("book_hotel_code").setStyle({display:"block"})}else{$("book_hotel_code_png").setStyle({display:"block"})}}else{if($("book_hotel_code")){$("book_hotel_code").setStyle({display:"none"})}else{$("book_hotel_code_png").setStyle({display:"none"})}}}if($("checkboxAvantage")){$("checkboxAvantage").observe("click",function(){if($("checkboxAvantage").checked){if($("book_hotel_code")){$("book_hotel_code").setStyle({display:"block"})}else{$("book_hotel_code_png").setStyle({display:"block"})}}else{if($("book_hotel_code")){$("book_hotel_code").setStyle({display:"none"})}else{$("book_hotel_code_png").setStyle({display:"none"})}}})}if($("languages_dropdown")){$("languages_dropdown").observe("change",function(){var A=$("languages_dropdown");writeCookie("languagePref",A.value,null,null);document.location=A.value})}if($("update_profile_link")){$("update_profile_link").observe("click",updateProfile)}});function deleteCookie(C){var B=new Date();B.setTime(B.getTime()+(-1*24*60*60*1000));var A="; expires="+B.toGMTString();writeCookie(C,null,expiry,null)}function displayHourGlass(){$(document.body).addClassName("waiting");Event.observe(window,"unload",function(){})}function hideLoginDiv(){$("detachedLogin").addClassName("hideLoginDiv")}function buildTandCLink(C,E,D,A){var G=readCookie("memberStatut",false);var B="?isFavoriteGuest=true";var H="";var F=C;if(null!=G&&G==1){H=C.substring(C.indexOf("?"),C.length);if(H!=""){if(H.indexOf("?isFavoriteGuest")!=-1){F=F.replace(H,B)}else{F=F+B}}}return showCenterPopup(F,E,D,A)}function buildTandCLinkAbsolutePath(C,H,E,I,F){var D=readCookie("memberStatut",false);var G="?isFavoriteGuest=true";var B="";var A=C;if(null!=D&&D==1){B=C.substring(C.indexOf("?"),C.length);if(B!=""){if(B.indexOf("?isFavoriteGuest")!=-1){A=A.replace(B,G)}else{A=A+G}}}showCenterPopupAbsolutePath(A,H,E,I,F)}function showCenterPopupAbsolutePath(C,F,D,A,E){if(!(C.indexOf("http://")==0)){var B=(""+window.location);B="http://"+E+B.substring(B.indexOf(".com")+4,B.lastIndexOf("/"));C=B+"/"+C}showCenterPopup(C,F,D,A)}function showCenterPopup(B,E,C,A){var H=screen.width/2;var D=screen.height/2;var G=D-(A/2);var F=H-(C/2);desktopURL=B;window.open(desktopURL,E,"toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,width="+C+",height="+A+",top="+G+",left="+F+"")}function gettext(A,C){if(I18N[A]&&I18N[A][C]){C=I18N[A][C]}var B=arguments;return C.replace(/%([0-9%])/g,function(D,E){if("%"==E){return"%"}if(parseInt(E)<B.length-2){return B[parseInt(E)+2]}else{return E}})}var _=gettext;function ie_emulate_submit_on_enter(A){Event.observe(A,"keydown",function(C){var C=C||window.event;if(C.keyCode==13){if(A.form){var B=A.form.fireEvent("onsubmit");if(B){return false}}}return true})}function FormValidator(){this.fields={};this.globalValidators=[];this.preValidateHook=null;this.postValidateHook=null;this.checkedFields=null}FormValidator.prototype={bind:function(B){var A=this;B.validator=A;B.observe("submit",function(C){return A.handleOnSubmit(B,C)})},handleOnSubmit:function(B,A){if(!this.submit(B)){Event.stop(A)}},submit:function(A){this.cleanErrorsArea();var B=this.check(A);if(B.length){this.updateErrorsArea(B)}else{A.submit();if(null!=this.postValidateHook){this.postValidateHook()}}return B.length==0},highlightField:function(A){if(this.fields[A]!=null&&this.fields[A].areaid!=null){$(this.fields[A].areaid).addClassName("validation_error")}},unhighlightField:function(A){if(this.fields[A]!=null&&this.fields[A].areaid!=null){$(this.fields[A].areaid).removeClassName("validation_error")}},registerFieldArea:function(A,B){if(typeof (this.fields[A])=="undefined"){this.fields[A]={id:A,validators:[],areaid:B}}},addFieldValidation:function(B,A){if(typeof (this.fields[B])=="undefined"){this.fields[B]={id:B,validators:[],areaid:null}}if(typeof (A)=="function"){A=[A]}var D=this.fields[B];for(var C=0;C<A.length;++C){D.validators[D.validators.length]=A[C]}},removeFieldArea:function(A){this.fields[A]=undefined},addGlobalValidator:function(A){if(typeof (A)=="function"){this.globalValidators[this.globalValidators.length]=A}else{for(var B=0;B<A.length;++B){this.globalValidators[this.globalValidators.length]=A[B]}}},cleanErrorsArea:function(){var B=$("errorArea");for(var A=B.childNodes.length;A;--A){B.removeChild(B.childNodes[0])}},updateErrorsArea:function(F){var E=$("errorArea");var B=false;var D=document.createElement("ul");for(var C=0;C<F.length;++C){if(F[C]=="required"){if(!B){var A=document.createElement("li");A.appendChild(document.createTextNode(_("validation","required")));D.appendChild(A);B=true}}else{var A=document.createElement("li");A.appendChild(document.createTextNode(F[C]));D.appendChild(A)}}E.appendChild(D)},check:function(E){if(null!=this.preValidateHook){this.preValidateHook(this.form)}for(var A in this.fields){this.unhighlightField(A)}var H=[];var G=this.checkedFields==null?this.fields:this.checkedFields();for(var A in G){if(typeof (this.fields[A])=="undefined"){continue}var F=this.fields[A];for(var C=0;C<F.validators.length;++C){var B=F.validators[C](F.id);if(null!=B){H[H.length]=B;if(F.areaid!=null){$(F.areaid).addClassName("validation_error")}break}}}for(var D=0;D<this.globalValidators.length;++D){var B=this.globalValidators[D](this.form);if(null!=B){for(var C=0;C<B.length;++C){if(typeof (B[C])=="string"){H[H.length]=B[C]}else{H[H.length]=B[C].label;this.highlightField(B[C].fieldId)}}}}return H}};function luhn_check(C){var B=C.value;var E=0;var A=0;var D=0;for(i=B.length;i>=1;i--){D=D+1;num=B.charAt(i-1);if((D%2)!=0){E=E+parseInt(num)}else{A=parseInt(num)*2;if(A>=10){E=E+1+A-10}else{E=E+A}}}if((E%10)!=0){return(false)}return(true)}var gMemberShipLevel={0:"Prospect",1:"AFG",2:"Classic",3:"Silver",4:"Gold",5:"Platinum",6:"Club des Actionnaires"};var gAHlanguage={"en":"gb","fr":"fr","es":"es","de":"de","nl":"nl","it":"it","pt":"pt","pl":"pl","zh":"zh","jp":"jp"};function toggleDisableCss(D,C){var A=document.getElementById(D);var B=document.getElementById(C);if(A.checked){B.style.backgroundColor="white"}else{B.style.backgroundColor="#ccc"}}function displayAlert(){if(window.location.search.indexOf("&msg=")!=-1){var B=window.location.search.substring(window.location.search.indexOf("&msg=")+5,window.location.search.length);if(B.indexOf("status")!=-1){var A=B.substring(B.length-1);window.opener.alert(_("offerbooking",B.substring(0,B.length-1),gMemberShipLevel[A]))}else{window.opener.alert(_("offerbooking",B))}window.close()}}displayAlert();function displayClosedSession(){var A=document.location.search;if(null!=A&&A.indexOf("?home")!=-1){alert(_("common","session.expired"));return false}}function addParamToURI(B){var E=window.location.search;if(E==""){return }var D=document.getElementById(B);var C=D.options.length;for(var A=0;A<C;A++){D.options[A].value=D.options[A].value+E}}function treatNames(A){var B=A.value;B=removeAccentsAndSpecialChars(B.strip().toUpperCase());A.value=B;return }function cleanSpaces(B){var A=B.replace(/^\s+/g,"");A=A.replace(/\s+$/g,"");A=A.replace(/\s{2,}/g," ");return A}function removeBadCharsForNames(A){var C=A.value;C=replaceCommonChars(C);C=cleanSpaces(C);var D="";var E;for(var B=0;B<C.length;B++){E=C.charAt(B);if(/^[-a-zA-Z0-9. 'ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]$/.test(E)){D+=E}}A.value=D;return D}function replaceCommonChars(A){A=A.replace(/[\u0006\u00ad\u00af]/gi,"-");A=A.replace(/[\u00b7]/gi,".");A=A.replace(/[\u0060\u00b4]/gi,"'");A=A.replace(/[\u0021\u0026\u0028\u0029\u002b\u002c\u002f\u003a\u003d\u0040\u005b\u005c\u005d\u005f\u007b\u007d\u00a0\u00a7\u00ab\u00ba\u00bb]/gi," ");return A}function removeAccentsAndSpecialChars(D){D=D.replace(/[\u00C8\u00C9\u00CA\u00CB]/gi,"E");D=D.replace(/[\u00D9\u00DA\u00DB\u00DC]/gi,"U");D=D.replace(/[\u00CC\u00CD\u00CE\u00CF]/gi,"I");D=D.replace(/[\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5]/gi,"A");D=D.replace(/[\u00D2\u00D3\u00D4\u00D5\u00D6]/gi,"O");D=D.replace(/[\u00C7]/gi,"C");D=replaceCommonChars(D);D=cleanSpaces(D);caractere1="ÝÐÈÉÊËÛÙÚÜÌÍÏÎÀÁÂÃÄÅÒÓÔÕÖØðÑÇçÐÑÝèéêëûúùüìíïîàáâãäåòóôõöøðñçðñýÿ";caractere2="YDEEEEUUUUIIIIAAAAAAOOOOOOdNCcDNYeeeeuuuuiiiiaaaaaaoooooodncdnyy";var B="";for(var C=0;C<D.length;C++){var A=D.charAt(C);switch(A){case"Æ":case"æ":B+="AE";continue;case"Þ":case"þ":B+="TH";continue;case"ß":B+="SS";continue}pos=caractere1.indexOf(A);if(pos!=-1){A=caractere2.charAt(pos)}else{if(!/^[-a-zA-Z0-9 '.]$/.test(A)){A=""}}B+=A}return B}function openAccorHotDealsPage(){var B="?merchantid=par-aclub&sourceid=aclub-";var A=readCookie("memberStatus",false);if(A!=null){B+="mem-"}else{B+="pro-"}B+="hot-"+readCookie("languagePref",false).substr(0,2).toUpperCase();url="http://www.accorhotels.com/"+gAHlanguage[readCookie("languagePref",false).substr(0,2)]+"/promotion/last-minute-hotel-reservation.shtml"+B;window.open(url)}
