﻿// JScript File
var newsearch=0
var txterr='x'
var submit='x'

//Trim function - reusable code
function LTrim(str){

var whitespace = new String (" \n\r\t")
var s=new String(str)
	
if (whitespace.indexOf(s.charAt(0))!=-1){
	var j=0, i=s.length
	while (j<i && whitespace.indexOf(s.charAt(j)) != -1){
	j++	}
s=s.substring(j,i)
}
	return(s)
}

function RTrim(str){

var whitespace=new String (" \t\n\r")
var s=new String(str)

if (whitespace.indexOf(s.charAt(s.length-1))!=-1){
	var i=s.length -1
	while (i >=0 && whitespace.indexOf(s.charAt(i)) != -1){
	i--}
	s=s.substring(0,i+1)
}
return(s)
}

function Trim(str){
return RTrim(LTrim(str))
}

function hnclick(){
    if(document.getElementById(HNid).value=="All hotels"){
    document.getElementById(HNid).value=""
    }
}

function getanalytics(){

var elem=document.getElementById(CTGoogleid)

    if(elem){    
    
        if (typeof(DbComboServerExists)!='undefined' && newsearch==1){
        var str=DbComboGetText(CTid)
        
            if(str!="Type, then select"){            
            //creates a new stat for our Google Analytics custom report (on search locations)
            __utmSetVar(str)            
            }        
        }
    }
}

function comboclick(){
    
    if(document.getElementById(CCid).value==""){

        if (typeof(DbComboServerExists)!='undefined'){
        var str=DbComboGetText(CTid)
        
            if(str=="Type, then select"){
            DbComboChangeText(CTid,"")   
            DbComboHideResults(CTid) 
            }                
        }
    }
    
    if(reset==0 && document.getElementById(CCid).value!=""){

        if (typeof(DbComboServerExists)!='undefined'){
        var str=DbComboGetQuery(CTid)
            if(str==""){
            str=combostrqs
            }
        DbComboChangeText(CTid, str)
        DbComboSelectAll(CTid)
        }
    }
}

function comboload(){

if(document.getElementById(CCid)){

    if(frombv=="1"){    
        if (typeof(DbComboServerExists)!='undefined'){    
        var str=DbComboGetText(CTid)    
        DbComboChangeText(CTid, str)
        }        
    }
    else{
        if(combotext!=""){      
        var elem=document.getElementById(CT2id)
        elem.value=combotext 
        document.getElementById(CCid).value=comboval
        }
        
    }

    if(document.getElementById(CCid).value==""){

        if (typeof(DbComboServerExists)!='undefined'){
        var str=DbComboGetText(CTid)    
                
            if(str=="Type, then select"){
            DbComboSelectAll(CTid)    
            }                
        }
    }    
}
else{
    if(document.getElementById(CDid)){
        if(frombv>0){   
        var elem=document.getElementById(CDid)
        elem.selectedIndex=frombv
        }
        else{
        document.getElementById(CDid).value=comboval
        }
    }
}
}

var reset=0

function copycombo(Value, Text, SelectionType){

    //don't bother if nothing has changed
    //(this allows reset when user clicks to change city after search has happened)
           
    if(document.getElementById(CCid).value!=Value){
    document.getElementById(CCid).value=Value

        if(Value!=""){
        var str=DbComboGetQuery(CTid)
        document.getElementById(combostrbox).value=str
        document.getElementById("div1").style.visibility="hidden"        
        //document.getElementById("div2").style.visibility="hidden"
        //when city selected (ie don't reset the combo when clicked to make this selection)
        reset=1
        }
        else{
        document.getElementById("div1").style.visibility="visible"        
        //document.getElementById("div2").style.visibility="visible"
        }
    }
}

