Subversion Repositories Applications.projet

Rev

Rev 370 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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