if(scriptI18n === undefined)
	var scriptI18n = new ScriptI18n();      
/**
 * Traduction i18n 
 * 
 */
function ScriptI18n()
{
	this.changeTextEditor = 
	{
		modeSimple : 'Mode simple',
		modeAvance : 'Mode avancé'
	};

	this.chargeEditeur = {lang : 'fr'};
}

//-- console 
if(!window.console)
{
    window.console = 
    {
        log: function(message){},
        debug: function(){},//Requires Gecko 5.0
        info: function(){},
        error: function(){},
        warn: function(){},
        trace: function(){}//Requires Gecko 6.0
    };
}

if(!window.console.debug)
    window.console.debug = function(message){window.console.log(message);};
    
if(!window.console.trace)
    window.console.trace = function(message){window.console.log(message);};
//-- 

    var DebugHelper = 
    {
        sendLog: function(message, location)
        {
          var context = Dropcloud.context || {};
          
          JQ.ajax({
                type: "post",
                url: configPath + 'exec/logJs',
                data: {'message': message, 'location':location, 'context':json_encode(context)},
                dataType:'json',
                success: function(data)
                {
                    
                }
          }); 
        },  
        log: function(val)
        {    
            if(window['console'])
            {
                console.log(val); 
            }
        }
    };
    
    
      /*___________________________________________________________*/	 	
      function listeDestinataires()
      {
          var liste = new Array();
          var data = JQ('#search_destinataire input[class="email"]');
					JQ.each(data, function(i, val)
          { 
            liste.push(val.value) ;
          }); 
          
          return liste; 
      }
	  /*___________________________________________________________*/	 	
      function listeDestinatairesPartage()
      {
          var liste = new Array();
          var data = JQ('#search_partage input[class="email"]');
					JQ.each(data, function(i, val)
          { 
            liste.push(val.value) ;
          }); 
          
          return liste; 
      }
      
function afficheEnvoiOption()
{
	JQ('#form_id').val('uu_upload_option');
		
	JQ('#envoi_haut').hide();
	JQ('#envoi_option_haut').fadeIn('slow');
	JQ('#envoi_bas').hide();
	JQ('#envoi_option_bas').fadeIn('slow');
	
	JQ('#email_option').val(JQ('#email').val());
	JQ('#destinataires_option').val(JQ('#destinataires').val());
	JQ('#fichier').val('');
}

function afficheMenuLangue()
{
	var listeLang = document.getElementById('listeLang');
	if (!document.getElementById('divLangue')) {
		var div = document.createElement('div');
		div.setAttribute('id','divLangue');
  		div.setAttribute('onclick','afficheMenuLangue()');
		div.onclick = function () { afficheMenuLangue();this.parentNode.removeChild(this); };
	}
	if (listeLang.className == 'listeLangue divLangue') {
		listeLang.className = 'listeLangue';
	}
	else {
		listeLang.className = 'listeLangue divLangue';
		
		listeLang.parentNode.insertBefore(div,listeLang);
		var divLangue = document.getElementById('divLangue');
		
		if(document.documentElement.clientHeight > document.body.clientHeight)
			divLangue.style.height = document.documentElement.clientHeight+"px";
		else
			divLangue.style.height = document.body.clientHeight+"px";
	}
}

function afficheMenuLangueEc()
{
	var listeLang = document.getElementById('listeLang');
	
	if (!document.getElementById('divLangueEc')) {
		var div = document.createElement('div');
		div.setAttribute('id','divLangueEc');
  		div.setAttribute('onclick','afficheMenuLangueEc()');
		div.onclick = function () { afficheMenuLangueEc();this.parentNode.removeChild(this); };
	}
	if (listeLang.className == 'listeLangueEc divLangueEc') {
		listeLang.className = 'listeLangueEc';
	}
	else {
		listeLang.className = 'listeLangueEc divLangueEc';
		
		listeLang.parentNode.insertBefore(div,listeLang);
		
		var divLangue = document.getElementById('divLangueEc');
		
		if(document.documentElement.clientHeight > document.body.clientHeight)
			divLangue.style.height = document.documentElement.clientHeight+"px";
		else
			divLangue.style.height = document.body.clientHeight+"px";
	}
}

function afficheChampPasswordHome()
{
	if(JQ('#check_password:checked').length == 1)
	{
		JQ.post(
			configPath + 'index/AfficheChampPasswordHome',
			function(data) {
				JQ('#passwordArea').html(data);
			}
		);
	}
	else
		JQ('#passwordArea').html('');
}

function changeClassFermer(css, cssHover, cssImage, cssImageHover)
{
	var element = JQ('.'+css);
		
	for(var i = 0; i < element.length; i++)
		element[i].className = cssHover;
		
	var element = JQ('.'+cssImage);
		
	for(var i = 0; i < element.length; i++)
		element[i].className = cssImageHover;
}

function changeClass(css, cssHover)
{	
	var element = JQ('.'+css);
		
	for(var i = 0; i < element.length; i++)
		element[i].className = cssHover;
}


function getWindowHeight() {
    var windowHeight=0;
    if (typeof(window.innerHeight)=='number') {
        windowHeight=window.innerHeight;
    } else {
		if (document.documentElement && document.documentElement.clientHeight) {
			windowHeight = document.documentElement.clientHeight;
		} else {
			if (document.body&&document.body.clientHeight) {
					windowHeight=document.body.clientHeight;
			}
		}
	}	
	
    return windowHeight;
} 
/*
function afficheMesFichiersDivDossier(idDossier,couleur)
{
	if (JQ("#ligneMesFichiersDossier"+idDossier).is(":hidden"))
	{
		JQ("#ligneMesFichiersDossier"+idDossier).show();
		
		if(couleur == 'gris')
			JQ("#puceFichiers"+idDossier).html("<img src='" + imagePath + "espace_client/puce_langues_gris.gif' style='width: 9px; height: 7px;' />");
		else
			JQ("#puceFichiers"+idDossier).html("<img src='" + imagePath + "espace_client/puce_langues.gif' style='width: 9px; height: 7px;' />");
	}
	else
	{
		JQ("#ligneMesFichiersDossier"+idDossier).hide();
		
		if(couleur == 'gris')
			JQ("#puceFichiers"+idDossier).html("<img src='" + imagePath + "espace_client/puce_langues2_gris.gif' style='width: 9px; height: 7px;' />");
		else
			JQ("#puceFichiers"+idDossier).html("<img src='" + imagePath + "espace_client/puce_langues2.gif' style='width: 9px; height: 7px;' />");
	}
}*/

function startUploadHome()
{
	var exec = configPath + "uber/AjouteContactEnvoi/?";
	JQ('#script_').remove();
	JQ("<input type='hidden' name='script_' id='script_' style='display: none; visibility: hidden;' value='" + exec + "' />").appendTo('#' + JQ('#form_id').val());
	UberUpload.linkUpload();
}


function findFileEnvoyer()
{
	//~ if(JQ('#recherche_fichier').val().length >= 3)
	//~ {
		JQ.post(
			configPath + 'envoi/ChargeMesFichiersEnLigne',
			{ recherche: JQ('#recherche_fichier').val() },
			function(data) {
				JQ('#divLigneTabMesFichiersEnLigne').html(data);
			}
		);	
	//~ }
}

