	var reqkb;

        //cannot be rewritten to jQuery
	function DoCallback(data)
	{
		var url = 'http://getresponse.cs.monter.implix.com/xmlsearch.php';

		// branch for native XMLHttpRequest object
		if (window.XMLHttpRequest) {
			reqkb = new XMLHttpRequest();
			reqkb.onreadystatechange = processReqChange;
			reqkb.open('POST', url, true);
			reqkb.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			reqkb.send(data);
		// branch for IE/Windows ActiveX version
		} else if (window.ActiveXObject) {
			reqkb = new ActiveXObject('Microsoft.XMLHTTP')
			if (reqkb) {

				reqkb.onreadystatechange = processReqChange;
				reqkb.open('POST', url, true);

				reqkb.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
				reqkb.send(data);
			}
		}
	}

        //cannot be rewritten to jQuery
	function processReqChange()
        {
            // only if req shows 'loaded'
            if (reqkb.readyState == 4)
            {
                // only if 'OK'
                if (reqkb.status == 200)
                {
                        DisplayResults(reqkb.responseText);
                }
                else
                {
                        //alert('There was a problem retrieving the XML data:\n' +
                        reqkb.responseText);
                }
            }
	}

	function SearchQuestions(query, searchType, categoryIDs)
	{
		DoCallback('q=' + query + '&s=' + searchType + '&c=' + categoryIDs);
	}

	function DisplayResults(html)
	{
                jQuery('#SearchResults').html(html);
	}

	function CloseXMLDiv()
	{
                jQuery('#SearchResults').html('');
	}
