// JavaScript WebTool


/* ========================================================================================
	::	Variables globales
======================================================================================== */

	/* 	- VARIABLES_001 -------------------------------------------------------------------
	|	VARIABLES UTILISEES PAR LES FONCTIONS
	|		:: nomFonction()
	------------------------------------------------------------------------------------ */
	var menuActif	= "";
	var sTexte		= "";
	var nav			= "";


	// Détection du navigateur
	switch(window.navigator.appName){
		case "Netscape":
			switch(window.navigator.vendor){
				case "Firefox": nav = "Firefox" ; break; // FireFox
				case "Netscape": // Netscape
				default: nav = "Netscape"; break;
			}
		break;
		case "Microsoft Internet Explorer": // Internet Explorer
		default: nav = "IE"; break;
	}


	var ns4 = (document.layers)?true:false;
	var ie4 = (document.all)?true:false;
	var dom = (document.getElementById)?true:false; // NS 7.02, Mozilla FireFox, Mozilla, IE6

/* fin Variables globales=============================================================================== */










/* ========================================================================================
	::	Scripts Généraux
======================================================================================== */

	/*
		oError = {
			"oForm":,
			"iError":,
			"aFocus":
		}
	*/
	function formErrorValidation(oError){

		var sError		 = "";							// construction du message d'erreur par concaténation successives
		var f			 = oError.oForm;				// référence au formulaire à analyser
		var iError		 = oError.iError;				// nombre d'erreurs

		if(iError != 0) {
			sError += "--------------------------------------------------------\n";
			sError += "*     Vous avez "+iError+" erreur"+(iError > 1 ? 's':'')+" à corriger :     *\n";
			sError += "--------------------------------------------------------\n";
			sError += "                                                    \n";
			sError += oError.sErreur;
			alert(sError);
			if(oError.aFocus[0]!=null) eval("f." + oError.aFocus[0]).focus();
			return false;
		}else{
			return true;
		}
	}


	/* 	- changeClassName() -------------------------------------------------------
	|	Description :
	|		-	Modifier la classe d'un objet
	|	Aguments OBLIGATOIRES
	|		- argument 0 (string)	 : objId		=>	identifiant de l'objet sur lequel agir
	|		- argument 1 (string)	 : newClassName	=>	nom de la nouvelle classe de style à appliquer
	|	Return :
	|		- NULL
	------------------------------------------------------------------------------------ */
	function changeClassName(objId,newClassName){

		var o = getObjet(objId);
		if(o){
			o.setAttribute("class",newClassName);
			o.setAttribute("className",newClassName);
		}

	}
	// fin Fonction changeClassName(objId,newClassName)--------------------------------------







	/* 	- getObjet() -----------------------------------------------------------------------
	|	Description :
	|		-	Atteindre un objet en fonction du navigateur utilisé
	|	Variables Globales Utilisées :
	|		- dom (bool)
	|	Aguments OBLIGATOIRES
	|		- argument 0 (string)	 : id		=>	id de l'objet à atteindre
	|	Return :
	|		- une référence à l'objet dont l'id est passé en paramètre
	|	Infos :
	|		- plusieurs fonction utilisent cette fonction dans leur scripts
	------------------------------------------------------------------------------------ */
	function getObjet(id){

		if(id){
			if (dom) obj = window.document.getElementById(id);
			else if (ie4) obj = window.document.all[id];
			else if (ns4) obj = window.document.layers[id];
		}else{
			obj = false;
		}
		return obj;

	}
	// fin Fonction getObjet(id)-----------------------------------------------------------






	/* 	- setValue() ----------------------------------------------------------
	|	Description :
	|		-	Modifier la valeur d'une balise
	|	Aguments OBLIGATOIRES
	|		- argument 0 (string)	 : idObj		=>	identifiant de l'objet à modifier
	|		- argument 1 (string)	 : newValue		=>	nouvelle valeur de l'objet
	|	Fonctions appellées :
	|		- getObjet()
	|	Pages appellantes :
	|		- toutes les pages avec des formulaires d'ajout/modification/suppression
	|	Return :
	|		- NULL
	------------------------------------------------------------------------------------ */
	function setValue(idObj,newValue){

		var obj = getObjet(idObj);
		if(obj)	{
			obj.value = newValue;
		}

	}
	// fin Fonction setValue(idObj,newValue)-----------------------------------------------




	/* 	- testerMotif() ----------------------------------------------------------
	|	Description :
	|		-	Fonction utilisée pour vérifier le motif d'un masque sur une expression à tester
	|			dans le module d'inscription des sociétés.
	|	Aguments OBLIGATOIRES
	|		- argument 0 (string)	 : sMotif		=>	motif à tester
	|		- argument 0 (string)	 : sExpression	=>	expression sur laquelle tester le motif
	|	Pages appellantes :
	|		- inc/clients_partenaires.php
	|	Return :
	|		- true : si l'expression testée respecte le motif
	|		- false: si l'expression testée ne respecte pas le motif
	------------------------------------------------------------------------------------ */
	function testerMotif(sMotif,sExpression){

		// Création de l'expression régulière
		var rControle = new RegExp(sMotif);

		// Test du motif
		return rControle.test(sExpression);

	}
	// fin Fonction testerMotif()-------------------------------------------------------


	/**
	 *
	 * @access public
	 * @return void
	 **/
	function correctImgPath(){

		var aImg = document.getElementsByTagName("img");
		var iImg = aImg.length;

		for(var i=0;i<iImg;i++){

			/*
			var iStart = sStart.length;
			var sPathStart	 = aImg[i].src.substr(0,iStart+1);
			var sPathEnd	 = aImg[i].src.substr(iStart+12);
			*/

			var iStart		 = aImg[i].src.indexOf("/FileUpload")
			if(iStart == -1) continue;

			var sPathStart	 = window.location.protocol + "//" + window.location.host + window.location.pathname.substring(window.location.pathname.indexOf("/"),window.location.pathname.lastIndexOf("/")+1);
			var sPathEnd	 = aImg[i].src.substr(iStart+11);


			/*
			var sDebug = "";
			sDebug += "aImg.src : " + aImg[i].src +"\n";
			sDebug += "position : " + iStart +"\n";
			sDebug += "sPathStart : " + sPathStart +"\n";
			sDebug += "sPathEnd : " + sPathEnd +"\n";
			sDebug += "hash : " + window.location.hash +"\n";
			sDebug += "host : " + window.location.host +"\n";
			sDebug += "hostname : " + window.location.hostname +"\n";
			sDebug += "href : " + window.location.href +"\n";
			sDebug += "pathname : " + window.location.pathname +"\n";
			sDebug += "port : " + window.location.port +"\n";
			sDebug += "protocol : " + window.location.protocol +"\n";
			sDebug += "search : " + window.location.search;
			*/


			// A FAIRE
			// Rajouter un test pour savoir si le dernier caractère de
			// 'sPathStart' est un '/'
			// si ce n'est pas le cas on le rajoute au début de 'sPathMiddle'
			// sinon on laisse tel quel !!!
			sPathMiddle = "/adm/FileUpload";
			aImg[i].src = sPathStart + sPathMiddle + sPathEnd;

			//alert(sDebug + "\n #################### \n" + aImg[i].src);

		}

	}

	var tmpOnload = window.onload;
	window.onload = function(){
		if(tmpOnload) tmpOnload();
		correctImgPath();
	};





/* fin Scripts Généraux================================================================================= */