function unescapeXml(str)
{
	newstr = str.replace('&gt;', '>');
	newstr = newstr.replace('&lt;', '<');
	newstr = newstr.replace('&amp;', '&');
	return newstr;
}

function ChangeMotDePasse(e)
{
	var		evt;
	var		elm;

	try
	{
		if (e)
			evt = e;
		else
			evt = window.event;
		if (evt.srcElement)
			elm = evt.srcElement;
		else
			elm = evt.target;
		iMotDePasse = document.getElementById('admin_motdepasse');
		iMotDePasse.value = elm.value;
	}
	catch(ex)
	{
	}
}

function SelectionneMotDePasse(e)
{
	var		evt;
	var		elm;

	try
	{
		if (e)
			evt = e;
		else
			evt = window.event;
		if (evt.srcElement)
			elm = evt.srcElement;
		else
			elm = evt.target;
		iMotDePasse = document.getElementById('admin_motdepasse');
		if (iMotDePasse.value == '')
			elm.value = '';
		else
			elm.select();
	}
	catch(ex)
	{
	}
}

function EnregistreInfosUtilisateur()
{
	try
	{
		var	msg = '';
		var	parametres = '';
		var iId = $('id');
		var iEtat = $('etat');
		var iCodeValidation = $('code_validation');
		var iEmail = $('admin_email');
		var iTitre = $('titre');
		var iPrenom = $('prenom');
		var iNom = $('nom');
		var iMotDePasse = $('admin_motdepasse');
		var iMotDePasse1 = $('motdepasse1');
		var iMotDePasse2 = $('motdepasse2');
		var iEnregistre = $('enregistre');

		if ((iEmail.value.lastIndexOf('.') <= iEmail.value.indexOf('@')) || (iEmail.value.length <= 0))
			msg += 'L\'adresse email n\'est pas valide.\n';
		if ((iMotDePasse.value != '') && (iMotDePasse1.value != iMotDePasse2.value))
			msg += 'Le mot de passe et n\'est pas identique dans les deux champs.\n';
		if (iId.value.length > 0)
		{
			if ((iMotDePasse.value.length < 5) && (iMotDePasse.value.length > 0))
				msg += 'Le mot de passe doit comporter au moins 5 caractères.\n';
		}
		else
		{
			if (iMotDePasse.value.length < 5)
				msg += 'Le mot de passe doit comporter au moins 5 caractères.\n';
		}
		if (msg != '')
		{
			alert(msg);
			return;
		}
		var ajax = new Ajax
		(
			'/assistance/utilisateur.php',
			{
				method: 'post',
				encoding: 'iso-8859-1',
				urlEncoded: true,
			    onComplete: function(response, responseXml)
				{
					try
					{
						var utilisateur = responseXml.getElementsByTagName('utilisateur').item(0);
						if (utilisateur)
						{
							try
							{
								var iDateCreation = $('datecreation');
								var iDateModification = $('datemodification');
								var iValidation = $('validation');
								if (iEtat)
									iEtat.value = unescapeXml(utilisateur.getElementsByTagName('etat').item(0).firstChild.data);
								if (iDateCreation)
									iDateCreation.value = unescapeXml(utilisateur.getElementsByTagName('datecreation').item(0).firstChild.data);
								if (iDateModification)
									iDateModification.value = unescapeXml(utilisateur.getElementsByTagName('datemodification').item(0).firstChild.data);
								if (iEmail)
									iEmail.value = unescapeXml(utilisateur.getElementsByTagName('email').item(0).firstChild.data);
								if (iTitre)
									iTitre.value = unescapeXml(utilisateur.getElementsByTagName('titre').item(0).firstChild.data);
								if (iPrenom)
									iPrenom.value = unescapeXml(utilisateur.getElementsByTagName('prenom').item(0).firstChild.data);
								if (iNom)
									iNom.value = unescapeXml(utilisateur.getElementsByTagName('nom').item(0).firstChild.data);
								if (iMotDePasse)
									iMotDePasse.value = '';
								if (iEnregistre)
									iEnregistre.value = unescapeXml(utilisateur.getElementsByTagName('enregistreidentification').item(0).firstChild.data);
								MiseAJourLienUtilisateur();
								if (iValidation && iEtat && (iEtat.getValue() != 1))
								{
									iValidation.value = '';
									iValidation.style.display = 'none';
								}
							}
							catch(e)
							{
								alert('Erreur lors de la réception des données.\n' + e.name + ' : ' + e.message);
							}
						}
					}
					catch(ex)
					{
					}
					try
					{
						message = responseXml.getElementsByTagName('message').item(0);
						alert(unescapeXml(message.firstChild.data));
					}
					catch(ex)
					{
					}
					stopPatience();
				},
				onFailure: function()
				{
					alert('Erreur lors de la réception des données.');
					stopPatience();
				},
				onRequest: function()
				{
					startPatience();
				}
			}
		);
		var parametres = {action: 'Enregistrer', email: escape(iEmail.getValue()), motdepasse: escape(iMotDePasse.getValue()), titre: escape(iTitre.getValue()), prenom: escape(iPrenom.getValue()), nom: escape(iNom.getValue()), enregistre: escape(iEnregistre.getValue())};
		if (iEtat.getValue() == 1)
			$extend(parametres, {validation: escape(iCodeValidation.getValue())});
		ajax.request(parametres);
	}
	catch(e)
	{
		alert('Erreur lors de l\'envoi des données.\n' + e.name + ' : ' + e.message);
	}
}

