var xmlhttp;
xmlhttp=GetXmlHttpObject();
var type;

//holds the calendar layer
var cal;

function addLoadEvent(func) 
{
  var oldonload = window.onload;
  if (typeof window.onload != "function") 
  {
    window.onload = func;
  } 
  else 
  {
    window.onload = function() 
    {
      oldonload();
      func();
    }
  }
}


function changeCalendar(lnk)
{
    var myQS = lnk.href.split('?')[1];
    calendar(myQS);
    return false;
}

function changeYear(lnk)
{
    var myQS = lnk.href.split('?')[1];
    calendarYear(myQS);
    return false;
}

function thisCal()
{
	var curr_month;
  var curr_year;
  var myQS;
  
  if(getQuerystring("month") == "")
  {
    var d = new Date();
    curr_month = d.getMonth()+1;
    curr_year = d.getFullYear();  
  }
  else
  {
    curr_month = getQuerystring("month")
    curr_year = getQuerystring("year");
  }
   
  myQS = "month=" + curr_month + "&year=" + curr_year;

	if((!document.getElementById("cal")) && (!document.getElementById("myCal")))
	{
    return false;
  }
  else if((!document.getElementById("myCal")))
  {  
    var par = document.getElementById("bk");
    
    par.innerHTML = "To hire out the Pavilion please use the calendar to the right or call <br /><strong>01225 486902</strong> to check availabilty.";
    cal = document.getElementById("cal");
    calendar(myQS);
  }
  else
  {   
      cal = document.getElementById("myCal");
      calendarYear(myQS);
  }
  
  //alert(myQS);
  //calendar(myQS);
  //return false;
}

function getQuerystring(key, default_)
{
  if (default_==null) default_="";
  key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
  var qs = regex.exec(window.location.href);
  if(qs == null)
    return default_;
  else
    return qs[1];
}

function calendar(qs)
{
    type = 0;
    var bool = true;
    
    if(qs == "")
    {
        alert("Nope!");
        bool = false;
    }
    
    if(bool)
    {
        //xmlhttp=GetXmlHttpObject();
        if (xmlhttp==null)
        {
            alert ("Your browser does not support XMLHTTP!");
            //return false;
            bool = false;
        }
        
        if(bool)
        {
            //var url="Test.aspx?";
            var url="/calendar/myCal.aspx?";
            //var url="/calendar/yearCal.aspx?";
            url += qs;
            //alert(url);
            xmlhttp.onreadystatechange=stateChanged;
            xmlhttp.open("GET",url,true);
            xmlhttp.send(null);
            
        }
        else
        {
          alert("err what?")
        }
    }
    return false;
}

function calendarYear(qs)
{
    type = 0;
    var bool = true;
    
    if(qs == "")
    {
        alert("Nope!");
        bool = false;
    }
    
    if(bool)
    {
        //xmlhttp=GetXmlHttpObject();
        if (xmlhttp==null)
        {
            alert ("Your browser does not support XMLHTTP!");
            //return false;
            bool = false;
        }
        
        if(bool)
        {
            //var url="Test.aspx?";
            //var url="/calendar/myCal.aspx?";
            var url="/calendar/yearCal.aspx?";
            url += qs;
            //alert(url);
            xmlhttp.onreadystatechange=stateChanged;
            xmlhttp.open("GET",url,true);
            xmlhttp.send(null);
            
        }
        else
        {
          alert("err what?")
        }
    }
    return false;
}

function GetXmlHttpObject()
{
    if (window.XMLHttpRequest)
    {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        return new XMLHttpRequest();
    }
    if (window.ActiveXObject)
    {
        // code for IE6, IE5
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
    //return null;
    return false;
}

function stateChanged()
{
    //alert(xmlhttp.readyState);
    if (xmlhttp.readyState==4)
    {
    
        var table = xmlhttp.responseText;
        
        if(type==0)
        {
            if(!document.getElementById) {return false;}
            //if(!document.getElementById("cal")) {return false;}
            
            //var cal = document.getElementById("cal");
            
            //if(!document.getElementById("myCal")) {return false;}
            
            //var cal = document.getElementById("myCal");
            
            if(cal.hasChildNodes())
            {
              while(cal.childNodes.length >= 1)
              {
                cal.removeChild(cal.firstChild);
              }
            }
            cal.innerHTML = "";
            
            //cal.appendChild(table);
            cal.innerHTML = table;
        }
    }
    return false;
}

addLoadEvent(thisCal);
