/trunk/jrest/services/Gestion.php |
---|
20,10 → 20,10 |
// on selectionne la liste des projets auxquel on est inscrit |
$requete_projets = 'SELECT DISTINCT *'. |
' FROM papyrus_bp.projet'. |
' FROM projet'. |
' WHERE p_id'. |
' IN '. |
'(SELECT psu_id_projet FROM papyrus_bp.projet_statut_utilisateurs'. |
'(SELECT psu_id_projet FROM projet_statut_utilisateurs'. |
' WHERE psu_id_utilisateur = '.$id_utilisateur.')'. |
' GROUP BY p_id'; |
30,17 → 30,18 |
$resume = array(); |
$resume['titre'] = 'Gestion de mes projets'; |
$resume['info'] = 'Vous souhaitez vous inscrire à d\'autres projets ? <a href="http://www.tela-botanica.org/page:liste_projets" > Consultez la liste des projets et forums </a>'; |
$projets = $this->bdd->query($requete_projets)->fetchAll(); |
if(!$projets) { |
$resume['message'] = 'Vous n\'êtes inscrit à aucun projet'; |
$resume['message'] = 'Vous n\'êtes inscrit à aucun projet'; |
} else { |
foreach($projets as $projet) { |
$cible_lien_desinscrire = 'http://www.tela-botanica.org/page:mes_preferences_des_projets?id_projet='.$projet['p_id'].'&act=26'; |
$cible_lien_desinscrire = 'http://www.tela-botanica.org/client/projet/jrest/DesinscriptionProjet/?id_projet='.$projet['p_id'].'&id_utilisateur='.$id_utilisateur.'&mail='.$mail_utilisateur; |
$cible_lien = 'http://www.tela-botanica.org/page:liste_projets?id_projet='.$projet['p_id']; |
$resume_item = array('element' => $projet['p_titre'], 'lien_desinscrire' => $cible_lien_desinscrire, 'lien' => $cible_lien); |
$resume_item = array('element' => $projet['p_titre'], 'lien_desinscrire' => $cible_lien_desinscrire, 'lien' => $cible_lien, 'intitule_lien' => 'Se désinscrire'); |
$resume['elements'][] = $resume_item; |
} |
} |
/trunk/jrest/services/Suppression.php |
---|
31,12 → 31,14 |
return; |
} |
// sinon on itère sur chaque projet |
foreach($projets as $projet) { |
$id_projet = $projet['p_id']; |
// et on le supprime du projet |
$suppression_participant = $this->supprimerParticipantAProjet($id_utilisateur, $id_projet); |
// ainsi que des listes associées |
if($mail) { |
$id_projet = $projet['p_id']; |
$listes = $this->obtenirListesAssocieesAuProjet($id_projet); |
47,8 → 49,11 |
} |
$nom_liste = $listes[0]['pl_nom_liste']; |
$id_liste = $listes[0]['pl_id_liste']; |
// on modifie l'abonnement |
$suppression_liste = $this->supprimerInscriptionAListeProjet($id_utilisateur, $id_liste); |
// on supprime l'abonnement |
if($this->estAbonneAListe($nom_liste, $mail)) { |
if(!$this->desinscriptionListe($nom_liste, $mail)) { |
$this->envoyer("false"); |
/trunk/jrest/services/Resume.php |
---|
11,8 → 11,12 |
* @link /doc/papyrus_bp/ |
*/ |
Class Resume extends JRestService { |
Class Resume extends ProjetService { |
public function __construct($config, $demarrer_session= true) { |
parent::__construct($config, $demarrer_session); |
} |
public function getElement($uid){ |
$id_utilisateur = $uid[0]; |
20,10 → 24,10 |
// on selectionne les projets les plus actifs |
$requete_projets = 'SELECT DISTINCT *'. |
' FROM papyrus_bp.projet_statistiques'. |
' FROM projet_statistiques'. |
' WHERE ps_ce_projet'. |
' IN '. |
'(SELECT psu_id_projet FROM papyrus_bp.projet_statut_utilisateurs'. |
'(SELECT psu_id_projet FROM projet_statut_utilisateurs'. |
' WHERE psu_id_utilisateur = '.$id_utilisateur.')'. |
' GROUP BY ps_ce_projet'. |
' ORDER BY ps_msg_derniere_semaine DESC'. |
32,6 → 36,7 |
$resume = array(); |
$resume['titre'] = 'Vos projets les plus actifs'; |
$resume['lien_appli'] = '<a href="http://www.tela-botanica.org/page:liste_projets"> Voir tous les projets </a>'; |
$projets = $this->bdd->query($requete_projets)->fetchAll(); |
41,7 → 46,7 |
foreach($projets as $projet) { |
$requete_info_projet = 'SELECT p_titre'. |
' FROM papyrus_bp.projet'. |
' FROM projet'. |
' WHERE p_id = '.$projet['ps_ce_projet']; |
$projet_infos = $this->bdd->query($requete_info_projet)->fetchAll(); |
51,7 → 56,7 |
if($projet['ps_msg_derniere_semaine'] > 0) { |
$infos_messages = ' (+ '.$projet['ps_msg_derniere_semaine'].' nouveaux messages) '; |
} else { |
$infos_messages = 'aucun nouveau message'; |
$infos_messages = ' (aucun nouveau message) '; |
} |
$cible_lien = 'http://www.tela-botanica.org/page:liste_projets?id_projet='.$projet['ps_ce_projet']; |
65,7 → 70,7 |
public function gererInscription($id_utilisateur, $mail_utilisateur) { |
$requete_projets_utilisateur = 'SELECT * FROM papyrus_bp.projet_statut_utilisateurs'. |
$requete_projets_utilisateur = 'SELECT * FROM projet_statut_utilisateurs'. |
' WHERE psu_id_utilisateur = '.$id_utilisateur; |
$resume = ''; |
79,7 → 84,7 |
foreach($projets as $projet) { |
$requete_info_projet = 'SELECT *'. |
' FROM papyrus_bp.projet'. |
' FROM projet'. |
' WHERE p_id = '.$projet['psu_id_projet']; |
$projet_infos = $this->requeteUn($requete_info_projet); |
/trunk/jrest/services/ProjetService.php |
---|
11,8 → 11,12 |
* @link /doc/projet_bp/ |
*/ |
abstract class ProjetService extends JRestService { |
class ProjetService extends JRestService { |
public function __construct($config, $demarrer_session= true) { |
parent::__construct($config, $demarrer_session); |
} |
protected function obtenirProjetsPourParticipant($id_utilisateur) { |
// on selectionne la liste des projets auxquel on est inscrit |
39,6 → 43,27 |
return $projets; |
} |
protected function obtenirInformationsProjet($id_projet) { |
$requete_informations_projet = 'SELECT DISTINCT *'. |
' FROM projet'. |
' WHERE p_id = '.$id_projet ; |
try { |
$projet = $this->bdd->query($requete_informations_projet)->fetchAll(PDO::FETCH_ASSOC); |
} catch (PDOException $e) { |
Log::getInstance()->ajouterEntree('projet','Fichier: '.$e->getFile().' Ligne: '.$e->getLine().' '.$e->getMessage()); |
return false; |
} |
// pas de projets ? alors c'est fait ! |
if(!$projet) { |
return false; |
} |
return $projet; |
} |
protected function obtenirListesAssocieesAuProjet($id_projet) { |
$requete_liste_projets = 'SELECT * FROM projet_liste '. |
61,6 → 86,20 |
return $listes_projets; |
} |
protected function supprimerInscriptionAListeProjet($id_utilisateur, $id_liste) { |
$requete_suppression_liste = 'DELETE FROM projet_inscription_liste '. |
'WHERE pil_id_utilisateur='.$id_utilisateur.' and pil_id_liste='.$id_liste ; |
try { |
$requete_suppression_liste = $this->bdd->query($requete_suppression_liste); |
} catch (PDOException $e) { |
Log::getInstance()->ajouterEntree('projet','Fichier: '.$e->getFile().' Ligne: '.$e->getLine().' '.$e->getMessage().' '.$requete_suppression_liste); |
return false; |
} |
} |
protected function supprimerParticipantAProjet($id_utilisateur, $id_projet) { |
$requete_suppression_projets = 'DELETE FROM projet_statut_utilisateurs '. |
'WHERE psu_id_utilisateur='.$id_utilisateur.' and psu_id_projet='.$id_projet ; |
79,11 → 118,9 |
try { |
$est_abonne = '0' ; |
//$xml_abonne = new SimpleXMLElement(file_get_contents('http://vpopmail.tela-botanica.org/est_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail)) ; |
$est_abonne = 1;//$xml_abonne[0] ; |
$xml_abonne = new SimpleXMLElement(file_get_contents('http://vpopmail.tela-botanica.org/est_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail)) ; |
$est_abonne = $xml_abonne[0] ; |
Log::getInstance()->ajouterEntree('projet','appel de http://vpopmail.tela-botanica.org/est_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail); |
if($est_abonne == '1') { |
return true; |
} else { |
102,16 → 139,11 |
} |
protected function inscriptionListe($nom_liste, $mail) { |
Log::getInstance()->ajouterEntree('projet','appel de http://vpopmail.tela-botanica.org/ajout_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail); |
return true; |
//return $inscription_abonne = file_get_contents('http://vpopmail.tela-botanica.org/ajout_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail) ; |
return $inscription_abonne = file_get_contents('http://vpopmail.tela-botanica.org/ajout_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail) ; |
} |
protected function desinscriptionListe($nom_liste, $mail) { |
Log::getInstance()->ajouterEntree('projet','appel de http://vpopmail.tela-botanica.org/suppression_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail); |
return true; |
//return $suppression_abonne = file_get_contents('http://vpopmail.tela-botanica.org/suppression_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.mail) ; |
return $suppression_abonne = file_get_contents('http://vpopmail.tela-botanica.org/suppression_abonne.php?domaine=tela-botanica.org&liste='.$nom_liste.'&mail='.$mail) ; |
} |
} |
?> |