function EnregistreInfosGroupe()
{
	try
	{
		var	msg = '';
		var	parametres = '';
		iId = document.getElementById('id');
		//iEtat = document.getElementById('etat');
		iNom = document.getElementById('nom');

		if (iNom.value.length <= 0)
			msg += 'Le nom du groupe est obligatoire.\n';
		if (msg != '')
		{
			alert(msg);
			return;
		}
		getXmlHttpRequest();
		xhr.onreadystatechange = resultatInfosGroupe;
		xhr.open('POST', 'assistance/groupe.php', true);
		loading = document.getElementById('chargement');
		loading.style.display = 'block';
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		parametres = 'action=Enregistrer&groupe=' + escape(iId.value) + '&nom=' + escape(iNom.value);
		xhr.send(parametres);
	}
	catch(e)
	{
		alert('Erreur lors de l\'envoi des données.\n' + e.name + ' : ' + e.message);
	}
}

function ChargerInfosGroupe(id)
{
	try
	{
		var	parametres = '';

		getXmlHttpRequest();
		xhr.onreadystatechange = resultatInfosGroupe;
		xhr.open('POST', 'assistance/groupe.php', true);
		loading = document.getElementById('chargement');
		loading.style.display = 'block';
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		parametres = 'action=Charger&groupe=' + escape(id);
		xhr.send(parametres);
	}
	catch(e)
	{
		alert('Erreur lors de l\'envoi des données.\n' + e.name + ' : ' + e.message);
	}
}

function ChargerListeGroupes()
{
	try
	{
		var	msg = '';
		var	parametres = '';

		getXmlHttpRequest();
		xhr.onreadystatechange = resultatListeGroupes;
		xhr.open('POST', 'assistance/groupe.php', true);
		loading = document.getElementById('chargement');
		loading.style.display = 'block';
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		parametres = 'action=Lister';
		xhr.send(parametres);
	}
	catch(e)
	{
		alert('Erreur lors de l\'envoi des données.\n' + e.name + ' : ' + e.message);
	}
}

function ConnexionUtilisateur()
{
	var ajax = new Ajax
	(
		'/assistance/utilisateur.php',
		{
			method: 'post',
			encoding: 'iso-8859-1',
			urlEncoded: true,
		    onComplete: function(response, responseXml)
			{
				try
				{
					var utilisateur = responseXml.getElementsByTagName('utilisateur').item(0);
					if (utilisateur)
					{
						try
						{
							MiseAJourLienUtilisateur();
						}
						catch(e)
						{
							alert('Erreur lors de la réception des données.\n' + e.name + ' : ' + e.message);
						}
					}
				}
				catch(ex)
				{
				}
				try
				{
					message = responseXml.getElementsByTagName('message').item(0);
					alert(unescapeXml(message.firstChild.data));
				}
				catch(ex)
				{
				}
				stopPatience();
			},
			onFailure: function()
			{
				alert('Erreur lors de la réception des données.');
				stopPatience();
			},
			onRequest: function()
			{
				startPatience();
			}
		}
	);
	ajax.request({action: 'Connecter', email: escape($('email').getValue()), motdepasse: escape($('motdepasse').getValue())});
}

function Deconnexion()
{
	SupprimerCookie('id');
	MiseAJourLienUtilisateur();
}

function EnvoyerIdentifiants()
{
	var iEmail = $('email');

	if (iEmail.getValue().length > 0)
	{
		if (confirm('Un email contenant les informations d\'identifiaction va être envoyé à l\'adresse email ' + iEmail.getValue()))
		{
			var ajax = new Ajax
			(
				'/assistance/utilisateur.php',
				{
					method: 'post',
					encoding: 'iso-8859-1',
					urlEncoded: true,
				    onComplete: function(response, responseXml)
					{
						try
						{
							message = responseXml.getElementsByTagName('message').item(0);
							alert(unescapeXml(message.firstChild.data));
						}
						catch(ex)
						{
						}
						stopPatience();
					},
					onFailure: function()
					{
						alert('Erreur lors de la réception des données.');
						stopPatience();
					},
					onRequest: function()
					{
						startPatience();
					}
				}
			);
			ajax.request({action: 'EnvoyerIdentifiants', email: escape($('email').getValue())});
		}
	}
	else
		alert('Veuillez indiquer votre adresse email dans le formulaire de connexion pour recevoir vos identifiants.');
}

