/* YUI utilities for RFI - Widgets */
var Dom = YAHOO.util.Dom;
var Event = YAHOO.util.Event;

/* Misc utilities for RFI - Widgets */

// ajout des zéros significatifs devant si nécessaire
function setZero(number) {
	if (number < 10) {
		number = '0' + number;
	}
	return number;
}

/* Dom utilities for RFI - Widgets */

// Ajout d'un espace
function addSpacer(element) {
	element.innerHTML += ' ';
}

// Génération d'une section span
function getSpan (id, sClass, innerHTML) {
	var span = document.createElement("span");
	if (id !='') {
		span.id = id;
	}
	if (sClass != '') {
		// TODO : Gérer className pour IE setAttribute
		//span.setAttribute('class', sClass);	
		Dom.addClass(span, sClass);
	}
	if (innerHTML) {
		span.innerHTML = innerHTML;
	}
	return span;
}

// Génération d'une section div
function getDiv (id, sClass, innerHTML) {
	var div = document.createElement("div");
	if (id != '') {
		div.id = id;
	}
	if (sClass != '') {
		// TODO : Gérer className pour IE setAttribute
		//span.setAttribute('class', sClass);
		Dom.addClass(div, sClass);
	}
	if (innerHTML != '') {
		div.innerHTML = innerHTML;
	}
	return div;
}


// Génération d'un lien 
function getLink (id, href, sClass, innerHTML, title) {
	var a = document.createElement("a");	
	if (id != '') {
		a.id = id;
	}
	if (href != '') {
		a.href = href;	
	}
	if (sClass != '') {
		// Bug IE sur attribut Class à contrôler
		//a.setAttribute('class', sClass);
		Dom.addClass(a, sClass);
	}
	if (innerHTML != '') {
		a.innerHTML = innerHTML;
	}
	if (title !='') {
		a.title = title;
	}
	return a;	
}

// Ajout d'un lien à un élément
function addLinktoElement (element, id, href, sClass, innerHTML) {
	var a = document.createElement("a");
	a.id = id;
	a.href = href;	
	a.setAttribute('class', sClass);
	a.innerHTML = innerHTML;
	element.appendChild(a);
}

// Génération d'une image
function getImg(id, src, alt) {
	var img = document.createElement("img");
	if (id !='') {
		img.id = id;
	}
	if (src !='') {
		img.src = src;
	}
	if (alt !='') {
		img.alt = alt;
	}
	return img;
}


// Retourne l'objet d'un if donné
//	@id : id d'un élément
//  @out : objet id
function $(id)
{
	return document.getElementById(id);
}


// Remplace toutes les occurences du chaîne dans une chaîne
// @exp : chaîne contenant les éléments à remplacer
// @a: chaîne recherchée
// @b: chaîne de remplacement
function Remplace(expr,a,b) {
      var i=0
      while (i!=-1) {
         i=expr.indexOf(a,i);
         if (i>=0) {
            expr=expr.substring(0,i)+b+expr.substring(i+a.length);
            i+=b.length;
         }
      }
      return expr
   }
 
// Nettoie le code html du chaînes
// @str : chaîne à nettoyer

function strip_tags( str ){
    // http://kevin.vanzonneveld.net
    // *     example 1: strip_tags('Kevin <br />van <i>Zonneveld</i>');
    // *     returns 1: 'Kevin van Zonneveld'
 
    return str.replace(/<\/?[^>]+>/gi, '');
}
