/*-----------------------------------------------------------
Dynamic FontSize Switcher written by Taewook Kang
Date: 3/18/2003, Tuesday
Contact: txkang@__REMOVE_THIS__wichita.edu
-----------------------------------------------------------*/

var divStatusCookieName = 'funCSS';
var fontSizeCookieName = 'screenFontSize';
var sizeA = new Array( 'xx-small','x-small','small','medium','large','x-large','xx-large' );
var currentSizeAIndex = 1;
var orig_cssText = '';

function attach_event( )
{
	var o = document.getElementsByTagName( 'input' );
	var cType = '';
	
	for ( var i = 0 ; i < o.length ; i++ )
	{
		cType = o[ i ].type.toUpperCase( );
	
		if ( cType == 'TEXT' || cType == 'PASSWORD' )		
		{
			o[ i ].attachEvent( 'onfocus',h_input_on );
			o[ i ].attachEvent( 'onblur',h_input_off );
		}
	}	
}

function h_input_on( )
{
	var el = window.event.srcElement;
	orig_cssText = el.style.cssText;
	el.style.background = '#FFFFCC';
}	

function h_input_off( )
{
	var el = window.event.srcElement;
	el.style.cssText = orig_cssText;
}

function page_load( )
{
	if ( document.getElementById ) document.getElementById( 'fontSizes' ).style.display = 'block';

	var initial_screenFontSize = getCookie( fontSizeCookieName );
		
	if ( initial_screenFontSize )
	{
		var el = document.getElementById( 'content' );
		el.style.fontSize = sizeA[ initial_screenFontSize ];

		var el = document.getElementById( 'leftPane' );
		el.style.fontSize = sizeA[ initial_screenFontSize ];
			
		changeHSize( initial_screenFontSize );
		changeTableFontSize( initial_screenFontSize );

		currentSizeAIndex = initial_screenFontSize;
	}

	if ( document.getElementsByTagName )
	{		
		var cur_cookie = getCookie( divStatusCookieName );
		if ( !cur_cookie ) cur_cookie = '';
		
		var div_tags = document.getElementById( 'leftPane' ).getElementsByTagName( 'div' );

		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';
	}
		
	//if ( document.all ) attach_event( );
}

function changeTableFontSize( i )
{
	var co = document.getElementsByTagName( 'TABLE' );
	for ( var j = 0 ; j < co.length ; ++j )	co[ j ].style.fontSize = sizeA[ i ];
}

function changeHSize( i )
{
	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;
					}
				}
			}
		}
	}
}

function changeFontSize( i ) 
{
	var newSizeAIndex = currentSizeAIndex - ( -i );
	
	if ( newSizeAIndex < 0 || newSizeAIndex == sizeA.length )
	{}
	else
	{
		var el = document.getElementById( 'content' );
		el.style.cssText = 'font-size:' + sizeA[ newSizeAIndex ];
			
		var el = document.getElementById( 'leftPane' );
		el.style.cssText = 'font-size:' + sizeA[ newSizeAIndex ];

		changeHSize( newSizeAIndex );
		changeTableFontSize( newSizeAIndex );

		currentSizeAIndex = newSizeAIndex;
		
		setCookie( fontSizeCookieName,currentSizeAIndex );
			
/*---------------------------------------------------------------
		if ( !document.all )
		{				
			var e = el[ 0 ];
			e.parentNode.replaceChild( e,e );
		}
-----------------------------------------------------------------*/

		//alert( getCookie( fontSizeCookieName ) );
	}
}

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 );
		}
	}
}
	
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 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";
	}
}