function resultatInfosGroupe()
{
	var	groupe;

	if (xhr.readyState == 4)
	{
		loading = document.getElementById('chargement');
		loading.style.display = 'none';
		if (xhr.status == 200)
		{
			reponse = xhr.responseXML;
			//alert(xhr.responseText);
			try
			{
				groupe = reponse.getElementsByTagName('groupe').item(0);
				if (groupe)
				{
					try
					{
						iNom = document.getElementById('nom');
						iEtat = document.getElementById('etat');
						iId = document.getElementById('id');
						iDateCreation = document.getElementById('datecreation');
						iDateModification = document.getElementById('datemodification');
						if (iId)
							iId.value = unescapeXml(groupe.getElementsByTagName('id').item(0).firstChild.data);
						if (iEtat)
							iEtat.value = unescapeXml(groupe.getElementsByTagName('etat').item(0).firstChild.data);
						if (iNom)
							iNom.value = unescapeXml(groupe.getElementsByTagName('nom').item(0).firstChild.data);
						if (iDateCreation)
							iDateCreation.value = unescapeXml(groupe.getElementsByTagName('datecreation').item(0).firstChild.data);
						if (iDateModification)
							iDateModification.value = unescapeXml(groupe.getElementsByTagName('datemodification').item(0).firstChild.data);
						ChargerListeGroupes();
					}
					catch(e)
					{
						alert('Erreur lors de la réception des données.\n' + e.name + ' : ' + e.message);
					}
				}
			}
			catch(ex)
			{
			}
			try
			{
				message = reponse.getElementsByTagName('message').item(0);
				alert(unescapeXml(message.firstChild.data));
			}
			catch(ex)
			{
			}
		}
		else
			alert('Erreur lors de la transmission des données (' + xhr.status + ')');
	}
}

function	MiseAJourLienUtilisateur()
{
	var ajax = new Ajax
	(
		'/contenu/utilisateur.php',
		{
			method: 'post',
			encoding: 'iso-8859-1',
			urlEncoded: true,
		    onComplete: function(response)
			{
				$('utilisateur').setHTML(response);
				stopPatience();
			},
			onFailure: function()
			{
				alert('Erreur lors de la réception des données.');
				stopPatience();
			},
			onRequest: function()
			{
				startPatience();
			}
		}
	);
	ajax.request();
}

function SupprimerCookie(sNom)
{
	document.cookie = sNom + "=; expires=Fri, 01 Jan 2000 00:00:00 GMT;";
}

function resultatListeGroupes()
{
	var	groupe;

	if (xhr.readyState == 4)
	{
		loading = document.getElementById('chargement');
		loading.style.display = 'none';
		if (xhr.status == 200)
		{
			reponse = xhr.responseXML;
			//alert(xhr.responseText);
			try
			{
				contenu = '<table>';
				for (i = 0; i < reponse.getElementsByTagName('groupe').length; i++)
				{
					var id = 0;
					groupe = reponse.getElementsByTagName('groupe').item(i);
					if (groupe)
					{
						if (i == 0)
						{
							contenu += '<tr>';
							for (j = 0; j < groupe.childNodes.length; j++)
								contenu += '<th>' + unescapeXml(groupe.childNodes.item(j).nodeName) + '</th>';
							contenu += '</tr>';
						}
						contenu += '<tr>';
						for (j = 0; j < groupe.childNodes.length; j++)
						{
							switch(groupe.childNodes.item(j).nodeName)
							{
							case 'administrateur':
							case 'createur':
								if (groupe.childNodes.item(j).firstChild.data == '1')
								{
									if (parseInt(id) > 0)
										contenu += '<td><input type=\'button\' value=\'Editer\' onclick=\'ChargerInfosGroupe(' + id + ')\'/></td>';
									else
										contenu += '<td>Oui</td>';
								}
								else
									contenu += '<td>Non</td>';
								break;
							case 'id':
								id = unescapeXml(groupe.childNodes.item(j).firstChild.data);
							default:
								contenu += '<td>' + unescapeXml(groupe.childNodes.item(j).firstChild.data) + '</td>';
								break;
							}
						}
						contenu += '</tr>';
					}
				}
				contenu += '</table>';
				iListeGroupe = document.getElementById('liste_groupes');
				iListeGroupe.innerHTML = contenu;
			}
			catch(ex)
			{
			}
			try
			{
				message = reponse.getElementsByTagName('message').item(0);
				alert(unescapeXml(message.firstChild.data));
			}
			catch(ex)
			{
			}
		}
		else
			alert('Erreur lors de la transmission des données (' + xhr.status + ')');
	}
}

