/** JavaScript Document **/


/** initialisation des fonctions */
function initAll() {
	setupRollovers(); // initialisation des rollovers
	showHideMenu();
}


/** charger les fonctions */
addLoadListener(initAll);


/** fonction de chargement des différentes fonctions dans le listener (window.onload) */
function addLoadListener(fn) {
	
	// Mozilla-Gecko w3c Standards
	if (typeof window.addEventListener != 'undefined') {
		window.addEventListener('load', fn, false);
	
	// Opera
	} else if (typeof document.addEventListener != 'undefined') {
		document.addEventListener('load', fn, false);
	
	// IE
	} else if (window.attachEvent('onload') != 'function'){
		window.attachEvent('onload', fn);
	
	// IE 5 Mac
	} else {
		var oldFn = window.onload;
		
		if (typeof window.onload != 'function') {
			window.onload = fn;			
		} else {
			window.onload = function() {
				oldFn();
				fn();
			};
		}
	}
}


/** fonction de gestion des évènements */
function addEvent(elm, evType, fn, useCapture) {
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;		
	} else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;		
	} else {
		elm['on' + evType] = fn;
	}
}


/** gestion des rollOvers */
function setupRollovers() {
	if (!document.getElementsByTagName) {
		return;
	}
	
	var balise_a = document.getElementsByTagName('a');	
	var balise_input = document.getElementsByTagName('input');	
	
	for (var i=0; i<balise_a.length; i++) {
		var link = balise_a[i];	
		
		if (link.className && (' ' + link.className + ' ' ).indexOf(' rollOver ') != -1) {		
			if (link.childNodes && link.childNodes.length==1 && link.childNodes[0].nodeName.toLowerCase()=='img') {
				addEvent(link, 'mouseover', mouseoverImg, false);
				addEvent(link, 'mouseout', mouseoutImg, false);
			}
		}
	}
	
	for (var i=0; i<balise_input.length; i++) {
		var MyInput = balise_input[i];	
		
		if (MyInput.className && (' ' + MyInput.className + ' ' ).indexOf(' rollOver ') != -1 && MyInput.type == 'image') {
			addEvent(MyInput, 'mouseover', mouseoverInput, false);
			addEvent(MyInput, 'mouseout', mouseoutInput, false);
		}
	}
}

function mouseoverInput(e) {
	var input_tag;	
	if (window.event) {
		input_tag = window.event.srcElement;		
	} else {
		input_tag = e.target;	
	}
	input_tag.src = input_tag.src.replace(/(\.[^.]+)$/, '_hover$1');
}

function mouseoutInput(e) {
	var input_tag;
	if (window.event) {
		input_tag = window.event.srcElement;		
	} else {
		input_tag = e.target;	
	}
	input_tag.src = input_tag.src.replace(/_hover(\.[^.]+)$/, '$1');
}

function mouseoverImg(e) {
	var img_tag;
	if (window.event) {
		img_tag = window.event.srcElement;		
	} else {
		img_tag = e.target;	
	}
	img_tag.src = img_tag.src.replace(/(\.[^.]+)$/, '_hover$1');
}

function mouseoutImg(e) {
	var img_tag;
	if (window.event) {
		img_tag = window.event.srcElement;		
	} else {
		img_tag = e.target;	
	}
	img_tag.src = img_tag.src.replace(/_hover(\.[^.]+)$/, '$1');
}


/** fonction montre - cache menu slideToggle */
function showHideMenu() {
	if (!document.getElementsByName) {
		return;
	}
	var nbRubriqueArchives = document.getElementsByName('rubrique_archives').length;
	
	// position initiale fermée
	$('.show_hide').hide();
	for (var i = 1; i <= nbRubriqueArchives; i++) {
		$('#rubrique_archives_' + i).click(
			function() {
				$(this).siblings('.show_hide').slideToggle();
			}
		);
		$('#rubrique_archives_' + i).click(
			function() {
				$(this).toggleClass("article_milieu_on");
			}
		);
		$('#rubrique_archives_' + i).toggle(
			function() {
				$(this).attr("title", "Masquer les articles de cette rubrique");
			},
			function() {
				$(this).attr("title", "Voir les articles de cette rubrique");
			}
		);
	}
}


/** fonction montre - cache le menu plus changement de puce méthode classique avec onclick="showmenu(...)" */
function showmenu(id) {
	if (!document.getElementsByTagName) {
		return;
	}
	
	var balise_li = document.getElementsByTagName('li');
	var menu = document.getElementById('sousmenu'+id);
	
	for (var i=1; i<=balise_li.length; i++) {
		var sousmenu = document.getElementById('sousmenu'+i);
		var li = document.getElementById('li'+i);	
		
		// cache le sous menu
		if (sousmenu) {
			sousmenu.style.display = 'none';
		}
		
		// afiiche puce quand le sous menu est sélectionné
		if (li) {	
			 if (i != id) {
				li.className = 'article_milieu_off';				
			} else { 
				li.className = 'article_milieu_on';
			}
		}
	}
	
	// affiche sous menu
	if (menu) {
		menu.style.display = 'block';
	}
}


/** fonction changer les puces lorsque le menu est déroulé */
function changePuce(id) {
	var positionId = document.getElementById(id);
	var classVar = positionId.className;
	
	if (classVar == 'article_milieu_archives' || classVar == 'article_milieu_off') {
		classVar = 'article_milieu_on';
		
	} else if (classVar == 'article_milieu_on') {
		classVar = 'article_milieu_off';
	}
}


/** limite textarea */
function limitText(limitField, limitNum) {
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } 
}


