var agt = navigator.userAgent.toLowerCase();
var isMac = (agt.indexOf('mac') != -1);
var isOpera = (agt.indexOf("opera") != -1);
var isIE = ((agt.indexOf('msie')!=-1 && !isOpera && (agt.indexOf('webtv')==-1)) && !isMac);

var xhr_object = null;
var lastobj = null;


function ouvrirFenetre(url, nompage, largeur, hauteur, extra)
{
  window.open(url, nompage,
              extra + ' status=no, width=' + largeur + ', height=' + hauteur);
  return false;
}

//******************************************************************************
function SelectAll(formulaire, action)
{
  var blnEtat = (action!=0);
  var boxes = document.formu.elements["effacer[]"];
  if (boxes.length)
    for (i = 0; i < boxes.length; i++)
    {
      var box = boxes[i];
      box.checked=blnEtat;
  	}
  else
    boxes.checked = blnEtat;
}

//******************************************************************************
function verifMail(email)
{
  var usr    = "([a-zA-Z0-9][a-zA-Z0-9_.-]*|\"([^\\\\\x80-\xff\015\012\"]|\\\\[^\x80-\xff])+\")";
  var domain = "([a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*[a-zA-Z0-9][a-zA-Z0-9._-]*\\.[a-zA-Z]{2,5}";
  var regex  = "^" + usr + "\@" + domain + "$";

  var rgx    = new RegExp(regex);
  return rgx.exec(email) ? true : false;
}

//******************************************************************************
/* Marque page et favoris */
function bookmarksite(title, url)
{
  if (document.all)
    window.external.AddFavorite(url, title);
  else if (window.sidebar)
    window.sidebar.addPanel(title, url, "")
}

//******************************************************************************
function place(evt, fenetre, largeur, hauteur)
{
  if(!document.all && document.getElementById)
  {
    larg = window.innerWidth;
    haut = window.innerHeight;
  }
  else
  {
    larg = document.body.clientWidth;
    haut = document.body.clientHeight;
  }

  if (typeof( window.pageYOffset ) == 'number') //Netscape compliant
    scrOfY = window.pageYOffset;
  else if (document.body && ( document.body.scrollLeft || document.body.scrollTop )) //DOM compliant
    scrOfY = document.body.scrollTop;
  else if ( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop )) //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
  else
    scrOfY = document.documentElement.scrollTop;

  fenetre.style.left = Math.round((larg-largeur)/2) + 'px';

  /*Ydoc = evt.clientY + scrOfY;
  if (Ydoc-hauteur < scrOfY)
    fenetre.style.top = scrOfY + 'px';
  else
    fenetre.style.top = (Ydoc-hauteur) + 'px';*/
  fenetre.style.top = Math.round((haut-hauteur)/2 + scrOfY) + 'px';
}

//******************************************************************************
function showPhotoG(evt, nomPhoto, show, id)
{
  aide = document.getElementById('bullePhoto');

  if (show)
  {
    place(evt, aide, 520, 394);
    document.getElementById('photo').innerHTML=
      '<a href="#" onclick="showPhotoG(event, \'\', false, 0); return false;">' +
      '<img src="screen/' + nomPhoto +'" width="512" height="344" alt="Cliquer pour fermer"/></a>';
    obj = document.getElementById('idphotonote');
    if (obj)
      obj.value = id;
  }
  aide.style.visibility = show?"visible":"hidden";
}

//******************************************************************************
/*function showAmi(evt)
{
  videoitem = document.getElementById('videoitem');
  if (videoitem != null)
    videoitem.style.visibility = "hidden";

  aide = document.getElementById('bulleAmi');
  place(evt, aide, 240, 230);
  aide.style.visibility = "visible";
}*/

//******************************************************************************
/*function envoiMail(idItem, typeItem)
{
  listemail = document.getElementById('listemail').value;
  email = document.getElementById('email').value;
  if (listemail == '') {
    alert('La liste des emails ne peut pas être vide !');
  }
  else if (email == '') {
    alert('Tu dois saisir ton email !');
  }
  else if (!verifMail(email)) {
    alert('Tu dois saisir un email valide!');
  }
  else
  {
    listemail = listemail.replace("\n", '##');
    appelAjax(null, 'ajax_envoiami.php?id='+idItem+'&type='+typeItem+'&email=' + email + '&liste='+listemail, true, callbackAmi);

    document.getElementById('videoitem').style.visibility = "visible";
    document.getElementById('bulleAmi').style.visibility = "hidden";
  }
}

//******************************************************************************
var callbackAmi = function getCallbackAmi()
{
  if ((xhr_object.readyState == 4))
  {
    document.body.style.cursor = 'default';
    alert(xhr_object.responseText);
  }
}

//******************************************************************************
function annuleEnvoi()
{
  videoitem = document.getElementById('videoitem');
  if (videoitem != null)
    videoitem.style.visibility = "visible";
  document.getElementById('bulleAmi').style.visibility = "hidden";
}

//******************************************************************************
function itemInvalide(id, type)
{
  switch(type)
  {
    case 1: titre = 'cet article'; break;
    case 2: titre = 'cet évenement'; break;
    case 3: titre = 'cette vidéo'; break;
    case 4: titre = 'ce membre'; break;
    case 5: titre = ''; break;
  }
  if (titre != '')
    if (confirm('Es-tu sur que ' + titre + ' est invalide ?'))
    {
      url = 'ajax_invalideitem.php?id=' + id + '&type=' + type;
      appelAjax(null, url, false, null);
      alert('Le webmaster du site vient d\'être prévenu. Merci pour ton aide');
    }

  return false;
}*/

