function rowOver(row) {
	var targetRow = document.getElementById(row);
	if (targetRow.setAttribute("class", "results-break-Hi")){}
}

function rowOut(row){
	var targetRow = document.getElementById(row);
	if (targetRow.setAttribute("class", "results-break")) {}
}

function createRequest() {
  try {
    request = new XMLHttpRequest();
  } catch (trymicrosoft) {
    try {
      request = new ActiveXObject("Msxm12.XMLHTTP");
    } catch (othermicrosoft) {
      try {
        request = new ActiveXObject("Microsoft.XMLHTTP");
      }	catch (failed) {
        request = null;
      }
    }
  }
  if (request == null) {
    alert("Error creating request object!");
  } else {
    return request;
  }
}

var init = null;
var count = 0;
var active1 = 'false';
var active2 = 'false';
var active3 = 'false';
var active4 = 'false';

var request1 = createRequest();    
var request2 = createRequest();
var request3 = createRequest();
var request4 = createRequest();

function initialization() {
  var loadingDiv = document.getElementById("loading-gif");
  loadingDiv.style.display = 'inline';
  if (count == 0){
    clearTimeout(init);
    init = setTimeout("getResults(request1)", 400);
  } else if (count == 1) {
    request2.abort();
    if (init) {
      clearTimeout(init);
    }
    init = setTimeout("getResults(request1)", 400);
  } else if (count == 2) {
    request3.abort();
    if (init) { 
      clearTimeout(init);
    }
    init = setTimeout("getResults(request2)", 400);
  } else if (count == 3) {
    request4.abort();
    if (init) {
      clearTimeout(init);
    }
    init = setTimeout("getResults(request3)", 400);
  } else if (count == 4) {
    request1.abort();
    if (init) {
      clearTimeout(init);
    }
    init = setTimeout("getResults(request4)", 400);
  }
}

function getResults(request) {
  var loadingDiv = document.getElementById("loading-gif");
  loadingDiv.style.display = 'inline';
  var state = document.getElementById("state").value;
	var city = document.getElementById("city").value;
	var college = document.getElementById("college").value;
	if (state == "" && city == "" && college == "") {
    var loadingDiv = document.getElementById("loading-gif");
    loadingDiv.style.display = 'none';
	} else {
		city = Trim(city);
		college = Trim(college);
		if (state == "" && city == "" && college == "") {
      var loadingDiv = document.getElementById("loading-gif");
      loadingDiv.style.display = 'none';
    } else {
      var loadingDiv = document.getElementById("loading-gif");
			var url = "/findCollege.php?state=" + state + "&city=" + city + "&college=" 
							+ college;
      sendRequest(request, url);
		}
	}
}

function sendRequest(request, url) {
      var loadingDiv = document.getElementById("loading-gif");
      loadingDiv.style.display = 'inline';
      if (count == 0) {
        count = 2;
        active1 = 'true';
        active2 = 'false';
        active3 = 'false';
        active4 = 'false';
      } else if (count == 1) {
        count = 2;
        active1 = 'true';
        active2 = 'false';
        active3 = 'false';
        active4 = 'false';
      } else if (count == 2) {
        count = 3;
        active1 = 'false';
        active2 = 'true';
        active3 = 'false';
        active4 = 'false';
      } else if (count == 3) {
        count = 4;
        active1 = 'false';
        active2 = 'false';
        active3 = 'true';
        active4 = 'false';
      } else if (count == 4) {
        count = 1;
        active1 = 'false';
        active2 = 'false';
        active3 = 'false';
        active4 = 'true';
      } else {
        count = 1;
      }
      
      request.open("GET", url, true);
			request.onreadystatechange = updatePage;
			request.send(null);
}

