Subversion Repositories Applications.projet

Rev

Rev 19 | Rev 55 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 19 Rev 29
1
<?php
1
<?php
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
3
// +------------------------------------------------------------------------------------------------------+
3
// +------------------------------------------------------------------------------------------------------+
4
// | PHP version 4.1                                                                                      |
4
// | PHP version 4.1                                                                                      |
5
// +------------------------------------------------------------------------------------------------------+
5
// +------------------------------------------------------------------------------------------------------+
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
7
// +------------------------------------------------------------------------------------------------------+
7
// +------------------------------------------------------------------------------------------------------+
8
// | This library is free software; you can redistribute it and/or                                        |
8
// | This library is free software; you can redistribute it and/or                                        |
9
// | modify it under the terms of the GNU General Public                                                  |
9
// | modify it under the terms of the GNU General Public                                                  |
10
// | License as published by the Free Software Foundation; either                                         |
10
// | License as published by the Free Software Foundation; either                                         |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
12
// |                                                                                                      |
12
// |                                                                                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
16
// | General Public License for more details.                                                             |
16
// | General Public License for more details.                                                             |
17
// |                                                                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU General Public                                            |
18
// | You should have received a copy of the GNU General Public                                            |
19
// | License along with this library; if not, write to the Free Software                                  |
19
// | License along with this library; if not, write to the Free Software                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: projet.php,v 1.5 2005-10-04 10:06:32 alexandre_tb Exp $
22
// CVS : $Id: projet.php,v 1.6 2005-10-06 14:54:06 alexandre_tb Exp $
23
/**
23
/**
24
* Application projet
24
* Application projet
25
*
25
*
26
* Fichier d'appel pour papyrus
26
* Fichier d'appel pour papyrus
27
*
27
*
28
*@package projet
28
*@package projet
29
//Auteur original :
29
//Auteur original :
30
*@author        Alexandre Granier <alexandre@tela-botanica.org>
30
*@author        Alexandre Granier <alexandre@tela-botanica.org>
31
//Autres auteurs :
31
//Autres auteurs :
32
*@author        Aucun
32
*@author        Aucun
33
*@copyright     Tela-Botanica 2000-2004
33
*@copyright     Tela-Botanica 2000-2004
34
*@version       $Revision: 1.5 $
34
*@version       $Revision: 1.6 $
35
// +------------------------------------------------------------------------------------------------------+
35
// +------------------------------------------------------------------------------------------------------+
36
*/
36
*/
37
 
37
 
38
// +------------------------------------------------------------------------------------------------------+
38
// +------------------------------------------------------------------------------------------------------+
39
// |                                            ENTETE du PROGRAMME                                       |
39
// |                                            ENTETE du PROGRAMME                                       |
40
// +------------------------------------------------------------------------------------------------------+
40
// +------------------------------------------------------------------------------------------------------+
41
 
41
 
42
include_once 'configuration/projet.config.inc.php' ;
42
include_once 'configuration/projet.config.inc.php' ;
43
include_once PROJET_CHEMIN_CLASSES.'projetControleur.class.php' ;
43
include_once PROJET_CHEMIN_CLASSES.'projetControleur.class.php' ;
44
 
44
 
45
// Inclusion des styles selon papyrus
45
// Inclusion des styles selon papyrus
46
if (function_exists("GEN_stockerStyleExterne")) {
46
if (function_exists("GEN_stockerStyleExterne")) {
47
    GEN_stockerStyleExterne('projet','client/projet/projet.css') ;
47
    GEN_stockerStyleExterne('projet','client/projet/projet.css') ;
48
    GEN_stockerStyleExterne('projet_arbre','client/projet/arbre.css') ;
48
    GEN_stockerStyleExterne('projet_arbre','client/projet/arbre.css') ;
49
}
49
}
50
 
50
 
