var nbsp 	= 160;
var emptyString = /^\s*$/;
var asterisk 	= /^\s*\*\s*$/;

function warn( obj_id, msg )
{
	var message;
	if( emptyString.test( msg ) )
	{
		message = String.fromCharCode(nbsp);
	}
	else
	{
		message = msg;
	}
	var obj = document.getElementById(obj_id);
  	obj.firstChild.nodeValue = message;
}

function validatePresent( validate_obj, req_obj_id, warn_obj_id )
{
	if (!document.getElementById) return true;
	var elem = document.getElementById(req_obj_id);
	if (!elem.firstChild) return true;  		// not available on this browser 
	if (elem.firstChild.nodeType != 3) return true; // infofield is wrong type of node
	if( emptyString.test( validate_obj.value ) )
	{
		if( asterisk.test( elem.firstChild.nodeValue ) )
		{
			warn( warn_obj_id, "Required field" );
			return false;
		}
		else
		{
			warn( warn_obj_id, "" );
		}
	}
	else
	{
		warn( warn_obj_id, "" );
	}
	return true;
}

function validateEnquiry( validate_obj, req_obj_id, index, warn_obj_id )
{
	if (!document.getElementById) return true;
	var elem = document.getElementById(req_obj_id);
	if (!elem.firstChild) return true;  		// not available on this browser 
	if( validate_obj.options[validate_obj.selectedIndex].value == index )
	{
		warn( req_obj_id, "*" );
	}
	else
	{
		warn( req_obj_id, "" );
		warn( warn_obj_id, "" );
	}
}

function trim(str)
{
  return str.replace(/^\s+|\s+$/g, '');
}
