var tw_image = new Array();
tw_image[0]='images/twid0.gif';
tw_image[1]='images/twid1.gif';

var subPageCursor = 1;

/*
var twid = new Array();
for(i=0;i<2;i++)
twid[i] = new Array(2)

window.onload = initTwids;
*/
function createRequestObject() {
	var ro;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer"){
		ro = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
		ro = new XMLHttpRequest();
	}
	return ro;
}

var http = createRequestObject();

function sndReq(action) {
	http.open('get', "<? echo $_SERVER['PHP_SELF']; ?>?action="+action);
	http.onreadystatechange = handleResponse;
	http.send(null);
}

function handleResponse() {
	if(http.readyState == 4){
		var response = http.responseText;
		var update = new Array();
		if(response.indexOf('|' != -1)) {
			update = response.split('|');
			document.getElementById(update[0]).innerHTML = update[1];
		}
	}
}

function validateCourseSearch(keyword)
{
	if ((keyword == "") || (keyword == "Enter Keyword(s) (required)"))
	{
		alert("Please enter a keyword.");
		return false;
	} else {
		return true;
	}
}

function validateSiteSearch(keyword)
{
	if ((keyword == "") || (keyword == "SEARCH TELECAMPUS"))
	{
		alert("Please enter a keyword.");
		return false;
	} else {
		return true;
	}
}

function getElementsByClassName(clsName) 
{ 
	var arr = new Array(); 
	var elems = document.getElementsByTagName("*");
	for ( var cls, i = 0; ( elem = elems[i] ); i++ )
	{
		if ( elem.className == clsName )
		{
			arr[arr.length] = elem;
		}
	}
	return arr;
}

function toggleCloaking(szDivID, iState) // 1 visible, 0 hidden
	{
		if(document.layers)          //NN4+
		{
			document.layers[szDivID].display = iState ? "block" : "none";
		}
		else if(document.getElementById)    //gecko(NN6) + IE 5+
		{
			var obj = document.getElementById(szDivID);
			obj.style.display = iState ? "block" : "none";
		}
		else if(document.all)     // IE 4
		{
			document.all[szDivID].style.display = iState ? "block" : "none";
		}
	}
	
	function toggleView(myview)
	{
		for (i=0; i<subPage.length; i++)
		{
			toggleCloaking(subPage[i],0);
		}
		toggleCloaking(myview,1);
	}
      
  function initTwidler(twID,twState)
	{
		var x = document.getElementById(twID);
		var tw = twState;
		if (!x) 
		{
			//alert("Can't find "+twID);
			return;
		}
		var y = x.getElementsByTagName('a');
		var z = x.getElementsByTagName('div');
		//alert('Found twidler '+twID+' with anchor '+y[0].id+' and div '+z[0].id);
		
 		//alert(z[0].id);
 		if(y[0].getAttribute('is_twidler'))
 /*
 		// alert('Found twidler '+twID+' with class '+y[0].getAttribute('class')+' and div '+z[0].id);
		var pattern = new RegExp("(^|\\s)(twidler)(\\s|$)");
 		// alert("regex found " + pattern.test(y[0].getAttribute('class')));
 		if(pattern.test(y[0].getAttribute('class')))

 */
 		{ 
 			//alert("state: " + tw);
 			
 			
 			//document.getElementById(z[0].id).style.backgroundImage='url(images/twid'+tw+'.gif)';
 			y[0].onclick = function()
 			{
 				twState = (twState + 1) % 2;
 				//alert(z[0].id + " " + twState);
 				toggleCloaking(z[0].id,twState);
 				setFooter();
				document.getElementById(y[0].id).style.backgroundPosition = '0px ' + (-43 * twState) + 'px';
 				
 				//alert('Internal: ' + z[0].id + " " + twState);
 				return false;
			}
			
			
		}
		//alert('External: ' + z[0].id + " " + twState);
		if (tw <=0)
		{
			toggleCloaking(z[0].id,0);
		} else {
			twState = (twState + 1) % 2;
		}
 	}
	
	function initTwids() {
		//alert('tw 1: '+twid[0][0]+' '+twid[0][1]+', tw 2: '+twid[1][0]+' '+twid[1][1]);
		for (i=0;i<twid.length;i++)
		{
			onum=i+1;
			// alert('twidid: ' + twid[i][0] + ' state: ' + twid[i][1]);
			initTwidler(twid[i][0], twid[i][1]);
			
			
		}
	}

	function initSubPages()
	{
		if (subPage != null)
		{
			for (i=0;i<subPage.length;i++)
			{
				var p = i + 1;
				var pager = 'pager_'+p;
				//alert (i+', '+subPage[i]);
				if (i == 0)
				{
					toggleCloaking(subPage[i], 1);
				} else {
					toggleCloaking(subPage[i], 0);
				}
				x = getElementsByClassName(pager);
				for (j=0; j<x.length; j++)
				{
					eval("x[j].onclick = function(){subPageCursor = '" + p +"';toggleView('resultSubPage_" + p + "');setFooter();}");
				}
			}
			return false;
		}
	}
	

