/* initialisation des fonctions */
var evn_onClick = new Array("btn_frm_contact","btn_imprimer","valider","valider2","btn");
var evn_onClick_actions = new Array("checkFormContact","imprimer","changeSite","checkSaisieChampRecherche","fermePopup");

var evn_onClick_byClassName = new Array("oeuvre","playerVideo","news","tbl_reduire","tbl_etendre","fond","tbl_ferme","tbl_ouvert","popup");
var evn_onClick_byClassName_actions = new Array("openPopup","openPopup","openPopup","reduireFamilles","deplierFamilles","openPopup","ouvreFamille","fermeFamille","openPopup");

var evn_onFocus = new Array("rechercher","form_log_identifiant","form_log_mdp","acceder");
var evn_onFocus_actions = new Array("masqueValue","masqueValue","masqueValue","changeSite2");

var evn_onBlur = new Array("rechercher","form_log_identifiant","form_log_mdp","acceder","form_log_identifiant");
var evn_onBlur_actions = new Array("afficheValue","afficheValue","afficheValue","removeChangeSite2","removeChangeSite2");



window.onload = function() {
	if(document.getElementById('TheFrmLog')) Shadowbox.init();
	initOnClick();
	initOnFocus();
	initOnBlur();
	
	
	if(document.getElementById("tableau_fonds")){
		var classes  = getElementsByClassName('ligne1');
		for(var j=0; j<classes.length; j++){
			classes[j].onmouseover = function(){
				var classes2  = this.getElementsByTagName('a');
				for(var  k=0; k<classes2.length; k++){
					classes2[k].className="pdf2";
				}
			}
			classes[j].onmouseout = function(){
				var classes2  = this.getElementsByTagName('a');
				for(var  k=0; k<classes2.length; k++){
					classes2[k].className="pdf";
				}
			}
		}
	}
	
}

function removeChangeSite2(){
	window.onkeypress = function(event){

	}
}

function changeSite2(){
	window.onkeypress = function(event){
		displayKeyCode(event);
	}
}

function displayKeyCode(evt)
 {
	var charCode = (evt.which) ? evt.which : evt.keyCode
	if (charCode == 13) changeSite();
	return false;
 }

 function submitLoginKeyPress(e)
 {
	this.value = "";
	/*
	this.onkeypress = function(event){
		var charCode = (event.which) ? event.which : event.keyCode;
		if (charCode == 13) {
		submitLogin();
		return false;
		}
	}
	*/

		var keynum;
		var keychar;
		var numcheck;
		if(window.event) // IE
		  {
		  keynum = e.keyCode;
		  }
		else if(e.which) // Netscape/Firefox/Opera
		  {
		  keynum = e.which;
		  }
		keychar = String.fromCharCode(keynum);
		numcheck = /\d/;
		key = !numcheck.test(keychar);
		if (keynum == 13) {
			submitLogin();
			return false;
		}
	


 }

 
 

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|s)" + className + "(s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i ];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

function initOnClick (){
	obj = evn_onClick;
	obj2 = evn_onClick_byClassName;
	for(var i=0; i<obj.length; i++){
		if(document.getElementById(obj[i])){
		var fonction = evn_onClick_actions[i];
			document.getElementById(obj[i]).onclick = eval(fonction);
		}
	}
	for(var i=0; i<obj2.length; i++){
		var classes  = getElementsByClassName(obj2[i]);
		for(var j=0; j<classes.length; j++){
			var fonction = evn_onClick_byClassName_actions[i];
			/*!!! exception pour tbl liste fonds !!! 
				ajout du clic sur le noeud lui meme
			*/
			if(i==8 || i==7 || i==6 || i==5 || i==9){	
				classes[j].onclick = eval(fonction);
			}
			else{
				classes[j].childNodes[0].onclick = eval(fonction);
			}
		}
	}
}

function initOnKeyPress (){
	obj = evn_onKeyPress;
	for(var i=0; i<obj.length; i++){
		if(document.getElementById(obj[i])){
		var fonction = evn_onKeyPress_actions[i];
			document.getElementById(obj[i]).onkeypress = eval(fonction);
		}
	}
}

function initOnFocus (){
	obj = evn_onFocus;
	for(var i=0; i<obj.length; i++){
		if(document.getElementById(obj[i])){
		var fonction = evn_onFocus_actions[i];
			document.getElementById(obj[i]).onfocus = eval(fonction);
		}
	}
}