function copydate(){

//whenever form is clicked
reset=0
//document.getElementById("div5").style.visibility="hidden"
//document.getElementById("div5").style.display="none"

//copy date to hidden box
var elem=document.getElementById(Cid)

if(elem){

var seldate=elem.value
var elem2=document.getElementById(DCid)
elem2.value=seldate
//check in future box
var elem3=document.getElementById(Tdyid)
var todaydate=elem3.value

//hide or show validation control
//no date
    if (seldate.length==0){
    document.getElementById("div3").style.visibility="visible"
    document.getElementById("div3").style.display="block"
    }
    else{     
    document.getElementById("div3").style.visibility="hidden"
    document.getElementById("div3").style.display="none"
        
    var d=new Date(seldate.substring(6),(seldate.substring(3,5)-1),seldate.substring(0,2))
   
        if(d.getFullYear()==seldate.substring(6) && d.getMonth() ==(seldate.substring(3,5)-1) && d.getDate() == seldate.substring(0,2)){
        document.getElementById("div4").style.visibility="hidden"
        document.getElementById("div4").style.display="none"
            
            if(seldate.substring(2,3)!="/" || seldate.substring(5,6)!="/" || seldate.length<10){     
            document.getElementById("div4").style.visibility="visible"
            document.getElementById("div4").style.display="block"
            document.getElementById("div6").style.visibility="hidden"
            document.getElementById("div6").style.display="none"
            }
            else{
            document.getElementById("div4").style.visibility="hidden"
            document.getElementById("div4").style.display="none"
                        
            //var d2=new Date(todaydate.substring(6),(todaydate.substring(3,5)-1),todaydate.substring(0,2))
            var d2=new Date(todaydate)
                                                                        
                if(d<d2){    
                document.getElementById("div6").style.visibility="visible"
                document.getElementById("div6").style.display="block"
                error=true
                }
                else{
                document.getElementById("div6").style.visibility="hidden"
                document.getElementById("div6").style.display="none"
                }
            
            }
                 
        }
        else{
        document.getElementById("div4").style.visibility="visible"
        document.getElementById("div4").style.display="block"
        }                                    
    } 
}
}

var error

function getfocus(){

var txte=document.getElementById(txterr)
txte.value="true"
error=false
var town

//check if valid town has been selected (controlled by validation div)
var txt=document.getElementById(CCid)

    //IE
    if(txt){
        if(txt.value==""){
        error=true
        //document.getElementById("divHelp").style.visibility="visible"
        //document.getElementById("divHelp").style.display="block"
        }    
        else{
        town=txt.value
        document.getElementById("divHelp").style.visibility="hidden"
        document.getElementById("divHelp").style.display="none"
        }
    }
    else{    
    txt=document.getElementById(CDid)
    
        if(txt.selectedIndex==0){
        error=true
        }    
        else{
        town=txt.options[txt.selectedIndex].value
        }
    }   
    
if(error==false){

//default to focus on nights box, will get overrided if invalid selection before this
txt=document.getElementById(Nid)
var txtv=Trim(txt.value)

    if(isNaN(txtv) || txtv.length ==0){
    txt.focus()
    error=true
    }
    else{
        if(parseInt(txt.value)<=0 || parseInt(txt.value)>28){
        txt.focus()
        error=true
        }
    }
   
    var txt=document.getElementById(Cid)
    var txtv,d
    txtv=Trim(txt.value)
    
        if(txtv.length<10){
        
            if(txtv.length==8 && txtv.substring(2,3)=="/" && txtv.substring(5,6)=="/"){
            txt.value=txtv.substring(0,6) + "20" + txtv.substring(6,8)
            getfocus()
            //txt.focus()    
            //error=true
            }
            else{
            txt.focus()    
            error=true
            }
        }
        else{
        
            //check slashes in right place
            if(txtv.substring(2,3)!="/" || txtv.substring(5,6)!="/"){
            txt.focus()
            error=true
            }
            else{
            //check valid date
            d=new Date(txtv.substring(6),(txtv.substring(3,5)-1),txtv.substring(0,2))
                        
	            if(d.getFullYear()==txtv.substring(6) && d.getMonth() ==(txtv.substring(3,5)-1) && d.getDate() == txtv.substring(0,2)){
	            }    
	            else{
                txt.focus()
                error=true
	            }
	        }        
        }   
    
    copydate()
                
    //if no errors we know the form will be submitted so display busy box
    //also set the aspx errors box to false
    //for down-level browsers this controls whether the postback has been caused by a calendar click
    if(error==false){      
    var txtFT=document.getElementById(txtFormType)
    
        if(txtFT){
        txtFT.value="Accom"        
        }
        
    txte.value="false"
    
        if(town!="10168|10168|MCO|MCO15|USA"){
        busyBox.Show()
        }
    }
}
}