/***********************************************************************/
/*                               Page contact                          */
/***********************************************************************/
function afficheZoneBasContact(etape, idContact)
{
	element = JQ('.lienOptionContactSel');
	
	for(var i = 0; i < element.length; i++)
		element[i].className = 'lienOptionContact';
	
	var cpt = '';
	
	switch(etape)
	{
		case 'ajout_contact':
			cpt = 0;
		break;
		
		case 'import_contact':
			cpt = 1;
		break;
		
		case 'creer_groupe':
			cpt = 2;
		break;
		
		case 'modifier_contact':
			cpt = 0;
		break;
	}

	element = JQ('.lienOptionContact');
		
	for(var i = 0; i < element.length; i++)
	{
		if(i == cpt)
			element[i].className = 'lienOptionContactSel';
	}	
	
	JQ.post(
		'modules/request/afficheContact.php',
		{action: 'afficheZoneBasContact', etape: etape, idContact: idContact},
		function(data) {
			JQ('#zoneMenuBasContact').html(data);
		}
	);	
}

function afficheTypeImport(etape)
{
	element = JQ('.lienOptionContactSelMini');
	
	for(var i = 0; i < element.length; i++)
		element[i].className = 'lienOptionContactMini';
	
	var cpt = '';
	
	switch(etape)
	{
		case 'import_outlook':
			cpt = 0;
		break;
		
		case 'import_excel':
			cpt = 1;
		break;
		
		case 'import_carnet':
			cpt = 2;
		break;
	}

	element = JQ('.lienOptionContactMini');
		
	for(var i = 0; i < element.length; i++)
	{
		if(i == cpt)
			element[i].className = 'lienOptionContactSelMini';
	}

	JQ.post(
		'modules/request/afficheContact.php',
		{action: 'afficheTypeImport', etape: etape},
		function(data) {
			JQ('#typeImport').html(data);
		}
	);	
}

function chargeContact()
{
  throw 'utiliser restoreAffichage() !!';
	/*JQ.post(
		configPath + 'contact/ChargeContact',
		function(data) {
			JQ('#divMesContacts').html(data);
		}
	);  */
}  

/*function findContact()
{
	JQ.post(
		configPath + 'contact/RechercheContact',
		{ recherche: JQ('#recherche_contact').val() },
		function(data) 
    {
        JQ('#tabMesContacts tr[class*=contentTab]').remove();
        JQ(data).insertAfter(JQ('#tabMesContacts .ligneEntete'));
		}
	);	
} */
/*
function preSupprimeContact(idContact)
{
	JQ('#actions'+idContact).fadeOut(
	"slow",
	function() {
		JQ('#divPreSuppr'+idContact).fadeIn("slow");
	});
}   */
/*
function masqueActions(divMasque, divAffiche)
{
	JQ('#'+divMasque).fadeOut(
		"slow",
		function() {
			JQ('#'+divAffiche).fadeIn("slow");
		});
} */

/*function supprimeContact(idContact, compteur)
{
	JQ.post(
		'modules/request/afficheContact.php',
		{action: 'supprimeContact', idContact: idContact},
		function(data) {
			chargeListeContact();
		}
	);	
}*/

function saveGroupe(idContact)
{
	var idGroupe = JQ('#groupe'+idContact).val();
	
	JQ.post(
		'modules/request/afficheContact.php',
		{action: 'saveGroupe', idContact: idContact, idGroupe: idGroupe},
		function(data) {
		}
	);	
}

function modifieContact(idContact)
{
	afficheZoneBasContact('modifier_contact',idContact);
}
/*
function saveModificationContact(idContact)
{
	var societe = JQ('#societe').val();
	var nom = JQ('#nom').val();
	var prenom = JQ('#prenom').val();
	var email = JQ('#email').val();
	var groupe = JQ('#groupe').val();
	var mobile = JQ('#mobile').val();
	
	if(!empty(email) && groupe > -1)
	{
		JQ('#email').css({'background-color' : '#ECECEC', 'border' : '1px solid #C6C6C6'});
		JQ('#groupe').css({'background-color' : '#FFFFFF', 'border' : '1px solid #7F9DB9'});
	
		JQ.post(
			'modules/request/afficheContact.php',
			{action: 'saveModificationContact', idContact: idContact, societe: societe, nom: nom, prenom: prenom, email: email, groupe: groupe, mobile: mobile},
			function(data) {
				afficheZoneBasContact('ajout_contact','');
				chargeListeContact();
			}
		);	
	}
	
	if(empty(email))
		JQ('#email').css({'background-color' : '#FF7F7F', 'border' : '1px solid #FF3F3F'});
		
	if(groupe == -1)
		JQ('#groupe').css({'background-color' : '#FF7F7F', 'border' : '1px solid #FF3F3F'});     
}
*/
/***********************************************************************/
/***********************************************************************/
/***********************************************************************/

/***********************************************************************/
/*                               Page fichiers                         */
/***********************************************************************/

function chargeMesFichiers()
{
	// JQ('#divListeMesFichiers').html('<div style="width: 100%; text-align: center;"><img src="graphs/ajax-loader.gif" /></div>');

	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'chargeMesFichiers'},
		function(data) {
			JQ('#divListeMesFichiers').html(data);
		}
	);	
}

function afficheMesFichiers()
{
	if (JQ("#ligneMesFichiers").is(":hidden"))
	{
		JQ("#ligneMesFichiers").show();
		JQ("#ligneMesFichiersFake").hide();
		JQ("#puceFichiers").html("<img src='" + imagePath + "espace_client/puce_langues.gif' style='width: 9px; height: 7px;' />");
	}
	else
	{
		JQ("#ligneMesFichiers").hide();
		JQ("#ligneMesFichiersFake").show();
		JQ("#puceFichiers").html("<img src='" + imagePath + "espace_client/puce_langues2.gif' style='width: 9px; height: 7px;' />");
	}
}

function findFichier()
{
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'rechercheFichiers', recherche: JQ('#recherche_fichier').val()},
		function(data) {
			JQ('#divListeMesFichiers').html(data);
		}
	);	
}

function downloadFichier(hash)
{
	window.open("http://192.168.0.151/download.php?dl="+hash+"&uid=owner");
}

function affichePasswordMesFichiers()
{
	if(JQ('#password:checked').length == '1')
		JQ('#divPasswordMesFichiers').show();
	else
		JQ('#divPasswordMesFichiers').hide();
}

function chargeZoneDroitFichier(etape,idFichier)
{
	// JQ('#divContainDroiteMesFichiers').html('<div style="width: 100%; text-align: center;"><img src="graphs/ajax-loader.gif" /></div>');

	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'chargeZoneDroitFichier', etape: etape, idFichier: idFichier},
		function(data) {
			JQ('#divContainDroiteMesFichiers').html(data);
		}
	);	
}

