/*-----------------------------------------------------------
Dynamic FontSize Switcher written by Taewook Kang
Date: 3/18/2003, Tuesday
Contact: txkang@__REMOVE_THIS__wichita.edu
-----------------------------------------------------------*/

var divStatusCookieName = 'funCSS';
var fontSizeCookieName = 'screenFontSize';

function page_load( )
{
	/*if ( document.getElementById ) document.getElementById( 'fontSizes' ).style.display = 'block';*/

	/*txtsizer( 'getChanged',null );*/

	if ( document.getElementsByTagName )
	{		
		var cur_cookie = getCookie( divStatusCookieName );
		if ( !cur_cookie ) cur_cookie = '';

		var leftPaneObj = document.getElementById( 'leftPane' );
		
		if ( leftPaneObj != null )
		{
			var div_tags = document.getElementById( 'leftPane' ).getElementsByTagName( 'div' );

			for ( var i = 0 ; i < div_tags.length ; i++ )
				if ( div_tags[ i ].id.indexOf( 'nav_' ) != -1 )
					div_tags[ i ].style.display = 'none';

			for ( var i = 0 ; i < div_tags.length ; i++ )
				if ( cur_cookie.indexOf( FORMATTED_ID( div_tags[ i ].id ) ) != -1 )
					div_tags[ i ].style.display = '';
			
			div_tags = document.getElementById( 'content' ).getElementsByTagName( 'div' );

			for ( i = 0 ; i < div_tags.length ; i++ )
				if ( div_tags[ i ].id && cur_cookie.indexOf( FORMATTED_ID( div_tags[ i ].id ) ) != -1 )
					div_tags[ i ].style.display = 'none';
		}
		
		var cvRightPaneObj = document.getElementById( 'cvRightPane' );
		
		if ( cvRightPaneObj != null )
		{
			var div_tags = document.getElementById( 'cvRightPane' ).getElementsByTagName( 'div' );

			for ( var i = 0 ; i < div_tags.length ; i++ )
				if ( div_tags[ i ].id.indexOf( 'nav_' ) != -1 )
					div_tags[ i ].style.display = 'none';

			for ( var i = 0 ; i < div_tags.length ; i++ )
				if ( cur_cookie.indexOf( FORMATTED_ID( div_tags[ i ].id ) ) != -1 )
					div_tags[ i ].style.display = '';		

			div_tags = document.getElementById( 'content' ).getElementsByTagName( 'div' );

			for ( i = 0 ; i < div_tags.length ; i++ )
				if ( div_tags[ i ].id && cur_cookie.indexOf( FORMATTED_ID( div_tags[ i ].id ) ) != -1 ) {
					//alert("div tags = "+div_tags[i].style.display);
					div_tags[ i ].style.display = '';
				}
		}
		
	}
}

function changeFont() {

	var fName = document.FontSelector.Fonts.options[document.FontSelector.Fonts.selectedIndex].value;
	var fSize = document.FontSelector.FontSize.options[document.FontSelector.FontSize.selectedIndex].value;

//	alert("Selected Font = " + fName+"\nFont Size = " + fSize);
	changeFontsize(fSize, fName);

}

