// General Navigation Functions
// (c) 2006 Hylant Group, Inc.
function call( strInterface, strCommand, strParam1 )
{
	var f;
	f = document.forms[0];
	for ( var i=0; i<=f.elements.count; i++ )
	{
	    alert(f.elements[i].id);
	}
	f.elements["_interface"].value = strInterface;
	f.elements["_command"].value = strCommand;
	f.elements["_param1"].value = strParam1;
	f.submit();
}

function rnd(max) { 
  var rndnum = max * Math.random() 
  rndnum = Math.ceil (rndnum) 
  return rndnum 
} 

function call_popup(strInvoke, strCommand, strParam1, action, w, h )
{
	var f;
	f = document.forms[0];
	var invokeCache;
	var param1Cache;
	var commandCache;
	invokeCache = f.elements["_interface"].value;
	f.elements["_interface"].value = strInvoke;
	param1Cache = f.elements["_param1"].value;
	f.elements["_param1"].value = strParam1;
	commandCache = f.elements["_command"].value;
	f.elements["_command"].value = strCommand;
	
	if ( w == null )
	{
	    w = document.body.offsetWidth;
	}
	if ( h == null )
	{
	    h = document.body.offsetHeight;
	}
	
	var rnder = rnd(1000000);
	var w = window.open("","Win"+rnder,"resizable=yes,status=no,toolbar=no,location=no,menu=no,scrollbars=no,width=" + w + ",height=" + h + ",top=15,left=25");
	var actionCache;
	var targetCache;
	actionCache = document.forms[0].action;
	document.forms[0].action = action;
	targetCache = document.forms[0].target;
	document.forms[0].target = "Win"+rnder;
	document.forms[0].submit();
	
	document.forms[0].action = actionCache;
	document.forms[0].target = targetCache;
	f.elements["_interface"].value = invokeCache;
	f.elements["_param1"].value = param1Cache;
	f.elements["_command"].value = commandCache;
 }

function gomouseover(strId, strType)
{
	if (strType == "mini")
	{
		document.getElementById(strId).className = "minigrid_rowover";
		//document.getElementById("div_" + strId).style.display = "";
		//myHint.show("TEST");
	}
	else
		document.getElementById(strId).className = "rowover";
}
function gomouseout(strId, strType)
{
	if (strType == "mini")
	{
		document.getElementById(strId).className = "minigrid_rowout";
		//document.getElementById("div_" + strId).style.display = "none";
	}		
	else
		document.getElementById(strId).className = "rowout";
}

var blinkCounter = 0;
var borderStyleBase;
function list(object) {
   for (var i in object) {
      alert("Property: "+i+" Value: "+object[i]+"<BR>\n");
   }
}
function HighlightControl( ACtrlId )
{
    blinkCounter = 3;
    var ctrl = document.getElementById( ACtrlId );
    if ( ctrl != null )
    {
        borderStyleBase = ctrl.style.borderColor;
        setTimeout("ToggleBlink('"+ACtrlId+"');",300);
    }
}

function ToggleBlink( ACtrlId )
{
    var ctrl = document.getElementById( ACtrlId );
    if ( ctrl != null )
    {
        if ( ctrl.style.borderColor != borderStyleBase )
        {
            ctrl.style.borderColor = borderStyleBase;
        }
        else
        {
            borderStyleBase = ctrl.style.border;
            ctrl.style.border = "solid 1px Gold";
        }
    }
    blinkCounter = blinkCounter-1;
    if ( blinkCounter > 0 )
    {
        setTimeout("ToggleBlink('"+ACtrlId+"');",300);
    }
}

function ShowHideCtrl( ACtrlID )
{
    var ctrl = document.getElementById( ACtrlID );
    if ( ctrl.style.display == "none" )
    {
        ctrl.style.display = "inline";
    }
    else
    {
        ctrl.style.display = "none";
    }
}

function OnGoToPage( APagingCommand, AMaxPage )
{
    var pageNumCtrl = document.getElementById( 'tbPgGo_'+APagingCommand );
    if ( pageNumCtrl != null )
    {
        if ( pageNumCtrl.value < 1
            || pageNumCtrl.value > AMaxPage )
        {
            alert('Must be between 1 and '+AMaxPage+'.');
        }
        else
        {
            call( 'persist', APagingCommand, pageNumCtrl.value );
        }
    }
}