/** 
* Methode qui teste si un utilisateur peut se connecter
--------------------------------------------------------------------------*/
function ajaxLogin() { 
	if($("j_username").value == '' || $("j_password").value == ''){
		Element.update('loginMessage', missing);
		Element.show('loginMessage'); 
	 }else{
	 	Element.update('loginMessage', verification); 
	    Element.show('loginMessage'); 
	    var opt = { 
	        method: 'post', 
	        postBody: Form.serialize($('loginForm')), 
	        onSuccess: function(response) { 
	            var msg = response.responseText; 
	            if ("error:" == msg.substr(0, 6)) { 
	                var fp = msg.substring(6, msg.length); 
	                Element.update('loginMessage', fp); 
	            } else if ("url:" == msg.substr(0, 4)) { 
	                location.href = msg.substring(4, msg.length); 
	            } else if ("message:" == msg.substr(0, 8)) { 
	                Element.update('loginMessage', msg.substring(8, msg.length)); 
	            } 
	        } 
	    } 
		new Ajax.Request(urlSecurity+'/j_security_check', opt);  
	 }
}

/** 
* Methode qui écrit une chaine pour envoyer des paramètres en ajax
* @param param les paramètres supplémentaires
* @myArray le tableau des champs dont les valeurs sont à récupérer
* @return la chaine concaténée 
--------------------------------------------------------------------------*/
function writeQueryForAjax(param,myArray) {
	var query = '';
	if(param && param != ''){
		query += param;
	}
	if(myArray) {
		for (var index = 0, len = myArray.length; index < len; ++index) {
			  var item = myArray[index];
			  if($(item) && $(item).value != ''){
				query += '&' + item + '=' + escape($(item).value);
			  }
		}
	}
	return query;
}

/** 
* Methode qui envoie une requete Ajax
* @param divId la div où le résultat va s'afficher
* @param url l'url de la requete  Ajax
* @variables les champs à récupérer
--------------------------------------------------------------------------*/
function sendPage(divId,url,variables,param) {
	var query;
	if(param!='') {
		query = url+'?'+ writeQueryForAjax(param,'');
	} else {
		query = url+'?'+ writeQueryForAjax(param,variables);
	}
	$(divId).innerHTML = '<'+'img src="'+baseHrefJs+'/imgs/ajax-indicator.gif" alt="" />';
	new Ajax.Request(query, 
	  {
	  	onSuccess: function(transport) {
	  	 	var response = transport.responseText;
			$(divId).innerHTML=response;
	  	},
	  	onFailure: function(transport) {
		  	var response = transport.responseText;
			$(divId).innerHTML=response;
	  	}
	  }
	);
}

/** 
* Methode qui envoie une requete Ajax
* @param divId la div où le résultat va s'afficher
* @param url l'url de la requete  Ajax
* @variables les champs à récupérer
--------------------------------------------------------------------------*/
function sendPageLightbox(divId,url,variables,param) {
	var query;
	if(param!='') {
		query = url+'?'+ writeQueryForAjax(param,'');
	} else {
		query = url+'?'+ writeQueryForAjax(param,variables);
	}
	$(divId).innerHTML = '<'+'img src="'+baseHrefJs+'/imgs/ajax-indicator.gif" alt="" />';
	new Ajax.Request(query, 
	  {
	  	onSuccess: function(transport) {
	  	 	var response = transport.responseText;
			$(divId).innerHTML=response;
			initLightbox();
	  	},
	  	onFailure: function(transport) {
		  	var response = transport.responseText;
			$(divId).innerHTML=response;
	  	}
	  }
	);
}
