// JavaScript Document

// Ajax Request
var ajax = new Ajax();
// AJAX Engine
function Ajax() {
	
	this.toString = function() {
		return "Ajax";
	}
	
	this.makeRequest = function(_method, _url, _callbackMethod) {
			this.request = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject ("MSXML2.XMLHTTP");
			this.request.onreadystatechange = _callbackMethod;
			this.request.open(_method, _url, true);
			this.request.send(_url);
	}
	
	this.checkReadyState = function(_id, _1, _2, _3) {
		switch(this.request.readyState) {
			case 1:
				document.getElementById(_id).innerHTML = _1;
				break;
			case 2:
				document.getElementById(_id).innerHTML = _2;
				break;
			case 3:
				document.getElementById(_id).innerHTML = _3;
				break;
			case 4:
				document.getElementById(_id).innerHTML = "";
				return this.request.status;
		}
	}
}

var ajaxtarget;
var ajaxdropdown;
var ajaxfield;

// change school functions-------------------------------------------------------------------------------------
function onResponse() {
	if (ajax.checkReadyState('ajaxstatus', 'sending...', 'receiving...', 'parsing...') == 200) {
		var response = ajax.request.responseXML.documentElement;
		var iH = '<ul>';
		var gbcID = response.getElementsByTagName('list')[0].getAttribute('gbcID');
		
		//if (response.getElementsByTagName('list')[0].childNodes.length > 1) { not IE compatible (tossers!)
		if ((isIE() && response.getElementsByTagName('list')[0].childNodes.length > 0) || response.getElementsByTagName('list')[0].childNodes.length > 1) {
			for (var aNode = response.getElementsByTagName('list')[0].firstChild; aNode != null; aNode=aNode.nextSibling) {
				if (aNode.nodeType == 1) {
					iH += '<li><a href="javascript:MMC_selectajax('+aNode.getAttribute('gbcID')+','+aNode.getAttribute('schoolID')+',\''+String(aNode.firstChild.data).replace(/"/,"&quot;")+'\');" title="'+String(aNode.firstChild.data).replace(/\\/,'')+'">'+String(aNode.firstChild.data).replace(/\\/,'')+'</a></li>';
				}
			}
		} else {
			iH += '<li>[no matches]</li>';
		}
		iH += '</ul>';
		document.getElementById(ajaxdropdown).innerHTML = iH;
		document.getElementById(ajaxdropdown).style.display = "block";
	}
}

function MMC_ajaxupdate(gbcID,d,id,f) {
	if (document.getElementById(d).value.length >= 3) {
		//alert(id);
		ajaxdropdown = id;
		ajaxtarget = d;
		ajaxfield = f;
		
		ajax.makeRequest("GET", "/ajax/getschoollist.php?str="+document.getElementById(ajaxtarget).value+"&gbcID="+gbcID, onResponse);//+"merchantID="+mid, onResponse);
	} else {
		document.getElementById(id).style.display = 'none';
	}
}

function MMC_selectajax(gbcID,schoolID,str) {
	document.getElementById(ajaxdropdown).style.display = 'none';
	document.getElementById(ajaxfield).value=schoolID;
	document.getElementById(ajaxtarget).value=str;
	document.getElementById(ajaxtarget).focus();
	
		location.href="/gbcresults/"+gbcID+"/"+schoolID+"/gbcviewschooldata/";
	 
}

function isIE() {
	var r = (navigator.userAgent.indexOf('MSIE')!=-1)?true:false;
	return r;
}
