/**
 * (ré)Initialisation d'une boîte à onglets
 * 
 * cache tous les cadres d'une boîte à onglets (lors du clic sur un onglet) sauf éventuellement un (lors du chargement de la page)
 * 
 * @param boxid : (string) id de l'élément conteneur de la boîte à onglets
 * @param keepindex : (int) indice de l'onglet qu'on ne doit pas cacher
 * @return
 */
function resetOngletBox(boxid, keepindex) {
	// on enlève le highlight sur tous les liens d'onglet
	$('#'+boxid).find('a.onglet').each(function() {
		$(this).removeClass('on');
	})
	// on passe en revue tous les cadres de la boite
	$('#'+boxid+' div.cadre').each(function() {
		// exclusion éventuelle du cadre x
		if (keepindex >= 0) {
			var reg = new RegExp('-'+keepindex+'$');
			if (!reg.test($(this).attr('id'))) $(this).hide();
			else $('#'+boxid+'-lien-'+keepindex).addClass('on'); // on ne cache pas ce cadre et on remet le highlight sur son lien associé
		}
		else $(this).hide();
	});
	return true;
}


/**
 * Affichage du cadre associé lors du clic sur un lien d'onglet d'une boîte à onglets
 * 
 *		// ne marche que lorsque les attributs class et id des éléments HTML de l'onglet respectent la forme :
 *
 *		<div id="box" class="boite-onglets">
 *			<ul class="onglets">
 *				<li class="onglet">
 *					<span class="..."><a href="" id="box-lien-x" class="onglet">...</a></span>
 *				</li>
 *				<li class="onglet">...</li>
 *			</ul>
 *			<div id="box-cadre-x" class="cadre">
 *				...
 *			</div>
 *		</div>
 *
 * @param boxid : (string) id de l'element conteneur de la boite à onglets
 * @return false pour ne pas déclencher la redirection du <a href>
 */
function setOngletBox(boxid) {
	// on passe en revue tous les liens de la boîte pour leur affecter l'action au clic 
	// (reset de tous les cadres, highlight du lien cliqué et affichage du cadre associé)
	$('#'+boxid).find('a.onglet').click(function() {
		resetOngletBox(boxid);
		id = $(this).attr('id');
		cadreid = id.replace('-lien-', '-cadre-');
		//alert(cadreid);
		$(this).addClass('on');
		$('#'+cadreid).show();
		return false;
	})
}