function ajouteDestinataireEnvoiFichier(val)
{
	var listeDestinataire = JQ('#listing_destinataire');
	
	if(!empty(val))
		listeDestinataire.val(listeDestinataire.val()+val+'|');
	
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'ajouteDestinataireEnvoiFichier', destinataire: listeDestinataire.val()},
		function(data) {
			JQ('#divTabListingDestinataireMesFichiers').html(data);
			chargeListeDestinataire();
		}
	);	
}

function chargeListeDestinataire()
{
	var listeDestinataire = JQ('#listing_destinataire').val();
	
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'chargeListeDestinataire', destinataire: listeDestinataire},
		function(data) {
			JQ('#divListeDestinatairesMesFichiers').html(data);
		}
	);	
}

function supprimeDestinataireEnvoiFichier(destinataire)
{
	var listeDestinataire = JQ('#listing_destinataire').val().split('|');
	var temp = '';
	
	for(var i = 0; i < listeDestinataire.length; i++)
	{
		if(!empty(listeDestinataire[i]))
		{
			if(listeDestinataire[i] != destinataire)
				temp += listeDestinataire[i]+'|';
		}
	}
		
	JQ('#listing_destinataire').val(temp);
	 
	ajouteDestinataireEnvoiFichier();
}

function envoiFichierMesFichiers()
{
	var listeDestinataire = JQ('#listing_destinataire').val();
	var sujet = JQ('#sujet').val();
	var message = JQ('#message').val();
	var idFichier = JQ('#idFichier').val();

	if(JQ('#password:checked').length == '1')
	{
		var optionPassword = "true";
		var password = JQ('#motdepasse').val();
	}
	else
	{
		var optionPassword = "false";
		var password = "";
	}
	
	if(JQ('#accuse:checked').length == '1')
		var optionAccuse = "true";
	else
		var optionAccuse = "false";
					
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'traiteEnvoi', sujet: sujet, message: message, optionPassword: optionPassword, password: password, optionAccuse: optionAccuse, listeDestinataire: listeDestinataire, idFichier: idFichier}
	);
}

function preSupprFichier(idFichier)
{
	JQ('#confirmSuppression'+idFichier).fadeIn("slow");
}

function masquePreSupprFichier(idFichier)
{
	JQ('#confirmSuppression'+idFichier).fadeOut("slow");
}

function supprFichier(idFichier)
{
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'supprFichier', idFichier: idFichier},
		function(data) {
			chargeZoneDroitFichier('default','');
			chargeMesFichiers();
		}
	);	
}

function ajouteTagsFichier()
{
	var idFichier = JQ('#idFichier').val();
	var tags = JQ('#tags').val();
		
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'ajouteTagsFichier', tags: tags, idFichier: idFichier},
		function(data) {
			JQ('#idFichier').val('');
			chargeListeTags();
		}
	);	
}

function chargeListeTags()
{
	var idFichier = JQ('#idFichier').val();
		
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'chargeListeTags', idFichier: idFichier},
		function(data) {
			JQ('#listeTagsFichier').html(data);
		}
	);	
}

function supprimeTag(idTag)
{
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'supprimeTag', idTag: idTag},
		function(data) {
			chargeListeTags();
		}
	);	
}

function saveCommentairesFichier()
{
	var idFichier = JQ('#idFichier').val();
	var commentaire = JQ('#commentaire').val();
	
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'saveCommentairesFichier', idFichier: idFichier, commentaire: commentaire}
	);	
}

function renameFichier()
{
	var fichier = JQ('#nameFichier').html();
	var fileName = substr(fichier,0,strrpos(fichier,'.'));
	var input = document.createElement('input');
	
	input.setAttribute('type','text');
	input.setAttribute('name','nom_fichier');
	input.setAttribute('id','nom_fichier');
	input.setAttribute('value',fileName);
		
	input.style.width = getTextWidth(fileName)+'px';
	input.style.border = '1px solid #000000';
	input.style.height = '18';
	
	input.onblur = function() {
		saveName();
	 };
	 
	input.onkeydown = function (event)
    {
		if (!event && window.event)
			event = window.event; 
     
		if (getKeyCode(event) == 27)
			saveName();
    };
	
	JQ('#nameFichier').empty();
	JQ('#nameFichier').append(input);
	
	input.focus();
}

function saveName()
{
	var name = JQ('#nom_fichier').val();
	var idFichier = JQ('#idFichier').val();
	
	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'saveName', name: name, idFichier: idFichier},
		function(data) {
			JQ('#nameFichier').html(data);
			chargeMesFichiers();
		}
	);	
}

function afficheArboCreerDossier()
{
	displayOpacifier();
	
	var div = document.createElement('div');
	div.style.zIndex='50';
	div.id = 'popUpBox';

	 div.style.left = (document.body.clientWidth - 300 ) / 2 + "px";
	div.style.top = (document.body.clientHeight - 400 ) / 2 + "px";
  
	document.body.appendChild(div);

	JQ.post(
		'modules/request/afficheFichier.php',
		{action: 'afficheArboCreerDossier'},
		function(data) {
			JQ("#popUpBox").html(data);
		}
	);
}

function addCheminDossier(idDossier)
{
	var res = idDossier.split('|');
	JQ("#idDossier").val(res[0]);
	JQ("#chemin_dossier").val(res[1]);
	deletePopup();
}

function creerDossier()
{
	if(!empty(JQ("#idDossier").val() && !empty(JQ("#nom_dossier").val())))
	{
		JQ.post(
			'modules/request/afficheFichier.php',
			{action: 'creerDossier', nomDossier: JQ('#nom_dossier').val(), dossierParent: JQ('#idDossier').val()},
			function(data) {
				if(!empty(data))
					JQ('#chemin_dossier').css({'background-color' : '#FF7F7F', 'border' : '1px solid #FF3F3F'});
				else
				{
					JQ('#chemin_dossier').css({'background-color' : '#FFFFFF', 'border' : '1px solid #7F9DB9'});
					JQ('#nom_dossier').css({'background-color' : '#FFFFFF', 'border' : '1px solid #7F9DB9'});
					
					JQ('#chemin_dossier').val('');
					JQ('#nom_dossier').val('');
					JQ('#idDossier').val('');
				}
			}
		);	
	}

	if(empty(JQ("#idDossier").val()))
		JQ('#chemin_dossier').css({'background-color' : '#FF7F7F', 'border' : '1px solid #FF3F3F'});
	
	if(empty(JQ("#nom_dossier").val()))
		JQ('#nom_dossier').css({'background-color' : '#FF7F7F', 'border' : '1px solid #FF3F3F'});
	
	
}

/***********************************************************************/
/***********************************************************************/
/***********************************************************************/

