Subversion Repositories Applications.projet

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
363 aurelien 1
<?php
2
/**
3
* PHP Version 5
4
*
5
* @category  PHP
6
* @package   papyrus_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/papyrus_bp/
12
*/
13
 
370 aurelien 14
Class Resume extends ProjetService {
15
 
16
	public function __construct($config, $demarrer_session= true) {
17
		parent::__construct($config, $demarrer_session);
18
	}
363 aurelien 19
 
20
	public function getElement($uid){
21
 
22
	    $id_utilisateur = $uid[0];
23
	    $mail_utilisateur = $uid[1];
24
 
25
		// on selectionne les projets les plus actifs
26
		$requete_projets = 	'SELECT DISTINCT *'.
370 aurelien 27
						   	' FROM projet_statistiques'.
363 aurelien 28
						   	' WHERE ps_ce_projet'.
29
								' IN '.
370 aurelien 30
								'(SELECT psu_id_projet FROM projet_statut_utilisateurs'.
399 aurelien 31
							'		WHERE psu_id_utilisateur = '.$this->bdd->quote($id_utilisateur).')'.
363 aurelien 32
							' GROUP BY ps_ce_projet'.
33
							' ORDER BY ps_msg_derniere_semaine DESC'.
34
							' LIMIT 0,5';
370 aurelien 35
 
363 aurelien 36
		$resume = array();
37
 
38
		$resume['titre'] = 'Vos projets les plus actifs';
370 aurelien 39
		$resume['lien_appli'] = '<a href="http://www.tela-botanica.org/page:liste_projets"> Voir tous les projets </a>';
363 aurelien 40
 
41
		$projets = $this->bdd->query($requete_projets)->fetchAll();
42
 
43
	    if(!$projets) {
44
	    	$resume['message'] = 'Vous n\'êtes inscrit à aucun projet';
45
	    } else {
46
		    foreach($projets as $projet) {
47
 
48
				$requete_info_projet = 'SELECT p_titre'.
370 aurelien 49
									  ' FROM projet'.
399 aurelien 50
									  ' WHERE p_id = '.$this->bdd->quote($projet['ps_ce_projet']);
363 aurelien 51
 
52
				$projet_infos = $this->bdd->query($requete_info_projet)->fetchAll();
53
 
54
				$infos_messages = '';
55
 
56
				if($projet['ps_msg_derniere_semaine'] > 0) {
57
					$infos_messages = ' (+ '.$projet['ps_msg_derniere_semaine'].' nouveaux messages) ';
58
				} else {
370 aurelien 59
					$infos_messages = ' (aucun nouveau message) ';
363 aurelien 60
				}
61
 
62
				$cible_lien = 'http://www.tela-botanica.org/page:liste_projets?id_projet='.$projet['ps_ce_projet'];
63
				$resume_item = array('element' => $projet_infos[0]['p_titre'].$infos_messages, 'lien' => $cible_lien);
64
				$resume['elements'][] = $resume_item;
65
		    }
66
	    }
67
 
68
		$this->envoyer($resume);
69
	}
70
 
71
	public function gererInscription($id_utilisateur, $mail_utilisateur) {
72
 
370 aurelien 73
		$requete_projets_utilisateur = 'SELECT * FROM projet_statut_utilisateurs'.
399 aurelien 74
										' WHERE psu_id_utilisateur = '.$this->bdd->quote($id_utilisateur);
363 aurelien 75
 
76
		$resume = '';
77
		$projets = $this->requeteTous($requete_projets_utilisateur);
78
 
79
		if($projets <= 0) {
80
			$resume = '<h3> Vous n\'êtes inscrit à aucun projet </h3>';
81
		} else {
82
			$resume = '<h3> Vos projets </h3>';
83
			$resume .= '<ul id="liste_projets">';
84
			foreach($projets as $projet) {
85
 
86
				$requete_info_projet = 'SELECT *'.
370 aurelien 87
									  ' FROM projet'.
399 aurelien 88
									  ' WHERE p_id = '.$this->bdd->quote($projet['psu_id_projet']);
363 aurelien 89
 
90
				$projet_infos = $this->requeteUn($requete_info_projet);
91
				$infos_messages = '';
92
 
93
				$resume .= '<li>
94
								<a href="http://www.tela-botanica.org/page:liste_projets?id_projet='.$projet_infos['p_id'].'" >'.
95
									'<b>'.$projet_infos['p_titre'].'</b>
96
								</a>
97
								<a onclick="javascript:return confirm(\'Se désinscrire du projet ?\');" href="http://www.tela-botanica.org/page:mes_preferences_des_projets?id_projet=7&amp;act=26">
98
									Se désinscrire du projet
99
								</a>
100
							</li>';
101
			}
102
			$resume .= '</ul>';
103
		}
104
 
105
		return $resume;
106
	}
107
}
108
?>