function initOnBlur (){
	obj = evn_onBlur;
	for(var i=0; i<obj.length; i++){
		//if(obj[i] == "window"){
			//document.body.onblur = eval(fonction);
		//}
		if(document.getElementById(obj[i])){
		var fonction = evn_onBlur_actions[i];
			document.getElementById(obj[i]).onblur = eval(fonction);
		}
	}
}

/*fonction pour les tests */
function alertTest(){
	alert(this);
}


/* FONCTIONS DU SITE */

function imprimer(){
	window.print();
	return false;
}

function fermePopup(){
	window.close();
	return false;
}


function openPopup(){
	var width = "1004";
	var height = "800";
	/* EXCEPTION POUR LISTE FONDS */
	classe = this.className;
	classe = classe.substring(0,6);
	if(classe == "fond"){
		var position = this.parentNode.id;
		var position = position.substring(5);
		var position = parseFloat(position);
		urldest = urlFonds[position];
	}
	else{
		var urldest = this.href;
	}
	if (urldest!="#") window.open(urldest,"","width="+width+",height="+height+",resizable=1,toolbar=0,scrollbars=1,status=0,menubar=0,directories=0");
	return false; 
}





function changeSite(){
	var champ_select = document.getElementById('acceder');
	var ErrMsg = "Attention :\n";
	var lenInit = ErrMsg.length;
	if (isSelected(champ_select)) ErrMsg += 'Vous devez séléctionner un site.\n';	
	if (ErrMsg.length > lenInit) {
		alert(ErrMsg);
		return false;
	}
		window.open(champ_select.value);
}


function reduireFamilles(){
	var tableauFonds = document.getElementById('tableau_fonds');
	var classes  = getElementsByClassName('ligne1');
	for(var j=0; j<classes.length; j++){
		classes[j].style.display = 'none';
	}
	var classes  = getElementsByClassName('ligne2');
	for(var j=0; j<classes.length; j++){
		classes[j].style.display = 'none';
	}
	var classes  = getElementsByClassName('tbl_ouvert');
	for(var j=0; j<classes.length; j++){
		classes[j].className = 'tbl_ferme';
		classes[j].firstChild.src = '/common/img/picto_fleche_off.gif';
		classes[j].title="Ouvrir la famille";
		classes[j].firstChild.alt="Ouvrir la famille";
	}
	return false;
}

function deplierFamilles(){
	var tableauFonds = document.getElementById('tableau_fonds');
	var classes  = getElementsByClassName('ligne1');
	for(var j=0; j<classes.length; j++){
		classes[j].style.display = '';	
	}
	var classes  = getElementsByClassName('ligne2');
	for(var j=0; j<classes.length; j++){
		classes[j].style.display = '';
	}
	var classes  = getElementsByClassName('tbl_ferme');
	for(var j=0; j<classes.length; j++){
		classes[j].className = 'tbl_ouvert';
		classes[j].firstChild.src = '/common/img/picto_fleche_on.gif';
		classes[j].title="Fermer la famille";
		classes[j].firstChild.alt="Fermer la famille";
	}
	return false;
}

function ouvreFamille(){
	if(this.className == "tbl_ferme"){
		var boutonID = this.id;
		var tableauID = "tbl_"+boutonID;
		var pointeTableau = document.getElementById(tableauID);
		var tr = pointeTableau.getElementsByTagName("tr");
		this.className = "tbl_ouvert";
		this.firstChild.src = '/common/img/picto_fleche_on.gif';
		this.title="Fermer la famille";
		this.firstChild.alt="Fermer la famille";
		for(var i=0;i<tr.length;i++){
			tr[i].style.display = "";
		}
	}
	else{
		var boutonID = this.id;
		var tableauID = "tbl_"+boutonID;
		var pointeTableau = document.getElementById(tableauID);
		var tr = pointeTableau.getElementsByTagName("tr");
		this.className = "tbl_ferme";
		this.firstChild.src = '/common/img/picto_fleche_off.gif';
		this.title="Ouvrir la famille";
		this.firstChild.alt="Ouvrir la famille";
		for(var i=0;i<tr.length;i++){
			if(tr[i].className == "ligne1" || tr[i].className == "ligne2"){
				tr[i].style.display = "none";
			}
		}
	}
	return false;
}
function fermeFamille(){
	if(this.className == "tbl_ouvert"){
		var boutonID = this.id;
		var tableauID = "tbl_"+boutonID;
		var pointeTableau = document.getElementById(tableauID);
		var tr = pointeTableau.getElementsByTagName("tr");
		this.className = "tbl_ferme";
		this.firstChild.src = '/common/img/picto_fleche_off.gif';
		this.title="Ouvrir la famille";
		this.firstChild.alt="Ouvrir la famille";
		for(var i=0;i<tr.length;i++){
			if(tr[i].className == "ligne1" || tr[i].className == "ligne2"){
				tr[i].style.display = "none";
			}
		}
	}
	else{
		var boutonID = this.id;
		var tableauID = "tbl_"+boutonID;
		var pointeTableau = document.getElementById(tableauID);
		var tr = pointeTableau.getElementsByTagName("tr");
		this.className = "tbl_ouvert";
		this.firstChild.src = '/common/img/picto_fleche_on.gif';
		this.title="Fermer la famille";
		this.firstChild.alt="Fermer la famille";
		for(var i=0;i<tr.length;i++){
			tr[i].style.display = "";
		}
	}
	return false;
}



