// -------------------------------------------------------------------------------------------------
// Global Javascript file.
// Put Javascript you want accessible to all pages within this file.
// -------------------------------------------------------------------------------------------------

// Image Preloaders --------------------------------------------------------------------------------
/*
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];}
}
*/

// Popup Window --------------------------------------------------------------------------------

function popupWindow(url,w,h) { 
	window.open(url,"preload","status=no, resizable=yes"+","+("width="+w)+","+("height="+h)); 
}

// Toggle a Hidden Div on/off ---------------------------------------------------------------------------

function toggleHiddenDiv(szDivID, iState, iType) // iState = 1 visible, 0 hidden, iType , 1 = visibility, 2 = display
{
    if(document.layers)	   //NN4+
    {
       document.layers[szDivID].visibility = iState ? "show" : "hide";
    }
    else if(document.getElementById)	  //gecko(NN6) + IE 5+
    {
        var obj = document.getElementById(szDivID);
		if (iType == 1)
			obj.style.visibility = iState ? "visible" : "hidden";
		else if (iType == 2)
			obj.style.display = iState ? "" : "none";
    }
    else if(document.all)	// IE 4
    {
        document.all[szDivID].style.visibility = iState ? "visible" : "hidden";
    }
}

// Swap the state of a Hidden Div (on/off) ---------------------------------------------------------------

function swapHiddenDivState(szDivID, iType) //iType , 1 = visibility, 2 = display)
{
	if(document.layers)	   //NN4+
	{
		if (document.layers[szDivID].visibility == "show")
			document.layers[szDivID].visibility = "hide";
		else
			document.layers[szDivID].visibility = "show";
    }
    else if(document.getElementById)	  //gecko(NN6) + IE 5+
    {
        var obj = document.getElementById(szDivID);
		
		if (iType == 1)
		{
			if (obj.style.visibility == "visible")
			{
				obj.style.visibility = "hidden";
			}
			else
			{
				obj.style.visibility = "visible";
			}
		}
		else if (iType ==2)
		{
			if (obj.style.display == "")
			{
				obj.style.display = "none";
			}
			else
			{
				obj.style.display = "";
			}
		}
	}
    else if(document.all)	// IE 4
    {
		if (document.all[szDivID].style.visibility == "visible")
			document.all[szDivID].style.visibility = "hidden";
		else
			document.all[szDivID].style.visibility = "visible";
    }
}

// Verify Radio Button List ---------------------------------------------------------------------------
// This method should be called like the following:
//		var showInquiry = verifyRadioButtonListSelectedValue(x, 'Option to find');
// It should be called from another javascript function that in turn is called via an OnChange
// event within a <asp:RadioButtonList> tag.

function verifyRadioButtonListSelectedValue(rbl, valueToFind) {
	var i;
	var inputElements = rbl.getElementsByTagName('INPUT');
	var currentInput;
	
	for (i = 0; i < inputElements.length; i++)
	{
		currentInput = inputElements[i];
		if (currentInput.defaultValue == valueToFind && currentInput.checked)
		{
			return true;
		}
	}
	return false;
}

// Verify Drop Down List ---------------------------------------------------------------------------
// This method should be called like the following:
//		var showInquiry = verifyDropDownListSelectedValue(x, 'Option to find');
// It should be called from another javascript function that in turn is called via an OnChange
// event within a <asp:DropDownList> tag.

function verifyDropDownListSelectedValue(ddl, valueToFind) {
	var i;
	var inputElements = ddl.getElementsByTagName('OPTION');
	var currentInput;
	for (i = 0; i < inputElements.length; i++)
	{
		currentInput = inputElements[i];
		if (currentInput.value == valueToFind && currentInput.selected)
		{
			return true;
		}
	}
	return false;
}

function checkEnter(htmlHidden) {
	// If the user clicked enter, 
	if (event.keyCode == 13) {
		htmlHidden.value = '1';
	}
}

/*
 * Grey out the Screen
 * -------------------
 * Adapted from: http://www.hunlock.com/blogs/Snippets:_Howto_Grey-Out_The_Screen
 */

function Shadow(visible) {
    var dark = document.getElementById('DarkenScreen');
    var back = document.getElementById('itwFlash');
    var player = document.getElementById('player');

    if (visible) {
        if (back != null)
            back.style.visibility='hidden';

       var pageWidth='100%';
       var pageHeight='130%';
        
        //set the shader to cover the entire page and make it visible.
        dark.style.opacity=.40;                      
        dark.style.MozOpacity=.40;                   
        dark.style.filter='alpha(opacity='+40+')'; 
        dark.style.zIndex=500;        
        dark.style.backgroundColor='#000000';  
        dark.style.width= pageWidth;
        dark.style.height= pageHeight;
        dark.style.display='block';
        
        // Set up the player's styles
        player.align = 'center';
    } else {
        dark.style.display='none';
        
        if (back != null)
            back.style.visibility='';
    }
}

   
function invalidate(elementList)
{  
    for (var i = 0; i < elementList.length; i++)
        elementList[i].checked = '';
}

function disable(elementList)
{
    invalidate(elementList);
    for (var i = 0; i < elementList.length; i++)
        elementList[i].disabled = !elementList[i].disabled;
}