// JavaScript Document
var nbsp = 160;		// non-breaking space char
var node_text = 3;	// DOM text node-type
var emptyString = /^\s*$/ ;
var global_valfield;	// retain valfield for timer thread

if ( document.forms.length )
{
	if ( document.forms.length > 1 ) var fn = document.forms.length - 1;
	else var fn = 0;
	
	var frm = document.forms[fn];
	
	if( frm.cmd )
	{
		var cmd = frm.cmd;
	}
}

/*
window.onload = function()
{
	if( frm )
	{
		for (var i=0; i < frm.elements.length; i++)
		{
			var el = frm.elements[i];
			if ( (el.type == 'text') || (el.type == 'textarea') )
			{
				el.focus();
				break;
			}
		}
	}
	
}
*/

/*
**	form usability functions
*/
function cbox_select(cb)
{
	var frm = document.getElementById('frmEdit');
	cbsel = frm.cbox_sel.value;
	
	stat = (cbsel == '1') ? false : true;
	
	for (i = 0 ; i < frm.elements.length; i++) {
		var el = frm.elements[i];
		
		if ( (el.type == 'checkbox') && (el.name == cb) )
		{
			el.checked = stat;
		}
	}
	
	if ( stat )	frm.cbox_sel.value = '1';
	else frm.cbox_sel.value = '0';
	
	return false;
}

function clearval()
{
	if (arguments.length)
	{
		for(i=0; i < arguments.length; i++)
		{
			var x = arguments[i];
			eval('el = frm.'+x);
			el.value = null;
		}
	}
	
	return false;
}

function clearval_v1(x)
{
	if( x != null )
	{
		eval('el = frm.'+x);
		el.value = null;
	}
	
	return false;
}

function whatkey(e)
{
	var unicode=e.keyCode? e.keyCode : e.charCode;
	
	if( unicode == '13' )
	{
		if( frm.submit_function ) frm.submit_function.value = "";
		get_filterdata();
		return true;
	}
	else
	{
		return false;	
	}
}

function isEmail(string)
{
	if (!string) return false;
	
	tfld = trim(string);
	
	var email = /^[^@]+@[^@.]+\.[^@]*\w\w$/  ;
	if (!email.test(tfld))
	{
		return false;
	}

	var email2 = /^[A-Za-z][\w.-]+@\w[\w.-]+\.[\w.-]*[A-Za-z][A-Za-z]$/  ;
	if (!email2.test(tfld)) 
	{
		return false;
	}
	
	return true;
}

function isAlphaNumeric(string)
{
   if (!string) return false;
   if (string == " ") return false;
   
   var iChars = "*|,\":<>[]{}`\';()@&$#%";

   for (var i = 0; i < string.length; i++) {
      if (iChars.indexOf(string.charAt(i)) != -1)
         return false;
   }
   return true;
}

function IsNumeric(sText)
{
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;
	
	for (i = 0; i < sText.length && IsNumber == true; i++) {
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
			IsNumber = false;
	}
	return IsNumber;
}

function trim(str)
{
	return str.replace(/^\s+|\s+$/g, '');
}


// --------------------------------------------
//                  setfocus
// Delayed focus setting to get around IE bug
// --------------------------------------------

function setFocusDelayed()
{
	global_valfield.focus();
}

function setfocus(valfield)
{
	// save valfield in global variable so value retained when routine exits
	global_valfield = valfield;
	setTimeout( 'setFocusDelayed()', 100 );
}

function confirm_action(target, vs_dialog, vs_href) {
	if (confirm(vs_dialog)) {
		target.window.location.href = vs_href;
		return true;
	}
	return false;
}

function jumpURL(targ,selObj,restore){ //v3.0
	if( selObj.options[selObj.selectedIndex].value != '' ) {
		eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
		if (restore) selObj.selectedIndex=0;
		return true;
	}
	else return false;
}