function changeFontsize(fSize, fName) {

	var panes = new Array(6);
	panes[0] = "leftPane";
	panes[1] = "content";
	panes[2] = "centerPane";
	panes[3] = "rightPane";
	panes[4] = "article";
	panes[5] = "programBox"; 

	if ( document.getElementsByTagName )	// 1st If condition
	{
		for( var x=0 ; x < panes.length ; x++ ) {	// 1st for loop
			var paneObj = document.getElementById(panes[x]);
			
			if ( paneObj != null )	// 2nd If condition
			{
				var div_tags = paneObj.getElementsByTagName( 'div' );
	
				var eachElement;
				var i;
				
				for ( i = 0 ; i < div_tags.length ; i++ ) {		// 2nd for loop
					eachElement = div_tags[i];
				
					var span_tags =div_tags[i].getElementsByTagName( 'span' );
						
					for( var s = 0 ; s < span_tags.length ; s++ ) {		// 3rd for loop
						var spanElement = span_tags[s];
						spanElement.style.fontSize = fSize;
						spanElement.style.fontFamily = fName;
					}	// End of 3rd for loop
					
					var currentFontSize;

					if (document.defaultView) {   // Mozilla
						currentFontSize = document.defaultView.getComputedStyle(eachElement, null).getPropertyValue("font-size");
						var currFontSize = parseInt(currentFontSize, 10);
						var newSize = parseInt(fSize, 10);
						var newFontSize = currFontSize + newSize - currFontSize;
						eachElement.style.fontSize = newFontSize+"px";
					}
					else if (eachElement.currentStyle) {   // IE
						currentFontSize = eachElement.currentStyle.fontSize;
						eachElement.style.fontSize = fSize;
					}
					eachElement.style.fontFamily = fName;
				}	// End of 2nd for loop
			}	// End of 2nd If condition
		}	// End of 1st for loop
	}	// End of 1st If condition
}

function closeAllOpenMenus( el, whichPane )
{
	var leftPaneObj = document.getElementById( whichPane );
	if ( leftPaneObj != null )
	{
		var div_tags = document.getElementById( whichPane ).getElementsByTagName( 'div' );

		for ( var i = 0 ; i < div_tags.length ; i++ )
			if ( div_tags[ i ].id.indexOf( 'nav_' ) != -1 )
				if ( el.id != div_tags[ i ].id )
				{
					div_tags[ i ].style.display = 'none';
					remove_cookie( div_tags[ i ].id );
				}
	}
}

function toggle_nav( o )
{
	if ( document.getElementById )
	{
		var el = document.getElementById( o );
		if ( el.style.display == '' )
		{
			el.style.display = 'none';
			remove_cookie( el.id );
		}
		else
		{
			el.style.display = '';
			append_cookie( el.id );
			closeAllOpenMenus( el, "leftPane" );
		}
	}
}

function toggle_div( o )
{
	if ( document.getElementById )
	{
		var el = document.getElementById( o );
	
		if ( el.style.display == '' )
		{
			el.style.display = 'none';
			append_cookie( el.id );
		}
		else 
		{
			el.style.display = '';
			remove_cookie( el.id );
		}
	}
}

function toggle_cv_nav( o )
{
	if ( document.getElementById )
	{
		var el = document.getElementById( o );

		if ( el.style.display == '' )
		{
			el.style.display = 'none';
			remove_cookie( el.id );
		}
		else 
		{
			el.style.display = '';
			append_cookie( el.id );
			closeAllOpenMenus( el, "cvRightPane" );
		}
	}
}

function toggle_cv_div( o )
{
	if ( document.getElementById )
	{
		var el = document.getElementById( o );
	
		if ( el.style.display == '' )
		{
			el.style.display = 'none';
			append_cookie( el.id );
		}
		else 
		{
			el.style.display = '';
			remove_cookie( el.id );
		}
	}
}
	
function FORMATTED_ID( id ) { return '|' + id + '|'; }
	
function append_cookie( id )
{
	var cur_cookie = getCookie( divStatusCookieName );
	var n_id = FORMATTED_ID( id );
	if ( !cur_cookie ) cur_cookie = '';
	setCookie( divStatusCookieName,cur_cookie + n_id );
}

function remove_cookie( id )
{
	var n_id = FORMATTED_ID( id );
	var cur_cookie = getCookie( divStatusCookieName );

	if ( cur_cookie )
	{
		var t_loc;
		var t_len = cur_cookie.length;
		var n_id_len = n_id.length;
		
		for ( var i = 0 ; i < t_len ; i++ )
		{
			t_loc = cur_cookie.indexOf( n_id );
				
			if ( t_loc != -1 )
			{
				cur_cookie = cur_cookie.slice( 0,t_loc ) + cur_cookie.slice( t_loc + n_id_len,t_len );
				t_len = cur_cookie;
			}
		}

		setCookie( divStatusCookieName,cur_cookie );
	}
}
	
