	
	// Ajax Posting v1.0
        // Written by Kris Wilkinson
        // Duplication, Copying & Distribution prohibited

        var xmlHttp, sourceID, destinationID, responseType;

        function createXMLHttpRequest() {
                if (window.ActiveXObject) {
                        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

                }
                else if (window.XMLHttpRequest) {
                        xmlHttp = new XMLHttpRequest();

                }
        }

        function createQueryString() {

                var sourceDiv = document.getElementById(sourceID);
                var queryString = '';

                if ( sourceDiv.hasChildNodes() ) {

                        var divFields = sourceDiv.childNodes;
                        for (var i=0; i<divFields.length;i++) {

                                if (divFields[i].name && divFields[i].value) {
                                        queryString = queryString + divFields[i].name + "=" + divFields[i].value + "&";
				}

                        }

                }

                return queryString;

        }

        function doRequestUsingPOST(source, destination, response, async, query) {

                createXMLHttpRequest();
                sourceID = source; destinationID = destination; responseType = response;

                var url = "ajax.php";
                var queryString = query;
		if (!queryString) { queryString = createQueryString(); }

		if (async == true) {

                	xmlHttp.open("POST", url);
                	xmlHttp.onreadystatechange = handleStateChange;
                	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
                	xmlHttp.send(queryString);

		} else {

                	xmlHttp.open("POST", url, false);
                	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
                	xmlHttp.send(queryString);
			parseResults();

		}

        }

	function handleStateChange() {
		
                if(xmlHttp.readyState == 4) {
                        if(xmlHttp.status == 200) {
                                parseResults();
                        }
                                
                }
        }
                         
        function parseResults() {
                 
                var response = xmlHttp.responseText;

                if (responseType == 'innerHTML') {
			document.getElementById(destinationID).innerHTML = response;
		} else if (responseType == 'value') { 
			document.getElementById(destinationID).value = response;
		}

        }

	function updateDiv(id, html) {

		document.getElementById(id).innerHTML = html;

	}