function loadAppletUpload()
{
	var retour='';

	appletWidth = "100%";
	appletHeight = "257";

	postURL = "http://192.168.0.151/upload_dummy.php";
	urlToSendErrorTo = ""; //Careful: log info will be truncated, if sent to a mailto: link.
	uploadPolicy = "DefaultUploadPolicy";
	
	afterUploadTarget = "";
	afterUploadURL = "javascript: uploadApplet();";
	allowHttpPersistent = "";
	allowedFileExtensions = "";
	browsingDirectory = "";
	debugLevel = "";
	fileChooserIconFromFileContent = "";
	fileChooserIconSize = "";
	fileChooserImagePreview = "";
	filenameEncoding = "";
	formdata = "";
	highQualityPreview = "";
	httpUploadParameterName = "";
	httpUploadParameterType = "";
	keepOriginalFileExtensionForConvertedImages = "";
	lang = "";
	lookAndFeel = "system";
	maxChunkSize = "";
	maxFileSize = "";
	maxPicHeight = "";
	maxPicWidth = "";
	nbFilesPerRequest = "";
	pictureTransmitMetadata = "";
	readCookieFromNavigator = "";
	realMaxPicHeight = "";
	realMaxPicWidth = "";
	serverProtocol = "HTTP/1.1";
	showLogWindow = "false";
	showStatusBar = "true";
	specificHeaders = "";
	sslVerifyCert = "";
	stringUploadError = "";
	stringUploadSuccess = "";
	targetPictureFormat = "";
	encrypt = "1";
								
	uploadPolicyList = ["", "DefaultUploadPolicy", "FileByFileUploadPolicy", "PictureUploadPolicy", "CoppermineUploadPolicy", "FilesTogetherUploadPolicy"];

	httpUploadParameterTypeList = ["", "Iteration", "Array"];
	//eo: esperanto
	//hr: croatian
	//il: hebrew
	langList = ["", "ar", "br", "cr", "cz", "de", "dk", "en", "eo", "es", "fr", "hr", "il", "it", "ja", "nl", "no"
				, "pl", "pt", "pt_BR", "ru", "se", "si", "tk", "us", "zh"];
	serverProtocolList = ["", "HTTP/0.9", "HTTP/1.0", "HTTP/1.1", "FTP"];
	showLogWindowList = ["true", "false", "onError"]; 
	
	function writeParam (param, value) {
		if (value != undefined && value != "") {
			retour +='   <param name="';
			retour +=param;
			retour +='" VALUE="';
			retour +=value;
			retour +='" >';
		}
	}
	
	retour +='<P><APPLET ';
	retour +='	CODE    = "wjhk.jupload2.JUploadApplet" ';
	retour +='	ARCHIVE = "java/wjhk.jupload.jar, java/jakarta-commons-oro.jar, java/jakarta-commons-net.jar" ';
	retour +='	WIDTH   = "' + appletWidth + '" ';
	retour +='	HEIGHT  = "' + appletHeight + '"';
	retour +='	NAME = "jupload" ';
	retour +='	MAYSCRIPT >';
	writeParam("postURL", postURL);
	writeParam("uploadPolicy", uploadPolicy);

	writeParam("afterUploadTarget", afterUploadTarget);
	writeParam("afterUploadURL", afterUploadURL);
	writeParam("allowHttpPersistent", allowHttpPersistent);
	writeParam("browsingDirectory", browsingDirectory);	
	writeParam("debugLevel", debugLevel);
	writeParam("fileChooserIconFromFileContent", fileChooserIconFromFileContent);
	writeParam("fileChooserIconSize", fileChooserIconSize);
	writeParam("fileChooserImagePreview", fileChooserImagePreview);
	writeParam("filenameEncoding", filenameEncoding);
	writeParam("formdata", formdata);
	writeParam("httpUploadParameterName", httpUploadParameterName);
	writeParam("httpUploadParameterType", httpUploadParameterType);
	writeParam("keepOriginalFileExtensionForConvertedImages", keepOriginalFileExtensionForConvertedImages);
	writeParam("lang", lang);
	writeParam("lookAndFeel", lookAndFeel);
	writeParam("nbFilesPerRequest", nbFilesPerRequest);
	writeParam("maxChunkSize", maxChunkSize);
	writeParam("maxFileSize", maxFileSize);
	writeParam("maxPicHeight", maxPicHeight);
	writeParam("pictureTransmitMetadata", pictureTransmitMetadata);
	writeParam("readCookieFromNavigator", readCookieFromNavigator);	
	writeParam("realMaxPicHeight", realMaxPicHeight);
	writeParam("realMaxPicWidth", realMaxPicWidth);
	writeParam("showLogWindow", showLogWindow);
	writeParam("showStatusBar", showStatusBar);
	writeParam("specificHeaders", specificHeaders);
	writeParam("sslVerifyCert", sslVerifyCert);
	writeParam("stringUploadError", stringUploadError);
	writeParam("stringUploadSuccess", stringUploadSuccess);
	writeParam("targetPictureFormat", targetPictureFormat);
	writeParam("urlToSendErrorTo", urlToSendErrorTo);
	writeParam("encrypt", encrypt);
	
	retour += "<div id='inputAjouteFichierEtape1'><form id='uu_upload' name='uu_upload' method='post' enctype='multipart/form-data' action='#' style='margin:0px; padding:0px'><input type='file' name='fichier' id='fichier' /><input type='hidden' name='form_id' id='form_id' value='uu_upload' /><input type='hidden' name='method' id='method' value='express' /></form></div><a href='javascript:;' onclick='UberUpload.linkUploadExpress();' class='lienButtonAjouteFichierEtape1'><div id='buttonAjouteFichierEtape1' onmouseover='changeClass(\"lienButtonAjouteFichierEtape1\",\"lienButtonAjouteFichierEtape1Hover\");' onmouseout='changeClass(\"lienButtonAjouteFichierEtape1Hover\",\"lienButtonAjouteFichierEtape1\");'>Ajouter &agrave; l'envoi</div></a><div id='loadingUpload'><div id='progress_bar' style='margin-left: 0px; width: 131px; background-image: url(\"" + imagePath + "chargement_mini.gif\"); background-repeat: repeat-x;'></div><br />Temps restant estim&eacute; : <span id='est_time_left'>0</span></div><div class='erreur' id='errorUpload'></div><div id='upload_container'></div>";
	retour +='</APPLET>';
	
	JQ('#applet_java').html(retour);
}

function loadAppletDownload(files)
{
	var retour = '';

	retour += '<applet name="MyDownloader" code="com.javaatwork.mydownloader.MyDownloader" archive="java/mydownloader.jar, java/labels_fr.jar" width="300">';
	retour += '<param name="files" value="'+files+'">';
	retour += '<param name="language" value="fr">';
	retour += '<param name="lookAndFeel" value="2">';
	retour += '<param name="folderChooser" value="2">';
	retour += '<param name="successURL" value="javascript: alert(1);">';
	retour += '</applet>';

	JQ('#applet_java').html(retour);
}

function uploadApplet()
{
	JQ.post(
		'function.php',
		{action: 'uploadApplet'},
		function(data) {
			ajouteFichiersEnvoi('');
		}
	);	
}

function loadStatFile(hashFichier, hashContact, hashEnvoi)
{
	JQ.post(
		configPath + 'download/LoadStatFile',
		{hashFichier: hashFichier, hashContact: hashContact, hashEnvoi:hashEnvoi},
		function(data) { }
	);
}
/*
function logMe()
{
	var email = JQ('#email_log').val();
	var password = JQ('#password_log').val();
	alert(email+' '+password);
	JQ.post(
		configPath + 'index/Logme',
		{'email': email, 'password': password},
		function(data) {
			alert(data);
			//eval(data);
	
		}
	);
}*/