51
// +------------------------------------------------------------------------------------------------------+
51
// +------------------------------------------------------------------------------------------------------+
52
// |                                           LISTE des constantes                                       |
52
// |                                           LISTE des constantes                                       |
53
// +------------------------------------------------------------------------------------------------------+
53
// +------------------------------------------------------------------------------------------------------+
54
 
54
 
55
define ("PROJET_DEFAUT", 1) ;
55
define ("PROJET_DEFAUT", 1) ;
56
define ("PROJET_VOIR", 2) ;
56
define ("PROJET_VOIR", 2) ;
57
define ('PROJET_MENU_AFFICHER_CONTENU_CORPS', 1) ;
57
define ('PROJET_MENU_AFFICHER_CONTENU_CORPS', 1) ;
58
// +------------------------------------------------------------------------------------------------------+
58
// +------------------------------------------------------------------------------------------------------+
59
// |                                           LISTE de FONCTIONS                                         |
59
// |                                           LISTE de FONCTIONS                                         |
60
// +------------------------------------------------------------------------------------------------------+
60
// +------------------------------------------------------------------------------------------------------+
61
 
61
 
62
if (isset($_REQUEST[PROJET_VARIABLE_ID_PROJET])) {
62
if (isset($_REQUEST[PROJET_VARIABLE_ID_PROJET])) {
63
    function afficherContenuNavigation () {
63
    function afficherContenuNavigation () {
64
        $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ID_PROJET, $_REQUEST[PROJET_VARIABLE_ID_PROJET]) ;
64
        $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ID_PROJET, $_REQUEST[PROJET_VARIABLE_ID_PROJET]) ;
65
        if (empty($_REQUEST[PROJET_VARIABLE_ACTION])) {
65
        if (empty($_REQUEST[PROJET_VARIABLE_ACTION])) {
66
            $_REQUEST[PROJET_VARIABLE_ACTION] = PROJET_ACTION_VOIR_RESUME ;
66
            $_REQUEST[PROJET_VARIABLE_ACTION] = PROJET_ACTION_VOIR_RESUME ;
67
        }
67
        }
68
        $res = '' ;
68
        $res = '' ;
69
        if (isset($GLOBALS['_GEN_commun']['info_application']->presentation) && (($GLOBALS['_GEN_commun']['info_application']->presentation == 'arbre')||($GLOBALS['_GEN_commun']['info_application']->presentation == 'liste'))) {
69
        if (isset($GLOBALS['_GEN_commun']['info_application']->presentation) && (($GLOBALS['_GEN_commun']['info_application']->presentation == 'arbre')||($GLOBALS['_GEN_commun']['info_application']->presentation == 'liste'))) {
70
            $res .= '<ul class="onglets">';
70
            $res .= '<ul class="onglets">';
71
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_RESUME);
71
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_RESUME);
72
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_RESUME).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_SYNTHESE.'</a></li>';
72
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_RESUME).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_SYNTHESE.'</a></li>';
73
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_DESCRIPTION);
73
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_DESCRIPTION);
74
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_DESCRIPTION).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_DESCRIPTION.'</a></li>';
74
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_DESCRIPTION).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_DESCRIPTION.'</a></li>';
75
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_WIKINI);
75
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_WIKINI);
76
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_WIKINI).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_WIKINI.'</a></li>';
76
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_WIKINI).'"><a href="'.$GLOBALS['url']->getURL().'">'.PROJET_WIKINI.'</a></li>';
77
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_DOCUMENT) ;
77
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_DOCUMENT) ;
78
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_DOCUMENT).'"><a href="'.$GLOBALS['url']->getURL().'">Documents</a></li>';
78
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_DOCUMENT).'"><a href="'.$GLOBALS['url']->getURL().'">Documents</a></li>';
79
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_FORUM) ;
79
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_FORUM) ;
80
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_FORUM).'"><a href="'.$GLOBALS['url']->getURL().'">Forum</a></li>';
80
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_FORUM).'"><a href="'.$GLOBALS['url']->getURL().'">Forum</a></li>';
81
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_PARTICIPANT) ;
81
            $GLOBALS['url']->addQueryString(PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_PARTICIPANT) ;
