Rev 78 | Rev 127 | 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: projet.php,v 1.11 2006-04-28 12:41:28 florian Exp $/*** Application projet** Fichier d'appel pour papyrus**@package projet//Auteur original :*@author Alexandre Granier <alexandre@tela-botanica.org>//Autres auteurs :*@author Aucun*@copyright Tela-Botanica 2000-2004*@version $Revision: 1.11 $// +------------------------------------------------------------------------------------------------------+*/// +------------------------------------------------------------------------------------------------------+// | ENTETE du PROGRAMME |// +------------------------------------------------------------------------------------------------------+include_once 'configuration/projet.config.inc.php' ;include_once PROJET_CHEMIN_CLASSES.'projetControleur.class.php' ;// Inclusion des styles selon papyrusif (function_exists("GEN_stockerStyleExterne")) {GEN_stockerStyleExterne('projet','client/projet/projet.css') ;GEN_stockerStyleExterne('projet_arbre','client/projet/arbre.css') ;}// +------------------------------------------------------------------------------------------------------+// | LISTE des constantes |// +------------------------------------------------------------------------------------------------------+define ("PROJET_DEFAUT", 1) ;define ("PROJET_VOIR", 2) ;define ('PROJET_MENU_AFFICHER_CONTENU_CORPS', 1) ;// +------------------------------------------------------------------------------------------------------+// | LISTE de FONCTIONS |// +------------------------------------------------------------------------------------------------------+if (isset($_REQUEST[PROJET_VARIABLE_ID_PROJET])) {function afficherContenuNavigation () {$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ID_PROJET, $_REQUEST[PROJET_VARIABLE_ID_PROJET]) ;if (empty($_REQUEST[PROJET_VARIABLE_ACTION])) {$_REQUEST[PROJET_VARIABLE_ACTION] = PROJET_ACTION_VOIR_RESUME ;}$res = '' ;if (isset($GLOBALS['_GEN_commun']['info_application']->presentation) &&(($GLOBALS['_GEN_commun']['info_application']->presentation == 'arbre')||($GLOBALS['_GEN_commun']['info_application']->presentation == 'liste'||($GLOBALS['_GEN_commun']['info_application']->presentation == 'tela')))) {$res .= '<ul class="onglets">';$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_RESUME);$res .= '<li id="projet_resume" class="'.cma(PROJET_ACTION_VOIR_RESUME).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_SYNTHESE.'</a></li>';$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_DESCRIPTION);$res .= '<li id="projet_description" class="'.cma(PROJET_ACTION_VOIR_DESCRIPTION).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_DESCRIPTION.'</a></li>';$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_WIKINI);$res .= '<li id="projet_wikini" class="'.cma(PROJET_ACTION_VOIR_WIKINI).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_WIKINI.'</a></li>';$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_DOCUMENT) ;$res .= '<li id="projet_documents" class="'.cma(PROJET_ACTION_VOIR_DOCUMENT).'"><a href="'.$GLOBALS['url']->getURL().'">Documents</a></li>';$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_FORUM) ;$res .= '<li id="projet_forum" class="'.cma(PROJET_ACTION_VOIR_FORUM).'"><a href="'.$GLOBALS['url']->getURL().'">Forum</a></li>';$GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_PARTICIPANT) ;$res .= '<li id="projet_participants" class="'.cma(PROJET_ACTION_VOIR_PARTICIPANT).'"><a href="'.$GLOBALS['url']->getURL().'">Participants</a></li>';$res .= '</ul>';$GLOBALS['url']->removeQueryString (PROJET_VARIABLE_ACTION) ;}if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {$res = '' ;}return $res ;}}function afficherContenuMenu(){$sortie = '';// on fait de même pour id_projet$id_projet = isset($_REQUEST[PROJET_VARIABLE_ID_PROJET]) ? $_REQUEST[PROJET_VARIABLE_ID_PROJET] : '';// On recherche une action dans la variable $action, s'il n'y a pas, on envoie defaut$action = isset($_REQUEST[PROJET_VARIABLE_ACTION]) ? $_REQUEST[PROJET_VARIABLE_ACTION] : PROJET_DEFAUT;// et pour id_repertoire$id_repertoire = isset($_REQUEST['id_repertoire']) ? $_REQUEST['id_repertoire'] : '';$controleur = new projetControleur($GLOBALS['projet_db'], $GLOBALS['projet_auth'], $GLOBALS['url']) ;if ($id_projet != '' && projet::projetExiste($GLOBALS['projet_db'], $id_projet)) {$controleur->setIdProjet($id_projet) ;}if ($id_repertoire != "") {$controleur->setIdRepertoire($id_repertoire) ;}if (isset ($GLOBALS['_GEN_commun']['info_application']->prive)) {$controleur->setPrive() ;}// Dans le cas de la présentation par arbre, on met les menusif (isset($GLOBALS['_GEN_commun']['info_application']->presentation) &&(($GLOBALS['_GEN_commun']['info_application']->presentation == 'arbre') ||($GLOBALS['_GEN_commun']['info_application']->presentation == 'liste')||($GLOBALS['_GEN_commun']['info_application']->presentation == 'tela'))){$sortie .= $controleur->menuGeneral() ;}if (isset($GLOBALS['_GEN_commun']['info_application']->seulement)) {$controleur->setIdProjet($GLOBALS['_GEN_commun']['info_application']->seulement) ;}if (isset($GLOBALS['_GEN_commun']['info_application']->telechargement)) {// L'action "Mettre un fichier en ligne"$controleur->_url->addQueryString(PROJET_VARIABLE_ACTION, PROJET_NOUVEAU_FICHIER) ;$res = "<ul><li><a href=\"".$controleur->_url->getURL()."\">".PROJET_METTRE_FICHIER."</a></li>\n" ;// L'action créer un répertoire$controleur->_url->addQueryString(PROJET_VARIABLE_ACTION, PROJET_NOUVEAU_REPERTOIRE) ;$res .= "<li><a href=\"".$controleur->_url->getURL()."\">".PROJET_CREER_REP."</a></li>\n" ;$res .= '</ul></li>' ;$sortie .= $res ;}// Dans le cas d'un forum simple, on ne met pas les menusif (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {return ;}return $sortie;}function afficherContenuCorps() {// On recherche une action dans la variable $action, s'il n'y a pas, on envoie defaut$action = isset($_REQUEST[PROJET_VARIABLE_ACTION]) ? $_REQUEST[PROJET_VARIABLE_ACTION] : PROJET_DEFAUT;// on fait de même pour id_projet$id_projet = isset($_REQUEST[PROJET_VARIABLE_ID_PROJET]) ? $_REQUEST[PROJET_VARIABLE_ID_PROJET] : '';// et pour id_repertoire$id_repertoire = isset($_REQUEST['id_repertoire']) ? $_REQUEST['id_repertoire'] : '';// et pour id_document$id_document = isset($_REQUEST['id_document']) ? $_REQUEST['id_document'] : '';// On construit le controleur en lui passant en paramètre l'identifiant de connexion à la BD// l'objet d'authentification et l'url de la page$controleur = new projetControleur(&$GLOBALS['projet_db'], &$GLOBALS['projet_auth'], &$GLOBALS['url']) ;$controleur->setAction ($action) ;// On indique au controleur sur quel projet on travailleif ($id_projet != "") {$controleur->setIdProjet($id_projet) ;}if ($id_repertoire != "") {$controleur->setIdRepertoire($id_repertoire) ;}if ($id_document != "") {$controleur->setIdDocument($id_document) ;}// récupération des paramètres de l'appliif (isset($GLOBALS['_GEN_commun']['info_application']->presentation)) {$controleur->setPresentation($GLOBALS['_GEN_commun']['info_application']->presentation) ;}if (isset($GLOBALS['_GEN_commun']['info_application']->projet_type)) {$controleur->setType($GLOBALS['_GEN_commun']['info_application']->projet_type) ;}if (isset ($GLOBALS['_GEN_commun']['info_application']->exclure)) {$a_exclure = explode (',', $GLOBALS['_GEN_commun']['info_application']->exclure) ;foreach ($a_exclure as $valeur) $controleur->exclure($valeur) ;}if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {$controleur->setIdProjet($GLOBALS['_GEN_commun']['info_application']->seulement_forum) ;// S'il n'y a pas d'action en mode forum, on affiche l'onglet Forumif (!isset($_REQUEST[PROJET_VARIABLE_ACTION])) $controleur->setAction (PROJET_ACTION_VOIR_FORUM) ;}if (isset($GLOBALS['_GEN_commun']['info_application']->telechargement)) {if (!isset($_REQUEST[PROJET_VARIABLE_ACTION])) $controleur->setAction (PROJET_ACTION_VOIR_DOCUMENT) ;}if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement)) {$controleur->setIdProjet($GLOBALS['_GEN_commun']['info_application']->seulement) ;}// Si le parametre prive est passé, les inscriptions sont modérés// TODO : permettre la demande d'inscriptionif (isset ($GLOBALS['_GEN_commun']['info_application']->prive)) {$controleur->setPrive() ;}$res = $controleur->run() ;return $res ;}/** cma() calcule menu actif*** @return*/function cma ($var) {$class = $_REQUEST[PROJET_VARIABLE_ACTION] == $var ? 'menu_actif' : 'menu_inactif' ;return $class ;}/* +--Fin du code ----------------------------------------------------------------------------------------+** $Log: not supported by cvs2svn $* Revision 1.10 2005/12/01 16:38:32 alexandre_tb* ajout de l'action telechargement** Revision 1.9 2005/11/25 14:48:44 alexandre_tb* ajout de la gestion de la présentation tela** Revision 1.8 2005/10/25 13:50:13 alexandre_tb* Ajout de la gestion des projets privés** Revision 1.7 2005/10/17 16:22:28 alexandre_tb* rien** Revision 1.6 2005/10/06 14:54:06 alexandre_tb* ajout de la gestion du paramètre seulement_forum** Revision 1.5 2005/10/04 10:06:32 alexandre_tb* ajout du parametre seulement_forum** Revision 1.4 2005/09/28 16:29:39 ddelon* Merge modification projet** Revision 1.3 2005/09/27 16:31:06 alexandre_tb* ??*** +-- Fin du code ----------------------------------------------------------------------------------------+*/?>