// Questa funzione serve a ripulire una stringa da caratteri    erroneamente digitati,
// deve  essere  chiamata  passando  come  parametri  la  stringa  da ripulire  ed  il
// carattere (key) che deve essere eliminato
// @stringa_in è la stringa da ripulire
// @key è il carattere da rintracciare
// Autore: Alfio Ferlito 3FDataSystem, Internet Group	versione 1.0 novembre 1999
// Ritorna la stringa ripulita...

function trim(stringa_in,key)
{
var stringa_tmp, stringa_out;
var scan = false;
var start = stringa_in.indexOf(key);
var stop = stringa_in.lastIndexOf(key);
var size=stringa_in.length;
var i=0;

	//	Controllo se la key sta dentro la stringa o se la stringa non ha key
	if((start==stop)&&(start != 0))
	{
		return stringa_in;
	}
	//	Controllo se la stringa non ha key a partire da sx
	for(i=0;i<size;i++)
	{
		if(stringa_in.charAt(i)!= key)
		break;
	}
	//	In questo caso la stringa immessa è vuota
	if(i>=size)
	return "";
	i=0;
	while(!scan)
	{
		if(i>size-1)
		{
			scan=true;
			break;
		}
		else if (stringa_in.charAt(i++) != key)
		{
			scan = true;
			stringa_tmp=stringa_in.substring(i-1,size);
			stringa_in=stringa_tmp;
				break;
		}
	}
	
	// Controllo se la stringa non ha key a partire da dx
	scan=false;
	i=stringa_in.length-1;
	while(!scan)
	{
		if (i<0)
		{
			scan = true;
			break;
		}
		else if (stringa_in.charAt(i--) != key)
		{
			stringa_tmp=stringa_in.substring(0,i+2);
			stringa_in=stringa_tmp;
			break;
		}
	}
	return stringa_in;		
}

// replace char: nkey a key in  "stringa_in";

function replace(stringa_in,key,nkey)
 { 
  var string_out='';
  var ch='';
  var size=stringa_in.length; 
  for (i=0; i<size;++i)
     {
          
         if  (stringa_in.charAt(i) == key) {  string_out+=nkey; }
           else { string_out+=stringa_in.charAt(i); }
                          
     }

  return string_out;
 }

// replace  " " a  "%20" in   "stringa_in";

function replaceb(stringa_in)
 { 
  var string_out='';
  var size=stringa_in.length; 
i=0;
while (i<size)
     {
          
         if  ((stringa_in.charAt(i) == '%') && (stringa_in.charAt(i+1) == '2') && (stringa_in.charAt(i+2) == '0')) 
                {   string_out+=' '; 
                   i=i+3;
                }         
           else {   
                    string_out+=stringa_in.charAt(i); ++i;}
                          
     }
 
  return string_out;
 }

// replace  "%20" " "
function replacespace(stringa_in)
 { 
  var string_out='';
  var size=stringa_in.length; 
i=0;
while (i<size)
     {
          
         if  ((stringa_in.charAt(i) == ' ')) {   string_out+='%20'; }
                                                                                                                
                                								        	         
           else { string_out+=stringa_in.charAt(i); }
           ++i;
                          
     }
 
  return string_out;
 }
// Questa funzione serve a fare il parsing di una stringa per
// controllare che non vi siano valori numerici.
// @number è la stringa da controllare
// @return un boolean
function isNumber(number)
{
			
	for (i=0;i<parseInt(number.length);i++)
	{
		if ((number.charAt(i) > "9" || number.charAt(i) < "0"))
		{
			return false;
		}
	}
			
	return true;
}

// Questa funzione serve a fare il parsing di una stringa per
// controllare che  vi siano  solo valori numerici.
// @number è la stringa da controllare
// @return un boolean
function allNumber(number)
{
			
	for (i=0;i<parseInt(number.length);i++)
	{
		if ((number.charAt(i) > "9" || number.charAt(i) < "0"))
		{
			return true;
		}
	}
			
	return false;
}

	function check_email(obj)
	{
 		 var email = trim(obj.value,' ');
		 if (email.length > 0)
		 {
			 if(check_space(email))
  			 {
				alert("Indirizzo E-mail non valido!");
			    obj.focus();
			    return false;
  			 }

			 var atidx=email.indexOf("@");
			 submail=email.substring(atidx,email.length);

			 if((email.indexOf('@',0)==-1)||(email.indexOf('@',0)==0)||(email.indexOf('.')==0)||(submail.indexOf('.',1)==-1)||(submail.indexOf('.',0)==0)||(submail.indexOf('.',0)==-1)||(submail.indexOf('.',0)==1)||(email.indexOf('.',0)==(atidx-1))||(submail.lastIndexOf('.')==(submail.length-1)))
  			 {
				alert("Indirizzo E-mail non valido!");
			    obj.focus();
			    return false;
  			 }
			 else{return true;}
 		 }
		return true;
	}
	
	function trim(stringa_in,key)
	{  
	  var stringa_tmp, stringa_out;
	  var scan = false;
	  var start = stringa_in.indexOf(key);
	  var stop = stringa_in.lastIndexOf(key);
	  var size=stringa_in.length;
	
	  var i=0;

	  // Controllo se la key sta dentro la stringa o se la stringa non ha key
	  if((start==stop)&&(start != 0))
	  {
	    return stringa_in;
	  }
	  
	  // Controllo se la stringa non ha key a partire da sx
	  for(i=0;i<size;i++)
	  {
	    if(stringa_in.charAt(i)!= key)
	      break;
	  }
	
	  // In questo caso la stringa immessa e' vuota
	  if(i>=size)
	    return "";
	  i=0;
	  while(!scan)
	  {
	    if(i>size-1)
	    {
	       scan=true;
	       break;
	    }
	    else if (stringa_in.charAt(i++) != key)
	    {
	       scan = true;
	       stringa_tmp=stringa_in.substring(i-1,size);
	       stringa_in=stringa_tmp;
	       break;
	    } 
	  }
	
	  // Controllo se la stringa non ha key a partire da dx
	  scan=false;
	  i=stringa_in.length-1;
	  while(!scan)
	  {
	
	    if(i<0)
	    {
	       scan = true;
	       break;
	    }
	    else if (stringa_in.charAt(i--) != key)
	    {
	       stringa_tmp=stringa_in.substring(0,i+2);
	       stringa_in=stringa_tmp;
	       break;
	    }
	  }
	  return stringa_in;		
	}
	
	function check_space(stringa_in)
	{
	  var flag = false;	
	 
	  var j = 0;

	  for(j=0;j<stringa_in.length;j++)
	  {
	    if (stringa_in.charAt(j) == " ")
	    {
		   flag=true;
	       break;
	    }
	  }
	  return flag;		
	}
                              // elimina accenti dalla stringa_in 
function accento(stringa_in)
 {   
  var string_out='';
  var size=stringa_in.length; 
  i=0;
  while (i<size){
                  
           if  ((stringa_in.charAt(i) == '\'')) {   string_out+=' '; }
                                                                                                                
                                								        	         
              else { string_out+=stringa_in.charAt(i); }
           ++i;

 } return string_out;                    
  
  }