/*
			eval("x.onclick = function()
				{
					alert(subPage[i]);
					toggleView(subPage[i]);
					return false;
				}
			");
*/
	
	
	
	
	
	
	function getWindowHeight() {
		var windowHeight = 0;
		if (typeof(window.innerHeight) == 'number') {
				windowHeight = window.innerHeight;
		} else {
			if (document.documentElement && document.documentElement.clientHeight) {
				windowHeight = document.documentElement.clientHeight;
			} else {
				if (document.body && document.body.clientHeight) {
					windowHeight = document.body.clientHeight;
				}
			}
		}
		return windowHeight;
	}

	function chnageHome() {
		if (document.getElementById && document.getElementById('tc_home_banner')) {
			var banner_div = document.getElementById('tc_home_banner');
			if (banner_div.className.match(/uas/)) {
				var randomnumber= Math.floor(Math.random()*4) +1;
				banner_div.className  = 'tc_uas_banner' + randomnumber;
			}
		}
	}
	
	function setFooter() {
		if (document.getElementById) {
			var windowHeight = getWindowHeight();
			if (windowHeight > 0) {
				var contentHeight = document.getElementById('outermost').offsetHeight;
				var footerElement = document.getElementById('tc_glb_footer');
				var footerHeight  = footerElement.offsetHeight;
				if (windowHeight - (contentHeight) >= 20) {
					footerElement.style.position = 'relative';
					footerElement.style.top = (windowHeight - (contentHeight + footerHeight)) + 'px';
				} else {
					footerElement.style.position = 'static';
				}
			}
		}
	}

function int_b_feature_link() {
	if (document.getElementById('b_feature')) {
		document.getElementById('b_feature').onclick = function() {
			//window.open('./dl_rightforyou_v13.html',
			//			'tutorial',
			//			'innerWidth=800,innerHeight=600');
			window.open('../dl_rightforyou_v13.html', 'tutorial', 'width=700,height=517,toolbar=0,location=0,status=0,menubar=0,scrollbars=0,resizable=1'); return false;
	}
	//    window.open(a_tag.href, 'news', 'width=761,height=608,toolbar=0,location=0,status=0,menubar=0,scrollbars=1,resizable=1'); return false;
    return false;
		return false;
	}
}


/**
	db: try other method  == revert if neeeded 
	
	window.onload = function() {
			initTwids();
			chnageHome();
			setFooter();
		}
		**/
	
	window.onresize = function() {
		setFooter();
	}
	
	
function init_search_form() {
	sf = document.getElementsByTagName('form')[0];
/*	if (sf.id == "home_search_form" || sf.id == "int_search_form") {
		alert(document.getElementById('catalog').checked);
	} */
	if (sf.id == "home-search-form" || sf.id == "int-search-form") {
		document.getElementById('schedule').onclick = function() {
			document.getElementById('term_terms').className = 'schedule';
		}
		document.getElementById('catalog').onclick = function() {
			document.getElementById('term_terms').className = 'catalog';
		}
	
		//alert(document.getElementById('catalog').checked + ' ' + document.getElementById('term_terms').className);
	}
}
	
	
/** NOTHING OF INTEREST BEYOND HERE **/


function init() {
       // quit if this function has already been called
       if (arguments.callee.done) return;

       // flag this function so we don't do the same thing twice
       arguments.callee.done = true;

       // create the "page loaded" message
       //var text = document.createTextNode("Page loaded!");
       //var message = document.getElementById("message");
       //message.appendChild(text);
			initTwids();
			init_search_form();
			int_b_feature_link();
			initSubPages();
			chnageHome();
			setFooter();
   };

   /* for Mozilla */
   if (document.addEventListener) {
       document.addEventListener("DOMContentLoaded", init, null);
   }

   /* for Internet Explorer */
   /*@cc_on @*/
   /*@if (@_win32)
    document.write("<script defer src=ie_onload.js><"+"/script>"); 
   /*@end @*/

   /* for other browsers */
   window.onload = init;