// Wait Dialog

function waitDialog(state, message)
{	       
	var waitBox = Ext.MessageBox.show({
		   msg: message+' your data, please wait...',
		   progressText: message+'...',
		   width:250,
		   //icon:'ext-mb-download',
		   wait:true
		});
	if(state=='show')
		waitBox; 
	else if(state=='hide')
		waitBox.hide();
}

//param Adresse	
function makeAdresseParametres()
{
	var telBureau 	= document.getElementById('telBureau').value;
	var telBureau2 	= document.getElementById('telBureau2').value;
	var faxBureau 	= document.getElementById('faxBureau').value;
	var emailBureau = document.getElementById('emailBureau').value;		
	var streetNumber= document.getElementById('streetNumber').value;
	var streetName  = document.getElementById('streetName').value;
	var city        = document.getElementById('city').value;
	var province	= document.getElementById('province').value;
	var pays        = document.getElementById('pays').value;
	var postalCode  = document.getElementById('postalCode').value;
	var descriptionAdresse   =  document.getElementById('descriptionAdresse').value;
	
	var parameters 	= "telBureau=" +escape(encodeURI(telBureau))
				+"&telBureau2=" +escape(encodeURI(telBureau2))
				+"&faxBureau=" +escape(encodeURI(faxBureau))
				+"&emailBureau=" +escape(encodeURI(emailBureau))
				+"&streetNumber=" +escape(encodeURI(streetNumber))
				+"&streetName=" +escape(encodeURI(streetName))
				+"&city=" +escape(encodeURI(city))
				+"&province=" +escape(encodeURI(province))
				+"&pays=" +escape(encodeURI(pays))
				+"&postalCode=" +escape(encodeURI(postalCode))
				+"&descriptionAdresse=" +escape(encodeURI(descriptionAdresse));
				
	return parameters;
}	


//determine la nature de la reponse , on veut savoir si la reponse est succes ou non
function traiterReponse(rep)
{
	msg = "";
	if(rep == "ADD_SUCCED")
		msg = "L'insertion ";
	else if(rep == "UPDATE_SUCCED")
		msg = "La mise a jour ";
	else if(rep == "DELETE_SUCCED")
		msg = "La suppression ";
	else
		msg = "";
	return msg;
}


//parser la reeponse du serveur a fin d'afficher les messages d'erreur;
function parserReponse(tabJson)
{
	var firstReponse = tabJson[0][0];
	
	if(firstReponse == 'ADD_FAILED' || firstReponse == 'UPDATE_FAILED' || firstReponse == 'DELETE_FAILED' || firstReponse == 'UNKOWN_TASK')
	{
		return tabJson[0][1];
	}
	else if(firstReponse == 'ERREUR_VALIDATION')
	{
		var msg = '';
		var champVide = false;
		for(i=1; i < tabJson.length ; i++)
		{
			if(document.getElementById(tabJson[i][0]).type == "text")
			{
				clear(tabJson[i][0]);
				champVide = true;
			}
			msg += tabJson[i][1];
		}
		if(champVide)
			msg = '- Veuillez corriger les champs en rouge<br/>'+msg;
		return msg;
	}
	else
	{
		return "Une erreur est survenue, veuillez svp consulter l'administrateur du site. Merci !!!!";	
	}
}
	
function processAllResponsScreen(reponse,msgEntity,location)
{
	var msg 		= '';
	var errorMsg	= "Une erreur est survenue, veuillez svp consulter l'administrateur du site. Merci !!";	

	try
	{
		var tab 		= eval(reponse);
		if(typeof(tab) == 'object' && typeof(tab[0]) == 'object')	
		{
			msg 		= traiterReponse(tab[0][0]);
			if(msg == '')
				errorMsg	= parserReponse(tab);		
		}
	}
	catch(err)
	{
	}

	waitDialog('hide','');

	if(msg != '')
	{
		var text =  msg + msgEntity;
		document.getElementById('msgErreur').innerHTML = text
		setTimeout("document.getElementById('msgErreur').innerHTML = '';",50000);
		window.location = location;	
	}
	else
	{
		document.getElementById('msgErreur').innerHTML =  errorMsg;
	}	
}

function stringReplaceAjax(str)
{
	str = str.replace(/&quot;/g,'"');	
	str = str.replace(/&#039;/g,'\'');	
	str = str.replace(/\\r/g,'\r');		
	str = str.replace(/\\n/g,'\n');	
	return str;
}