function seterror(){

var elem=document.getElementById("divHelpText")

if(elem){

    if(elem.style.visibility=="visible"){
    elem.style.visibility="hidden"
    elem.style.display="none"
    }
}

var txte=document.getElementById(txterr)

if(txte){
txte.value="true"


error=false
var town

//check if valid town has been selected (controlled by validation div)
var txt=document.getElementById(CCid)

    //IE
    if(txt){
        if(txt.value==""){
        error=true
        }    
        else{
        town=txt.value
        }
    }
    else{    
    txt=document.getElementById(CDid)
    
        if(txt.selectedIndex==0){
        error=true
        }    
        else{
        town=txt.options[txt.selectedIndex].value
        }
    }   
    
if(error==false){

//default to focus on nights box, will get overrided if invalid selection before this
txt=document.getElementById(Nid)
var txtv=Trim(txt.value)

    if(isNaN(txtv) || txtv.length ==0){
    error=true
    }
    else{
        if(parseInt(txt.value)<=0 || parseInt(txt.value)>28){
        error=true
        }
    }
   
    var txt=document.getElementById(Cid)
    var txtv,d
    txtv=Trim(txt.value)
    
        if(txtv.length<10){
        error=true
        }
        else{
        
            //check slashes in right place
            if(txtv.substring(2,3)!="/" || txtv.substring(5,6)!="/"){
            error=true
            }
            else{
            //check valid date
            d=new Date(txtv.substring(6),(txtv.substring(3,5)-1),txtv.substring(0,2))
                        
	            if(d.getFullYear()==txtv.substring(6) && d.getMonth() ==(txtv.substring(3,5)-1) && d.getDate() == txtv.substring(0,2)){
	            }    
	            else{
                error=true
	            }
	        }        
        }   
        
    copydate()
            
    //if no errors we know the form will be submitted so display busy box
    //also set the aspx errors box to false
    //for down-level browsers this controls whether the postback has been caused by a calendar click
    if(error==false){       
    txte.value="false"  
    }    
}
}
}


function loadDate(){

var submitbutton=document.getElementById(submit)
submitbutton.disabled=false

var elem=document.getElementById(Cid)
var elem2
var elem3
var elem4

    if(datepicked.length>0){
    elem.value=datepicked           
    }
    
    //now load all the other stuff in so that a Back button click reflects the criteria at the time
    
    if(sort!=""){
    elem=document.getElementById(Sortid)    
        if(elem){
        elem.value=sort
        }
    }
    
    if(hotelname!=""){
    elem=document.getElementById(HNid)    
    elem.value=hotelname
    }

    if(rating!=""){
    elem=document.getElementById(ddRatingid)    
    elem.value=rating
    }
    
    if(nights!=""){
    elem=document.getElementById(Nid)    
    elem.value=nights
    }
    
    if(rooms!=""){
    elem=document.getElementById(ddRQid)    
    elem.value=rooms
    
        for(r=1;r<=4;r++){
        
            if(r<=rooms){
            elem=document.getElementById(ddAdArray[r-1])
            elem.value=AdValArray[r-1]        
            elem=document.getElementById(ddChArray[r-1])
            elem.value=ChValArray[r-1]      
             
            elem4=document.getElementById("Room" + r + "C") 
            displayAges(ChValArray[r-1],r)
        
                if(ChValArray[r-1]>0){                
                
                elem4.style.visibility="visible"
                elem4.style.display="block"
            
                    switch(r){
                    case 1:
                
                        for(c=1;c<=ChValArray[r-1];c++){
                        elem2=document.getElementById(ddChAgeArray1[c-1])
                        elem2.value=ChAgesArray1[c-1]
                        }                        
                    
                    break;
                
                    case 2:
                
                        for(c=1;c<=elem.value;c++){
                        elem2=document.getElementById(ddChAgeArray2[c-1])
                        elem2.value=ChAgesArray2[c-1]
                        }
                
                    break;
                
                    case 3:
                
                        for(c=1;c<=elem.value;c++){
                        elem2=document.getElementById(ddChAgeArray3[c-1])
                        elem2.value=ChAgesArray3[c-1]
                        }
                
                    break;
                
                    case 4:
                
                        for(c=1;c<=elem.value;c++){
                        elem2=document.getElementById(ddChAgeArray4[c-1])
                        elem2.value=ChAgesArray4[c-1]
                        }
                
                    break;
                    }
                        
                }
                else{
                elem4.style.visibility="hidden"
                elem4.style.display="none"
                } 
            
            elem=document.getElementById("Room" + r + "A")
            elem2=document.getElementById("Room" + r + "B")
            elem3=document.getElementById("Room" + r + "H")              
            
            elem.style.visibility="visible"
            elem.style.display="block"
            elem2.style.visibility="visible"
            elem2.style.display="block"          
            
                if(r>1 && elem3){
                elem3.style.visibility="visible"
                elem3.style.display="block"
                }  
                           
            }
            else{
            displayAges(0,r)
            elem=document.getElementById("Room" + r + "A")
            elem2=document.getElementById("Room" + r + "B")
            elem3=document.getElementById("Room" + r + "H")  
            elem4=document.getElementById("Room" + r + "C")
            
            elem.style.visibility="hidden"
            elem.style.display="none"
            elem2.style.visibility="hidden"
            elem2.style.display="none"        
            elem4.style.visibility="hidden"
            elem4.style.display="none"
            
                if(r>1 && elem3){
                elem3.style.visibility="hidden"
                elem3.style.display="none"
                }      
                      
            }        
        }
    
    }    
   
}

