// University of Washington
// Department of Dance
// Chamber Dance Company
// Author: Thomas Van Doren
// Release: 2008-01-14
// Global vars
var annc = new Array();
var l = 0;
var pimg, resp, timer0, timer1;
// The following function is responsible for the onLoad events of all pages.
function loaders(lvar) {
	switch(lvar) {
		case 'index':
			document.getElementById('join_cdc_email').style.display = 'none';
			getnews('anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			break;
		case 'logout':
			timer0 = window.setTimeout('self.location="index.php"', 3000);
			break;
		case 'login':
			getnews('anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			document.login_form.elements[0].focus();
			checkerror('add_data');
			break;
		case 'search':
			getnews('anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			break;
		case 'admin':
			getnews('./../anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			break;
		case 'add_data_chor':
			getnews('./../anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			checkerror('add_data');
			preloadimg('./../img/expand.gif');
			preloadimg('./../img/collapse.gif');
			show('chor_1');
			show('chor_2');
			break;
		case 'add_data_perf':
			getnews('./../anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			checkerror('add_data');
			preloadimg('./../img/expand.gif');
			preloadimg('./../img/collapse.gif');
			show('perf_1');
			show('perf_2');
			show('perf_3');
			show('perf_4');
			show('perf_5');
			show('perf_6');
			show('perf_7');
			show('perf_8');
			show('perf_9');
			break;
		case 'add_data_dvd':
			getnews('./../anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			checkerror('add_data');
			preloadimg('./../img/expand.gif');
			preloadimg('./../img/collapse.gif');
			show('dvd_1');
			show('dvd_2');
			show('dvd_3');
			show('dvd_4');
			show('dvd_5');
			show('dvd_6');
			show('dvd_7');
			show('dvd_8');
			show('dvd_9');
			show('dvd_10');
			show('dvd_11');
			show('dvd_12');
			show('dvd_13');
			break;
		case 'add_user':
			getnews('./../anc.txt');
			timer1 = window.setTimeout('changer()', 500);
			// play_pause();
			checkerror('add_data');
			document.add_user.name.focus();
			break;
		default:
			listsetup();
		}
}
// The following is a hack for the dropdown menus on repertoire.php if the browser does not recognize li:hover.
function listsetup() {
	if ( document.all && document.getElementById && navigator.appName == 'Microsoft Internet Explorer' ) {
		gNav = document.getElementById('nav');
		for ( i = 0; i < gNav.childNodes.length; i++ ) {
			gLI = gNav.childNodes[i];
			if ( gLI.nodeName == 'LI' ) {
				gLI.onmouseover = function() {
					gLI.classname += ' over';
				}
				gLI.onmouseout = function() {
					gLI.classname =gLI.classname.replace(' over', '');
				}
			}
		}
	}
}
// The following function is responsible for the show/hide of the CDC e-mail list new member request form.
function show(svar) {
	switch(svar) {
		case 'cdc_email':
			if ( document.getElementById('join_cdc_email').style.display == 'block' ) {
				document.getElementById('join_cdc_email').style.display = 'none';
			} else {
				document.getElementById('join_cdc_email').style.display = 'block';
				document.cdc_email_f.cdc_email_i.focus();
			}
			break;
		default:
			if ( document.getElementById(svar).style.display == 'none' ) {
				document.getElementById(svar).style.display = '';
				document.getElementById(svar+'_img').src = './../img/collapse.gif';
			} else {
				document.getElementById(svar).style.display = 'none';
				document.getElementById(svar+'_img').src = './../img/expand.gif';
			}
	}
}
// The following three functions are responsible for the changing announcements below the title image.
function getnews(nuri) {
	if ( window.XMLHttpRequest ) { 
		var xmlhttp = new XMLHttpRequest();
		xmlhttp.onreadystatechange = function() {
			if ( xmlhttp.readyState == 4 ) {
				if ( xmlhttp.status == 200 ) {
					annc = xmlhttp.responseText.split("\n");
				}
			}
		}
		xmlhttp.open("GET", nuri, true);
		xmlhttp.send(null);
	} else if ( window.ActiveXObject ) {
		var xmlhttp = new ActiveXObject('Microsoft.XMLHTTP'); 
		if ( xmlhttp ) {
			xmlhttp.onreadystatechange = function() {
				if ( xmlhttp.readyState == 4 ) {
					if ( xmlhttp.status == 200 ) {
						annc = xmlhttp.responseText.split("\n");
					}
				}
			}
			xmlhttp.open('GET', nuri, true);
			xmlhttp.send();
		}
	}
}
function postNews() {
	if ( xmlhttp.readyState == 4 ) {
		if ( xmlhttp.status == 200 ) {
			annc = xmlhttp.responseText.split("\n");
		}
	}
}
function changer() {
	document.getElementById('announce').innerHTML = annc[l];
	var c = annc.length - 1;
	if ( l < c ) {
		l++;
	} else {
		l = 0;
	}
	timer0 = window.setTimeout('changer()', 3000);
}
// The following function forces the error message box to disappear after a set time.
function checkerror(frm) {
	switch ( frm ) {
		case 'add_data':
			if ( document.getElementById('perf_error') ) {
				var timer2 = window.setTimeout('show("perf_error")', 5000);
			}
			break;
	}
}
// The following function preloads an image.
function preloadimg(iuri) {
	pimg = new Image();
	pimg.src = iuri;
}