function afficheValue (id){
	var obj;
	obj = this.id;
	obj = document.getElementById(obj);
	var ancien_texte = obj.value;
	obj.value = ancien_texte;
	return false;
}

function masqueValue (id){
	var obj;
	obj = this.id;
	obj = document.getElementById(obj);
	obj.value = '';
	return false;
}

function checkSaisieChampRecherche (id){
	var champ = document.getElementById('rechercher');
	var formulaire = document.getElementById('form2');
	if(champ.value == ''){
		alert('Le champ de recherche doit comporter au minimum 1 caractère.');
		return false;
	}
	else{
		formulaire.submit();
		return false;
	}
}

function checkFormLog (){
//	var bouton = this.id;
//	var formulaire = document.getElementById('form_log');
//	var champ1 = document.getElementById('form_log_identifiant').value;
//	var champ2 = document.getElementById('form_log_mdp').value;
//	if(champ1 == '' || champ2 == ''){
//		alert('Les champs identifiant et mot de passe sont obligatoires.');
//		return false;
//	}
//	else{
		//formulaire.submit();
		//return false;
	//}
}






function getSelectedRadioValue (radiobutton){
	var returnValue = "";
		if (radiobutton.value != null){
		returnValue = radiobutton.value;
	} else {
		for (i=0;i<radiobutton.length;i++){
	 	   	if (radiobutton[i].checked==true) {
	 	   		returnValue=radiobutton[i].value;
	 	   	}
		}
	}
	return returnValue;
}

function isEmail(elm) {
        if ((elm.value.indexOf("@") + "" != "-1"
		&& elm.value.indexOf("@") + "" != "0"
        && (elm.value.lastIndexOf(".") > elm.value.indexOf("@")+1)
		&& (elm.value.lastIndexOf(".") < elm.value.length-2)
		&& (isValidChar(elm) == true) && (isValidExt(elm) == true)
        && elm.value != "")) return true;
        else return false;
}

function isSelected(elm) {
        if (elm.value==0) return true;
        else return false;
}

function isNumber(elm) {
	var elmstr = elm.value + "";
	if (elmstr.search(/^([0-9])+$/) == -1) return true;
	return false;
}

function isValidChar(elm) {
	var elmstr = elm.value + "";
	elmstr = elmstr.substring(0,elmstr.indexOf("@"));
	var re = /[\s\'\"\|\?\,\;\:\!\/\`\\\[\]]/gi;
	if (elmstr.search(re) != -1  ) return false;
	return true;
}

function isValidExt(elm) {
	var elmstr = elm.value +"";
	elmstr = elmstr.substring(elmstr.lastIndexOf(".")+1, elmstr.length);
	var re1 = /[0-9]/gi;
	var re2 = /[\s\'\"\|\?\,\;\:\!\/\`\\\[\]]/gi;
	if ((elmstr.search(re1) != -1 )||(elmstr.search(re2) != -1 )) return false;
	return true;
}

function isValidStr(elm) {
	var elmstr = elm.value +"";
	var re1 = /[0-9]/gi;
	if ((elmstr.search(re1) == -1 )) return false;
	return true;
}

function isEmpty(elm) {
	var elmstr = elm.value + "";
	if (elmstr.length == 0) return true;
	return false;
}

function isChecked(elm) {
	var n = elm.length; 
	var checkvalue = ''; 
		for (i=0; i<n; i++) { 
			if (elm[i].checked) { 
				checkvalue =elm[i].value; break; 
			} 
		} 
		if(checkvalue == '') { 
			return false;
		}
		else{
			return true;
		}
}






