Subversion Repositories Applications.projet

Rev

Rev 208 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

<?php
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
// +------------------------------------------------------------------------------------------------------+
// | PHP version 4.1                                                                                      |
// +------------------------------------------------------------------------------------------------------+
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
// +------------------------------------------------------------------------------------------------------+
// | This library is free software; you can redistribute it and/or                                        |
// | modify it under the terms of the GNU General Public                                                  |
// | License as published by the Free Software Foundation; either                                         |
// | version 2.1 of the License, or (at your option) any later version.                                   |
// |                                                                                                      |
// | This library is distributed in the hope that it will be useful,                                      |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
// | General Public License for more details.                                                             |
// |                                                                                                      |
// | You should have received a copy of the GNU General Public                                            |
// | License along with this library; if not, write to the Free Software                                  |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
// +------------------------------------------------------------------------------------------------------+
// CVS : $Id: tela.php,v 1.7 2007-11-19 14:27:46 alexandre_tb Exp $
/**
* Application projet
*
* Fichier de présentation de la liste des projets pour Tela Botanica
*
*@package projet
//Auteur original :
*@author        Alexandre Granier <alexandre@tela-botanica.org>
//Autres auteurs :
*@author        Aucun
*@copyright     Tela-Botanica 2000-2004
*@version       $Revision: 1.7 $
// +------------------------------------------------------------------------------------------------------+
*/

// +------------------------------------------------------------------------------------------------------+
// |                                            ENTETE du PROGRAMME                                       |
// +------------------------------------------------------------------------------------------------------+

// La constante suivante est dans le fichier de conf
//define ('PROJET_LISTE_RESUME', false) ;

if (PROJET_UTILISE_TYPE && $this->_type != '') {
    $projetListe = projet::getProjetDuType($this->_type, $this->_db) ;
    if ($this->_presentation == 'arbre')array_push ($projetListe, projet::getProjetRacine($this->_db)) ;
} else {
    // Un tableau de tous les projets dans $projetListe
    //$projetListe = projet::getTousLesProjets($this->_db, $this->_projet_exclu) ;
}


// requete pour recuperer la liste des projets
$requete = 'select p_id, p_titre, p_wikini, pl_id_liste, plle_id_liste, p_avoir_document from'.
                        ' projet left join projet_lien_liste on p_id=pl_id_projet'.
                        ' left join projet_lien_liste_externe on p_id=plle_id_projet'.
                        ' group by p_id order by p_titre' ;
$resultat = $this->_db->query($requete) ;
if (DB::isError($resultat)) {
        return ("Echec de la requete<br />".$resultat->getMessage()."<br />".$resultat->getDebugInfo()) ;
}
        
$res = '<h1>Liste des projets et forums de Tela Botanica</h1>'."\n" ;
// Ajout du cartouche resumant la creation d'un projet.
$res .= '<div class="notes">
<h4>Cr&eacute;ez votre projet...</h4>
<p class="last"> Toute personne inscrite au r&eacute;seau Tela Botanica peut demander &agrave; cr&eacute;er un forum de discussion ou monter un projet collaboratif. <br />
<a href="http://www.tela-botanica.org/page:creez_votre_projet">Voir la d&eacute;marche en d&eacute;tail</a></p>
</div>';
// On inclue un fichier local
if (file_exists(PROJET_CHEMIN_APPLI.'langues/pro_langues_fr.local.inc.php'))
        include_once PROJET_CHEMIN_APPLI.'langues/pro_langues_fr.local.inc.php' ;
// On vérifie si l'utilisateur participe à des projets

$projetNonParticipantListe = & $projetListe ;
include_once PROJET_CHEMIN_CLASSES.'HTML_listeProjet.class.php' ;
$HTML_projetNonParticipantListe = new HTML_listeProjet(true) ;
$entete_liste = array ('Titre des projets et des forums', 'Forums', 'Wiki','RSS', 'Documents', 'Participants',) ;
$HTML_projetNonParticipantListe->construitEntete($entete_liste) ;