function setCookie( name,value,path,domain,secure) 
{
	path = '/';
	domain = '.wichita.edu';
	
	var curCookie = name + "=" + escape( value ) +
		"; expires=Fri, 01-Jan-2100 00:00:01 GMT" +
		( ( path ) ? "; path=" + path : "" ) +
		( ( domain ) ? "; domain=" + domain : "" ) +
		( ( secure ) ? "; secure" : "" );

	document.cookie = curCookie;
}

function getCookie( name ) 
{
	var dc = document.cookie;
	var prefix = name + "=";
	var begin = dc.indexOf( "; " + prefix );
	if ( begin == -1 ) 
	{
		begin = dc.indexOf( prefix );
		if ( begin != 0 ) return null;
	} 
	else
		begin += 2;

	var end = document.cookie.indexOf( ";",begin );
		
	if ( end == -1 ) end = dc.length;
		
	return unescape( dc.substring( begin + prefix.length,end ) );
}

function deleteCookie( name,path,domain ) 
{
	path = '/';
	domain = '.wichita.edu';
	
	if ( getCookie( name ) ) 
	{
		document.cookie = name + "=" + 
			( ( path ) ? "; path=" + path : "" ) +
			( ( domain ) ? "; domain=" + domain : "" ) +
			"; expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
}

// Added by Yashwant on July 25, 2004
function validate_loginForm(form) {

	var loginField = form.login_name;
	var loginName = form.login_name.value;

	var passwdField = form.password;
	var passwd = form.password.value;

	if ( isEmpty( loginName ) )
		return showErrorMessage(loginField, "can not be blank. Please Enter correct "+loginField.name );

	else if ( containsWhiteSpaces( loginName ) )
		return showErrorMessage(loginField,"should not contain white spaces. Please Enter "+loginField.name+" without spaces");

	if ( isEmpty( passwd ) )
		return showErrorMessage(passwdField, "can not be blank. Please Enter correct "+passwdField.name );

	else if ( containsWhiteSpaces( passwd ) )
		return showErrorMessage(passwdField,"should not contain white spaces. Please Enter "+passwdField.name+" without spaces");

	return true;

}

function prompt_DBSelection(form) {

	var dbSelField = form.dbnames;
	var selectedFieldVal = dbSelField.value;

	if ( isEmpty( selectedFieldVal ) )
		return showErrorMessage("", "Please Select Database Name From List and Click Go Button. Cheers!" );

	return true;
}

function trim( strValue ) {

	var objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;

	// check for leading and trailing white spaces

	if ( objRegExp.test(strValue) ) {
		// remove leading and trailing white spaces
		strValue = strValue.replace(objRegExp, '$2');
	}

	return strValue;

}

function isEmpty( strValue ) {

	var strTemp = strValue;
	strTemp = trim( strTemp );

	if ( strTemp.length <= 0 )
		return true;

	return false;

}

function containsWhiteSpaces( strValue ) {
	var strTemp = strValue;
	strTemp = trim( strTemp );

	if ( strTemp.length > 0 && strTemp.indexOf(' ') > 0 )
		return true;
	
	return false;

}

function showErrorMessage( theField, strMsg ) {

	if( theField.name != null ) {
		alert( theField.name + " " + strMsg );
		theField.focus();
		theField.select();
	}
	
	else
		alert(strMsg);

	return false;

}

function open_program_win() {
   window.open("/conference/program_pop_up.html","Program", "width=640,height=605, left=0, top=0, menubar=no, status=no, location=no, toolbar=no, scrollbars=no");
}

function selectCountry() {

	var cityField = document.ConsulateForm[1];
	var countryField = document.ConsulateForm[0];
	//alert("city field = " + cityField.name)
	
	var cityName = cityField.value;
	var countryName = countryField.value;
//	alert("country name = " + countryField.selectedIndex);
	
	if ( countryField.selectedIndex > 0 )
		cityField.selectedIndex = 0;

	return true;
}

function selectCity() {

	var cityField = document.ConsulateForm[1];
	var countryField = document.ConsulateForm[0];
	var cityName = cityField.value;
	var countryName = countryField.value;
	
	if ( cityField.selectedIndex > 0 )
		countryField.selectedIndex = 0;

	return true;
}

/*
function txtsizer( pEls,inc,cSize )
{
	var tags = new Array( 'div','tr','p','font','span' );
	var sizes = new Array( 'xx-small','x-small','small','medium','large','x-large','xx-large' );
	var defaultSize;

	if ( !inc ) 
	{
		var cCookie = getCookie( fontSizeCookieName );
		
		if ( cSize )
			defaultSize = cSize;
		else
			defaultSize = ( cCookie ) ? parseInt( cCookie ) : 2;
	}
	else
	{
		defaultSize += inc;
		defaultSize = ( defaultSize > 6 ) ? 6 : defaultSize;
		defaultSize = ( defaultSize < 0 ) ? 0 : defaultSize;
	}
	
	cSize = defaultSize;

	var pEls = pEls.split( '|' );
	var pEl = null;
	var j;
	
	for ( var i = 0 ; i < pEls.length ; i++ )
	{
		pEl = pEls[ i ];

		if ( pEl && pEl != '' )	
		{
			for ( j = 0 ; j < tags.length ; j++ )
				sizeIt( pEl,tags[ j ],sizes[ cSize ] );
		}
	}
	
	sizeHn( cSize,sizes );
	
	setCookie( fontSizeCookieName,cSize );
}

function sizeIt( pEl,tp,sz )
{
	var d = document;
	var els = null;
	
	if ( !( els = d.getElementById( pEl ) ) )
		els = d.getElementsByTagName( pEl )[ 0 ];
	
	els = els.getElementsByTagName( tp );

	var i;
	var cEl = null;
	
	for ( i = 0 ; i < els.length ; i++ )
	{
		cEl = els[ i ];
		cEl.style.fontSize = sz;
	}	
}

function sizeHn( i,sizeA )
{
	if ( document.all )
	{
		var arrHn = '',ci = 0,co = document.getElementById( 'content' );
		i = parseInt( i );
		
		for ( var j = 1 ; j < 8 ; ++j )
		{
			arrHn = co.getElementsByTagName( 'H' + j );
					
			if ( arrHn.length > 0 )
			{
				for ( var k = 0 ; k < arrHn.length ; ++k )
				{
					switch( arrHn[ k ].tagName.toUpperCase( ) )
					{
						case 'H1':
								arrHn[ k ].style.fontSize = sizeA[ ( i + 3 < sizeA.length ) ? i + 3 : 6 ];
								break;
						case 'H2':
								arrHn[ k ].style.fontSize = sizeA[ ( i + 2 < sizeA.length ) ? i + 2 : 6 ];
								break;
						case 'H3':
								arrHn[ k ].style.fontSize = sizeA[ ( i + 1 < sizeA.length ) ? i + 1 : 6 ];
								break;
						case 'H4':
								arrHn[ k ].style.fontSize = sizeA[ i ];
								break;
						case 'H5':
								arrHn[ k ].style.fontSize = sizeA[ ( ( i - 1 ) > 0 ) ? i - 1 : 0 ];
								break;
						case 'H6':
								arrHn[ k ].style.fontSize = sizeA[ ( ( i - 2 ) > 0 ) ? i - 2 : 0 ];
								break;
					}
				}
			}
		}
	}
}
*/