function chargeEditeur(id)
{
	if(!CKEDITOR.instances[id])
	{
		CKEDITOR.on( 'dialogDefinition', function( ev )
		{
			var dialogName = ev.data.name;
			var dialogDefinition = ev.data.definition;

			if ( dialogName == 'link' )
			{
				dialogDefinition.removeContents( 'target' );
				dialogDefinition.removeContents( 'advanced' );
			}
		});

		CKEDITOR.replace(id, 
			{
				toolbar :
				[
					['Font','FontSize'],['TextColor','BGColor'],['Bold','Italic','Underline','JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock','Link']
				],
				skin : 'v2',
				uiColor : '#EFEFEF',
				language : scriptI18n.chargeEditeur.lang,
				height: '124px',
				width: '100%;'
			}
		);
	}
	else
	{
		  var clean = trim(strip_tags(CKEDITOR.instances[id].getData()));
		  CKEDITOR.instances[id].destroy();
		  var textarea = JQ('<textarea id="msg" name="msg"></textarea>');
		  textarea.append(clean); 
		  JQ('#inputMessage').html(textarea);
	}
}

function changeTextEditor(id)
{
	if(JQ('#'+id+ '>a').html() == scriptI18n.changeTextEditor.modeSimple)
		JQ('#'+id+ '>a').html(scriptI18n.changeTextEditor.modeAvance);
	else
		JQ('#'+id+ '>a').html(scriptI18n.changeTextEditor.modeSimple);
}

function drawPasswordField()
{
  var check = document.getElementById('password') ;
  var field = document.getElementById('divPasswordEnvoyer') ;

  if(check.checked)
    field.style.display = 'block';
  else 
    field.style.display = "none";  
}


/** permet d'ajouter un contact */
/*function ajouterContactFormSimple()
{      
  var val = trim(JQ('#search_destinataire').val());
  if(!empty(val))
  {   
	  JQ.post(
    		configPath + 'envoi/AddContactEnvoyerFormSimple',
    		{ listeEmail: val},
    		function(data) 
        {
    		}
    );
  }
}
  */
/***/  


function envoiFormSimple()
{
  verifContactFormSimple(); //verification des contacts
  
  //verifie que pas upload en cours
  if(JQ('#nbFichierEnCoursUpload').val() >=1)
  {
    //patienter
    openUploadAttentePopup();  

  }
  else
    if(JQ('#nbFichierSelectionne').val() <= 0)
    {
        alert("aucun fichier selectionné");
    }
    else
    {
      alert("envoyé");
    }
}

function incremente(JqueryItem,val)
{
  var oldValue = eval(JqueryItem.attr('value'));
  JqueryItem.attr('value',oldValue+val);
}

function decremente(JqueryItem,val)
{
  var oldValue = eval(JqueryItem.attr('value'));
  JqueryItem.attr('value',oldValue-val);
}

/*function addOverlay(targetID)
{      
   var div_overlay = JQ('<div>');
   div_overlay.css('height',window.screen.height);
   div_overlay.css('width', window.screen.width);

   div_overlay.attr('id','overlay');
   JQ(targetID).append(div_overlay);  
}

function removeOverlay()
{     
    JQ('#overlay').remove();
}*/
    
/*function openUploadAttentePopup()
{
  addOverlay("body");
  
	JQ.post(  //va cherche le partial
		configPath + 'envoi/getUploadAttentePopup',
		function(data)
    {       
      var div_popup = JQ('<div>');
      div_popup.attr('id','popup');
      div_popup.html(data);
			JQ("body").append(div_popup);
		}
	);  
} */

/*function closeUploadAttentePopup()
{
  //JQ("#uploadAttentePopup").remove();
  JQ("#popup").remove();
  removeOverlay('body');
} */

function importContact()
{
  var listeIdGroupe = new Array();
  
  JQ('#groupeSelectionne > select > option').each(function(i, option)
  { 
    option = JQ(option);
    listeIdGroupe.push(option.val());
  });
  
  JQ.post(
		configPath + 'contact/ImportContact',
		{ login: JQ('#login').val(), password: JQ('#password').val(), lib: JQ('#domain').val(), groupe: JQ('#groupe').val() ,'listeIdGroupe':listeIdGroupe},
		function(data) { 
		 if(empty(data)) {
       JQ('#login').val('');
       JQ('#password').val('');
       JQ('#groupe').val('0');    
       restoreAffichage();
     } else {
        JQ('#errorImport').html(data);
     }
		}
	);
}

/*
function supprimeContact(id, callback)
{
  if(confirm("Etes vous sur de vouloir supprimer ce contact ?")) {
     JQ.post(
    		configPath + 'contact/DeleteContact',
    		{ idContact: id },
    		function(data) {

    		  restoreAffichage();
    		}
    	);
  }   
}*/

function rechercheContact() {
  var recherche = JQ('#recherche').val();
   JQ.post(
    		configPath + 'contact/RechercheContact',
    		{ recherche: recherche },
    		function(data) {
        JQ('#tabMesContacts tr[class*=contentTab]').remove();
        JQ(data).insertAfter(JQ('#tabMesContacts .ligneEntete'));
    		}
    	);
}

  /* Permet de detecter l'activation d'un plugin */ 
  function detectPlugins(mimeType,activeXObject)
  {
  	if( navigator.mimeTypes.length > 0 && navigator.mimeTypes[mimeType] != undefined)
  	{
  		return navigator.mimeTypes[mimeType].enabledPlugin != null;
  	}
  	else if( window.ActiveXObject ) //pour ie
  	{
  		try
  		{
  			new ActiveXObject(activeXObject);
  			return true;
  		}
  		catch(oError)
  		{
  			return false;
  		}
  	}
  	else
  		return false;
  } 

