Subversion Repositories Applications.projet

Rev

Rev 431 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
431 mathias 1
<?php
2
/**
3
* PHP Version 5
4
*
5
* @category  PHP
6
* @package   projet_bp
7
* @author    aurelien <aurelien@tela-botanica.org>
8
* @copyright 2010 Tela-Botanica
9
* @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
10
* @version   SVN: <svn_id>
11
* @link      /doc/projet_bp/
12
*/
13
 
14
class Suppression extends ProjetService {
15
 
16
	public function getElement($uid) {
17
 
18
		$id_utilisateur = (isset($_GET['id_utilisateur'])) ? $_GET['id_utilisateur'] : false;
19
		$mail = (isset($_GET['mail'])) ? $_GET['mail'] : false;
20
 
21
		if(!$id_utilisateur) {
22
			return false;
23
		}
24
 
25
		// on selectionne la liste des projets auxquel on est inscrit
26
		$projets = $this->obtenirProjetsPourParticipant($id_utilisateur);
27
 
28
		// si pas de projets, rien à faire
29
		if(count($projets) <= 0) {
30
			$this->envoyer("OK");
31
			return;
32
		}
33
 
34
		// sinon on itère sur chaque projet
35
		foreach($projets as $projet) {
36
 
37
		    $id_projet = $projet['p_id'];
38
			// et on le supprime du projet
39
			$suppression_participant = $this->supprimerParticipantAProjet($id_utilisateur, $id_projet);
40
 
41
			// ainsi que des listes associées
42
			if($mail) {
43
				$id_projet = $projet['p_id'];
44
				$listes = $this->obtenirListesAssocieesAuProjet($id_projet);
45
 
46
				// si pas de liste, rien à faire
47
				if(count($listes) <= 0) {
48
					continue;
49
				}
50
 
51
				$nom_liste = $listes[0]['pl_nom_liste'];
52
				$id_liste = $listes[0]['pl_id_liste'];
53
 
54
				$suppression_liste = $this->supprimerInscriptionAListeProjet($id_utilisateur, $id_liste);
55
 
56
				// on supprime l'abonnement
57
				if($this->estAbonneAListe($nom_liste, $mail)) {
58
					if(!$this->desinscriptionListe($nom_liste, $mail)) {
59
						$this->envoyer("false");
60
					}
61
				}
62
			}
63
		}
64
 
65
	    $this->envoyer("OK");
66
		return;
67
	}
68
}
69
?>