82
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_PARTICIPANT).'"><a href="'.$GLOBALS['url']->getURL().'">Participants</a></li>';
82
            $res .= '<li class="'.cma(PROJET_ACTION_VOIR_PARTICIPANT).'"><a href="'.$GLOBALS['url']->getURL().'">Participants</a></li>';
83
            $res .= '</ul>';
83
            $res .= '</ul>';
84
            $GLOBALS['url']->removeQueryString (PROJET_VARIABLE_ACTION) ;
84
            $GLOBALS['url']->removeQueryString (PROJET_VARIABLE_ACTION) ;
85
        }
85
        }
86
        if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {
86
        if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {
87
        	return ;
87
        	return ;
88
    	}
88
    	}
89
        return $res ;
89
        return $res ;
90
    }
90
    }
91
}
91
}
92
 
92
 
93
function afficherContenuMenu()
93
function afficherContenuMenu()
94
{
94
{
95
    $sortie  = '';
95
    $sortie  = '';
96
    // on fait de même pour id_projet
96
    // on fait de même pour id_projet
97
    $id_projet = isset($_REQUEST[PROJET_VARIABLE_ID_PROJET]) ? $_REQUEST[PROJET_VARIABLE_ID_PROJET] :  '';
97
    $id_projet = isset($_REQUEST[PROJET_VARIABLE_ID_PROJET]) ? $_REQUEST[PROJET_VARIABLE_ID_PROJET] :  '';
98
    
98
    
99
       // On recherche une action dans la variable $action, s'il n'y a pas, on envoie defaut
99
       // On recherche une action dans la variable $action, s'il n'y a pas, on envoie defaut
100
    $action = isset($_REQUEST[PROJET_VARIABLE_ACTION]) ? $_REQUEST[PROJET_VARIABLE_ACTION] : PROJET_DEFAUT;
100
    $action = isset($_REQUEST[PROJET_VARIABLE_ACTION]) ? $_REQUEST[PROJET_VARIABLE_ACTION] : PROJET_DEFAUT;
101
    
101
    
102
    // et pour id_repertoire
102
    // et pour id_repertoire
103
    $id_repertoire = isset($_REQUEST['id_repertoire']) ? $_REQUEST['id_repertoire'] : '';
103
    $id_repertoire = isset($_REQUEST['id_repertoire']) ? $_REQUEST['id_repertoire'] : '';
104
 
104
 
105
    $controleur = new projetControleur($GLOBALS['projet_db'], $GLOBALS['projet_auth'], $GLOBALS['url']) ;
105
    $controleur = new projetControleur($GLOBALS['projet_db'], $GLOBALS['projet_auth'], $GLOBALS['url']) ;
106
    
106
    
107
    if ($id_projet != '' && projet::projetExiste($GLOBALS['projet_db'], $id_projet)) {
107
    if ($id_projet != '' && projet::projetExiste($GLOBALS['projet_db'], $id_projet)) {
108
        $controleur->setIdProjet($id_projet) ;
108
        $controleur->setIdProjet($id_projet) ;
109
    }
109
    }
110
    if ($id_repertoire != "") {
110
    if ($id_repertoire != "") {
111
        $controleur->setIdRepertoire($id_repertoire) ;
111
        $controleur->setIdRepertoire($id_repertoire) ;
112
    }
112
    }
113
    
113
    
114
    // Dans le cas de la présentation par arbre, on met les menus
114
    // Dans le cas de la présentation par arbre, on met les menus
115
    if (isset($GLOBALS['_GEN_commun']['info_application']->presentation) && (($GLOBALS['_GEN_commun']['info_application']->presentation == 'arbre') || ($GLOBALS['_GEN_commun']['info_application']->presentation == 'liste'))){
115
    if (isset($GLOBALS['_GEN_commun']['info_application']->presentation) && (($GLOBALS['_GEN_commun']['info_application']->presentation == 'arbre') || ($GLOBALS['_GEN_commun']['info_application']->presentation == 'liste'))){
116
        $sortie .= $controleur->menuGeneral() ;
116
        $sortie .= $controleur->menuGeneral() ;
117
    }
117
    }
-
 
118
    
-
 
119
    // Dans le cas d'un forum simple, on ne met pas les menus
-
 
120
    if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {
-
 
121
        	return ;
-
 
122
    }
118
    return $sortie;
123
    return $sortie;
119
}
124
}
120
 
