
var nbp = 0;

//Test validité théorique du format du mail
function checkmail(mailos){
	if (mailos == '')
	  return true;
	else
	  return (mailos.search(/^\w+((-\w+)|(\_\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-|\_)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == 0);
}

function checkhour(hour)
{
    if (!hour.match(/^[0-9]{1,2}[:,h]{1}[0-9]{2}$/))
  		return false;
	else
    {
        heures = hour.substr(0,2);
        minutes = hour.substr(3,2);
        if (heures>24)
            return false;
        if (minutes>59)
            return false;
        return true;
    }
}

function keyCtrl(type,text)
{
  if(window.event)
  {
    key = window.event.keyCode;
    if(key!=13)
    {
      var caractere=String.fromCharCode(key);
      switch(type)
      {
        case 'num':
          var reg=new RegExp("[0-9]","g");
          break;
        case 'float':
          var reg=new RegExp("[0-9\.]","g");
          break;
        case 'tel':
          var reg=new RegExp("[0-9+() \.]","g");
          break;
        case 'date':
          var reg=new RegExp("[0-9\/]","g");
          break;
        case 'hour':
          var reg=new RegExp("[0-9:h]","g");
          break;
        case 'alpha':
          var reg=new RegExp("[A-Za-z éèàùâêîôûäëïöüç'\-]","g");
          break;
        case 'mail':
          var reg=new RegExp("[a-zA-Z0-9@\.\-]","g");
          break;
        case 'upper':
          var reg=new RegExp("[A-Za-z '\-]","g");
          break;
        case 'alphatrim':
          if(text>'')
          {
            var reg=new RegExp("[A-Za-z éèàùâêîôûäëïöüç'\-]","g");
          }
          else
          {
            var reg=new RegExp("[A-Za-zéèàùâêîôûäëïöüç'\-]","g");
          }
          break;
        case 'uppertrim':
          if(text>'')
          {
            var reg=new RegExp("[A-Za-z '\-]","g");
          }
          else
          {
            var reg=new RegExp("[A-Za-z'\-]","g");
          }
          break;
        case 'alphanumtrim':
          if(text>'')
          {
            var reg=new RegExp("[A-Za-z0-9 éèàùâêîôûäëïöüç'_\-]","g");
          }
          else
          {
            var reg=new RegExp("[A-Za-z0-9éèàùâêîôûäëïöüç'\-]","g");
          }
          break;
        case 'uppernumtrim':
          if(text>'')
          {
            var reg=new RegExp("[A-Za-z0-9 '\-]","g");
          }
          else
          {
            var reg=new RegExp("[A-Za-z0-9'\-]","g");
          }
          break;
      }
      if(!reg.test(caractere))
      {
        window.event.keyCode=0;
      }
      else if (type.substr(0,5)=='upper')
      {
        if ((key>0x60)&&(key<0x7B)) window.event.keyCode = key-0x20;
      }
    }
  }
}

function keyMax(text,max)
{
  if(text=='undefined') text='';
  if((window.event)&&(text.length>=max)) window.event.keyCode=0;
}

// Affiche la date et l'heure dans le tag id (raffraichissement toutes les s secondes)
function afficheDate(id,s)
{
  Jours = new Array('dimanche','lundi','mardi','mercredi','jeudi','vendredi','samedi');
  Mois = new Array('janvier','férvier','mars','avril','mai','juin','juillet','août','septembre','octobre','novembre','décembre');
	Aujourdhui = new Date();
	document.getElementById(id).innerHTML = Jours[Aujourdhui.getDay()]+" "+Aujourdhui.getDate()+" "+Mois[Aujourdhui.getMonth()]+" "+Aujourdhui.getFullYear()+" - "+Aujourdhui.getHours()+":"+((m=Aujourdhui.getMinutes())<10?"0":"")+m;
	setTimeout('afficheDate("'+id+'",'+s+')',s*1000);
}

function lTrim(str)
{
  while(str.substring(0,1)==' ') str=str.substring(1,str.length);
	return str;
}

function rTrim(str)
{
    while(str.substring(str.length-1)==' ') str=str.substring(0,str.length-1);
	return str;
}

function Trim(str)
{
    return rTrim(lTrim(str));
}

function Remplace(expr,a,b)
{
	var i=0;
  while (i!=-1)
	{
  	i=expr.indexOf(a,i);
    if (i>=0)
		{
    	expr=expr.substring(0,i)+b+expr.substring(i+a.length);
      i+=b.length;
    }
  }
  return expr;
}

// Gestion des Pop-up
function turn_selects(act)
{
	var selects = document.getElementsByTagName("select");
	for(i=0;i<selects.length;i++) selects[i].style.visibility=(act?'visible':'hidden');
}

var objObjet;
function DisplayAlert(strAlertMsg,Objet){
	turn_selects(false);
  	document.getElementById('Alert_Msg').innerText = strAlertMsg;
	document.getElementById('redalert').style.visibility = "visible";
	objObjet = Objet;
}

function HideAlert(){
	turn_selects(true);
	document.getElementById('redalert').style.visibility = "hidden";
	if(objObjet!=undefined){objObjet.focus();}
}

function DisplayConfirm_OuiNon(strConfirmMsg){
	turn_selects(false);
	document.getElementById('confirm_ouinon_Msg').innerText = strConfirmMsg;
	document.getElementById('redconfirm_ouinon').style.visibility = "visible";
}

function HideConfirm_OuiNon(blnOui){
	turn_selects(true);
	document.getElementById('redconfirm_ouinon').style.visibility = "hidden";
	if(blnOui){Exec_Oui();}
}

function setCookie(name, value, expires, path, domain, secure)
{
  document.cookie=name+"="+escape(value)+((expires)?"; expires="+expires.toGMTString():"")+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+((secure)?"; secure":"");
}

// Fonctions qui gèrent l'affichage d'un bloc div
function show_block(id_bloc,property)
{
  if (property == 'display')
  {
    document.getElementById(id_bloc).style.display = '';
  }
  else
  {
    document.getElementById(id_bloc).style.visibility = 'visible';
  }
}

function hide_block(id_bloc,property)
{
  if (property == 'display')
  {
    document.getElementById(id_bloc).style.display = 'none';
  }
  else
  {
    document.getElementById(id_bloc).style.visibility = 'hidden';
  }
}
// Fin fonction de gestion d'affichage

/*** GESTION DES MESSAGES D'ATTENTE ***/
bln_wait = true;
// save = 0 : chargement de page
// save = 1 : enregistrement de données
function waiting(text,save)
{
  if(bln_wait || save==1)
  {
	document.getElementById('div_info').style.display = "";
    document.getElementById('text_attente').innerHTML = text;
    if (save==1)
    {
      document.getElementById('div_menucont').style.display = "none";
    }
    window.setTimeout("waiting_text()",200);
  }
}

function stop_waiting()
{
  bln_wait = false;
  document.getElementById('div_info').style.display = "none";
  // document.getElementById('div_contenant').style.display = "none";
  if (obj=document.getElementById('div_menucont'))
  {
    obj.style.display = ""  
  }
}

function waiting_text()
{
  html = document.getElementById('msg_info').innerHTML;
  if (nbp==7)
  {
    html = "";
    nbp = 0;
  }
  document.getElementById('msg_info').innerHTML = html + ".";
  nbp++;
  window.setTimeout("waiting_text()",200);
}
/*** FIN MESSAGES ATTENTE ***/

/*** GESTION DES ALERTE ET CONFIRME JAVASCRIPT ***/
var objObjet;

function DisplayAlert(strAlertMsg,Objet)
{
  var W_NAV = window.screen.availWidth;
  var H_NAV = window.screen.availHeight;
  var left = (W_NAV-291)/2;
  var top = (H_NAV/4)	+ document.documentElement.scrollTop;

	turn_selects(false);
  document.getElementById('redalert').style.top = top.toString()+"px";
  document.getElementById('redalert').style.left = left.toString()+"px";
	document.getElementById('Alert_Msg').innerHTML = strAlertMsg;
	document.getElementById('redalert').style.visibility = "visible";
  document.getElementById('modalContainer').style.display = "block";
  objObjet = Objet;
}

function HideAlert()
{
	turn_selects(true);
	document.getElementById('redalert').style.visibility = "hidden";
	document.getElementById('modalContainer').style.display = "none";
	if(objObjet!=undefined){objObjet.focus();}
	blnRep=true;
}

function DisplayConfirm_OuiNon(strConfirmMsg)
{
  var W_NAV = window.screen.availWidth;
  var H_NAV = window.screen.availHeight;
  //var left = (W_NAV-291)/2;
  var left = (370);
  var top = (H_NAV/4)	+ document.documentElement.scrollTop;

	turn_selects(false);
  document.getElementById('redconfirm_ouinon').style.top = top.toString()+"px";
  document.getElementById('redconfirm_ouinon').style.left = left.toString()+"px";
	document.getElementById('confirm_ouinon_Msg').innerHTML = strConfirmMsg;
	document.getElementById('redconfirm_ouinon').style.visibility = "visible";
	document.getElementById('modalContainerConfirm').style.display = "block";
}

function HideConfirm_OuiNon(blnOui)
{
	turn_selects(true);
	document.getElementById('redconfirm_ouinon').style.visibility = "hidden";
	document.getElementById('modalContainerConfirm').style.display = "none";
	if(blnOui){Exec_Oui();}
}
/*** FIN ALERT CONFIRME ***/

if (window.addEventListener)
	window.addEventListener("load", stop_waiting, false );
else if (window.attachEvent)
	window.attachEvent("onload", stop_waiting, false );


