var request = false;

try {
	request = new XMLHttpRequest();
} catch (trymicrosoft) {
	try {
		request = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (othermicrosoft) {
		try {
			request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (failed) {
			request = false;
		}
	}
}

var timeLocHeight = 0;

function collapse(area) {		
	var headerName = area + "_arrow";

	var collapseable = document.getElementById(area);
	var header = document.getElementById(headerName).getElementsByTagName("img")[0];
				
	if (collapseable.className == "show") {
		collapseable.className = "hide";
		header.className = "collapsed";
		header.src = "./images/arrow_collapsed.gif";
	} else {
		collapseable.className = "show";			
		header.className = "expanded";
		header.src = "./images/arrow_expanded.gif";
	}
	
	return false;
}


function matchHeight(div,profile,reg) {
	var headerNum = document.getElementById("sidebar").getElementsByTagName("h2")[0].offsetHeight;

	if (reg != "0") { 
		var regNum = document.getElementById("sidebar").getElementsByTagName("div")[0].offsetHeight + 2; 
		var profileLoc = 1;
	} else {
		var regNum = 0;
		var profileLoc = 0;
	}

	if (profile != "") { 
		var profileNum = document.getElementById("sidebar").getElementsByTagName("div")[profileLoc].offsetHeight + headerNum + 2; 
	} else {
		var profileNum = document.getElementById("sidebar").getElementsByTagName("div")[profileLoc].offsetHeight + headerNum + 2; 
	}

	var content = document.getElementById("content");
	var contentHeight = content.offsetHeight;
				
	var newHeight = contentHeight - profileNum - regNum - headerNum - 2 - 24;
		
	var theArea = document.getElementById(div);

	theArea.className = "show";

	if (contentHeight < document.getElementById("sidebar").offsetHeight) {
		theArea.style.height = newHeight;
		theArea.setAttribute("style","min-height: 180px; height: " + newHeight + "px");
	} else {
		theArea.setAttribute("style","border-bottom: none;");
	}
	
	
	timeLocHeight = newHeight;
}

function switchOrder(template,sort) {
	var url = 'get_events.php?eventTemplateID=' + template + '&order=' + sort;

	request.open("GET",url,true);
	request.onreadystatechange = reOrder;
	request.send(null);

	var bar = document.getElementById("timelocLinks").getElementsByTagName("a");
	
	for (i=0;i<bar.length;i++) {
		if (bar[i].getAttribute("id") == sort) {
			bar[i].className = 'active';
		} else {
			bar[i].className = '';		
		}
	}

}

function reOrder() {
	if (request.readyState == 4) {
		var response = request.responseXML;
		
		var results = response.getElementsByTagName("results")[0].firstChild.data;
		var templateid = response.getElementsByTagName("templateid")[0].firstChild.data;
		var order = response.getElementsByTagName("order")[0].firstChild.data;
				
		var result_text = document.createElement("div");
		result_text.style.height = timeLocHeight;
		result_text.setAttribute("style","height:" + timeLocHeight + "px");
		
		result_text.className = 'clear';
		
		for (i=0;i<results;i++) {
			var result = document.createElement("div");
			result.className = 'event-location';
		
			var city = response.getElementsByTagName("city")[i].firstChild.data;
			var state = response.getElementsByTagName("state")[i].firstChild.data;
			var start = response.getElementsByTagName("start")[i].firstChild.data;
			var distance = response.getElementsByTagName("distance")[i].firstChild.data;
			var eventID = response.getElementsByTagName("eventid")[i].firstChild.data;
			
			var cityName = document.createElement("h6");
			var cityStateStr = city + ", " + state;			
			var cityText = document.createTextNode(cityStateStr);
			cityName.appendChild(cityText);

			var dateTime = document.createElement("p");
			var dateText = document.createTextNode(start);
			var distanceText = document.createTextNode(distance);
			dateTime.appendChild(dateText);
			
			if (order == 'zip') { 
				dateTime.appendChild(document.createElement("br"));
				dateTime.appendChild(distanceText); 
			}
			
			var linksList = document.createElement("ul");
			linksList.className = 'actions';

			var linksList_item1 = document.createElement("li");
			linksList_item1.className = "first";
			var linksList_link1 = document.createElement("a");
			linksList_link1.href = 'event.php?eventID=' + eventID;
			linksList_link1.innerHTML = 'View Details';

			
			var linksList_item2 = document.createElement("li");
			var linksList_link2 = document.createElement("a");
			linksList_link2.href = 'event_registration.php?eventID=' + eventID;
			linksList_link2.innerHTML = 'Register';

			linksList_item1.appendChild(linksList_link1);
			linksList_item2.appendChild(linksList_link2);			
			linksList.appendChild(linksList_item1);
			linksList.appendChild(linksList_item2);
			
			result.appendChild(cityName);
			result.appendChild(dateTime);
			result.appendChild(linksList);

			result_text.appendChild(result);
		}
		
		var oldResults = document.getElementById("times_locations");
		
		oldResults.parentNode.replaceChild(result_text,oldResults);
		result_text.setAttribute("id","times_locations");
	}
}