function getFlashVersion()
{
  // ie
  try {
    try {
      // avoid fp6 minor version lookup issues
      // see: http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-internet-explorer-flash-6/
      var axo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6');
      try { axo.AllowScriptAccess = 'always'; }
      catch(e) { return '6,0,0'; }
    } catch(e) {}
    return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version').replace(/\D+/g, ',').match(/^,?(.+),?$/)[1];
  // other browsers
  } catch(e) {
    try {
      if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){
        return (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g, ",").match(/^,?(.+),?$/)[1];
      }
    } catch(e) {}
  }
  return '0,0,0';
}

 /**
  * Permet de détecter le plugin flash
  */
 function detectFlash() 
 {
     var flash = detectPlugins('application/x-shockwave-flash',"ShockwaveFlash.ShockwaveFlash") ;
     if(flash)
     {
        var version = getFlashVersion().split(',').shift();
        return (version > 9);
     }
 
    return false;
 }
 
 function checkDirectoryUpload(el, callback)
 {
    var id = JQ(el).attr('rel');
    var checked = JQ(el).is(':checked');
    
    JQ.post(
    		configPath + 'fichier/checkDirectoryUpload',
    		{ idDirectory: id },
    		function(data) {

    		  var tab = data.split(';');

    		  for(var i = 0; i < tab.length; i++) {
    		    if(!empty(tab[i])) {
              var temp = tab[i].split('-');
              if(temp[0] == 'F') {
                  var type = 'check_file_';
                  var list = 'listFile';
              }
              else if (temp[0] == 'D') {
                  var type = 'check_directory_';
                  var list = 'listDirectory';
              }

              if(checked == true)
              {
                  JQ('#'+list).val(JQ('#'+list).val() + temp[1] +'|'); 
                  JQ('#'+type+temp[1]).attr('checked', true);
              }
              else if(checked == false) {
                  var elements = JQ('#'+list).val().split('|');
                  var newElements = '';
                  for(var k = 0; k < elements.length; k++) {
                    if(elements[k] != temp[1] && !empty(elements[k]))
                      newElements += elements[k] + '|';
                  }
                  JQ('#'+list).val(newElements);
                  JQ('#'+type+temp[1]).attr('checked', false);
               }
            }
          }
          
          if(!empty(callback))
          {
            switch (callback)
            {
              case 1:
                downloadFichiers();
              break;

              case 2:
                deplaceFichiers();
              break;

              case 3:
                supprimeDossiers();
              break;

              case 4:
                envoiDossiers();
              break;
            }
          }
          updateMenuBar();
    		}
    	);
 }
  
 function checkFileUpload(el)
 {                                 
    var id = JQ(el).attr('rel');
    //var checked = JQ(el).is(':checked');
    var checked = JQ('#check_file_'+id).attr('checked');
    
    if(checked == true)
      JQ('#listFile').val(JQ('#listFile').val() + id +'|');
    else if(checked == false) {
      var elements = JQ('#listFile').val().split('|');
      var newElements = '';
     
     //supprime de la liste 
      for(var k = 0; k < elements.length; k++) {
        if(elements[k] != id && !empty(elements[k]))
          newElements += elements[k] + '|';
      }
      JQ('#listFile').val(newElements);
     }
 }
 
 function chechedFileCheckbox(el)
 {
    var id = JQ(el).attr('rel');
    
    if(JQ('#check_file_'+id).attr('checked') == true)
        JQ('#check_file_'+id).attr('checked','');
    else
      JQ('#check_file_'+id).attr('checked','checked');
        
    checkFileUpload(el);
 }
  
 function decim2(x)
 {
    var decim2=Math.round(x*100)/100;
    return  decim2;
}

  //@param tailleFichier tailleFchier en ko
 	function convertTaille(tailleFichier)
	{    
		if(tailleFichier>=(1024*1024))
		{
			unite="Go";
			tailleFichier=(tailleFichier/(1024*1024));
		}
		else if(tailleFichier>=(1024))
		{
			unite="Mo";
			tailleFichier=(tailleFichier/(1024));
		}
		else 
		{
			unite="Ko"; 
		}

		return decim2(tailleFichier)+' '+unite;
		
	}

function checkDeplaceFichier(obj)
{
  if(JQ(obj).is(':checked') == true) {
    JQ('.check_deplace').each(function(index, value) {
      if(JQ(obj).attr('rel') != JQ(this).attr('rel')) {
        JQ(this).attr("disabled", true);
        JQ(this).attr("checked", false);
      }
    });
    JQ('#dossier_deplace').val(JQ(obj).attr('rel'));
  } else if(JQ(obj).is(':checked') == false) {
     JQ('.check_deplace').each(function(index, value) {
        JQ(this).attr("disabled", false);
    });
    JQ('#dossier_deplace').val('');
  }
}	

/* permet de cocher une checkox en cliquant sur un autre �l�ment */
function cocheCase(idCheckbox)
{             
  //var checked = JQ('#'+idCheckbox).attr('checked');
  //JQ('#'+idCheckbox).attr('checked',!checked);
  JQ('#'+idCheckbox).trigger('click');
}

function drawLineUpdateTelephone(id,id2)
{   
    JQ('#'+id2).css("display","none");
    JQ('#'+id).fadeIn("slow");
    
    //on desactive le bouton fermer
    JQ('#popup_contacts_sms').parent().find('.ui-dialog-buttonset > button').attr('disabled','disabled');
    JQ('#popup_contacts_sms').parent().find('.ui-icon-closethick').parent().css('display','none');   
}

function drawLineSeeTelephone(id,id2)
{   
    JQ('#'+id2).css("display","none");
    JQ('#'+id).fadeIn("slow");
    
    //on desactive le bouton fermer
    JQ('#popup_contacts_sms').parent().find('.ui-dialog-buttonset > button').removeAttr('disabled');
    JQ('#popup_contacts_sms').parent().find('.ui-icon-closethick').parent().css('display','block');
}

function UpdateContactTelephone(idChamp,idChampEdit)
{
  var telephone = trim(JQ("#"+idChampEdit+" input[name=mobile]").val());
  var indicatifPays = JQ("#"+idChampEdit+" select[class=indicatifPays]").val();
  var email = trim(JQ("#"+idChamp+" .colonneEmail").html());
               
  JQ("#"+idChampEdit+" input[name=mobile]").css('border-color','');
  JQ("#"+idChampEdit+" .erreurTelephone").css("display","none");
               
  if(indicatifPays == '33' && telephone.length == 10)
  {
     if(telephone.substr(0,1) == '0')
       telephone =  telephone.substr(1,telephone.length-1);
  }
  
  //test pour la france
  if(!empty(telephone) && indicatifPays == '33' && telephone.length != 9)
  {
      JQ("#"+idChampEdit+" input[name=mobile]").css('border-color','#cc0000');
      JQ("#"+idChampEdit+" .erreurTelephone").css("display","block");
      return;
  }

    //requete ajax
    JQ.post(
      		configPath + 'contact/updateTelephoneContact',
      		{ indicatifPays: indicatifPays,telephone: telephone,email:email },
      		function(data) 
          {  
            data = eval(data);
            if(data.errorCode == '1')
            {
               JQ("#"+idChampEdit+" input[name=mobile]").css('border-color','#cc0000');
               JQ("#"+idChampEdit+" .erreurTelephone").css("display","block");
            }  
            else if(data.errorCode == '0')
            {
              JQ("#"+idChampEdit+" .erreurTelephone").css("display","none");
              var telephoneText = "";
                 
              //met a jour le contenu 
              if(empty(telephone))
                telephoneText = '<p class="warning">'+error_no_defined_telephone+"</p>";
              else
                telephoneText = indicatifPays+' '+telephone; 
           
              //mise a jour des champs
              JQ("#"+idChamp+" .colonneMobile").html(telephoneText);
              drawLineSeeTelephone(idChamp,idChampEdit);  
            }
      		}
    ); 
}
          

