function blankField(obj, defaultval) {
	var myvalue = obj.value;

	if  (myvalue == defaultval) {
		obj.value = '';
	}
}

function isNumber(val)
{
	if (isNaN(val))
	{
		return false;
	}
	else
	{
		return true;
	}
} 

function isMail(mail)
{
reMail = /^[a-zA-Z0-9\.\-_]+@[a-zA-Z0-9\.\-_]+\.[a-zA-Z0-9-_]+$/ ; 
  
if (!reMail.test(mail)){ 
  return false; 
} 
return true; 
} 

function isNumAdherent(str, lgthMin, lgthMax)
{	
  if ( (isNumber(str)) && (isLengthBetweenMinMax(str, lgthMin, lgthMax)) )
     return true;
     
     return false;
}

function isLengthBetweenMinMax(str, lgthMin, lgthMax)
{
  if ((str.length >= lgthMin) && (str.length <= lgthMax))
     return true;
     
     return false;
}

function mainTabForbiddenChar()
{
  var tab = Array();

  tab[0] = "?";   tab[1] = "&";   tab[2] = "~";   tab[3] = "\"";  tab[4] = "#";
  tab[5] = "?";   tab[6] = "{";   tab[7] = "(";   tab[8] = "[";   tab[9] = "|";
  tab[10] = "`";  tab[11] = "\\"; tab[12] = "^";  tab[13] = ")";  tab[14] = "\'";
  tab[15] = "]";  tab[16] = "?";  tab[17] = "+";  tab[18] = "*";  tab[19] = "/";
  tab[20] = "=";  tab[21] = "%";  tab[22] = "?";  tab[23] = "!";  tab[24] = "?"; 
  tab[25] = ":";  tab[26] = "<";  tab[27] = ">";  tab[28] = ";";  tab[29] = ","; 
  tab[30] = "?";  tab[31] = "?";  tab[32] = "$";  tab[33] = "?";  tab[34] = "?";  
    
  tab[35] = "@";  tab[36] = "."; tab[37] = "-"; tab[38] = "_";

  tab[39] = "0";  tab[40] = "1";  tab[41] = "2";  tab[42] = "3";  tab[43] = "4";  
  tab[44] = "5";  tab[45] = "6";  tab[46] = "7";  tab[47] = "8";  tab[48] = "9";

  return tab;
}

function isLengthBetweenMinMax(str, lgthMin, lgthMax)
{
  if ((str.length >= lgthMin) && (str.length <= lgthMax))
     return true;
     
     return false;
}

function mainTabForbiddenCharJapon()
{
  var tab = Array();

  tab[0] = "?";   tab[1] = "&";   tab[2] = "~";   tab[3] = "\"";  tab[4] = "#";
  tab[5] = "?";   tab[6] = "{";   tab[7] = "(";   tab[8] = "[";   tab[9] = "|";
  tab[10] = "`";  tab[11] = "\\"; tab[12] = "^";  tab[13] = ")";  tab[14] = "\'";
  tab[15] = "]";  tab[16] = "?";  tab[17] = "+";  tab[18] = "*";  tab[19] = "/";
  tab[20] = "=";  tab[21] = "%";  tab[22] = "?";  tab[23] = "!";  tab[24] = "?"; 
  tab[25] = ":";  tab[26] = "<";  tab[27] = ">";  tab[28] = ";";  tab[29] = ","; 
  tab[30] = "?";  tab[31] = "?";  tab[32] = "$";  tab[33] = "?";  tab[34] = "?";  
    
  tab[35] = "@";  tab[36] = "."; tab[37] = "_";

  tab[38] = "0";  tab[39] = "1";  tab[40] = "2";  tab[41] = "3";  tab[42] = "4";  
  tab[43] = "5";  tab[44] = "6";  tab[45] = "7";  tab[46] = "8";  tab[47] = "9";

  return tab;
}

function buildTabForbiddenChar(typeString)
{
  var mainTab = Array();
  mainTab = mainTabForbiddenChar();
  var tabForbiddenChar = Array();
  
  switch (typeString)
  {
    case 0: for (i=0; i<=38; i++) { tabForbiddenChar[i] = mainTab[i] ;} ; break;
    
    case 1: for (i=0; i<=48; i++) { tabForbiddenChar[i] = mainTab[i] ;} ; break;
    
    case 2: for (i=0; i<=34; i++) { tabForbiddenChar[i] = mainTab[i] ;} ; break;
    
    case 3: 
    	j = 0;
    	for (i=0; i<=13; i++)  { tabForbiddenChar[j] = mainTab[i] ; j++;} ;
    	for (i=15; i<=36; i++) { tabForbiddenChar[j] = mainTab[i] ; j++;} ;
    	for (i=39; i<=48; i++) { tabForbiddenChar[j] = mainTab[i] ; j++;} ; 
    	break;
  }
  
  return tabForbiddenChar;
}

function buildTabForbiddenCharJapon(typeString)
{
  var mainTab = Array();
  mainTab = mainTabForbiddenCharJapon();
  var tabForbiddenChar = Array();
  
  switch (typeString)
  {
    case 0: for (i=0; i<=37; i++) { tabForbiddenChar[i] = mainTab[i] ;} ; break;
    
    case 1: for (i=0; i<=47; i++) { tabForbiddenChar[i] = mainTab[i] ;} ; break;
    
    case 2: for (i=0; i<=34; i++) { tabForbiddenChar[i] = mainTab[i] ;} ; break;
    
    case 3: 
    	j = 0;
    	for (i=0; i<=13; i++)  { tabForbiddenChar[j] = mainTab[i] ; j++;} ;
    	for (i=15; i<=36; i++) { tabForbiddenChar[j] = mainTab[i] ; j++;} ;
    	for (i=39; i<=48; i++) { tabForbiddenChar[j] = mainTab[i] ; j++;} ; 
    	break;
  }
  
  return tabForbiddenChar;
}

function isForbiddenChar(tab, c)
{
  var i=0;
  
  while ( (i < tab.length ) && (tab[i] != c) )  {i++;}
  
  if (tab[i] == c)
     return true;
     
     return false;
}

function isForbiddenCharInString(str, typeStr)
{
var tForbiddenChar = Array();
tForbiddenChar = buildTabForbiddenChar(typeStr)

var i=0;

while ( (i+1 <= str.length ) && (!(isForbiddenChar(tForbiddenChar, str.substring(i,i+1)))) )  { i++; }
                        
if (isForbiddenChar(tForbiddenChar, str.substring(i,i+1)))
{ 
	//alert("Le caract?re <B>\" "+ str.substring(i,i+1) +" \"</B> n'est pas valide pour le champ <B>" + typeField + "</B>"); 
	return true;
}
	return false;
}

function isForbiddenCharInStringJapon(str, typeStr)
{
var tForbiddenChar = Array();
tForbiddenChar = buildTabForbiddenCharJapon(typeStr)

var i=0;

while ( (i+1 <= str.length ) && (!(isForbiddenChar(tForbiddenChar, str.substring(i,i+1)))) )  { i++; }
                        
if (isForbiddenChar(tForbiddenChar, str.substring(i,i+1)))
{ 
	//alert("Le caract?re <B>\" "+ str.substring(i,i+1) +" \"</B> n'est pas valide pour le champ <B>" + typeField + "</B>"); 
	return true;
}
	return false;
}
