/*************************************************************
**************************************************************
* Gestion des alertes et rappels de l'utilisateur - Fonctions génériques  
**************************************************************
**************************************************************/
function desactiverAlerte(rdvId, type) {
	var action = 'main.php?action=ajx_rendezvous_desactiver&rdv_id=' + rdvId + '&type=' + type;
	AJAXRequest(action, '', desactiverAlerteRetour);
}
function desactiverAlerteRetour(xhr) {
	var html = getXhrValueHTML(xhr);
	if (html != undefined && html != '') {
		var rdvId = getXhrValue(xhr, 'rdv_id');
		var type = getXhrValue(xhr, 'type');
		if (rdvId > 0) {
			// Désactivation ok : on masque le rendez-vous
			masquerAlerte(type, rdvId);
		}
	}
}
// Masquage d'un rendez-vous
function masquerAlerte(type, rdvId) {
	if (type == 1) {
		$("trRappel" + rdvId).style.display = 'none';
		rappelsNbTotal --;
		if (rappelsNbTotal == 0) {
			hideDiv('rappelsDiv');
			hideDiv('imgRappels');
			hideDiv('imgRappelsAnimes');
			rappelsTimer = setTimeout("getRappels(rappelsUtiId, rappelsDelai)", rappelsDelai);
		}
	} else {
		$("trAlerte" + rdvId).style.display = 'none';
		alertesNbTotal --;
		if (alertesNbTotal == 0) {
			hideDiv('alertesDiv');
			alertesTimer = setTimeout("getAlertes(alertesUtiId, alertesDelai)", alertesDelai);
		}
	}
}
/*************************************************************
**************************************************************
* Gestion des alertes de l'utilisateur  
**************************************************************
**************************************************************/
var alertesDelai = 60000;
var alertesUtiId = 0;
var alertesTimer = 0;
var alertesClignoterTimer = 0;
var alertesClassEtat = 0; 
var alertesNbTotal = 0; // Nombre d'alertes affichées

function getAlertes(utiId, delai) {
	alertesUtiId = utiId;
	alertesDelai = delai;
	var action = 'main.php?action=ajx_rendezvous_alertes&uti_id=' + utiId + '&type=2';
	AJAXRequest(action, '', displayAlertes);
	alertesClignoterTimer = setInterval("clignoterAlertes()", 750);
}
function displayAlertes(xhr) {
	var html = getXhrValueHTML(xhr);
	if (html != undefined && html != '') {
		//if (html.indexOf('noresult') >= 0 || html.indexOf('error') > 0) {
		if (html.indexOf('<!-- Valide -->') < 0 || html.indexOf('noresult') >= 0) {
			// Pas de résultat
			hideDiv('alertesDiv');
		} else {
			// Résultats
			alertesNbTotal = (html.length - html.replace(/trAlerte/g, '').length) / 8;
			$('alertesDivContenu').innerHTML = html;
			showDiv('alertesDiv');
		}
		if ($('alertesDiv').style.display == 'none') {
			// Si les alertes sont masquées, on relance la récupération
			alertesTimer = setTimeout("getAlertes(alertesUtiId, alertesDelai)", alertesDelai);
		}
	}
}
function hideAlertesDiv() {
	// Masquage des alertes et relance de la récupération
	hideDiv('alertesDiv');
	alertesTimer = setTimeout("getAlertes(alertesUtiId, alertesDelai)", alertesDelai);
}
// Désactivation d'une alerte
function rdvDesactiverArrive(rdvId) {
	$("tdAlertesBoutons" + rdvId).innerHTML = '<br/><img src="img/icon/run.gif" width="20"/>';
	desactiverAlerte(rdvId, 2);
}
// Clmignotement du div d'alertes
function clignoterAlertes() {
	if (alertesClassEtat == 0) {
		$('tblAlertes').className = 'divAlertesTblAlt';
	} else {
		$('tblAlertes').className = 'divAlertesTbl';
	}
	alertesClassEtat = 1 - alertesClassEtat;
}
                             
/*************************************************************
**************************************************************
* Gestion des rappels de rendez-vous de l'utilisateur  
**************************************************************
**************************************************************/
var rappelsDelai = 60000;
var rappelsUtiId = 0;
var rappelsTimer = 0;
var rappelsNbTotal = 0; // Nombre de rappels affichés

function getRappels(utiId, delai) {
	rappelsUtiId = utiId;
	rappelsDelai = delai;
	var action = 'main.php?action=ajx_rendezvous_alertes&uti_id=' + utiId + '&type=1';
	AJAXRequest(action, '', displayRappels);
}
function displayRappels(xhr) {
	var html = getXhrValueHTML(xhr);
	if (html != undefined && html != '') {
		if (html.indexOf('<!-- Valide -->') < 0 || html.indexOf('noresult') >= 0) {
			// Pas de résultat
			hideDiv('rappelsDiv');
			hideDiv('imgRappelsAnime');
		} else {
			// Résultats
			rappelsNbTotal = (html.length - html.replace(/trRappel/g, '').length) / 8;
			$('rappelsDivContenu').innerHTML = html;
			hideDiv('imgRappels');
			showDiv('imgRappelsAnime');
		}
		if ($('rappelsDiv').style.display == 'none') {
			// Si les rappels sont masquées, on relance la récupération
			rappelsTimer = setTimeout("getRappels(rappelsUtiId, rappelsDelai)", rappelsDelai);
		}
	}
}
function hideShowRappelsDiv() {
	if ($('rappelsDiv').style.display == '') {
		hideRappelsDiv();
	} else {
		showRappelsDiv();
	}
}
function showRappelsDiv() {
	// Affichage des rappels et arrêt de la récupération
	showDiv('rappelsDiv');
	hideDiv('imgRappelsAnime');
	showDiv('imgRappels');
	clearTimeout(rappelsTimer);
}
function hideRappelsDiv() {
	// Masquage des rappels et relance de la récupération
	hideDiv('rappelsDiv');
	rappelsTimer = setTimeout("getRappels(rappelsUtiId, rappelsDelai)", rappelsDelai);
}
// Désactivation d'un rappel
function rdvDesactiverRappel(rdvId) {
	$("tdRappelsBoutons" + rdvId).innerHTML = '<br/><img src="img/icon/run.gif" width="20"/>';
	desactiverAlerte(rdvId, 1);
}
// Report d'un rappel
function rdvReporterRappel(rdvId, item) {
	rappel = item.options[item.selectedIndex].value;
	$("tdRappelsBoutons" + rdvId).innerHTML = '<br/><img src="img/icon/run.gif" width="20"/>';
	reporterRappel(rdvId, rappel);
}
function reporterRappel(rdvId, prmIdRappel) {
	var action = 'main.php?action=ajx_rendezvous_reporter&rdv_id=' + rdvId + '&prm_id_rappel=' + prmIdRappel;
	AJAXRequest(action, '', reporterRappelRetour);
}
function reporterRappelRetour(xhr) {
	var html = getXhrValueHTML(xhr);
	if (html != undefined && html != '') {
		var rdvId = getXhrValue(xhr, 'rdv_id');
		if (rdvId > 0) {
			// Report ok : on masque le rendez-vous
			masquerAlerte(1, rdvId);
		}
	}
}