function ddRQ_onchange(){

var elem=""
var elemB=""
var elemH=""

var qty=document.getElementById(ddRQid)
qty=qty.options[qty.selectedIndex].value

    for(i=1;i<=4;i++){
    elem=document.getElementById("Room" + i + "A")
    elemB=document.getElementById("Room" + i + "B")
    elemH=document.getElementById("Room" + i + "H")    
    
        if(i<=qty){
        elem.style.visibility="visible"
        elem.style.display="block"
        elemB.style.visibility="visible"
        elemB.style.display="block"
            if(i>1 && elemH){
            elemH.style.visibility="visible"
            elemH.style.display="block"
            }
        //display any child age boxes (for page load purposes)
        ddCh_onchange(i)
        
        }
        else{
        elem.style.visibility="hidden"
        elem.style.display="none"
        elemB.style.visibility="hidden"
        elemB.style.display="none"
        
            if(i>1 && elemH){
            elemH.style.visibility="hidden"
            elemH.style.display="none"
            }
            
        //hide any open age labels
        elemB=document.getElementById("Room" + i + "C")
        elemB.style.visibility="hidden"
        elemB.style.display="none"
        
        //hide and reset any open age boxes
        displayAges(0,i)
        elemH=document.getElementById(ddChArray[i-1])
        elemH.selectedIndex=0
        }
    }

}

function ddCh_onchange(roomno){

var elem=""
var elemCD=""
var elemH=document.getElementById("HelpChildAges")

var qty=document.getElementById(ddChArray[roomno-1])
qty=qty.options[qty.selectedIndex].value
//Child Ages label
elem=document.getElementById("Room" + roomno + "C")

    if(qty>0){
    elem.style.visibility="visible"
    elem.style.display="block"
    elemH.style.visibility="visible"
    elemH.style.display="block"
    }
    else{
    elem.style.visibility="hidden"
    elem.style.display="none"      
    }

//Child ages dropdown    
displayAges(qty,roomno)
       
}

function displayAges(childcount,roomno){

    for(c=1;c<=3;c++){
    elemCD=document.getElementById("Room" + roomno + "CD" + c)
            
        if(c <= childcount){
        elemCD.style.visibility="visible"
        elemCD.style.display="inline"        
        }
        else{
        elemCD.style.visibility="hidden"
        elemCD.style.display="none"
        }
    }

}

//opens virtual tour
function tour(propertycode){

	//close any currently open windows
	if(self.awin && Browser==1){
	self.awin.close()
	}
	
var url="http://www.vr360.net/oxford/homes/" + propertycode
var awin
var popup=window.open (url,'Slideshow','left=0,top=0,toolbar=no,location=no,directories=no,status=no,scrollbars=no,width=700,height=500')
self.awin=popup

var submitbutton=document.getElementById(submit)
submitbutton.disabled=false
var busyBox = new BusyBox(brow, "BusyBoxDiv", "BusyBoxImg","busyBox", 12, "http://www.goamerica.co.uk/Furniture/images/Wait/wait_", ".jpg", 50,"MainAvail");    
}

function showForm(propertycode){
var elem=document.getElementById("reqform")

if(elem){
elem.style.visibility="visible"
elem.style.display="block"
elem=document.getElementById(ddhc)

    for(s=0;s<elem.options.length;s++){
        if(elem.options[s].value==propertycode){
        elem.selectedIndex=s
        break
        }
    }

var submitbutton=document.getElementById(submit)
submitbutton.disabled=false
var busyBox = new BusyBox(brow, "BusyBoxDiv", "BusyBoxImg","busyBox", 12, "http://www.goamerica.co.uk/Furniture/images/Wait/wait_", ".jpg", 50,"MainAvail");    
}
}

function dp_onclick(){

var elem=document.getElementById(Cid)
    if(elem.value=="dd/mm/yyyy"){
    elem.value=""
    }
}

function openhelp(){
var elem=document.getElementById("divHelpText")

if(elem){

var objLeft = document.body.clientWidth / 2
var objTop = document.body.clientHeight / 2
objLeft = objLeft + document.body.scrollLeft - 365
//objTop = objTop + document.body.scrollTop - 155

    if(elem.style.visibility=="hidden"){
    elem.style.left=objLeft
    //elem.style.top=objTop
    elem.style.top=20
    elem.style.visibility="visible"
    elem.style.display="block"    
    }
    else{
    elem.style.visibility="hidden"
    elem.style.display="none"
    }
    
var submitbutton=document.getElementById(submit)
submitbutton.disabled=false
var busyBox = new BusyBox(brow, "BusyBoxDiv", "BusyBoxImg","busyBox", 12, "http://www.goamerica.co.uk/Furniture/images/Wait/wait_", ".jpg", 50,"MainAvail");    
}
}


