function getElement(psID) {
   if(document.all) {
      return document.all[psID];
   } else if(document.getElementById) {
      return document.getElementById(psID);
   } else {
      for (iLayer = 1; iLayer < document.layers.length; iLayer++) {
         if(document.layers[iLayer].id == psID)
            return document.layers[iLayer];
      }      

   }

   return Null;
} 

function help(rubrique)
{
	url = 'help.php?rubrique=' + rubrique;
	
	centered = true;
	width=500;
	height=450;
	
	var newwindow;
	if (centered)
	{
		var top = (screen.availHeight - height) / 2;
		var left = (screen.availWidth - width) / 2;
		newwindow = window.open(url, name, 'width='+width+',height='+height+',top='+top+',left='+left+',status=no,directories=no,toolbar=no,location=no,menubars=no,scrollbars=yes,resizable=yes');
	}
	else
		newwindow = window.open(url, name, 'width='+width+',height='+height+',status=no,directories=no,toolbar=no,location=no,menubars=no,scrollbars=no,resizable=yes');
	
	newwindow.focus();		
}

function aff_email_txt_lien(debut, fin, texte)
{ // cette fonction renvoie un lien complet pour envoyer un mail
  // l'objectif est de masquer l'email aux collecteurs d'adresses
  document.write('<a href="mailto:'+debut+'@'+fin+'">'+texte+'</a>');
}

function aff_email(debut, fin)
{ // cette fonction renvoie un lien complet pour envoyer un mail
  // l'objectif est de masquer l'email aux collecteurs d'adresses
  document.write('<a href="mailto:'+debut+'@'+fin+'">'+debut+'@'+fin+'</a>');
}

function create_zone(id_zone, classe)
{
	if (!getElement(id_zone))
	{
		document.body.innerHTML = document.body.innerHTML + '<div id="' + id_zone + '" class="' + classe + '"><div>';
	}
	else
	{
		getElement(id_zone).className = classe;
	}
}

var timeout_message = 5000;

function display_message(id_message)
{
	var id_zone = 'js_message';
	create_zone(id_zone, 'message_' + messages[id_message][1]);	
	help_button = (messages[id_message][2] != '') ? '<img alt="Aide" src="admin/icones/icon_help.gif" class="help" onclick="help(\''+ messages[id_message][2] +'\');" title="Aide" />' : '';
	getElement(id_zone).innerHTML = help_button + messages[id_message][0];
	getElement(id_zone).style.display = '';
	setTimeout('hide_message(\''+id_zone+'\')', timeout_message);
}

function display_persistent_message(id_message)
{
	var id_zone = 'invite_utilisateur';
	create_zone(id_zone, 'dragdrop');
	help_button = (messages[id_message][2] != '') ? '<img alt="Aide" src="admin/icones/icon_help.gif" class="help" onclick="help(\''+ messages[id_message][2] +'\');" title="Aide" />' : '';
	close_button = '<img alt="Fermer" src="admin/icones/icon_non.gif" class="help" onclick="hide_message(\''+ id_zone +'\');" title="Fermer" />';
	getElement(id_zone).innerHTML = close_button + help_button + messages[id_message][0];
	getElement(id_zone).style.display = '';
}

function hide_message(id_message)
{
	getElement(id_message).innerHTML = '';
	getElement(id_message).style.display = 'none';
}

var ie = document.all;
var nn6 = document.getElementById && !document.all;
var isdrag = false;
var x, y;
var dobj;

function movemouse(e)
{
  if (isdrag)
  {
    dobj.style.left = nn6 ? tx + e.clientX - x + 'px' : tx + event.clientX - x + 'px';
    dobj.style.top  = nn6 ? ty + e.clientY - y + 'px' : ty + event.clientY - y + 'px';
    return false;
  }
}

function selectmouse(e)
{
  var fobj       = nn6 ? e.target : event.srcElement;
  var topelement = nn6 ? "HTML" : "BODY";
  while (fobj.tagName != topelement && fobj.className != "dragdrop" && fobj.tagName != "INPUT")
  {
    fobj = nn6 ? fobj.parentNode : fobj.parentElement;
  }
  if (fobj.className == "dragdrop")
  {
    isdrag = true;
    dobj = fobj;
	if (fobj.offsetParent)
	{
		tx = fobj.offsetLeft
		ty = fobj.offsetTop
		while (fobj = fobj.offsetParent)
		{
			tx += fobj.offsetLeft
			ty += fobj.offsetTop
		}
	}
	else 
	{ alert('perdu !');}
	//tx = parseInt(dobj.style.left + 0, 10);
    //ty = parseInt(dobj.style.top + 0, 10);
    x = nn6 ? e.clientX : event.clientX;
    y = nn6 ? e.clientY : event.clientY;
    document.onmousemove = movemouse;
    return false;
  }
}
document.onmousedown = selectmouse;
document.onmouseup = new Function("isdrag=false");

function js_in_array(the_needle, the_haystack)
{
	var the_hay = the_haystack.toString();
	
	if(the_hay == '')
	{
		return false;
	}
	var the_pattern = new RegExp(the_needle, 'g');
	var matched = the_pattern.test(the_haystack);
	return matched;
}