function is_empty(obj, str)
{
  if ( (obj.type=="text") || (obj.type=="password") || (obj.type=="textarea") || (obj.type=="file"))
  {
    
     if(trim(obj.value)=="")
     {
	   alert('Please enter ' + str +'.');
	   obj.focus();
	   return true;
     }
  }
	
  if (obj.type=="select-one")
  {
	  if (obj.selectedIndex==0)
	  {
		  alert('Please select ' + str+ '.' );
		  obj.focus();
		  obj.select;
		  return true;
	  }
  }
  return false;
}

//removes the trailing spaces
function trim(pstrString)
{
  var intLoop=0;
  for(intLoop=0; intLoop<pstrString.length; )
  {
      if(pstrString.charAt(intLoop)==" ")
         pstrString=pstrString.substring(intLoop+1, pstrString.length);
      else
         break;
  }

  for(intLoop=pstrString.length-1; intLoop>=0; intLoop=pstrString.length-1)
  {
      if(pstrString.charAt(intLoop)==" ")
         pstrString=pstrString.substring(0,intLoop);
      else
         break;
  }
  return pstrString;
}

function isValidEmail(obj)
{
	if(!is_empty(obj, "Email")) {
		if(! echeck(obj.value) )
		{
			alert("Please enter valid Email.");
			obj.focus();
			return false;
		}
	}
	else
	{
		return false;
	}
	return true;
}

function echeck(str) {

   var at="@"
   var dot="."
   var lat=str.indexOf(at)
   var lstr=str.length
   var ldot=str.indexOf(dot)
   var filter =/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
   if(!filter.test(str)) {
	   return false;
   }
   if (str.indexOf(at)==-1){
       return false
   }

   if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
       return false
   }

   if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
       return false
   }

   if (str.indexOf(at,(lat+1))!=-1){
      return false
   }

   if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot || str.substring(ldot+1,ldot+2)==dot ||
	  str.substring(lstr-1)==dot) {
      return false
   }

   if (str.indexOf(dot,(lat+2))==-1){
   return false
   }
  return true
}

function blockNonNumbers(obj, e, allowDecimal, allowNegative)
{
	var key;
	var isCtrl = false;
	var keychar;
	var reg;
		
	if(window.event) {
		key = e.keyCode;
		isCtrl = window.event.ctrlKey
	}
	else if(e.which) {
		key = e.which;
		isCtrl = e.ctrlKey;
	}
	
	if (isNaN(key)) return true;
	
	keychar = String.fromCharCode(key);
	
	// check for backspace or delete, or if Ctrl was pressed
	if (key == 8 || isCtrl)
	{
		return true;
	}

	reg = /\d/;
	var isFirstN = allowNegative ? keychar == '-' && obj.value.indexOf('-') == -1 : false;
	var isFirstD = allowDecimal ? keychar == '.' && obj.value.indexOf('.') == -1 : false;
	
	return isFirstN || isFirstD || reg.test(keychar);
}

function nextTab(Curobj, nextObj, maxlength)
{
	if(Curobj.value.length == maxlength)
	{
		nextObj.focus();
	}
}
