function setVisibility(objId, bVisible, bInline) {myObj = document.getElementById(objId);if(myObj) {bInline = (bInline == null ? true : false);if(myObj){if(bVisible) {if(bInline) {myObj.style.display = 'inline';} else {myObj.style.display = 'block';}myObj.style.visibility = 'visible';} else {myObj.style.display = 'none';myObj.style.visibility = 'hidden';}}}}
function validate(ucCustomControlContainer) {
    var validatemessage = '&nbsp;';
    var PropId2 = (PropId == null ? '' : PropId);
    var Control = UserControlContainer;
    var iRooms = 1;
    try {
        iRooms = parseInt(document.getElementById(UserControlContainer + 'ddlRoom').value);
    } catch(e) {}
    if(ucCustomControlContainer != null) {
        Control = ucCustomControlContainer;
        if(document.getElementById(Control + 'rooms')) {
            iRooms = parseInt(document.getElementById(Control + 'rooms').value);
        }
        else
        {
            try {
                iRooms = parseInt(document.getElementById('rooms').value);
            } catch(e) {}
        }
    }
    var CountryTemp = '';
    if(document.getElementById(UserControlContainer + 'ddlCountryCode')) {
        CountryTemp = document.getElementById(UserControlContainer + 'ddlCountryCode').value;
    }    
    var LocationTemp = '';
    if(document.getElementById(UserControlContainer + 'txtLocationName')) {
        LocationTemp = document.getElementById(UserControlContainer + 'txtLocationName').value;
    }
    var HolidayTemp = 0;
    if(document.getElementById(UserControlContainer + 'ddlHolidayType')) {
        HolidayTemp = document.getElementById(UserControlContainer + 'ddlHolidayType').selectedIndex;
    }
    if((LocationTemp.length>2 || HolidayTemp!=0) || (PropId2!="")) 
    {
        for(var i = 1; i<=iRooms;i++) {
            if(parseInt(document.getElementById(Control + 'adults_'+i).value)==0) { // +parseInt(document.getElementById(Control + 'children03_1').value)+parseInt(document.getElementById(Control + 'children412_1').value)
                validatemessage = message[11][LanguageIndex];
            }
            if(parseInt(document.getElementById(Control + 'adults_'+i).value)+parseInt(document.getElementById(Control + 'children03_'+i).value)+parseInt(document.getElementById(Control + 'children412_'+i).value)>6) {
                validatemessage = message[13][LanguageIndex];
            }
        }
        if  ((document.getElementById(Control + 'txtArrivalDate').value != null) && (document.getElementById(Control + 'txtDepartureDate').value != null))
        {
            var Yesterday = new Date();
            Yesterday.setDate(Yesterday.getDate() - 1);
            var tempdate = Yesterday.getTime();
            if (LanguageCode == 'EN')
            {
                var ArrDate = new Date(document.getElementById(Control + 'txtArrivalDate').value);
                var DepDate = new Date(document.getElementById(Control + 'txtDepartureDate').value);
            }
            else
            {
                var ArrDate = new Date(document.getElementById(Control + 'txtArrivalDate').value.substring(6,10) + '/' + document.getElementById(Control + 'txtArrivalDate').value.substring(3,5) + '/' + document.getElementById(Control + 'txtArrivalDate').value.substring(0,2));
                var DepDate = new Date(document.getElementById(Control + 'txtDepartureDate').value.substring(6,10) + '/' + document.getElementById(Control + 'txtDepartureDate').value.substring(3,5) + '/' + document.getElementById(Control + 'txtDepartureDate').value.substring(0,2));
            }
            tempdate += 340*24*60*60*1000; //limite superiore di prenotabilità: 340 giorni
            var futBookDate = new Date();
            futBookDate.setTime(tempdate);
            tempdate = ArrDate.getTime();
            tempdate += 30*24*60*60*1000; //limite di durata pernottamento: 30 giorni
            var futDepDate = new Date();
            futDepDate.setTime(tempdate);
            if( (ArrDate<DepDate) && (ArrDate>Yesterday) && (DepDate<=futDepDate) && (ArrDate<futBookDate) )
            {
                document.getElementById(Control + 'txtArrDate').value = (ArrDate.getFullYear() +''+ ((ArrDate.getMonth()>=9)?'':'0') + (ArrDate.getMonth()+1) +''+ ((ArrDate.getDate()>9)?'':'0')+ArrDate.getDate());
                document.getElementById(Control + 'txtDepDate').value = (DepDate.getFullYear() +''+ ((DepDate.getMonth()>=9)?'':'0') + (DepDate.getMonth()+1) +''+ ((DepDate.getDate()>9)?'':'0')+DepDate.getDate());
            } else {
                validatemessage = message[9][LanguageIndex];
            }
        } else {
            validatemessage = message[9][LanguageIndex];
        }
    } else {
        if(ucCustomControlContainer == null) {
            validatemessage = message[8][LanguageIndex];
        }
    }
    if(validatemessage!='&nbsp;')
    {
        /*devo dare un messaggio*/
        if(ucCustomControlContainer == null) {
            document.getElementById(UserControlContainer + 'validatetext').innerHTML = validatemessage;
            ucCustomControlContainer = '';
        } else {
            document.getElementById(ucCustomControlContainer+'validatetext').innerHTML = validatemessage;
        }
    } else {    
        /*non devo dare un messaggio*/
        if(ucCustomControlContainer == null){document.getElementById(UserControlContainer + 'validatetext').innerHTML = '&nbsp;';} else {document.getElementById(ucCustomControlContainer+'validatetext').innerHTML = '&nbsp;';}   
        processing();
        var tempurl = '';
        if((ucCustomControlContainer == null) && (UserControlContainer != 'UcModifySearchHotelHome_') && (location.search.indexOf('fromSpecialOffers=true')==-1)){tempurl = '/searchresults.aspx?';if(document.getElementById(UserControlContainer + 'ddlHolidayType').value != '') {tempurl += 'ddlHolidayType=' + document.getElementById(UserControlContainer + 'ddlHolidayType').value;}}
        else{tempurl = '/selectrooms.aspx?';tempurl += 'fromSpecialOffers=true&';tempurl += 'PropId=' + PropId2;}
        if(location.search.toLowerCase().indexOf('dcbookingcode')>0){tempurl += '&DCBookingCode=' + location.search.toLowerCase().substring(location.search.toLowerCase().indexOf('dcbookingcode')+14,location.search.toLowerCase().indexOf('dcbookingcode')+17).toUpperCase();}
        if(tempurl.indexOf('=')>=0){tempurl += '&';}
        tempurl += 'Country=' + CountryTemp;tempurl += '&LocationName=' + ProperCase(trimAll(LocationTemp));tempurl += '&language=' + LanguageCode;document.getElementById(Control + 'txtArrDate').value = trimAll(document.getElementById(Control + 'txtArrDate').value);document.getElementById(Control + 'txtArrDate').value = trimAll(document.getElementById(Control + 'txtArrDate').value);
        if(document.getElementById(Control + 'txtArrDate').value != ''){tempurl += '&arrivalDate=' + document.getElementById(Control + 'txtArrDate').value;}
        if(document.getElementById(Control + 'txtDepDate').value != ''){tempurl += '&departureDate=' + document.getElementById(Control + 'txtDepDate').value;}
        tempurl += '&room=' + iRooms;var iAdults = 1;
        try{iAdults = parseInt(document.getElementById(UserControlContainer + 'ddlAdult').value);} catch (e) {iAdults = parseInt(document.getElementById('ddlAdult').value);}
        tempurl += '&adults[1]=' + document.getElementById(Control + 'adults_1').value;
        tempurl += '&child03[1]=' + document.getElementById(Control + 'children03_1').value;
        tempurl += '&child412[1]=' + document.getElementById(Control + 'children412_1').value;
        tempurl += '&adults[2]=' + document.getElementById(Control + 'adults_2').value;
        tempurl += '&child03[2]=' + document.getElementById(Control + 'children03_2').value;
        tempurl += '&child412[2]=' + document.getElementById(Control + 'children412_2').value;
        tempurl += '&adults[3]=' + document.getElementById(Control + 'adults_3').value;
        tempurl += '&child03[3]=' + document.getElementById(Control + 'children03_3').value;
        tempurl += '&child412[3]=' + document.getElementById(Control + 'children412_3').value;
        tempurl += '&samerooms=' + document.getElementById(Control + 'samerooms').checked;
        if(document.getElementById(UserControlContainer + 'ID_Code')){if(document.getElementById(UserControlContainer + 'ID_Code').value != ''){tempurl += '&ID_Code=' + document.getElementById(UserControlContainer + 'ID_Code').value;}}
        if(document.getElementById(UserControlContainer + 'gcciid')){if(document.getElementById(UserControlContainer + 'gcciid').value != ''){tempurl += '&gcciid=' + document.getElementById(UserControlContainer + 'gcciid').value;}}
        if(document.getElementById(UserControlContainer + 'gccipwd')){if(document.getElementById(UserControlContainer + 'gccipwd').value != ''){tempurl += '&gccipwd=' + encodeROT13(document.getElementById(UserControlContainer + 'gccipwd').value);}}
        if(document.getElementById(UserControlContainer + 'promocode')){if(document.getElementById(UserControlContainer + 'promocode').value != '') {tempurl += '&promocode=' + document.getElementById(UserControlContainer + 'promocode').value;}}
        if(document.getElementById(UserControlContainer + 'txtSessionVariables')) {if(document.getElementById(UserControlContainer + 'txtSessionVariables').value != ''){tempurl += document.getElementById(UserControlContainer + 'txtSessionVariables').value;}}
        var querystring = location.search;var questionMark, equalsSign, valueParam;questionMark = querystring.split("?");
        if(questionMark.length>1)
        {
            equalsSign = questionMark[1].split("&");
            for (i = 0; i < equalsSign.length; i ++)
            {
                // partnerships
                if ((equalsSign[i].toLowerCase().indexOf('spartnership=') >= 0)&&(tempurl.toLowerCase().indexOf('spartnership=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&sPartnerShip=' + valueParam[1];}
                //SOB
                if ((equalsSign[i].toLowerCase().indexOf('sob=') >= 0)&&(tempurl.toLowerCase().indexOf('sob=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&sob=' + valueParam[1];}
                //ExtraInfo
                if ((equalsSign[i].toLowerCase().indexOf('extrainfo=') >= 0)&&(tempurl.toLowerCase().indexOf('extrainfo=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&extrainfo=' + valueParam[1];}
                //CID
                if ((equalsSign[i].toLowerCase().indexOf('cid=') >= 0)&&(tempurl.toLowerCase().indexOf('cid=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&CID=' + valueParam[1];}
                //IATA
                if ((equalsSign[i].toLowerCase().indexOf('iata=') >= 0)&&(tempurl.toLowerCase().indexOf('iata=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&iata=' + valueParam[1];}
                //sVisibleAll
                if ((equalsSign[i].toLowerCase().indexOf('svisibleall=') >= 0)&&(tempurl.toLowerCase().indexOf('svisibleall=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&sVisibleAll=' + valueParam[1];}
                //excludedprops
                if ((equalsSign[i].toLowerCase().indexOf('excludedprops=') >= 0)&&(tempurl.toLowerCase().indexOf('excludedprops=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&excludedprops=' + valueParam[1];}
                //Corp_ID
                if ((equalsSign[i].toLowerCase().indexOf('id_code=') >= 0)&&(tempurl.toLowerCase().indexOf('id_code=')==-1)){valueParam = equalsSign[i].split("=");tempurl += '&ID_Code=' + valueParam[1];}
            }
        }
        //alert(tempurl);
        window.location.href='http://book'+ApplicationState+'.bestwestern.it' + tempurl;
        //window.location.href='http://localhost:4497' + tempurl;
    }
}
function encodeROT13(txtEncode){var strencode;var strencoderet;var basenum;strencode = txtEncode;strencoderet = '';var currCharCode;for(i = 0; i < strencode.length; i++){currCharCode = strencode.charCodeAt(i);if((currCharCode >= 97 && currCharCode <= 122) || (currCharCode >= 65 && currCharCode <= 90)){basenum = (currCharCode > 90)? 97 : 65;strencoderet += String.fromCharCode( ((currCharCode - basenum + 13) % 26 ) + basenum)}else{strencoderet += strencode.charAt(i);}}return strencoderet;}
function pause(numberMillis) {var now = new Date();var exitTime = now.getTime() + numberMillis;while (true) {now = new Date();if (now.getTime() > exitTime)return;}}
function resetAjaxDiv() {ajaxDIVOpen = false;SmartLogic_HideOptions();SmartLogic_Processing = false;}
function processing(){resetAjaxDiv();setVisibility('flash_table',true);setVisibility('form1',false);setVisibility('BW',false);submitted = true;pause(1000);}
function setupVisibility() {if(!submitted) {setVisibility('flash_table',false);setVisibility('form1',true);var querystring = location.search;if(querystring.indexOf('found=false') > 0) {document.getElementById('validatetext').innerHTML = message[10][LanguageIndex];}}}
function setDates() {if(document.getElementById(UserControlContainer + 'txtArrivalDate')) {if(document.getElementById(UserControlContainer + 'txtArrivalDate').value == '') {var iDateShift = 10;var iDiffDates = 1;var dataFormat = 'dd/MM/yyyy';if(!defaultDataFormat) { dataFormat='MM/dd/yyyy'; }var Today = new Date();var tempdate = Today.getTime();tempdate += iDateShift*24*60*60*1000;var futArrDate = new Date();futArrDate.setTime(tempdate);document.getElementById(UserControlContainer + 'txtArrivalDate').value = formatDate(futArrDate,dataFormat);tempdate += iDiffDates*24*60*60*1000;var futDepDate = new Date();futDepDate.setTime(tempdate);document.getElementById(UserControlContainer + 'txtDepartureDate').value = formatDate(futDepDate,dataFormat);}}}
function formatDate(dateValue, format) {var fmt = format.toUpperCase();var re = /^(M|MM|D|DD|YYYY)([\-\/]{1})(M|MM|D|DD|YYYY)(\2)(M|MM|D|DD|YYYY)$/;if (!re.test(fmt)) { fmt = "MM/DD/YYYY"; }if (fmt.indexOf("M") == -1) { fmt = "MM/DD/YYYY"; }if (fmt.indexOf("D") == -1) { fmt = "MM/DD/YYYY"; }if (fmt.indexOf("YYYY") == -1) { fmt = "MM/DD/YYYY"; }var M = "" + (dateValue.getMonth()+1);var MM = "0" + M;MM = MM.substring(MM.length-2, MM.length);var D = "" + (dateValue.getDate());var DD = "0" + D;DD = DD.substring(DD.length-2, DD.length);var YYYY = "" + (dateValue.getFullYear());var sep = "/";if (fmt.indexOf("-") != -1) { sep = "-"; }var pieces = fmt.split(sep);var result = "";switch (pieces[0]) {case "M" : result += M + sep; break;case "MM" : result += MM + sep; break;case "D" : result += D + sep; break;case "DD" : result += DD + sep; break;case "YYYY" : result += YYYY + sep; break;}switch (pieces[1]) {case "M" : result += M + sep; break;case "MM" : result += MM + sep; break;case "D" : result += D + sep; break;case "DD" : result += DD + sep; break;case "YYYY" : result += YYYY + sep; break;}switch (pieces[2]) {case "M" : result += M; break;case "MM" : result += MM; break;case "D" : result += D; break;case "DD" : result += DD; break;case "YYYY" : result += YYYY; break;}return result;}
function trimAll(sString) {while (sString.substring(0,1) == ' ') {sString = sString.substring(1, sString.length);}while (sString.substring(sString.length-1, sString.length) == ' ') {sString = sString.substring(0,sString.length-1);}return sString;}
function ProperCase(sString) {var FirstChar = '';var LastChar = '';if(sString.length>0) {var sTokens = sString.split(' ');for(var i=0;i<sTokens.length;i++) {FirstChar = String.fromCharCode((sTokens[i].charCodeAt(0) >= 97 && sTokens[i].charCodeAt(0) <= 122) ? sTokens[i].charCodeAt(0)-32 : sTokens[i].charCodeAt(0));sTokens[i] = FirstChar + sTokens[i].substring(1,sTokens[i].length).toLowerCase();}sString = sTokens.join(' ');var sTokens2 = sString.split('\'');for(i=0;i<sTokens2.length;i++) {FirstChar = String.fromCharCode((sTokens2[i].charCodeAt(0) >= 97 && sTokens2[i].charCodeAt(0) <= 122) ? sTokens2[i].charCodeAt(0)-32 : sTokens2[i].charCodeAt(0));LastChar = String.fromCharCode((sTokens2[i].charCodeAt(sTokens2[i].length-1) >= 65 && sTokens2[i].charCodeAt(sTokens2[i].length-1) <= 90) ? sTokens2[i].charCodeAt(sTokens2[i].length-1)+32 : sTokens2[i].charCodeAt(sTokens2[i].length-1));sTokens2[i] = FirstChar + sTokens2[i].substring(1,sTokens2[i].length-1) + LastChar;}sString = sTokens2.join('\'');} else {sString = '';}return sString;}
