	var selectedItems = new Array();

	if (window.captureEvents)
	{
		window.captureEvents(Event.CLICK);
		window.captureEvents(Event.MOUSEOVER);
		window.captureEvents(Event.MOUSEOUT);
		
		window.onclick = clickItem;
		window.onmouseover = overItem;
		window.onmouseout = outItem;
	}
	else
	{
		document.body.onclick = clickItem;
		document.body.onmouseover = overItem;
		document.body.onmouseout = outItem;
	}

	function getItem(e)
	{
		if(!document.getElementById)
			return null;
			
		var source = (!e) ? event.srcElement : e.target;
		var c = (source ? source.className : "");
		
		if(!source || (c != "s" && c != "a" && c != "a-t" && c != "s-t" && c != "s-s" && c != "a-s" && c != "row"))
			return null;
			
		var props = getProps(source.id);

		if(props)
			return document.getElementById("rm_" + props.row);
		
		return null;
	}

	function overItem(e)
	{
		var obj = getItem(e);
		
		if(obj)
			obj.className = 'sr_on';
	}
	
	function outItem(e)
	{
		var obj = getItem(e);
		
		if(obj)
			obj.className = 'sr';
	}
	
	function clickItem(e)
	{
		if(!document.getElementById)
			return window.alert("You must use a more modern version of Internet Explorer, Netscape, Opera, etc. to use this feature.");

		if(!e)
			var source = event.srcElement;
		else
			var source = e.target;

		if(source.className == "s" || source.className == "a")
		{
			selectedItems[selectedItems.length] = source.id;
			
			if(source.className == "a")
				source.className = "a-s";
			else
				source.className = "s-s";
		}
		else if(source.className == "s-s" || source.className == "a-s")
		{
			if(source.className == "a-s")
				source.className = "a";
			else
				source.className = "s";
			
			newSelectedItems = new Array();
			for(var i = 0; i < selectedItems.length; i++)
			{
				if(selectedItems[i] == source.id)
					continue;
				newSelectedItems[newSelectedItems.length] = selectedItems[i];
			}
			selectedItems = newSelectedItems;
		}
		else if(source.className == "t" || source.className == "a-t")
			return window.alert("Sorry, this seat is already reserved.");
		else
			return;

		var selectionText = "";
		selectedItems.sort(seatSort);
		var lastRow = "-1";
		var isFirst = true;

		if(selectedItems.length)
		{
			selectionText += "<font class='def'><b>Seats selected from section " + seatingSection + "</b>:<br/> ";

			for(var i = 0; i < selectedItems.length; i++)
			{
				var props = getProps(selectedItems[i]);

				if(lastRow != props.rowName)
				{
					if(!isFirst)
						selectionText += "</b>";
					else
						isFirst = false;
						
					if(lastRow != "-1")
						selectionText += "<br/>";
					selectionText += "&nbsp;&nbsp;&nbsp;Row <b>" + props.rowName + ",</b> Seat <b>" + props.seat;
					lastRow = props.rowName;
				}
				else
					selectionText += ", " + props.seat;
			}

			var donationText = "";
			selectionText += "<br/><br/></b>" + donationText +
				"<a href='javascript:openPrint(" + price + ");' class='def' style='text-decoration: underline;'>&raquo; Print seat selections for reference</font></font>";
		}
		else
		{
			selectionText = "Click on an available seat to display the row and seat number.";
		}

		document.getElementById("selectedSeats").innerHTML = selectionText;
	}
	
	function getProps(id)
	{
		var ind = id.indexOf('_');
		var props = new Object();
		
		props.row = id.substring(0, ind);

		var res = id.substring(ind+1);
		ind = res.indexOf('_');

		if(ind == -1)
		{
			props.seat = res;
			props.rowName = props.row;
		}
		else
		{
			props.seat = parseInt(res.substring(0, ind));
			props.isADA = true;
			props.rowName = props.row + ((props.seat % 2) == 0 ? " C" : " W");
		}
		
		return props;
	}
	
	function seatSort(s1, s2)
	{
		var s1Props = getProps(s1);
		var s2Props = getProps(s2);
		
		if(s1Props.row == s2Props.row)
			return (s1Props.seat - s2Props.seat);
		else if(s1Props.row.length == s2Props.row.length)
			return (s2Props.row > s1Props.row ? 1 : -1);
		else
			return (s2Props.row.length > s1Props.row.length ? 1 : -1);
	}
	
	function openView(view)
	{
		var newWin = window.open("stand_view_field.php?view=" + view, "view_of_stands", "height=960, width=1280");

		if(window.focus)
			newWin.focus();
	}
	
	function openPrint(cost)
	{
		if(!selectedItems.length)
		{
			window.alert("Please select your seats first.");
			return;
		}
			
		var qStr = "", price = 0;
		for(var i = 0; i < selectedItems.length; i++)
		{
			if(i)
				qStr += "|";
			qStr += selectedItems[i];
		}

		var newWin = window.open("stand_view_section_print.php?seats=" + qStr + "&section=" + seatingSection + "&price=" + cost, "print", "width=785, height=240, menubar=1, scrollbars=1,toolbar=1,resizeable=1");
	}
