/**
 * Function :: 	Is Used to removed the space from left & right side
 * @param str value : Field value
 * Return : Trim Value
 */
function trim(value) {
	
	var exp = /^(\s*)(\S*)(\s*$)/;
	if (exp.test(value)) 
		value = value.replace(exp, '$2');
		
	return value;
}

/**
 * Function :: 	Is Used to validated the regular expersion
 */
function checkExp(exp, obj, message) {
	obj.value = trim(obj.value)
			
	if (!exp.exec(obj.value)) {
		alert(message);
		obj.focus();
		return false;
	}		
	return true;
}

/**
 * Function :: 	Allow only alphabet, space and number only. 
 * @param Obj obj       : Field Object
 * @param str fieldName : Field Name
 * @param str allowed_msg : Allowed Message
 * Return : True if valid, otherwise false.
 */
function validateFor( regexp, obj, fieldName, allowed_msg) {
	
	var objRegExp = regexp;
	if(allowed_msg != ""){
		allowed_msg = "\n"+allowed_msg;
	}
	else{
		allowed_msg = '';
	}
	
	if ( ! objRegExp.test( obj.value ) ) {
		
		alert("Please enter valid "+ fieldName + allowed_msg);
		obj.focus(); 
		return false;
	} else {
		return true;	
	}
}

/**
* Function :: Validate the Email Addres
* @param Obj obj       : Field Object
* @param str fldName   : Field Name
* Return : True if valid, otherwise false.
*/
function validateEmail(obj, fldName) {
	
	var objRegExp  = /^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
	return checkExp(objRegExp, obj, "Please enter a valid "+ fldName +" address.")
}

/**
 * Function :: 	Check value is empty or not
 * @param Obj obj       : Field Object
 * @param str fieldName : Field Name
 * Return : True if valid, otherwise false.
 */
function isEmpty(obj, fldName) {   

	if( trim(obj.value) == "") {
		
		if ( obj.type == 'text' || obj.type == 'textarea' ) {
			alert("Please enter "+ fldName);
		} else {
			alert("Please select "+ fldName);
		}
		obj.value = trim( obj.value);
		obj.focus()
		return true;
	}
	else 
		return false;
}