$liste_projet = array() ;
// La liste
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
    $this->_url->addQueryString(PROJET_VARIABLE_ID_PROJET, $ligne->p_id) ;
    
    // Recherche du forum
    if ($ligne->pl_id_liste != null) {
        $this->_url->addQueryString('act', PROJET_ACTION_VOIR_FORUM);
        $forum = '<a href="'.$this->_url->getURL().'"><img src="sites/commun/generique/images/favicones/tela_botanica.png" alt="Tela Botanica"/></a>';
    } else {
    
                include_once PROJET_CHEMIN_CLASSES.'liste_externe.class.php' ;
                $listes_ext = new liste_externe ($this->_db) ;
                if ($ligne->plle_id_liste != null) {
                        $info_liste = $listes_ext->getInfoListe($ligne->plle_id_liste) ;
                        
                        $forum = '<a href="'.$info_liste->AGO_A_URLGRP.
                                        '"><img src="sites/commun/generique/images/favicones/yahoo.png" alt="Yahoo"/></a>';
                } else {
                        $forum = '-';   
                }
    }
    
    if ($ligne->p_wikini) {
                $this->_url->addQueryString ('act',PROJET_ACTION_VOIR_WIKINI);
                $link=$this->_url->getURL();
            $wiki_res = '<a href="'.$link.'">voir</a>' ;
            $this->_url->removeQueryString ('act');
        } else {
            $wiki_res = '-' ;
        }
    $titre= '<a href="'.$this->_url->getURL().'">'.$ligne->p_titre.'</a>';
    
    if ($ligne->p_avoir_document != 0) {
        $this->_url->addQueryString('act', PROJET_ACTION_VOIR_DOCUMENT) ;
        $document = '<a href="'.$this->_url->getURL().'">voir</a>' ;    
    } else {
        $document = '-' ;
    }
    
                            
   if ($ligne->p_wikini) {
                $this->_url->addQueryString ('act',PROJET_ACTION_VOIR_WIKINI);
                $link=$this->_url->getURL();
            $wiki_rss = '<a href="'.$link.'&wiki=DerniersChangementsRSS/xml'.'"><img src="sites/commun/generique/images/rss.gif" alt="rss"/></a>' ;
            $this->_url->removeQueryString ('act');
        } else {
            $wiki_rss = '-' ;
        }
    
    
    $this->_url->addQueryString ('act', PROJET_ACTION_VOIR_PARTICIPANT);
    $participant = '<a href="'.$this->_url->getURL().'">voir</a>' ;
    $ligne_projet = array ( '', $titre, $forum,  // le nom du projet
                        $wiki_res, $wiki_rss,$document, $participant) ;

    $this->_url->removeQueryString(PROJET_VARIABLE_ACTION);
    array_push ($liste_projet, $ligne_projet) ;
}
$this->_url->removeQueryString(PROJET_VARIABLE_ACTION) ;
$HTML_projetNonParticipantListe->construitListe($liste_projet) ;
if ($HTML_projetNonParticipantListe->getRowCount() > 1) {
        ///$res .= '<p>'.PROJET_TOUS_LES_PROJETS.'</p>' ;
        $res .= $HTML_projetNonParticipantListe->toHTML() ;
}

// Nettoyage de l'url
$this->_url->removeQueryString (PROJET_VARIABLE_ID_PROJET);
return $res ;

/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.6  2007-04-19 15:34:35  neiluj
* préparration release (livraison) "Narmer" - v0.25
*
* Revision 1.5.2.1  2007/04/11 14:24:39  alexandre_tb
* amélioration des performances par l'appel d'une requete directe
*
* Revision 1.5  2006/10/30 11:26:11  jp_milcent
* Modification du cartouche concernant la création d'un projet sur Tela.
*
* Revision 1.4  2006/01/09 21:55:19  ddelon
* flux rss dans liste des projets
*
* Revision 1.3  2005/12/07 11:02:35  jp_milcent
* Ajout d'attribut alt aux images.
*
* Revision 1.2  2005/11/28 11:15:22  alexandre_tb
* nettoyage URL en sortie de programme
*
* Revision 1.1  2005/11/25 14:47:51  alexandre_tb
* version initiale
*

*
*
* +-- Fin du code ----------------------------------------------------------------------------------------+
*/


?>