/***************************************************************************/
  /* Permet de dessiner le bouton de la menu bar*/
  function draw(HtmlObject)
  {
    JQ(HtmlObject).prev().attr('class','gaucheActive');
    JQ(HtmlObject).next().attr('class','droiteActive');
  }

  function hide(HtmlObject)
  {
    JQ(HtmlObject).prev().attr('class','gaucheInactive');
    JQ(HtmlObject).next().attr('class','droiteInactive');
  }
  
  
  function drawOnglet(HtmlObject)
  {
    JQ(HtmlObject).children('[class*=gaucheInactive]').removeClass('gaucheInactive').addClass('gaucheActive');
    JQ(HtmlObject).children('[class*=center]').addClass('centerActive');
    JQ(HtmlObject).children('[class*=droiteInactive]').removeClass('droiteInactive').addClass('droiteActive'); 
  }

  function hideOnglet(HtmlObject)
  {
    JQ(HtmlObject).children('[class*=gaucheActive]').removeClass('gaucheActive').addClass('gaucheInactive'); 
    JQ(HtmlObject).children('[class*=center]').removeClass('centerActive'); 
    JQ(HtmlObject).children('[class*=droiteActive]').removeClass('droiteActive').addClass('droiteInactive');  
  }
  
  /*__________________________________________________________________________*/
  function countDossier(idDossier)
  {
      var total = 0;
      JQ.ajax({
            type: "POST",
            url: configPath + 'fichier/countFichiersEtDossiers',
            data: {'idDossier':idDossier},
            async:false,
            success: function(data)
            {
              total = eval(data);
            }
      }); 
        
      return total;
  }

  /*_____________________________________________________________________*/ 
  function getListeIndicatifPays()
  {
      alert('getListeIndicatifPays() utilis� ??');
      /*var tab = null;
        JQ.ajax({
            type: "POST",
            url: configPath + 'contact/getIndicatifPays',
            dataType:'json',
            async:false,
            success: function(data)
            {
              tab = data;  
            }
          }); 
          
          return tab; */
  }
  
    /*____________________________________________________________________________________________*/     
    function getIndicatifPays()
    {
      var tab = new Array();
      JQ.ajax({
         type: "GET",
         url: configPath + 'contact/getIndicatifPays',
         async:false,
         dataType:"json",
         success: function(data)
         {      
            for(var i in data)
            {
              tab.push(data[i].indicatif);
            } 
         }
       });
       
       return tab;
   }    
   
/*___________________________________________________________*/	
function supprimeFichierBase(idFichier)
{
   JQ.post(
      configPath + 'fichier/DeleteFile',
      { idFichier: idFichier }
   );
}
/*___________________________________________________________*/	
function supprimeFichierLocal(idFichier)
{
   JQ.post(
      configPath + 'fichier/DeleteFile',
      { 'idFichier': idFichier, 'suppLocal':true}
   );   
}                                               

/*___________________________________________________________*/	          
 function sizeFrame()
 { 
      if(JQ('#contentEc').height()< JQ(window).height())
      {      
        var contentHeight = JQ(window).height() - JQ('#footerEc').height() - JQ('#headerEc').height() - JQ('#subMenuBar').height(); //les padding
        JQ('#contentEc').height(contentHeight);
      }
 }
 
/*___________________________________________________________*/
 /**
  *  Permet de d�sactiver le menu acc�l�rator d'ie8
  **/   
 function disabeIeAccelerator()
 {
    JQ('body').bind('selectstart', function(e){ return JQ(e.target).is(':input'); });
 }
 
/*___________________________________________________________*/
/**
 *  Permet de mettre a jour la valeur de l'option du client
 **/  
function updateOptionValeurJSON(idValeurOption, idClientExtHasOption)
{
    var code = 0;
    JQ.ajax({
            type: "POST",
            url: configPath + 'client/UpdateOptionValeurJSON',
            data: {'idValeurOption':idValeurOption, 'idClientExtHasOption':idClientExtHasOption},
            dataType:"json",
            async:false,
            success: function(data) 
            { 
              code = parseInt(data.errorCode);            
           }
    }); 
    
  return code;  
}

/*___________________________________________________________*/
/**
 *  Renvoie le contact idContact
 **/ 
function getContactJSON(idContact)
{
    var res = null;
    var errorCode = null;
    
    JQ.ajax({
        type: "GET",
        url: configPath + 'contact/getContactJSON',
        data: {'id':idContact},
        dataType:'json',
        async:false,
        success: function(data)
        {    
            res = data;
        },
        error:function(xhr, status, error) 
    		{
    		    errorCode = xhr.responseText;//sur ie mettre le throw ne fct pas !!
    		    xhr.callAjaxError = false;
        }
    });

    if(errorCode !== null)
    {
      throw errorCode; 
    }

    return res;
}

function isIE6()
{
  return (navigator.userAgent.toLowerCase().substr(25,6)=="msie 6") ? true : false;
}


function vtip() 
{        
    this.xOffset = -10; // x distance from mouse
    this.yOffset = 10; // y distance from mouse       
    
    JQ(".vtip").unbind('mouseenter mouseleave').hover(    
        function(e) {
			if(JQ.browser.msie && JQ.browser.version == '6.0')
				JQ("select").css("visibility", "hidden");
            this.t = this.title;
            this.title = ''; 
            this.top = (e.pageY + yOffset); this.left = (e.pageX + xOffset);
               
            JQ('body').append( '<p id="vtip">' + this.t + '</p>' );
                        
            JQ('p#vtip').css("top", this.top+"px").css("left", this.left+"px").fadeIn(200);
             
        },
        function() {
			if(JQ.browser.msie && JQ.browser.version == '6.0')
				JQ("select").css("visibility", "visible");
            this.title = this.t;
            JQ("p#vtip").fadeOut(300).remove();
        }
    ).mousemove(
        function(e) {
			if(JQ.browser.msie && JQ.browser.version == '6.0')
				JQ("select").css("visibility", "hidden");
            this.top = (e.pageY + yOffset);
            this.left = (e.pageX + xOffset);
                         
            JQ("p#vtip").css("top", this.top+"px").css("left", this.left+"px");
        }
    );                
}      

function closeLoginFrame(name)
{
   JQ('#'+name).dialog("close");
   JQ('#'+name).html('');   
}


/**
 * @name id de la div 
 * @callback fonction appelé apres la reconnexion
 * @callbackData les données passé au callback  
 */ 
function openLoginFrame(callback, callbackData)
{     
    if(jQuery.ajaxError.LOCK_ACTION)
        return;
          
    jQuery.ajaxError.LOCK_ACTION = true;
        
    var div = JQ('<div id="loginFrame"></div>');
    div.attr('title', __('Demande d\'autentification'));
    JQ('#container').append(div);
    
    div.dialog(
    {
        resizable: true,
    		modal: true,
    		closeOnEscape:false ,
    		width:450,
    		height:270,
        close:function()
    		{
    		    jQuery.ajaxError.LOCK_ACTION = false;
            div.remove();
        },
    		open: function(event, ui)
        {             
            JQ.ajax({
               type: "GET",
               url: configPath + 'loadLoginPage',
               async:false,
               success: function(data)
               {    
                   JQ('#loginFrame').html(data);
                   JQ('#ajax_login_button').bind('click', function()
                   {
                			var password = JQ('#ajax_login_password');
                			var hash = Dropcloud.context.user.hash; 
                			
                      JQ.ajax({
                          type: "POST",
                          url: configPath + 'loginAjax',
                          data: { 'hash':hash, 'password': password.val() },
                          async:false,
                          dataType: 'json',
                          success: function(data)
                          {
                              if(data.code == 0)
                              {
                                  JQ('#ajax_login_errorMessage').hide(); 
                                  JQ('#ajax_login_successMessage').show(); 
                                  
                                  setTimeout(function(){div.dialog("close");}, 1000);
                                  
                                  if(callback instanceof Function || typeof callback === 'string')
                                  {    
                                      //appelle de la fonction callback
                                      if(callback)
                                          window[callback](callbackData);
                                  }
                                  else
                                  {     
                                      EventDispatcher.notify(jQuery.ajaxError.EVENT_EXEC_QUEUE, {'id':10010});     
                                  }
                              }
                              else
                              {
                                  JQ('#ajax_login_successMessage').hide(); 
                                  JQ('#ajax_login_errorMessage').show(); 
                              }
                            }
                       }); 
                   });
                
                   JQ('#ajax_login_password').bind('keydown', function(event)
                   {                    
                    	if (getKeyCode(event) == 13)
                    		JQ('#ajax_login_button').trigger('click');
                   });
                  
               }
            });                   
        }
      });
}