125
 
121
function afficherContenuCorps() {
126
function afficherContenuCorps() {
122
    
127
    
123
 
128
 
124
    // On recherche une action dans la variable $action, s'il n'y a pas, on envoie defaut
129
    // On recherche une action dans la variable $action, s'il n'y a pas, on envoie defaut
125
    $action = isset($_REQUEST[PROJET_VARIABLE_ACTION]) ? $_REQUEST[PROJET_VARIABLE_ACTION] : PROJET_DEFAUT;
130
    $action = isset($_REQUEST[PROJET_VARIABLE_ACTION]) ? $_REQUEST[PROJET_VARIABLE_ACTION] : PROJET_DEFAUT;
126
    
131
    
127
    // on fait de même pour id_projet
132
    // on fait de même pour id_projet
128
    $id_projet = isset($_REQUEST[PROJET_VARIABLE_ID_PROJET]) ? $_REQUEST[PROJET_VARIABLE_ID_PROJET] : '';
133
    $id_projet = isset($_REQUEST[PROJET_VARIABLE_ID_PROJET]) ? $_REQUEST[PROJET_VARIABLE_ID_PROJET] : '';
129
 
134
 
130
    // et pour id_repertoire
135
    // et pour id_repertoire
131
    $id_repertoire = isset($_REQUEST['id_repertoire']) ? $_REQUEST['id_repertoire'] : '';
136
    $id_repertoire = isset($_REQUEST['id_repertoire']) ? $_REQUEST['id_repertoire'] : '';
132
 
137
 
133
    // et pour id_document
138
    // et pour id_document
134
    $id_document = isset($_REQUEST['id_document']) ? $_REQUEST['id_document'] : '';
139
    $id_document = isset($_REQUEST['id_document']) ? $_REQUEST['id_document'] : '';
135
 
140
 
136
    // On construit le controleur en lui passant en paramètre l'identifiant de connexion à la BD
141
    // On construit le controleur en lui passant en paramètre l'identifiant de connexion à la BD
137
    // l'objet d'authentification et l'url de la page
142
    // l'objet d'authentification et l'url de la page
138
    
143
    
139
    $controleur = new projetControleur(&$GLOBALS['projet_db'], &$GLOBALS['projet_auth'], &$GLOBALS['url']) ;
144
    $controleur = new projetControleur(&$GLOBALS['projet_db'], &$GLOBALS['projet_auth'], &$GLOBALS['url']) ;
140
    $controleur->setAction ($action) ;
145
    $controleur->setAction ($action) ;
141
    
146
    
142
    // On indique au controleur sur quel projet on travaille
147
    // On indique au controleur sur quel projet on travaille
143
    
148
    
144
    if ($id_projet != "") {
149
    if ($id_projet != "") {
145
        $controleur->setIdProjet($id_projet) ;
150
        $controleur->setIdProjet($id_projet) ;
146
 
151
 
147
    }
152
    }
148
    if ($id_repertoire != "") {
153
    if ($id_repertoire != "") {
149
        $controleur->setIdRepertoire($id_repertoire) ;
154
        $controleur->setIdRepertoire($id_repertoire) ;
150
    }
155
    }
151
    if ($id_document != "") {
156
    if ($id_document != "") {
152
        $controleur->setIdDocument($id_document) ;
157
        $controleur->setIdDocument($id_document) ;
153
    }
158
    }
154
    
159
    
155
    // récupération des paramètres de l'appli
160
    // récupération des paramètres de l'appli
156
    if (isset($GLOBALS['_GEN_commun']['info_application']->presentation)) {
161
    if (isset($GLOBALS['_GEN_commun']['info_application']->presentation)) {
157
        $controleur->setPresentation($GLOBALS['_GEN_commun']['info_application']->presentation) ;
162
        $controleur->setPresentation($GLOBALS['_GEN_commun']['info_application']->presentation) ;
158
    }
163
    }
159
    if (isset($GLOBALS['_GEN_commun']['info_application']->projet_type)) {
164
    if (isset($GLOBALS['_GEN_commun']['info_application']->projet_type)) {
160
        $controleur->setType($GLOBALS['_GEN_commun']['info_application']->projet_type) ;
165
        $controleur->setType($GLOBALS['_GEN_commun']['info_application']->projet_type) ;
161
    }
166
    }
162
    if (isset ($GLOBALS['_GEN_commun']['info_application']->exclure)) {
167
    if (isset ($GLOBALS['_GEN_commun']['info_application']->exclure)) {
163
        $controleur->exclure($GLOBALS['_GEN_commun']['info_application']->exclure) ;
168
    	$a_exclure = explode (',', $GLOBALS['_GEN_commun']['info_application']->exclure) ;
-
 
169
        foreach ($a_exclure as $valeur) $controleur->exclure($valeur) ;
164
    }
170
    }
165
    if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {
171
    if (isset ($GLOBALS['_GEN_commun']['info_application']->seulement_forum)) {
166
        $controleur->setIdProjet($GLOBALS['_GEN_commun']['info_application']->seulement_forum) ;
172
        $controleur->setIdProjet($GLOBALS['_GEN_commun']['info_application']->seulement_forum) ;
167
        $controleur->setAction (PROJET_ACTION_VOIR_FORUM) ;
173
        $controleur->setAction (PROJET_ACTION_VOIR_FORUM) ;
168
    }
174
    }
169
    $res = $controleur->run() ;
175
    $res = $controleur->run() ;
170
 
176
 
171
    return $res ;
177
    return $res ;
172
}
178
}
173
 
