
  function setVisible(idNom)
  {
    document.getElementById(idNom).style.visibility='visible';
    document.getElementById(idNom).style.display   ='block';
  }
  function setHidden(idNom)
  {
    document.getElementById(idNom).style.visibility='hidden';
    document.getElementById(idNom).style.display   ='none';
  }

  function inputTextReplace(idNom,s1,s2)
  {
    i1 = document.getElementById(idNom).value.indexOf(s1);
    i2 = document.getElementById(idNom).value.indexOf(s2);
    if (s1=='' && i2==-1) {
      document.getElementById(idNom).value = document.getElementById(idNom).value+s2;
    } else if (i1>-1 && s1!='') {
      i2 = i1+s1.length;
      s3 = document.getElementById(idNom).value.substring(0,i1)+s2+document.getElementById(idNom).value.substring(i2);
      document.getElementById(idNom).value = s3;
    }
  }

  //////////////////////////////////////////////////////////////////////////
  function ajaxMajElementWait(id, contenu)
  {
    ajaxMajElementWaitN(id, contenu, 0);
  }
  function ajaxMajElementWaitN(id, contenu, n1)
  {
    if (n1==0 || document.getElementById(id).innerHTML.indexOf("ajaxMajElementWait")>-1) {
      points = "&nbsp;"+
               (n1%5==0?".":"&nbsp;")+
               (n1%5==1?".":"&nbsp;")+
               (n1%5==2?".":"&nbsp;")+
               (n1%5==3?".":"&nbsp;")+
               (n1%5==4?".":"&nbsp;");
      ajaxSetInnerHTML(document.getElementById(id), "<!--ajaxMajElementWait-->"+contenu+points);
      setTimeout("ajaxMajElementWaitN('"+id+"', '"+contenu+"', "+(n1+1)+")", 80);
    }
  }

  //////////////////////////////////////////////////////////////////////////
  function ajaxMajElementPost(elementId, req)
  {
    var req1;
    try {
      req1 = new ActiveXObject("Microsoft.XMLHTTP");  
    } catch(e) {
      req1 = new XMLHttpRequest();
    }
    req1.open('POST', req, true);
    req1.onreadystatechange = function (aEvt) {
      if (req1.readyState == 4) {
        if(req1.status == 200) {
          ajaxSetInnerHTML(document.getElementById(elementId), req1.responseText);
          decFenetreMaj();
        }
      }
    };
    req1.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    req1.send("");
  }

  function ajaxSetInnerHTML(divContent, HTML) 
  {
    if (divContent==null) return;

    divContent.innerHTML=HTML;
    try {
      var All=divContent.getElementsByTagName("*");
      for (var i=0; i<All.length; i++) {
        All[i].id=All[i].getAttribute("id")
        All[i].name=All[i].getAttribute("name")
        //All[i].className=All[i].getAttribute("class")
      }
    } catch (ex) {}
    try {
      var AllScripts=divContent.getElementsByTagName("script")
      for (var i=0; i<AllScripts.length; i++) {
         var s=AllScripts[i];
         if (s.src && s.src!="") {
            eval(getFileContent(s.src))
         } else {
            eval(s.innerHTML)
         }
      }
      //var AllScripts=HTML.extractTags("script");
      //AllScripts.forEach(function (v) {
        //eval(v);
      //})
    } catch (ex) {}
    try {
      var AllStyles=HTML.extractTags("style");
      AllStyles.forEach(function (v) {
        var s=document.createStyleSheet()
        s.cssText=v;
        s.enabled=true;
      }, true)
    } catch (ex) {}
  }

  String.prototype.extractTags=function(tag) 
  {
    var matchAll = new RegExp('(?:<'+tag+'.*?>)((\n|\r|.)*?)(?:<\/'+tag+'>)', 'img');
    var matchOne = new RegExp('(?:<'+tag+'.*?>)((\n|\r|.)*?)(?:<\/'+tag+'>)', 'im');
    return (this.match(matchAll) || []).map(function(scriptTag) {
      return (scriptTag.match(matchOne) || ['', ''])[1];
    });
  }

