﻿//* config
//enable detect mouse click on document 
//document.onmousedown = MouseClick;

/************* site top menu ****/

var firstTimeLoaded = false;

function SetMenuIframSrc(iframId,menuSrc)
{   
    if(!firstTimeLoaded)
    {       
        var myframe= document.getElementById(iframId);
        myframe.src = menuSrc;    
        firstTimeLoaded  = true ;        
    } 
}

function ShowIMenu()
{   try 
	{	
	    
	    SetMenuIframSrc();    
		var myframe= document.getElementById('myframe');
        myframe.style.top = 0;
        myframe.style.left=(0.1*screen.availWidth)+"px";
        myframe.style.width=screen.availWidth-(0.2*screen.availWidth)+"px";
        myframe.style.height=screen.availHeight-(0.3*screen.availHeight)+"px";
        myframe.style.zIndex=99999;
        myframe.style.display='block';  

        
	}
	catch(ex)
	{	
		alert(ex.description+" _ ShowIMenu()");
	}        
}


/************* end of site top menu ****/

function AfterDocumentCompleteLoaded()
{
    try 
	{	        
       SetMenuIframSrc();// Load src of IFram Menu for first time
	}
	catch (ex)
	{
		
		alert(ex.description+"+_ AfterDocumentCompleteLoaded()");
	}
}



/********************************************/

    try 
	{	     
	    if(document.onreadystatechange != null)
            document.onreadystatechange = AfterDocumentCompleteLoaded();		
	}
	catch (ex)
	{		
		alert(ex.description+"+_ document.onreadystatechange");
	}


/*************************library  function **/
function OpenDialogPage(pageURL , pageWidth , pageHeight )
{
    var result = window.showModalDialog(pageURL, '', "dialogWidth:"+pageWidth+"px; dialogHeight:"+pageHeight+"px; center:yes");
    return result;
}

function OpenPage(pageURL )
{
    var result = window.open(pageURL);
    return result;
}

 function GetClientWidth() {
 
	return GetFilterResults (
		window.innerWidth ? window.innerWidth : 0,
		document.documentElement ? document.documentElement.clientWidth : 0,
		document.body ? document.body.clientWidth : 0
	);
}
function GetClientHeight() {
	return GetFilterResults (
		window.innerHeight ? window.innerHeight : 0,
		document.documentElement ? document.documentElement.clientHeight : 0,
		document.body ? document.body.clientHeight : 0
	);
}
function GetScrollLeft() {
	return GetFilterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		document.documentElement ? document.documentElement.scrollLeft : 0,
		document.body ? document.body.scrollLeft : 0
	);
}
function  GetScrollTop() {
	return GetFilterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}

function GetFilterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}

function SetImageSrc(imgCtrlId , imageURL)
{
    document.getElementById(imgCtrlId).src = imageURL;
}


function MouseClick(evt) 
{
    evt = (evt) ? evt : ((window.event) ? event : null);
    if (evt) 
    {
        if ((typeof evt.button != "undefined"))
        {
            switch(evt.button)
            {
                case 1:
                    alert("Left Clicked"); 
                break;
                case 2:
                    alert("Right Clicked"); 
                break;
                case 3:
                    alert("Left + Right Clicked"); 
                break;
                case 4:
                    alert("Midle Clicked"); 
                break;                
                case 5:
                    alert("Left + Middle Clicked"); 
                break;
                 case 6:
                    alert("Right + Middle Clicked"); 
                break;                
                case 7:
                    alert("Left + Middle + Right Clicked"); 
                break;
            }
        }
        else
        {
            alert("typeof evt.button == undefined");    
        }
        
    }
}



function copyToClipboard(s)
{
try {

    if( window.clipboardData && clipboardData.setData )
	{
		    window.clipboardData.setData("Text", s);
	}
	else
	{
	    user_pref("signed.applets.codebase_principal_support", true);
	    netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
	    var clip =Components.classes['@mozilla.org/widget/clipboard;[[[[1]]]]'].createInstance(Components.interfaces.nsIClipboard);
		if (!clip) return;
		
		// create a transferable
		var trans = Components.classes['@mozilla.org/widget/transferable;[[[[1]]]]'].createInstance(Components.interfaces.nsITransferable);
		if (!trans) return;
		// specify the data we wish to handle. Plaintext in this case.
		trans.addDataFlavor('text/unicode');

		// To get the data from the transferable we need two new objects
		var str = new Object();
		var len = new Object();

		var str = Components.classes["@mozilla.org/supports-string;[[[[1]]]]"].createInstance(Components.interfaces.nsISupportsString);

		var copytext=meintext;

		str.data=copytext;

		trans.setTransferData("text/unicode",str,copytext.length*[[[[2]]]]);

		var clipid=Components.interfaces.nsIClipboard;

		if (!clip) return false;

		clip.setData(trans,null,clipid.kGlobalClipboard);	 
	}
	
	alert("Copied to Clip board");  
	}
	catch(ex)
	{	
		alert(ex.description+" _ copyToClipboard()");
	}   
	
}
/*************************end Library **/


/*********************** Module Toobar *****/

var TopZIndex = 1000;

    var SelectElements = new Array();
 function SetElementsVisibility(ElementName,value)
  {    
    try
    {
    
        var FindElements =  document.documentElement.getElementsByTagName(ElementName);
         SelectCount = FindElements.length;
        var obj ;        
        for(i=0;i<SelectCount;i++)
        {
            
            obj= FindElements.item(i,null);          
            
            if(!value)    
            {
                SelectElements[obj.id] =obj.style.visibility; 
                obj.style.visibility = "hidden"; 
            }
            else if(SelectElements[obj.id]!= null)
            {
                 obj.style.visibility = SelectElements[obj.id] ;
            }
        }  
        
     }
	catch(ex)
	{	
		alert(ex.description+" _ SetElementsVisibility()");
	}    
 }   
   
   