179
 
174
/** cma() calcule menu actif
180
/** cma() calcule menu actif
175
 *
181
 *
176
 *
182
 *
177
 * @return
183
 * @return
178
 */
184
 */
179
 
185
 
180
function cma ($var) {
186
function cma ($var) {
181
    $class = $_REQUEST[PROJET_VARIABLE_ACTION] == $var ?  'menu_actif' :  'menu_inactif' ;
187
    $class = $_REQUEST[PROJET_VARIABLE_ACTION] == $var ?  'menu_actif' :  'menu_inactif' ;
182
    return $class ;
188
    return $class ;
183
}
189
}
184
/* +--Fin du code ----------------------------------------------------------------------------------------+
190
/* +--Fin du code ----------------------------------------------------------------------------------------+
185
*
191
*
186
* $Log: not supported by cvs2svn $
192
* $Log: not supported by cvs2svn $
-
 
193
* Revision 1.5  2005/10/04 10:06:32  alexandre_tb
-
 
194
* ajout du parametre seulement_forum
-
 
195
*
187
* Revision 1.4  2005/09/28 16:29:39  ddelon
196
* Revision 1.4  2005/09/28 16:29:39  ddelon
188
* Merge modification projet
197
* Merge modification projet
189
*
198
*
190
* Revision 1.3  2005/09/27 16:31:06  alexandre_tb
199
* Revision 1.3  2005/09/27 16:31:06  alexandre_tb
191
* ??
200
* ??
192
*
201
*
193
*
202
*
194
* +-- Fin du code ----------------------------------------------------------------------------------------+
203
* +-- Fin du code ----------------------------------------------------------------------------------------+
195
*/
204
*/
196
 
205
 
197
 
206
 
198
?>
207
?>