//******************************************************************************
// fonctions pour la recherche d'un membre
//******************************************************************************
function showRecherche(evt, show)
{
  aide = document.getElementById('bulleRecherche');

  if (show)
  {
    place(evt, aide, 300, 200);
    nom = document.getElementById('to').value;
    document.getElementById('nompseudo').value = nom;
    if (nom != '')
      getRecherche();
  }

  aide.style.visibility = show?"visible":"hidden";
}

//******************************************************************************
function getRecherche()
{
  valeur = document.getElementById('nompseudo').value;
  appelAjax(null, 'ajax_recherche.php?nom='+valeur, true, callback1);
}

//******************************************************************************
function trouveRecherche(nom)
{
  document.getElementById('to').value = nom;
  showRecherche(false, false);
}

//******************************************************************************
var callback1 = function getNextCallback1()
{
  if ((xhr_object.readyState == 4))
  {
    //alert(xhr_object.responseText);
    document.body.style.cursor = 'default';
    texte = xhr_object.responseText.split('#');
    var s = '';
    for (i=0; i < texte.length; i++)
      s += '<a href="#" onclick="trouveRecherche(\'' + texte[i] + '\'); return false;">' + texte[i] + '</a><br/>';
    document.getElementById('recherche').innerHTML = s;
  }
}

//******************************************************************************
function appelAjax(obj, url, retour, fn)
{
  if (xhr_object == null)
    if(window.XMLHttpRequest)
      xhr_object = new XMLHttpRequest();
    else if(window.ActiveXObject)
      xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    else
      return true;

  xhr_object.open("GET", url, true);
  if (retour)
    xhr_object.onreadystatechange = fn;
  xhr_object.send(null);

  if (retour)
  {
    document.body.style.cursor = 'wait';
    if (obj != null)
      obj.style.cursor = 'wait';
    lastobj=obj;
  }

  return false;
}

function cache_autre(div, visible)
{
  document.getElementById(div).style.display= visible?"":"none";
}

function bookmarksite(title, url)
{
  if (document.all)
    window.external.AddFavorite(url, title);
  else if (window.sidebar)
    window.sidebar.addPanel(title, url, "")
}

function depli(idBloc)
{
  obj = document.getElementById(idBloc);
  obj.style.display = obj.style.display==''?'none':'';
  return false;
}

//******************************************************************************
function afficheAvert()
{
  aide = document.getElementById('bulleChargement');
  place(null, aide, 100, 200);
  aide.style.visibility = "visible";
  obj = document.getElementById('appletphoto');
  if (obj)
    //obj.style.display = "none";
    obj.style.visibility = "hidden";
}

//******************************************************************************
function changePhoto(liste, idImg)
{
  obj = liste.options[liste.selectedIndex];
  if (obj.value>0)
    img = 'photos/' + obj.text;
  else
    img = 'images/spacer.gif';
  obj = document.getElementById(idImg);
  if (obj)
    obj.src = img;
}

//******************************************************************************
function changePhotoEx(liste, idImg)
{
  obj = liste.options[liste.selectedIndex];
  tab = obj.value.split('-');
  if (tab[0]>0)
  {
    img = 'photos/' + tab[1] + '_' + obj.text;
  }
  else
    img = 'images/spacer.gif';
  obj = document.getElementById(idImg);
  if (obj)
    obj.src = img;
}

//******************************************************************************
function convertiUrl(chaine)
{
  var c1 = 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ';
  var c2 = 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy';

  chaine2 = '';
  for (i = 0; i < chaine.length; i++)
  {
    if ((posi = c1.indexOf(chaine.charAt(i)))>=0)
      chaine2 += c2.charAt(posi);
    else
      chaine2 += chaine.charAt(i);
  }

  var reg=new RegExp("[^a-zA-Z0-9]", "g");
  chaine2 = chaine2.replace(reg, '-');
  var reg=new RegExp("-{2,}", "g");
  chaine2 = chaine2.replace(reg, '-');
  var reg=new RegExp("^-", "g");
  chaine2 = chaine2.replace(reg, '');
  var reg=new RegExp("-$", "g");
  chaine2 = chaine2.replace(reg, '');

  chaine2 = chaine2.toLowerCase();

  return chaine2;
}

//******************************************************************************
function changeFiltreDep(liste)
{
  obj = liste.options[liste.selectedIndex];
  url = liste.form.action;
  if (obj.value == 0)
    s = '';
  else
  {
    nom = obj.text;
    if (obj.value<1000)
    {
      posi = nom.indexOf('-');
      if (posi > 0)
      {
        posi++;
        nom = nom.substring(posi);
      }
    }
    s = '-' + convertiUrl(nom) + '-d' + obj.value;
  }

  var reg=new RegExp("(#d)", "g");
  url = url.replace(reg, s)

  document.location.href = url;
  return false;
}

//******************************************************************************
function calculCar(eltAffiche, max, item){
  document.getElementById(eltAffiche).innerHTML = max-item.value.length;
}
// Alternative valide W3C _blank
function lien(monLien) {
window.open(monLien, '_blank');
return false;
}