function nospam(dom, corps, nom) {
	location.href = "mailto:" + nom + "@" + corps + "." + dom;
}
function addEvent(source, type, callback) 
{
    // fonction d'abstraction pour enregistrer un gestionnaire d'evenement
    // comprend le DOM standard, la syntaxe prorietaire MSIE, l'ancien modele HTML
    // source : objet sur lequel ajouter le gestionnaire d'evenement
    // type : type d'evenement
    // callback : fonction qui traitera l'evenement
    if (source.addEventListener)
    {		
        // code standard DOM
        source.addEventListener(type, callback, false);
        return true;
    } 
    else if (source.attachEvent)
    { 	
        // code propriétaire MSIE
        var r = source.attachEvent('on'+type, callback);
        return r;
    } 
    else 
    {
        // code navigateur sans support DOM-event
        eval('source.on' + type + '= callback') ;
    }
}
function getStandardEvent(e) 
{
    // abstraction pour recuperer un objet standard pour l'evenement en cours
    // comprend le modele DOM standard et le modele proprietaire de MSIE
    // e : parametre recu lors de l'appel du gestionnaire d'evenement
    // retour : objet d'evenement standard
    if (e == null && window.event) 
    {
        // cas particulier de MSIE pour recuperer l'evenement en cours
        e = window.event ;
    }
    
    if (e.target == null && e.srcElement) 
    {
        // cas particulier de MSIE pour recuperer la balise DOM cible
        e.target = e.srcElement ;
    }
    
    if (!e.preventDefault)
    {
        // cas particulier de MSIE pour empecher l'action par defaut du navigateur
        e.preventDefault = function() { this.returnValue = false; };
    }
    
    return e;
}
// Récupère dans un tableau tous les éléments de balise "tag" (toutes si non précisée), du noeud "node" (document si non défini)
// auxquelles la classe "searchClass" est appliquée
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}
// bascule l'affichage du bloc obj (ou ayant pour id "obj")
function toggle(obj) {
	var el = $(obj);
	if ( el.style.display != 'none' ) {
		el.style.display = 'none';
	}
	else {
		el.style.display = '';
	}
}
Array.prototype.inArray = function (value) {
	var i;
	for (i=0; i < this.length; i++) {
        if (this[i] == value) {
			return true;
		}
	}
	return false;
};
// A nice reusable utility function !! (show sample code below...)
// ... push it in your js toolkit
function $() {
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}	
// Sample Usage:
/*
var obj1 = document.getElementById('element1');
var obj2 = document.getElementById('element2');
function alertElements() {
  var i;
  var elements = $('a','b','c',obj1,obj2,'d','e');
  for ( i=0;i<elements.length;i++ ) {
    alert(elements[i].id);
  }
}
*/
