var xmlHttp = createXmlHttpRequestObject();

function setDate(div,field,myDate)
	{
	document.getElementById(div).innerHTML="";
	document.getElementById(field).value=myDate;
	};

function removeDate(div,field)
	{
	document.getElementById(div).innerHTML="";
	document.getElementById(field).value="";
	};

function createXmlHttpRequestObject()
        {
        var xmlHttp;

        try
                {
                xmlHttp = new XMLHttpRequest();
                }
        catch(e)
                {
                var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0",
                                                "MSXML2.XMLHTTP.5.0",
                                                "MSXML2.XMLHTTP.4.0",
                                                "MSXML2.XMLHTTP.3.0",
                                                "MSXML2.XMLHTTP",
                                                "Microsoft.XMLHTTP");

                for (var i=0; i < XmlHttpVersions.length && !xmlHttp; i++)
                        {
                        try
                                {
                                xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
                                }
                        catch(e)
                                {}
                        }
                }
        if (!xmlHttp)
                alert("Error creating the XMLHttpRequest object.");
        else
                return xmlHttp;
        }


var DteNow = new Date();
var month = DteNow.getMonth()+1; 
var year = DteNow.getFullYear();

function jackcal(action,field,div)
	{
	if (xmlHttp)
		{
		try
			{
			if (action == "next") { month = month + 1; };
			if (action == "prev") { month = month - 1; };

			if (month < 1) { month = 12; year = year - 1; };
			if (month > 12) { month = 1; year = year + 1; };

			var params = "month=" + month + "&year=" + year + "&field=" + field + "&div=" + div;

			xmlHttp.open("GET", "jackcal.php?" + params, true);
			xmlHttp.onreadystatechange = handleRequestStateChange;
			xmlHttp.send(null);
			}
		catch(e)
			{
			alert("Can't connect to server:\n" + e.toString());
			}
		}
	return month;
	}

function handleRequestStateChange()
        {
        if (xmlHttp.readyState == 4)
                {
                if (xmlHttp.status == 200)
                        {
                        try
                                {
                                handleServerResponse();
                                }
                        catch(e)
                                {
                                alert("Error reading the response: " + e.toString());
                                }
                        }
                else
                        {
                        alert("There was a problem retrieving the data:\n" + xmlHttp.statusText);
                        }
                }
        }

function handleServerResponse()
        {
        var xmlResponse = xmlHttp.responseXML;
        xmlRoot = xmlResponse.documentElement;

        responseArray = xmlRoot.getElementsByTagName("text");
        divArray = xmlRoot.getElementsByTagName("divtext");
        var html = "";
	var div = "";

        for (var i = 0; i < divArray.length; i++)
                div += divArray.item(i).firstChild.data

        for (var i = 0; i < responseArray.length; i++)
                html += responseArray.item(i).firstChild.data

        myDiv = document.getElementById(div);
        myDiv.innerHTML = html;
        }