var ModulesPosition =new Array();
var ModulesTop =new Array();
var ModulesLeft =new Array();
var ModulesWidth =new Array();
var ModulesZIndex =new Array();
var ModulesBackgroundColor =new Array();


function HideME(CtrlName)
{
    var obj =document.getElementById(CtrlName);   
    if(obj)
    {
       
        obj.style.display ="none";  
        SetElementsVisibility("select",true);
          
   }
}
function FullScreenME(CtrlName,MaxCtrl,MinCtrl)
{   

try
{
       var MaxCtrlObj = document.getElementById(MaxCtrl);
       var MinCtrlObj = document.getElementById(MinCtrl);
         MaxCtrlObj.style.display ="none";     
       MinCtrlObj.style.display ="block";    
       
       
        var obj =document.getElementById(CtrlName);   
        if(obj)
        {
                ModulesPosition[CtrlName] =  obj.style.position;
                ModulesTop[CtrlName] =  obj.style.top;
                ModulesLeft[CtrlName] =  obj.style.left;
                ModulesWidth[CtrlName] =  obj.style.width;
                ModulesZIndex[CtrlName] =  obj.style.zIndex;
                ModulesBackgroundColor[CtrlName] =  obj.style.backgroundColor;            
                obj.style.position = "absolute";
                obj.style.top =GetScrollTop();
                obj.style.left = 10;           
                obj.style.width = GetClientWidth()-20;            
                obj.style.backgroundColor="#ffffff";
                TopZIndex=TopZIndex+1;
                obj.style.zIndex = TopZIndex;  
                SetElementsVisibility("select",false);            
                SetElementsVisibility("object",false);            
                SetElementsVisibility("embed",false);            
            }   
        
    }
	catch(ex)
	{	
		alert(ex.description+" _ FullScreenME()");
	}    
   
}
function RestoreME(CtrlName,MaxCtrl,MinCtrl)
{    
    try
    {
        var obj =document.getElementById(CtrlName);   
        if(obj)
        {
            if( ModulesPosition[CtrlName]!= null)
            {
                obj.style.position = ModulesPosition[CtrlName] ;
                obj.style.top = ModulesTop[CtrlName] ;
                obj.style.left =  ModulesLeft[CtrlName]   ;
                obj.style.width =  ModulesWidth[CtrlName]   ;
                obj.style.zIndex= ModulesZIndex[CtrlName] ;
                obj.style.backgroundColor  = ModulesBackgroundColor[CtrlName] ;                     
                
                SetElementsVisibility("select",true);
                SetElementsVisibility("object",true);            
                SetElementsVisibility("embed",true);                        
            }       
       }
       
       var MaxCtrlObj = document.getElementById(MaxCtrl);
       var MinCtrlObj = document.getElementById(MinCtrl);
       
       //MinCtrlObj.disabled = true;
       //MinCtrlObj.className = "DisableMTIcon";
       MinCtrlObj.style.display ="none";  
       
       //MaxCtrlObj.className = "MTIcon";
       //MaxCtrlObj.disabled = false;     
       MaxCtrlObj.style.display ="block";  
  
    }
	catch(ex)
	{	
		alert(ex.description+" _ RestoreME()");
	}     
}

/*************** end of Module Toobar ***************/



//*****************************************************
//
//======================XmlLoader======================
//

function loadXMLDoc(fname)
{
    var xmlDoc;
    // code for IE
    if (window.ActiveXObject)
      {
      xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
      }
    // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation 
    && document.implementation.createDocument)
      {
      xmlDoc=document.implementation.createDocument("","",null);
      }
    else
      {
      alert('Your browser cannot handle this script');
      }
    xmlDoc.async=false;
    xmlDoc.load(fname);
    return(xmlDoc);
}




function loadXmlXsl(urlXml,urlXsl,divName)
{
    xml=loadXMLDoc(urlXml);
    xsl=loadXMLDoc(urlXsl);
    // code for IE
    if (window.ActiveXObject)
      {
          ex=xml.transformNode(xsl);
          document.getElementById(divName).innerHTML=ex;         
      }
    // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation  && document.implementation.createDocument)
      {
          xsltProcessor=new XSLTProcessor();
          xsltProcessor.importStylesheet(xsl);
          resultDocument = xsltProcessor.transformToFragment(xml,document);
          document.getElementById(divName).appendChild(resultDocument);
      }
   hideLoading();
}

function showLoading()
{
    document.getElementById('Div_Loading').style.display = 'block';
};

function hideLoading()
{    
    document.getElementById('Div_Loading').style.display = 'none';      
};

/*******************end of xml functions**************************/


/******************* Portal Menu Script ****/

function ExpanderClicked()
{
   
	//Get the element that was clicked
	var ctlExpander = event.srcElement;
	var ctlSelectedEntry = ctlExpander.parentElement;	
			
	var colChild = ctlSelectedEntry.children.tags("DIV");
	if(colChild.length > 0)
	{
		var strCSS;
		//Get the hidden element that indicates whether or not entry is expanded
		var ctlHidden = ctlSelectedEntry.all("hidIsExpanded");
		if(ctlHidden.value == "1")
		{			
			ctlHidden.value = "0";
			strCSS = "NotVisible";
		}
		else
		{		
			ctlHidden.value = "1";
			strCSS = "IsVisible";
		}			
		for(var intCounter = 0; intCounter < colChild.length; intCounter++)
		{
		    colChild[intCounter].className = strCSS;	
		}	
	}
}

/******************end of portal menu script ******************/