var msgchamp = 'Ce champ est obligatoire';
var msgerreurDATE = 'jj/mm/aaaa';
var msgerreurSELECT = 'Vous devez choisir un élément';
var msgerreurMAIL = 'Vous devez saisir un mail valide';
var valeurs = Array();


function submitit(){
	if(valid()){
		document.forms[0].submit();
	}
	else{
		alert('Un ou plusieurs champs n\'ont pas été remplis correctement');
	}
}

function resetchamp(obj){
	if(obj.value == msgchamp ||obj.value == msgerreurDATE ||obj.value == msgerreurMAIL){
		obj.value = valeurs[obj.name];
		obj.className = 'champ';
	}
}


function verif(obj){
	valeurs[obj.name] = obj.value;

	if(trim(obj.value) == '' || trim(obj.value) == msgchamp){
		obj.value = msgchamp;
		obj.className = 'champerreur';
		return false;
	}
	else{
		obj.className = 'champ';
		return true;
	}
}

function verifSELECT(obj){
	valeurs[obj.name] = obj.selectedIndex;
	var val = obj.options[obj.selectedIndex].value;
	if(val > 0){
		obj.className = 'champ';
		return true;
	}
	else{
		obj.options[obj.selectedIndex].className = 'selecterreur';
		obj.options[obj.selectedIndex].innerHTML = msgerreurSELECT;
		return false;
	}
}

function verifMAIL(obj){
	valeurs[obj.name] = obj.value;
	if(!isValidEmail(obj.value)){
		obj.value = msgerreurMAIL;
		obj.className = 'champerreur';
		return false;
	}
	else {
		obj.className = 'champ';
		return true;
	}
}


function verifDATE(obj){
	valeurs[obj.name] = obj.value;
	var val = obj.value;
	var error = false;

	if(val == ''){
		error = true;
	}
	else{
		if(val.length != 10){
			error = true;
		}
		else{
			var dstr = val.split('');
			if(	(!isNumber(dstr[0])) || (!isNumber(dstr[1])) || (dstr[2] !='/') || (!isNumber(dstr[3])) || (!isNumber(dstr[4])) || (dstr[5] !='/') || (!isNumber(dstr[6])) || (!isNumber(dstr[7])) || (!isNumber(dstr[8])) || (!isNumber(dstr[9])) ){
				error = true;
			}
			else{
				var jour = dstr[0]+''+dstr[1];
				if(jour > 31){
					error = true;
				}
				var mois = dstr[3]+''+dstr[4];
				if(mois > 12 || mois < 1){
					error = true;
				}
				var annee = dstr[6]+''+dstr[7]+''+dstr[8]+''+dstr[9];
				if(annee < 1900){
					error = true;
				}
			}
		}
	}
	if(error){
		obj.value = msgerreurDATE;
		obj.className = 'champerreur';
		return false;
	}
	else{
		obj.className = 'champ';
		return true;
	}
}




function isDigitDate(num) 
{
	var string="1234567890/";
	if (string.indexOf(num) != -1) {return true;}
	return false;
}

function isInteger(val) 
{
	for (var i=0; i < val.length; i++) 
	  {if (!isDigitDate(val.charAt(i))) {return false;}}
	return true;
}

function isNumber(num)
{
	var string="1234567890";
	if (string.indexOf(num) != -1) {return true;}
	return false;
}

function isMailChar(num) 
{
	var string="abcdefghijklmnopqrstuvwxyz@._- ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	if (string.indexOf(num) != -1) {return true;}
	return false;
}

function isValidEmail(val)
{
	if (val.length == 0) {return true;}
	else
	{
		for (var i=0; i < val.length; i++) 
	  		{if (!isMailChar(val.charAt(i))) {return false;}}
		
		if (val.indexOf('@') < 0) {return false;}
		if (val.indexOf('.') < 0) {return false;}
		
		return true;
	}
}

function isValidDate(val)
{
  if (val.length == 0) {return true;}
  if (val.length > 0)
   {t_tl = val.split("/");}

  return ( (isInteger(val)) && (val.length==5) && (t_tl.length ==2) )
}

function isValidDateFull(val)
{
  if (val.length == 0) {return true;}
  if (val.length > 0)
   {t_tl = val.split("/");}

  return ( (isInteger(val)) && (val.length==10) && (t_tl.length ==3) )
}


function trim(val)
{
  var txt = val;
  while (txt.substr(0, 1) == " ") {txt = txt.substr(1, txt.length);}
  while (txt.substr(txt.length-1, 1) == " ") {txt = txt.substr(0, txt.length-1);}

  return txt;
}

function inList(l, val)
{
  for (var i=0; i < l.length; i++)
   {if (l[i].toUpperCase()==val.toUpperCase()) {return true; break;}
   }
  return false;
}

function isExist(id, li, nval, oval)
{
	inl = inList(li, nval);

	if ((inl) && (id == 0)) {return true;}
	if ((inl) && (id > 0) && ((nval).toUpperCase() != (oval).toUpperCase())) {return true;}
	return false;
}

function isSelected(l)
{
	var i = l.selectedIndex;
	var il = l.options[i].value;
	
	return il;
}

function getLcheck(ifra)
{
	tth = "";
	for (var i = 0; i < ifra.elements.length; i++) 
    {
	  if ( (ifra.elements[i].type == 'checkbox') && (ifra.elements[i].name == 'ccase') )
	   {if (ifra.elements[i].checked) {tth += ifra.elements[i].value + ":";}}
	}
	
	if ((tth).length > 1) {tth = (tth).substr(0, (tth).length-1);}
	return tth;
}

function setrubpost(val)
{
	idoc = document.forms[0];
	idoc.newrub.value = val;
	submitit();
}
