// Keyword Search - ajax script
// Author: David Butcher, MSc., BSc., MIEEE,

// create XMLHttpRequest holder
var xmlHttp = '';
xmlHttp = null;

xmlHttp = createXmlHttpRequestObject();
var displayDiv = '';

// creats an XMLHttpRequest instance
function createXmlHttpRequestObject(){

	//var xmlHttp;
	//browser dependent creation
	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");
		
		
		// try each element
		for(var i = 0; i < XmlHttpVersions.length && !xmlHttp; i++)
		{
			try{
				xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
 			}
			catch (e){
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
		}
	}
	
	//return the created object or display error
	if(!xmlHttp)
		alert("Error creating the XMLHttpRequest Object. myAjax.js");
	else
	{    
		return xmlHttp;
	}	
}

//called to read files from server
function process(search_terms,searchtype){
	
	displayDiv = getAllDivs();
	alert("in Process: search terms= " + search_terms + ' ');
	//check for void xmlHttp object
	if(xmlHttp){
	    // yes so connect to server
		try{
			xmlHttp.async = false;		   	   
		   	xmlHttp.open("GET", "http://www.ittralee.ie/en/CourseModules/ks_search.php?search_terms=" + search_terms + "&searchtype=" + searchtype, true);		    	
			xmlHttp.onreadystatechange = handleRequestStateChange;			
			xmlHttp.send(null);			
		}
		// catch any errors
		catch (e){			
			xmlHttp.abort();
			alert("CCenter " + ccentre + " Div= " + thisdiv + ".   Can't connect to server. process myAjax. " + e.toString())
		}
	}
	else
		alert("no xmlHttp object in process");
}


function handleRequestStateChange(){

 
 	//alert("ReadyState = " + xmlHttp.readyState);
   	//alert("Status = " + xmlHttp.status.toString());
	if(xmlHttp.readyState == 4){
		//myStaffDetails.innerHTML += "Request status: 4 (ready) <br />";		
		//check status is OK
		if(xmlHttp.status == 200){			
			try{				
				//read message
				response = xmlHttp.responseText;
				//get reference to display div
				var dispDiv = document.getElementById(displayDiv);
				//display message				
				dispDiv.innerHTML = response;	
				Effect.Appear('dispDiv');			
			}
			catch (e){
				//if fail display error
				alert("Error reading the reponse: myajax handleRequestStateChange<br />" + e.toString());
			}
		}
		else{
			// status is not ok
			alert("Error there was a problem reading the data:\n" + xmlHttp.statusText);
		}
	}
}


// ajax contact details functions do not delete

/* function loadContent(elementSelector, sourceURL) {
$(""+elementSelector+"").load("http://www.ittralee.ie/en/contactPhp/"+sourceURL+"");
} */

function loadContent(elementSelector, sourceURL) {
$(""+elementSelector+"").load(sourceURL);
}

function getAjaxCourses(search_terms,searchtype){
	process(search_terms,searchtype);	
}

function getAllDivs(){

    stringbeans=document.getElementsByTagName("div"); 
    for (var w=0;w<stringbeans.length;w++) 
    { 
    	if(stringbeans[w].id.substr(0,5)=='zone'){
    		//costcentre = stringbeans[w].id.substr(6,4);
    		thisdiv = stringbeans[w].id.substr(0,5);
    		//process(thisdiv.toString()); 
    		return thisdiv.toString();   		
    	}else{}
    }
    return true;
}


