/*
	required javascript to be included:
	
	/jobsm_js/accessibilitySupport.js
	javascript in page /jobsm_common/headScript.jsp
	/jobsm_js/commonDebug.js
	
*/

var currentFontSizeElementId = 'toolBox:formOKUMenuChangeFontSize:currentSize';
var currentFontColorElementId = 'toolBox:formOKUMenuChangeFontColor:currentColor';
var currentFontTypeElementId = 'toolBox:formOKUMenuChangeFontType:currentType';

var suspendErrorBox = true;
var suspendDebugBox = true;
var suspendMessageBox = false;

function commonBodyOnLoad() {
	
	if(typeof bodyOnResize == 'function') {
		window.onresize = bodyOnResize;
	} 

	//pageLoadProgress.progressDetail('Patch Hyperlinks...');
	//patchHyperlink(commonDialogToolBox);

	if(isIE6()) {
		pageLoadProgress.progressDetail('Patch IE6 bugs - Appending IE Class Name...');
		appendIEClassName(document.body,'_inCompatibleIE');
		pageLoadProgress.progressDetail('Patch IE6 bugs - Processing PNGs');
		pngFix();
	}
	
	quickSearchInputTextInit();
	
	pageLoadProgress.progressDetail('Building dialog box...');
	var alertDialogToolBox = new LinkToImmediateToolBox('toolBox:alertDialogToolBox','focusMarkError()');
	var commonDialogToolBox = new LinkToImmediateToolBox('toolBox:commonDialogToolBox');

	pageLoadProgress.progressDetail('Innitializing menues...');
	assignNewPopMenu('bannerBar:formThemeSwitchForOKU:themeSwitchForOKUMenuButton', 'bannerBar:formThemeSwitchForOKU:themeSwitchForOKUMenu', false);

	changeFontSizeInit();
	assignNewToolBox('bannerBar:formThemeSwitchForOKU:OKUMenuChangeFontSize', 'toolBox:OKUMenuChangeFontSizeToolBox', 'changeFontSizeStart();', 'changeFontSizeClose();');

	changeFontColorInit();
	assignNewToolBox('bannerBar:formThemeSwitchForOKU:OKUMenuChangeFontColor', 'toolBox:OKUMenuChangeFontColorToolBox', 'changeFontColorStart();', 'changeFontColorClose();');

	changeFontTypeInit();
	assignNewToolBox('bannerBar:formThemeSwitchForOKU:OKUMenuChangeFontType', 'toolBox:OKUMenuChangeFontTypeToolBox', 'changeFontTypeStart();', 'changeFontTypeClose();');
	
	assignNewToolTip('bannerBar:formQuickSearch:quickSearchToolTipHelpButton', 'bannerBar:formQuickSearch:quickSearchToolTipHelp', true, null, 300, 'forever');

	if(document.getElementById('tabbingBar:formTabbingBar:jsTabMoreButton') && document.getElementById('tabbingBar:formTabbingBar:jsQuickAccessMenu')) {
		assignNewPopMenu('tabbingBar:formTabbingBar:jsTabMoreButton', 'tabbingBar:formTabbingBar:jsQuickAccessMenu', false, null, 150, 500);
			assignNewPopMenu('tabbingBar:formTabbingBar:jsQuickQuery', 'tabbingBar:formTabbingBar:jsQuickAccessQuickQueryMenu', false, "activeMenuItem", 500, 500);
			assignNewPopMenu('tabbingBar:formTabbingBar:jsQuickUpdate', 'tabbingBar:formTabbingBar:jsQuickAccessQuickUpdateMenu', false, "activeMenuItem", 500, 500);
				if(document.getElementById('tabbingBar:formTabbingBar:jsQuickUpdateAcademic') && document.getElementById('tabbingBar:formTabbingBar:jsQuickUpdateAcademicMenu')) {
					assignNewPopMenu('tabbingBar:formTabbingBar:jsQuickUpdateAcademic', 'tabbingBar:formTabbingBar:jsQuickUpdateAcademicMenu', false, "activeMenuItem", 500, 500);
				}
			assignNewPopMenu('tabbingBar:formTabbingBar:jsQuickSearch', 'tabbingBar:formTabbingBar:jsQuickAccessQuickSearchMenu', false, "activeMenuItem", 500, 500);
			assignNewPopMenu('tabbingBar:formTabbingBar:jsQuickList', 'tabbingBar:formTabbingBar:jsQuickAccessQuickListMenu', false, "activeMenuItem", 500, 500);
	}

	if(document.getElementById('tabbingBar:formTabbingBar:empTabMoreButton') && document.getElementById('tabbingBar:formTabbingBar:empQuickAccessMenu')) {
		assignNewPopMenu('tabbingBar:formTabbingBar:empTabMoreButton', 'tabbingBar:formTabbingBar:empQuickAccessMenu', false, null, 150, 500);
			assignNewPopMenu('tabbingBar:formTabbingBar:empQuickQuery', 'tabbingBar:formTabbingBar:empQuickAccessQuickQueryMenu', false, "activeMenuItem", 500, 500);
			assignNewPopMenu('tabbingBar:formTabbingBar:empQuickUpdate', 'tabbingBar:formTabbingBar:empQuickAccessQuickUpdateMenu', false, "activeMenuItem", 500, 500);
			assignNewPopMenu('tabbingBar:formTabbingBar:empQuickList', 'tabbingBar:formTabbingBar:empQuickAccessQuickListMenu', false, "activeMenuItem", 500, 500);
	}

	if(document.getElementById('iconBar:formIcons:moreLink') && document.getElementById('iconBar:formIcons:moreIconsMenu')) {
		assignNewPopMenu('iconBar:formIcons:moreLink', 'iconBar:formIcons:moreIconsMenu', false, null, 200, 600);
	}

	//page finished initializing
	pageLoadProgress.close();
	
	alertDialogToolBox.autoOpen();

	markError();		
}

