var error = '';
var checkedNumber = 0;


function Trim(TRIM_VALUE){
	if(TRIM_VALUE.length < 1){
		return"";
	}
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE==""){
		return "";
	}
	else{
		return TRIM_VALUE;
	}
} //End Function

function RTrim(VALUE){
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if(v_length < 0){return"";}
	var iTemp = v_length -1;

	while(iTemp > -1){
	if(VALUE.charAt(iTemp) == w_space){
	}
	else{
	strTemp = VALUE.substring(0,iTemp +1);
	break;
	}
	iTemp = iTemp-1;

	} //End While
	return strTemp;

} //End Function

function LTrim(VALUE){
	var w_space = String.fromCharCode(32);
	if(v_length < 1){
	return"";
	}
	var v_length = VALUE.length;
	var strTemp = "";

	var iTemp = 0;

	while(iTemp < v_length){
	if(VALUE.charAt(iTemp) == w_space){
	}
	else{
	strTemp = VALUE.substring(iTemp,v_length);
	break;
	}
	iTemp = iTemp + 1;
	} //End While
	return strTemp;
} //End Function

function IsNumeric(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}

function IsDigit(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return true;//accept empty string.

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}



function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		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){
		    
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    
		    return false
		 }

 		 return true					
}

 
   function checkTitle(){
     var obj = window.document.forms[0].title;
     var n = obj.selectedIndex;       
     var val = obj[n].text;
     var title = Trim(val);
     
     if(title=='choose')error = " title,";
     else if(title=='other'){
        var otherT = Trim(document.details.otherTitle.value);
		if(otherT=='')error = " title,";
     }
     //alert(title);
   }   
   
   function checkName(){
     var fname = Trim(document.details.firstname.value);
     var lname = Trim(document.details.lastname.value) ;
     if(fname=='' || lname=='')
      error += "first or last names,";
   }
   function checkAddress(){
     var addr = Trim(document.details.address1.value);
     if(addr=='')
        error += " first line of address,";
   }
   function checkPostcode(){
     var postcode = Trim(document.details.postcode.value);
     if(postcode=='' || postcode.length < 4)
        error += " postcode,";
   }
   function checkPhones(){

     var fone = Trim(document.details.workphone.value);
     if(!IsDigit(fone)) error += " Invalid workphone,";
   }

   function checkEmail(){
      var mail = Trim(document.details.email.value);
      if(mail==''){error += " Invalid email, ";return;}
      if(!echeck(mail)) error += " Invalid email, ";
   }
   
   function checkCity(){
      var city = Trim(document.details.city.value);
           if(city=='')
              error += " city,";
   }

   function verifyChecked(){
      if(checkedNumber < 1)
         error += " your interest about this investment";
   }
   function validate(){
      try{
       checkTitle();
       checkName();
       checkAddress();
       checkCity();
       checkPostcode();
       checkPhones();
       checkEmail();
       verifyChecked();
       feedback();
      }catch(err){ alert('Error changing data: ' + err.description ); }

     //checkEmail(document.details.email.value);
   }
   function feedback(){
      error = Trim(error);
      if(error != ''){error = 'Missing data: ' + error;alert(error);error='';}
      else document.details.submit();
   }

   function acknowledge(val){
      checkedNumber += val;
   }

   function reset_all(){
     checkedNumber = 0;
     error ='';
   }
