﻿/********* Global variables **************************************/
var DEBUG = false;
var glbXmlRequest;
var glbContent;
var glbNavigation;
var glbHeader;
//var glbLoading;
var glbListCacheXml;
var glbListCachePage;
var glbCurrentNavigation;
var glbEvents;
var glbContentEvents;
var glbIsFacilityBased = false;
var glbSearchModules = new Array("Incident", "Report", "User", "Group", "Sport");
var glbIsSearchResult = false;
var glbXslCacheArray = new Array();
var glbModalWin;

var glbHelpFolderPath = "resources/help/";

var glbBodyFrontPath = "images/body_front.gif";
var glbBodyFrontSelectedPath = "images/body_front_selected.gif";
var glbBodyBackPath = "images/body_back.gif";
var glbBodyBackSelectedPath = "images/body_back_selected.gif";
var glbFacePath = "images/face.gif";
var glbFaceSelectedPath = "images/face_Selected.gif";

var imgPreload;
imgPreload = new Image(); imgPreload.src = glbBodyFrontPath;
imgPreload = new Image(); imgPreload.src = glbBodyFrontSelectedPath;
imgPreload = new Image(); imgPreload.src = glbBodyBackPath;
imgPreload = new Image(); imgPreload.src = glbBodyBackSelectedPath;
imgPreload = new Image(); imgPreload.src = glbFacePath;
imgPreload = new Image(); imgPreload.src = glbFaceSelectedPath;


//var globalXSL = new AkimanXslDocument("layout/global.xsl");
/*****************************************************************/ 
//Load function only for login page
function LoginLoad(){
	glbEvents = new EventList();
	glbEvents.add(document, 'click', Modal_OnBlur);
	
	glbContentEvents = new EventList();
	glbContent = document.getElementById("Content");
	glbNavigation = document.getElementById("Navigation");
	glbHeader = document.getElementById("Header");
//	glbLoading = document.getElementById("loading");
	
	var objDebug = null;
	if(DEBUG) {
		objDebug = document.getElementById("debug");
		objDebug.style.display = "";
		if(document.getElementById("jsEval")) {
			document.getElementById("jsEval").style.display = "";
		}
	}
	
	
	glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"), objDebug);
	var soapData = SoapDataBuilder("GetNavigation");
	var xml = AjaxRequest("UI.asmx",soapData);

	glbNavigation.innerHTML = TransformXML(xml,"navigation.xsl");
	ShowHeader(xml);
	//InitCalendar();
	//glbEvents.add(document, 'click', hidecal2);
	//glbEvents.add(document.getElementById("Help"), 'click', CloseHelpTopics);
	initmb();
}
//General Body Load
function BodyLoad(){
	glbEvents = new EventList();
	glbEvents.add(document, 'click', Modal_OnBlur);
	
	glbContentEvents = new EventList();
	glbContent = document.getElementById("Content");
	glbNavigation = document.getElementById("Navigation");
	glbHeader = document.getElementById("Header");
//	glbLoading = document.getElementById("loading");
	
	var objDebug = null;
	if(DEBUG) {
		objDebug = document.getElementById("debug");
		objDebug.style.display = "";
		if(document.getElementById("jsEval")) {
			document.getElementById("jsEval").style.display = "";
		}
	}
	
	
	glbXmlRequest = new AkimanXmlHTTP(document.getElementById("loading"), objDebug);
	var soapData = SoapDataBuilder("GetNavigation");
	var xml = AjaxRequest("UI.asmx",soapData);

	glbNavigation.innerHTML = TransformXML(xml,"navigation.xsl");
	ShowHeader(xml);
	InitCalendar();
	glbEvents.add(document, 'click', hidecal2);
	glbEvents.add(document.getElementById("Help"), 'click', CloseHelpTopics);
	initmb();
}


function BodyResize() {
	SetHelpPosition();
}

function UpdateNavigation(func) {
	hideCalendar();
	CloseHelp();
	glbNavigation.style.display = "block";
	if(func != glbCurrentNavigation) {
		ShowHideSearchBar(func);
		glbCurrentNavigation = func;
		var param = CustomParamBuilder("func", func);
		var soapData = SoapDataBuilder("GetNavigation",param);
		AjaxRequest("UI.asmx",soapData,"navigation.xsl","Navigation",null,true);
	}
}

function ShowHeader(xml) {
	glbHeader.innerHTML = TransformXML(xml,"header.xsl");
	ShowHideSearchBar(glbCurrentNavigation);
}

function ShowHideSearchBar(functionName) {
	var objSearch = document.getElementById("TopSearch");
	if(objSearch) {
		objSearch.style.visibility = "hidden";
		if(functionName != null) {
			for(var i=0; i<glbSearchModules.length; i++) {
				if(functionName.indexOf(glbSearchModules[i]) > -1) {
					objSearch.style.visibility = "visible";
					break;
				}
			}
		}
	}	
}

function SessionTimeout(){
	if(window.CollectGarbage) {
		window.CollectGarbage();
	}
	
	glbCurrentNavigation = "";
	window.setTimeout("ShowLogin()",10);
	ShowHeader("<Header />")
}

function NavigationReload(){
    window.setTimeout("BodyLoad()",400);
}

function ShowFirstScreen() {
	ShowIncidents();
}
function ShowBlankContent(){
    document.getElementById("Content").innerHTML = "&nbsp;";
    UpdateNavigation();
}
//onerror = handleErr;
//function handleErr(msg,url,l)
//{
//	txt="There was an error on this page.\n\n"
//	txt+="Error: " + msg + "\n"
//	txt+="URL: " + url + "\n"
//	txt+="Line: " + l + "\n\n"
//	txt+="Click OK to continue.\n\n"
//	alert(txt)
//	return true;
//}