// -------------------------------------------------------------------------
// (c) Module Solutions 2002 /sjc.
// Common JS Wrapper Functions 

var formVerified = false;

function isNotEmpty(obj) {
	var retVal = isNotNull(obj.value); if (!retVal) { obj.focus(); } return retVal;
}

function isMultiNotEmpty(frm,n) {
	// This function returns either false, or returns the selected form items
	var retVal = false; for (var i=0;i<frm.length; i++) {
	if (frm.elements[i].name == n && frm.elements[i].checked) { if (!retVal) retVal = frm.elements[i].value;
	else retVal = retVal + ',' + frm.elements[i].value; } }	if (!retVal) { // obj.focus(); 
	} return retVal;
}

function isString(obj) {
	var retVal = isAlpha(obj.value); if (!retVal) { obj.select(); obj.focus(); } return retVal;
}

function isNumber(obj) {
	var retVal = isNumeric(obj.value);	if (!retVal) { obj.select(); obj.focus(); }	return retVal;
}

function isValidEmail(obj) {
	var retVal = isEmail(obj.value); if (!retVal) { obj.select(); obj.focus(); } return retVal;
}

function blockSubmit() { // v1.1
   	// block the form from submitting
	if (!formVerified) 
		event.returnValue = formVerified;
}

function getURLParam(n,u) { // v1.0
	var t, i, nv, args; 
	if(!u) { u=window.document; } 
	t=u.location.search.substring(1, u.location.search.length); args=t.split('&'); 
	for(i=0;i<args.length;i++) { nv=args[i].split('='); if(nv.length>0&&nv[0].toLowerCase()==n.toLowerCase()) return nv[1]; } return null; 
} 

function openWindow(theURL,winName,features) { // v1.0
    w = window.open(theURL,winName,features);
    w.focus();
}

function isNotNull(s) {
    // returns TRUE if NOT NULL, FALSE if NULL 
	return (s == "" || s == null) ? false : true; 
}

function isAlpha(s) {
    // returns TRUE if ALPHA, FALSE if NON ALPHA CHARS FOUND
	var retVal = isNull(s); if (!retVal) {
	for (var i = 0; i < s.length; i++) { retVal = isCharAlpha(s.charCodeAt(i));
	if (!retVal) { break; } } } return retVal;
}

function isCharAlpha(c) {
    // returns TRUE if char in range, FALSE if not
	return (c>=97 && c<=122) ? true : false;
}

function isNumeric(s) {
    // returns TRUE if NUMERIC, FALSE if NON NUMERIC CHAR FOUND
	var retVal = isNull(s); if (!retVal) {
	for (var i = 0; i < s.length; i++) { retVal = isCharNumeric(s.charCodeAt(i));
	if (!retVal) { break; } } } return retVal;
}

function isCharNumeric(c) {
    // returns TRUE if char in range, FALSE if not
	return (c>=48 && c<=57) ? true : false;
}

function isEmail(s) {
    // returns TRUE if EMAIL VALID, FALSE if NOT VALID EMAIL
	var retVal,newStr = null;
	newStr = s.split("@"); if (newStr.length == 2) { retVal = (newStr[1].indexOf(".")!=-1) ? true : false;
	} else { retVal = false; } return retVal;		
}

function isRadioChecked(obj) {
    var retVal = null;
    for (var i = 0; i<obj.length; i++) { retVal = obj[i].checked; if (retVal) { break; } } return retVal;
}
