/*
 * $Id: courriels.js 18996 2011-06-28 14:44:20Z methiaf $
 */
/**
 * Retourne tous les éléments du document ayant un attribut class déterminé.
 *
 * searchClass: classe à chercher
 * node: limiter la recherche à ce noeud et ses enfants
 * tag: limiter la recherche aux éléments portant ce tag
 *
 * Retour: liste d'éléments
 */
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;
}

/**
 * Recherche les délimiteurs de courriels encodés pour les décoder un à un.
 */
function decoderCourriels(){
	//var laPage = getElementsByClass("main", null, "div");

	/*for(var i in courriels){
		courriels[i].innerText = Base64.decode(courriels[i].innerText);
	}*/

	//Je n'arrive pas à consulter le innerHTML du main avec getElementsByClass
	var divs = document.getElementsByTagName("div");
	var leDiv = null;
	var laPage = null;
	var debut = -1;
	var fin = -1;
	var courriel = "";
	var avant = "";
	var apres = "";

//trouver la bonne balise div, celle de classe "main"
	for(i = 0; i < divs.length; i++){
		if(divs[i].className == "main-no-dynamic"){
			leDiv = divs[i];
			laPage = leDiv.innerHTML;
		}
	}

	//décoder les courriels en cherchant itérativement les délimiteurs
	//(une expression régulière ferait une job plus vite et simplement!)
	if(laPage != null && laPage.indexOf("<script") == -1){
		while(laPage.indexOf("_dmel_") != -1){
			debut = laPage.indexOf("_dmel_");
			fin = laPage.indexOf("_fmel_");
			courriel = laPage.substring(debut + 6, fin);
			courriel = Base64.decode(courriel);
			avant = laPage.substring(0, debut);
			apres = laPage.substr(fin + 6);
			laPage = avant + courriel + apres;
		}

		leDiv.innerHTML = laPage;
	}
}