function commonBodyOnKeyPress() {
	
}

function commonBodyOnUnLoad() {

}

function commonBodyOnResize() {
	//ourViewPort = getViewPort();
	//please plugin viewport to use
	
	repositionToolBox();
}

function printOnAlertBox() {
	var boxName = arguments[0];
	var message = arguments[1];

	var elementText = document.getElementById(boxName+'Text');
	elementText.innerHTML += message+'<br />';
	
	var element = document.getElementById(boxName);
	element.style.display = 'block';
}

function closeAlertBox() {
	var boxName = arguments[0];
	
	clearAlertBox(boxName);
	
	var element = document.getElementById(boxName);
	element.style.display = 'none';
}

function clearAlertBox() {
	var boxName = arguments[0];
	var elementText = document.getElementById(boxName+'Text');
	elementText.innerHTML = '';
}

function printOnErrorBox() {
	if(suspendErrorBox) return;
	printOnAlertBox('errorBox',arguments[0]);
}

function closeErrorBox() {
	closeAlertBox('errorBox');
}

function printOnDebugBox() {
	if(suspendDebugBox) return;
	printOnAlertBox('debugBox',arguments[0]);
}

function closeDebugBox() {
	closeAlertBox('debugBox');
}

function printOnMessageBox() {
	if(suspendMessageBox) return;
	printOnAlertBox('messageBox',arguments[0]);
}

function closeMessageBox() {
	closeAlertBox('messageBox');
}

function isEmpty(aString) {
	if(aString!=null) {
		if (aString.length==0) {
			return true;
		}else { 
			return false; 
		}
	} else { 
		return true; 
	}
}

function quickSearchInputTextInit() {
	var inputElem = document.getElementById('bannerBar:formQuickSearch:quickSearchInputText');
	var bragText = document.getElementById('bannerBar:quickSearchBrag').innerHTML;
	
	if(inputElem && inputElem!=null) {
		if(isEmpty(inputElem.value)) {
			inputElem.value = bragText;
		}
		inputElem.onfocus = onfocus;
		inputElem.onblur = onblur;
		
	}else{
		printOnErrorBox('quickSearchInputText: '+inputElem);
	}
	
	function onfocus() {
		if(inputElem.value==bragText) {
			inputElem.value='';
		}
	}
	
	function onblur() {
		if(isEmpty(inputElem.value)) {
			inputElem.value=bragText;
		}
	}
}