function ChargerUtilisateursGroupe()
{
	try
	{
		var	msg = '';
		var	parametres = '';

		iGroupe = document.getElementById('groupe');
		sUtilisateurs = document.getElementById('utilisateurs');
		while(sUtilisateurs.options.length > 0)
			sUtilisateurs.removeChild(sUtilisateurs.options[0]);
		getXmlHttpRequest();
		xhr.onreadystatechange = resultatUtilisateursGroupe;
		xhr.open('POST', 'assistance/groupe.php', true);
		loading = document.getElementById('chargement');
		loading.style.display = 'block';
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		parametres = 'action=ListerUtilisateur&groupe=' + escape(iGroupe.value);
		xhr.send(parametres);
	}
	catch(e)
	{
		alert('Erreur lors de l\'envoi des données.\n' + e.name + ' : ' + e.message);
	}
}

function MiseAJourListeUtilisateurs(reponse)
{
	var	utilisateur;

	try
	{
		sUtilisateurs = document.getElementById('utilisateurs');
		if (sUtilisateurs)
		{
			for (i = 0; i < reponse.getElementsByTagName('utilisateur').length; i++)
			{
				utilisateur = reponse.getElementsByTagName('utilisateur').item(i);
				if (utilisateur)
				{
					var oOption = document.createElement("OPTION");
					if (oOption)
					{
						sUtilisateurs.options.add(oOption);
						val = unescapeXml(utilisateur.getElementsByTagName('email').item(0).firstChild.data);
						try
						{
							val = unescapeXml(utilisateur.getElementsByTagName('nom').item(0).firstChild.data) + ' ' + unescapeXml(utilisateur.getElementsByTagName('prenom').item(0).firstChild.data);
						}
						catch(exc)
						{
						}
						oOption.innerHTML = val;
						oOption.value = unescapeXml(utilisateur.getElementsByTagName('id').item(0).firstChild.data);
						oOption.selected = (unescapeXml(utilisateur.getAttribute('selected')) == 0) ? false : true;
					}
				}
			}
		}
	}
	catch(ex)
	{
	}
}

function resultatUtilisateursGroupe()
{
	if (xhr.readyState == 4)
	{
		loading = document.getElementById('chargement');
		loading.style.display = 'none';
		if (xhr.status == 200)
		{
			reponse = xhr.responseXML;
			//alert(xhr.responseText);
			MiseAJourListeUtilisateurs(reponse);
			try
			{
				message = reponse.getElementsByTagName('message').item(0);
				alert(unescapeXml(message.firstChild.data));
			}
			catch(ex)
			{
			}
		}
		else
			alert('Erreur lors de la transmission des données (' + xhr.status + ')');
	}
}

function	EnregistreUtilisateurDuGroupe()
{
	try
	{
		var	msg = '';
		var	parametres = '';
		var	aUtilisateurs = new Array();

		iGroupe = document.getElementById('groupe');
		if (iGroupe.value != '')
		{
			sUtilisateurs = document.getElementById('utilisateurs');
			getXmlHttpRequest();
			xhr.onreadystatechange = resultatEnregistreUtilisateurDuGroupe;
			xhr.open('POST', 'assistance/groupe.php', true);
			loading = document.getElementById('chargement');
			loading.style.display = 'block';
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			parametres = 'action=EnregisterListeUtilisateurs&groupe=' + escape(iGroupe.value) + '&utilisateurs=';
			for (i = 0; i < sUtilisateurs.options.length; i++)
			{
				if (sUtilisateurs.options[i].selected)
					aUtilisateurs.push(escape(sUtilisateurs.options[i].value));

			}
			parametres += aUtilisateurs.join(',');
			xhr.send(parametres);
		}
		else
			alert('Vous devez choisir un groupe d\'utilisateur.');
	}
	catch(e)
	{
		alert('Erreur lors de l\'envoi des données.\n' + e.name + ' : ' + e.message);
	}
}

function resultatEnregistreUtilisateurDuGroupe()
{
	if (xhr.readyState == 4)
	{
		loading = document.getElementById('chargement');
		loading.style.display = 'none';
		if (xhr.status == 200)
		{
			reponse = xhr.responseXML;
			//alert(xhr.responseText);
			try
			{
				message = reponse.getElementsByTagName('message').item(0);
				alert(unescapeXml(message.firstChild.data));
				ChargerUtilisateursGroupe();
			}
			catch(ex)
			{
			}
		}
		else
			alert('Erreur lors de la transmission des données (' + xhr.status + ')');
	}
}