function updatePage() {
  var loadingDiv = document.getElementById("loading-gif");
  loadingDiv.style.display = 'inline';
  if (request1.readyState == 4) {
    if (t)
      clearTimeout(t);
    var t = setTimeout("request1.abort()", 60000);
    var loadingDiv = document.getElementById("loading-gif");
    loadingDiv.style.display = 'none';
		try {
			// REQUEST 1
			if (request1.status == 200) {
				var xmlDoc = request1.responseXML;
				var xmlCount = xmlDoc.getElementsByTagName("count-results")[0];
				var count = xmlCount.firstChild.nodeValue;
				var xmlFlag = xmlDoc.getElementsByTagName("flag")[0];
				var flag = xmlFlag.firstChild.nodeValue;
				var resultsDiv = document.getElementById("results");
				var para = document.getElementsByTagName("p")[0];
				var newPara = document.createElement("p");
        		var resNum = document.getElementById("results-number");
				
				if (active1 == 'false') {
        		} else if (flag != 1) {
          			if (count == 0) {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned no results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
			      	}else {
            			for (var i = 0; i < count; i++) {
	             			var xmlCollege = xmlDoc.getElementsByTagName("college-name")[i];
			              	var college = xmlCollege.firstChild.nodeValue;
			              	var xmlState = xmlDoc.getElementsByTagName("college-state")[i];
				            var state = xmlState.firstChild.nodeValue;
				            var xmlCity = xmlDoc.getElementsByTagName("college-city")[i];
			             	var xmlUrl = xmlDoc.getElementsByTagName("college-url")[i];
			              	var city = xmlCity.firstChild.nodeValue;
			              	var Furl = xmlUrl.firstChild.nodeValue;
			              	var xmlFooId = xmlDoc.getElementsByTagName("foo-id")[i];
			              	var fooId = xmlFooId.firstChild.nodeValue;
			              	var url = encodeURIComponent(Furl);
			              	var urlXfer = 'link.php?link=' + url + '&fooid=' + fooId;
			              	var insert = college;
			              	var insert2 = city + ", " + state;
			              	var linkText = document.createTextNode(insert);
			              	var paraText2 = document.createTextNode(insert2);
				            var collegeLink = document.createElement('a');
			              	collegeLink.href = urlXfer;
			              	collegeLink.target = '_blank';
			              	collegeLink.appendChild(linkText);
			              	var br = document.createElement('br');
			              	var br2 = document.createElement('br');
			              	var br3 = document.createElement('br');
			              	var d = document.createElement('div');
			              	d.id = fooId;
			              	if (d.className = 'results-break'){}
			              	if (d.setAttribute("class", "results-break")){}
			              	var overFooId = "rowOver('"+fooId+"')";
				           	var outFooId = "rowOut('"+fooId+"')";
				            if (d.setAttribute("onmouseover", overFooId)){}
				            if (d.setAttribute("onmouseout", outFooId)){}			            
				            newPara.appendChild(d);
				            d.appendChild(collegeLink);
				            d.appendChild(br);
				            d.appendChild(paraText2);
				            d.appendChild(br2);
				            if (i == (count - 1)){
				            	newPara.appendChild(br3);
			          		}
			          	}
            			para.parentNode.removeChild(para);
            			resultsDiv.appendChild(newPara);
            			replaceText(resNum, count);
          			}
				} else {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned too many results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							d.appendChild(br);
							d.appendChild(br2);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
				}
        		request1 = createRequest();
			}else {
     		}
		} catch (requestMessedUp) {
			request1.abort();
		}
	// REQUEST 2
	} else if (request2.readyState == 4) {
    	if (t)
      	clearTimeout(t);
    	var t = setTimeout("request2.abort()", 60000);
   	 	var loadingDiv = document.getElementById("loading-gif");
    	loadingDiv.style.display = 'none';
		try {
			if (request2.status == 200) {
				var xmlDoc = request2.responseXML;
				var xmlCount = xmlDoc.getElementsByTagName("count-results")[0];
				var count = xmlCount.firstChild.nodeValue;
				var xmlFlag = xmlDoc.getElementsByTagName("flag")[0];
				var flag = xmlFlag.firstChild.nodeValue;
				var resultsDiv = document.getElementById("results");
				var para = document.getElementsByTagName("p")[0];
				var newPara = document.createElement("p");
        var resNum = document.getElementById("results-number");
        if (active2 == 'false') {
        }else if (flag != 1) {
          			if (count == 0) {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned no results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
			      	}else {
            			for (var i = 0; i < count; i++) {
	             			var xmlCollege = xmlDoc.getElementsByTagName("college-name")[i];
			              	var college = xmlCollege.firstChild.nodeValue;
			              	var xmlState = xmlDoc.getElementsByTagName("college-state")[i];
				            var state = xmlState.firstChild.nodeValue;
				            var xmlCity = xmlDoc.getElementsByTagName("college-city")[i];
			             	var xmlUrl = xmlDoc.getElementsByTagName("college-url")[i];
			              	var city = xmlCity.firstChild.nodeValue;
			              	var Furl = xmlUrl.firstChild.nodeValue;
			              	var xmlFooId = xmlDoc.getElementsByTagName("foo-id")[i];
			              	var fooId = xmlFooId.firstChild.nodeValue;
			              	var url = encodeURIComponent(Furl);
			              	var urlXfer = 'link.php?link=' + url + '&fooid=' + fooId;
			              	var insert = college;
			              	var insert2 = city + ", " + state;
			              	var linkText = document.createTextNode(insert);
			              	var paraText2 = document.createTextNode(insert2);
				            var collegeLink = document.createElement('a');
			              	collegeLink.href = urlXfer;
			              	collegeLink.target = '_blank';
			              	collegeLink.appendChild(linkText);
			              	var br = document.createElement('br');
			              	var br2 = document.createElement('br');
			              	var br3 = document.createElement('br');
			              	var d = document.createElement('div');
			              	d.id = fooId;
			              	if (d.className = 'results-break'){}
			              	if (d.setAttribute("class", "results-break")){}
			              	var overFooId = "rowOver('"+fooId+"')";
				           	var outFooId = "rowOut('"+fooId+"')";
				            if (d.setAttribute("onmouseover", overFooId)){}
				            if (d.setAttribute("onmouseout", outFooId)){}			            
				            newPara.appendChild(d);
				            d.appendChild(collegeLink);
				            d.appendChild(br);
				            d.appendChild(paraText2);
				            d.appendChild(br2);
				            if (i == (count - 1)){
				            	newPara.appendChild(br3);
			          		}
			          	}
            			para.parentNode.removeChild(para);
            			resultsDiv.appendChild(newPara);
            			replaceText(resNum, count);
          			}				}
				else {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned too many results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							d.appendChild(br);
							d.appendChild(br2);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
				}
				request2 = createRequest();
			}else {
      		}
		} catch (requestMessedUp) {
			request2.abort();
		}
	// REQUEST 3	
	} else if (request3.readyState == 4) {
    if (t)
      clearTimeout(t);
    var t = setTimeout("request3.abort()", 60000);
    var loadingDiv = document.getElementById("loading-gif");
    loadingDiv.style.display = 'none';
		try {
			if (request3.status == 200) {
				var xmlDoc = request3.responseXML;
				var xmlCount = xmlDoc.getElementsByTagName("count-results")[0];
				var count = xmlCount.firstChild.nodeValue;
				var xmlFlag = xmlDoc.getElementsByTagName("flag")[0];
				var flag = xmlFlag.firstChild.nodeValue;
				var resultsDiv = document.getElementById("results");
				var para = document.getElementsByTagName("p")[0];
				var newPara = document.createElement("p");
				var resNum = document.getElementById("results-number");
				if (active3 == 'false') {
        } else if (flag != 1) {
          			if (count == 0) {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned no results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
			      	}else {
            			for (var i = 0; i < count; i++) {
	             			var xmlCollege = xmlDoc.getElementsByTagName("college-name")[i];
			              	var college = xmlCollege.firstChild.nodeValue;
			              	var xmlState = xmlDoc.getElementsByTagName("college-state")[i];
				            var state = xmlState.firstChild.nodeValue;
				            var xmlCity = xmlDoc.getElementsByTagName("college-city")[i];
			             	var xmlUrl = xmlDoc.getElementsByTagName("college-url")[i];
			              	var city = xmlCity.firstChild.nodeValue;
			              	var Furl = xmlUrl.firstChild.nodeValue;
			              	var xmlFooId = xmlDoc.getElementsByTagName("foo-id")[i];
			              	var fooId = xmlFooId.firstChild.nodeValue;
			              	var url = encodeURIComponent(Furl);
			              	var urlXfer = 'link.php?link=' + url + '&fooid=' + fooId;
			              	var insert = college;
			              	var insert2 = city + ", " + state;
			              	var linkText = document.createTextNode(insert);
			              	var paraText2 = document.createTextNode(insert2);
				            var collegeLink = document.createElement('a');
			              	collegeLink.href = urlXfer;
			              	collegeLink.target = '_blank';
			              	collegeLink.appendChild(linkText);
			              	var br = document.createElement('br');
			              	var br2 = document.createElement('br');
			              	var br3 = document.createElement('br');
			              	var d = document.createElement('div');
			              	d.id = fooId;
			              	if (d.className = 'results-break'){}
			              	if (d.setAttribute("class", "results-break")){}
			              	var overFooId = "rowOver('"+fooId+"')";
				           	var outFooId = "rowOut('"+fooId+"')";
				            if (d.setAttribute("onmouseover", overFooId)){}
				            if (d.setAttribute("onmouseout", outFooId)){}			            
				            newPara.appendChild(d);
				            d.appendChild(collegeLink);
				            d.appendChild(br);
				            d.appendChild(paraText2);
				            d.appendChild(br2);
				            if (i == (count - 1)){
				            	newPara.appendChild(br3);
			          		}
			          	}
            			para.parentNode.removeChild(para);
            			resultsDiv.appendChild(newPara);
            			replaceText(resNum, count);
          			}
				}else {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned too many results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							d.appendChild(br);
							d.appendChild(br2);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
				}
				request3 = createRequest();
			}else {
      		}
		} catch (requestMessedUp) {
			request3.abort();
		}
		
	// REQUEST 4
	} else if (request4.readyState == 4) {
    if (t)
      clearTimeout(t);
    var t = setTimeout("request4.abort()", 60000);
    var loadingDiv = document.getElementById("loading-gif");
    loadingDiv.style.display = 'none';
		try {
			if (request4.status == 200) {
				var xmlDoc = request4.responseXML;
				var xmlCount = xmlDoc.getElementsByTagName("count-results")[0];
				var count = xmlCount.firstChild.nodeValue;
				var xmlFlag = xmlDoc.getElementsByTagName("flag")[0];
				var flag = xmlFlag.firstChild.nodeValue;
				var resultsDiv = document.getElementById("results");
				var para = document.getElementsByTagName("p")[0];
				var newPara = document.createElement("p");
        var resNum = document.getElementById("results-number");
				if (active4 == 'false') {
        }else if (flag != 1) {
          			if (count == 0) {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned no results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
			      	}else {
            			for (var i = 0; i < count; i++) {
	             			var xmlCollege = xmlDoc.getElementsByTagName("college-name")[i];
			              	var college = xmlCollege.firstChild.nodeValue;
			              	var xmlState = xmlDoc.getElementsByTagName("college-state")[i];
				            var state = xmlState.firstChild.nodeValue;
				            var xmlCity = xmlDoc.getElementsByTagName("college-city")[i];
			             	var xmlUrl = xmlDoc.getElementsByTagName("college-url")[i];
			              	var city = xmlCity.firstChild.nodeValue;
			              	var Furl = xmlUrl.firstChild.nodeValue;
			              	var xmlFooId = xmlDoc.getElementsByTagName("foo-id")[i];
			              	var fooId = xmlFooId.firstChild.nodeValue;
			              	var url = encodeURIComponent(Furl);
			              	var urlXfer = 'link.php?link=' + url + '&fooid=' + fooId;
			              	var insert = college;
			              	var insert2 = city + ", " + state;
			              	var linkText = document.createTextNode(insert);
			              	var paraText2 = document.createTextNode(insert2);
				            var collegeLink = document.createElement('a');
			              	collegeLink.href = urlXfer;
			              	collegeLink.target = '_blank';
			              	collegeLink.appendChild(linkText);
			              	var br = document.createElement('br');
			              	var br2 = document.createElement('br');
			              	var br3 = document.createElement('br');
			              	var d = document.createElement('div');
			              	d.id = fooId;
			              	if (d.className = 'results-break'){}
			              	if (d.setAttribute("class", "results-break")){}
			              	var overFooId = "rowOver('"+fooId+"')";
				           	var outFooId = "rowOut('"+fooId+"')";
				            if (d.setAttribute("onmouseover", overFooId)){}
				            if (d.setAttribute("onmouseout", outFooId)){}			            
				            newPara.appendChild(d);
				            d.appendChild(collegeLink);
				            d.appendChild(br);
				            d.appendChild(paraText2);
				            d.appendChild(br2);
				            if (i == (count - 1)){
				            	newPara.appendChild(br3);
			          		}
			          	}
            			para.parentNode.removeChild(para);
            			resultsDiv.appendChild(newPara);
            			replaceText(resNum, count);
          			}
				}else {
							var d = document.createElement('div');
							var s = document.createElement('span');
							s.id = 'result-mssg';
							if (d.className = 'results-break'){}
							if (d.setAttribute("class", "results-break")){}
							var errorInsert2 = "Your request returned too many results. Please refine your search.";
			            var paraText = document.createTextNode(errorInsert2);
							var br = document.createElement('br');
						   var br2 = document.createElement('br');
			            newPara.appendChild(d);
							d.appendChild(s);
							d.appendChild(br);
							d.appendChild(br2);
							s.appendChild(paraText);
							para.parentNode.removeChild(para);
			            resultsDiv.appendChild(newPara);
							replaceText(resNum, count);
				}
        		request4 = createRequest();
			}else {
      		}
		} catch (requestMessedUp) {
			request4.abort();
		}
	}
}