jQuery.ajaxError = jQuery.ajaxError || {};
jQuery.ajaxError.MAX_REQUESTS = 5;
jQuery.ajaxError.DEFAULT_TIMEOUT = 500;//500 ms
jQuery.ajaxError.STOP_PROPAGATION = [404];

jQuery.ajaxError.LOCK_ACTION = false; 
jQuery.ajaxError.queueRequests = [];

jQuery.ajaxError.EVENT_EXEC_QUEUE = 'ajaxError';

/*_______________________________________________________________________________*/
jQuery.ajaxError.ajaxErrorGlobalFilterExecQueue = function(data)
{
    var id = data.id;
    if(!id)
        throw new Error('id not found');
    
    var o;
    while(o = jQuery.ajaxError.queueRequests.pop())
    {
        jQuery.ajax(o.ajaxSettings);
    }
    
    jQuery.ajaxError.LOCK_ACTION = false;
};
           
/*_______________________________________________________________________________*/
jQuery.ajaxError.ajaxErrorGlobalFilter = function(event, jqXHR, ajaxSettings, thrownError) 
{    
    var o = {'event':event, 'jqXHR':jqXHR, 'ajaxSettings':ajaxSettings, 'thrownError':thrownError};      
    //console.log(event);
    //console.log(jqXHR);
    //console.log(ajaxSettings);
    //console.log(thrownError); 
       
    if(jqXHR.callAjaxError === false)//si flag à false (dans error de Ajax)
        return false;

    //check si la requete n'est pas une requete qui n'aboutira pas
    var status = parseInt(jqXHR.status, 10);
        
    for(var i = 0; i < jQuery.ajaxError.STOP_PROPAGATION.length; i++)
    {
      if(jQuery.ajaxError.STOP_PROPAGATION[i] === status)
      {
          //send log
          return false;
      }             
    } 

    //clean ajaxSettings (bug du context)
    var t = 'fake_'+new Date().getTime();
    ajaxSettings[t] = true;
    if(ajaxSettings.context[t])
         ajaxSettings.context = null;
    
    delete ajaxSettings[t];
                                 
    //gestion de l'erreur    
    var error = parseInt(jqXHR.responseText, 10);
    
    if(jQuery.ajaxError.LOCK_ACTION)//une action est en cours, on met en queue les requetes du meme type
    {      
       jQuery.ajaxError.queueRequests.push(o);
       return false; 
    }
    
    switch(error)
    {         
        case 10010://perte de connection  
            jQuery.ajaxError.queueRequests.push(o);
            openLoginFrame(o);
        break;
        
        default:
          /*
            var maxRequests = ajaxSettings.ajaxErrorMaxRequests || jQuery.ajaxError.MAX_REQUESTS; 
            var timeout = ajaxSettings.ajaxErrorTimeout || jQuery.ajaxError.DEFAULT_TIMEOUT;
            //protection pour la récursivité
            if(!ajaxSettings.ajaxErrorCount)
               ajaxSettings.ajaxErrorCount = 0;
               
            ajaxSettings.ajaxErrorCount++;   
             
          //resoumission de la requete
          if(ajaxSettings.ajaxErrorCount > maxRequests)//stop 
          {
              //log
              return false; 
          }
          
          window.setTimeout(function(){ JQ.ajax(ajaxSettings); }, timeout); 
          */  
    }
};

jQuery(document).ajaxError(jQuery.ajaxError.ajaxErrorGlobalFilter);
EventDispatcher.subscribe(jQuery.ajaxError.EVENT_EXEC_QUEUE, jQuery.ajaxError.ajaxErrorGlobalFilterExecQueue);

function checkCopieFichier(obj)
{
  if(JQ(obj).is(':checked') == true) {
    JQ('.check_copie').each(function(index, value) {
      if(JQ(obj).attr('rel') != JQ(this).attr('rel')) {
        JQ(this).attr("disabled", true);
        JQ(this).attr("checked", false);
      }
    });
    JQ('#dossier_copie').val(JQ(obj).attr('rel'));
  } else if(JQ(obj).is(':checked') == false) {
     JQ('.check_copie').each(function(index, value) {
        JQ(this).attr("disabled", false);
    });
    JQ('#dossier_copie').val('');
  }
}        


	function downloadFichier(idFichier)
	{
	  if(!idFichier)
        throw new Error('idFichier not found'); 
	   
		JQ.ajax({
			type: "POST",
			url: configPath + 'fichier/loadDownload',
			data: { 'idFichier':idFichier },
			async:false,
			dataType:'json',
			success: function(data)
			{
				switch(data.errorCode)
				{
					case 0:
						JQ("#download_fichier").html(data.contenu);
					break;

					case 1:
						JQ("#download_fichier").html(__('Une erreur est survenue lors du téléchargement du fichier.'));
					break;

					case 2:
						JQ("#download_fichier").html(__("Vous n'êtes pas autorisé à télécharger ce fichier."));
					break;
				}

				JQ("#download_fichier").dialog(
				{
					hide: "fadeOut",
					resizable: true,
					modal: true,
					closeOnEscape:true ,
					width:450,
					height: 250,
					title: __('Téléchargement du fichier')+ ' "'+ data.title + '"'
				});
			}
		}); 
	}

	function supprimeFichier(idFichier)
	{
		if(confirm(__('Etes-vous sûr de vouloir supprimer ce fichier ?'))) {
			JQ.post(
				configPath + 'fichier/deleteFile',
				{ idFichier: idFichier },
				function(data) 
        {
					JQ('#containerFileTree').find('IMG.expanded').parent().trigger('click').trigger('click');
					
					JQ('#trContainerViewDesc_'+idFichier).remove();   
          JQ('#tr_file_'+idFichier).remove();   
            
					decrementeElement(1);
				}
			);
		}
	}

	function envoiFichier(idFichier)
	{
		JQ.post(
			configPath + 'fichier/envoiFichier',
			{ idFichier: idFichier },
			function(data) 
      {
				window.location.href = configPath+ 'envoi/index';
			}
		);
	}

