<!--

// Routines to show a modal div.
// The template webpage has:
// 1. a hidden asp panel where modal controls are loaded <asp:Panel ID="ModalContainer" style="display:none;" runat="server"/>
// 2. the main container <div id="Container">

function showDivModalPopup(mDivId, shw /*true=show or false=hide*/)
{
    var divM = document.getElementById(mDivId); 
    if(divM!=null)
    {
        try {
            /* Hide everything when the popup is visible */
            document.getElementById('Container').className='Container'+(shw?'Hide':'Show');
        }
        catch(er){}
        divM.style.display=shw?'':'none';
    }
}

function openPopUp(theURL,theWinName,theHeight,theWidth)
{
	var popUpWin ;
	var localWinName = '_winName';
	if (theWinName != null) { localWinName = theWinName.replace(/ /g, "_"); }
	popUpWin = window.open(theURL,localWinName,config="height=" + theHeight + ",width=" + theWidth + ",top=0,left=0,scrollbars=yes,resizable=yes,status=yes");
	popUpWin.focus();
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function changeState(elementID, elementState, downNavModeNumber)
	{
		var elementObj;
		var imgObj;
		elementObj = document.getElementById("nav"+elementID);
		imgObj = document.getElementById("img"+elementID);
		if(elementObj){
			if (elementState)				
				elementObj.className = "tdHover";
			else
				elementObj.className = "";				
		}
		//we have separate check for imgobj from elementobj because for levels greater than 1 then imgobj does not exist but elementobj exists
		if(imgObj){
			if (elementState)				
				imgObj.src = "/imgs/bullet_nav" + downNavModeNumber + "_f2.gif";							
			else
				imgObj.src = "/imgs/bullet_nav" + downNavModeNumber + ".gif";
			
			//alert(imgObj.src);			
		}
		
	}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}


// Fire an event in IE and Mozilla
function ffxFireEvent(element,event){
    if (document.createEventObject){
        // dispatch for IE
        var evt = document.createEventObject();
        return element.fireEvent('on'+event,evt)
    }
    else{
        // dispatch for firefox + others
        var evt = document.createEvent("HTMLEvents");
        evt.initEvent(event, true, true ); // event type,bubbling,cancelable
        return !element.dispatchEvent(evt);
    }
}

//-->

// Site Search Code

function launchSearchDoc(theSearchValue,defSearchText){
    if(typeof(srchPg)!='undefined')
    {
        var lwrSrch=theSearchValue.toLowerCase();        
        if(theSearchValue!=''&&!(lwrSrch=='search'||lwrSrch=='keyword(s)'))
        {
            var theSearchLink=srchPg+theSearchValue;
            window.location.href=theSearchLink;	
        }
    }
}

function getKeyValue(e)
{
    var key=0;
    var evt=(e)?e:(window.event)?window.event:null;
    if(evt){
        key=(evt.charCode)?evt.charCode:((evt.keyCode)?evt.keyCode:((evt.which)?evt.which:0));
    }
    return key
}

// Process the enter key
function srchKeyDown(e) {
    if(getKeyValue(e)==13)
    {
        launchSearchDoc(document.frmContent.search.value);
        return false;   // return false or page will refresh with previous url
    }
}

function srchCapture(e)
{
    // Register the search event when the user types into the search
    if(getKeyValue(e)!=13)
    {
        document.onkeydown=srchKeyDown;
        if(document.layers) document.captureEvents(Event.KEYDOWN);
    }
}


// Capture Login Enter key press
// Assign _loginAction to your login script

var _loginAction;

function loginKeyDown(e) {
    if(getKeyValue(e)==13)
    {
        if(_loginAction!=null)
        {
            eval(_loginAction);
        }
    }
}

function loginCapture(e)
{
    // Register the search event when the user types into the search
    if(getKeyValue(e)!=13)
    {
        document.onkeydown=loginKeyDown;
        if(document.layers) document.captureEvents(Event.KEYDOWN);
    }
}

// End site search code


// Add or replace a quesry string param with a value
function ffxSetUrlParam(qspre, qsval) {
	if (qsval != null && qsval.length > 0) {
		if (location.href.indexOf('?' + qspre + '=') > 0) {
			// contains query as first param
			var qs = eval('location.search.replace(/\\?' + qspre + '=.*?(&.*)*$/i, \'$1\')');
			location.href = location.pathname + '?' + qspre + '=' + qsval.replace(/ /g, '-') + qs;
		}
		else if (location.href.indexOf('&' + qspre + '=') > 0) {
			// contains query using &qs
			var qs = eval('location.search.replace(/&' + qspre + '=.*?(&.*)*$/i, \'$1\')');
			//var qs = location.search.replace(/&'+qspre+'=.*?(&.*)*$/i, '$1');
			location.href = location.pathname + qs + '&' + qspre + '=' + qsval.replace(/ /g, '-');
		}
		else if (location.href.indexOf('?') > 0) {
			location.href = location.href + '&' + qspre + '=' + qsval.replace(/ /g, '-');
		}
		else {
			location.href = location.href + '?' + qspre + '=' + qsval.replace(/ /g, '-');
		}
		// return false or page will refresh with previous url
		return false;
	}
	return true;
}
