Subversion Repositories Applications.projet

Rev

Rev 431 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 431 Rev 437
Line 68... Line 68...
68
     */
68
     */
69
    var $_url;
69
    var $_url;
Line 70... Line 70...
70
    
70
    
71
    /**
71
    /**
72
     * Tableau contenant les actions possibles. "couper" => 1, "modifier" => 2,
72
     * Tableau contenant les actions possibles. "couper" => 1, "modifier" => 2,
73
     * "supprimer" => 3 Elles seront passées en paramètre aux url des icones des
73
     * "supprimer" => 3 Elles seront pass�es en param�tre aux url des icones des
74
     * documents.
74
     * documents.
75
     * @access private
75
     * @access private
76
     */
76
     */
Line 81... Line 81...
81
     * @access private
81
     * @access private
82
     */
82
     */
83
    var $_chemin_icone = "icones/";
83
    var $_chemin_icone = "icones/";
Line 84... Line 84...
84
    
84
    
85
    /**
85
    /**
86
     * L'identifiant du répertoire que l'on est en train d'observer.
86
     * L'identifiant du r�pertoire que l'on est en train d'observer.
87
     * @access private
87
     * @access private
88
     */
88
     */
Line 89... Line 89...
89
    var $_id_repertoire;
89
    var $_id_repertoire;
90
 
90
 
91
    /**
91
    /**
92
     * Un tableau contenant les id et les noms du chemin des répertoires. 0 => ["id"],
92
     * Un tableau contenant les id et les noms du chemin des r�pertoires. 0 => ["id"],
93
     * ["nom"] etc.
93
     * ["nom"] etc.
94
     * @access private
94
     * @access private
Line 118... Line 118...
118
        }
118
        }
119
    } // end of member function HTML_listeDocuments
119
    } // end of member function HTML_listeDocuments
Line 120... Line 120...
120
 
120
 
Line 121... Line 121...
121
	function AJAX_construitListe($id_projet, $droits, $mode = '', $objetDB = '') {
121
	function AJAX_construitListe($id_projet, $droits, $mode = '', $objetDB = '') {
Line 122... Line 122...
122
		
122
		
123
			GEN_stockerFichierScript('dojoScriptProjet', 'client/projet/js/arbreDocument.js');
123
			GEN_stockerFichierScript('dojoScriptProjet', PROJET_CHEMIN_APPLI . 'js/arbreDocument.js');
124
		
124
		
125
		$res = '' ;
125
		$res = '' ;
Line 149... Line 149...
149
    } // end of member function __construct
149
    } // end of member function __construct
Line 150... Line 150...
150
 
150
 
151
    /**
151
    /**
152
     * 
152
     * 
153
     *
153
     *
154
     * @param Array tableau_label Un tableau contenant les labels à afficher dans l'entête.
154
     * @param Array tableau_label Un tableau contenant les labels � afficher dans l'ent�te.
155
     * @return void
155
     * @return void
156
     * @access public
156
     * @access public
157
     */
157
     */
158
    function construitEntete( $tableau_label )
158
    function construitEntete( $tableau_label )
Line 161... Line 161...
161
    } // end of member function construitEntete
161
    } // end of member function construitEntete
Line 162... Line 162...
162
 
162
 
163
    /**
163
    /**
164
     * 
164
     * 
165
     *
165
     *
166
     * @param Array tableau_label Un tableau à deux dimensions avec les labels à afficher dans le corps du
166
     * @param Array tableau_label Un tableau � deux dimensions avec les labels � afficher dans le corps du
167
     * tableau.
167
     * tableau.
168
     * @return void
168
     * @return void
169
     * @access public
169
     * @access public
170
     */
170
     */
171
    function construitListe( &$tableau_document, $droits, $mode = '', $objetDB = '')
171
    function construitListe( &$tableau_document, $droits, $mode = '', $objetDB = '')
172
    {
172
    {
Line 173... Line 173...
173
        $compteur = 0 ;$class[0] = 'ligne_impaire'; $class[1] = 'ligne_paire' ;
173
        $compteur = 0 ;$class[0] = 'ligne_impaire'; $class[1] = 'ligne_paire' ;
174
 
174
 
175
        for ($i = 0; $i < count ($tableau_document) ; $i++) {
175
        for ($i = 0; $i < count ($tableau_document) ; $i++) {
176
            // Première condition : est-ce que le fichier a pour père le répertoire courant, si oui on l'affiche
176
            // Premi�re condition : est-ce que le fichier a pour p�re le r�pertoire courant, si oui on l'affiche
177
            if ($tableau_document[$i]->_id_pere == $this->_id_repertoire || $mode == 'ignore_repertoire') {
177
            if ($tableau_document[$i]->_id_pere == $this->_id_repertoire || $mode == 'ignore_repertoire') {
178
                // d'abord l'image
178
                // d'abord l'image
179
                $icone = '<img src="'.$tableau_document[$i]->getCheminIcone().'" />' ;
179
                $icone = '<img src="'.$tableau_document[$i]->getCheminIcone().'" />' ;
180
                // Si le document est un répertoire, on ajoute id_repertoire au lien.
180
                // Si le document est un r�pertoire, on ajoute id_repertoire au lien.
181
                if ($tableau_document[$i]->isRepertoire()) {
181
                if ($tableau_document[$i]->isRepertoire()) {
182
                    $this->_url->addQueryString ('id_repertoire', $tableau_document[$i]->getChemin()) ;
182
                    $this->_url->addQueryString ('id_repertoire', $tableau_document[$i]->getChemin()) ;
183
                    $lien = $this->_url->getURL() ;
183
                    $lien = $this->_url->getURL() ;
184
                } else {    //  Si c'est un fichier, on fait un lien direct
184
                } else {    //  Si c'est un fichier, on fait un lien direct
185
                    $lien = $tableau_document[$i]->getChemin() ;
185
                    $lien = $tableau_document[$i]->getChemin() ;
186
                }
186
                }
187
                // pour éviter des effets de bords, on enlève id_repertoire de l'url
187
                // pour �viter des effets de bords, on enl�ve id_repertoire de l'url
188
                // dans le cas d'un répertoire, pour les fichiers on le laisse pour
188
                // dans le cas d'un r�pertoire, pour les fichiers on le laisse pour
Line 189... Line 189...
189
                // qu'après une opération, on reste dans le répertoire où a eu lieu l'opération
189
                // qu'apr�s une op�ration, on reste dans le r�pertoire o� a eu lieu l'op�ration
190
                if ($tableau_document[$i]->isRepertoire()) $this->_url->removeQueryString('id_repertoire') ;
190
                if ($tableau_document[$i]->isRepertoire()) $this->_url->removeQueryString('id_repertoire') ;
Line 191... Line 191...
191
                
191
                
192
                // on insère le lien
192
                // on ins�re le lien
Line 193... Line 193...
193
                $lien_nom = '<a href="'.$lien.'">'.$icone.' '.$tableau_document[$i]->getNomLong()."</a>\n" ;
193
                $lien_nom = '<a href="'.$lien.'">'.$icone.' '.$tableau_document[$i]->getNomLong()."</a>\n" ;
194
                
194
                
195
                // Pour la taille on divise par 1000 et on écrit Ko
195
                // Pour la taille on divise par 1000 et on �crit Ko
196
                $taille = round($tableau_document[$i]->getTaille() / 1000).'&nbsp;Ko' ;
196
                $taille = round($tableau_document[$i]->getTaille() / 1000).'&nbsp;Ko' ;
197
                
197
                
198
                // Récupération de l'auteur
198
                // R�cup�ration de l'auteur
199
                include_once PROJET_CHEMIN_CLASSES.'annuaire.class.php' ;
199
                include_once PROJET_CHEMIN_CLASSES.'annuaire.class.php' ;
200
                $annuaire = new annuaire($objetDB, array('table' => PROJET_ANNUAIRE, 'identifiant' => PROJET_CHAMPS_ID, 
200
                $annuaire = new annuaire($objetDB, array('table' => PROJET_ANNUAIRE, 'identifiant' => PROJET_CHAMPS_ID, 
201
                                            'nom' => PROJET_CHAMPS_NOM, 'prenom' => PROJET_CHAMPS_PRENOM)) ;
201
                                            'nom' => PROJET_CHAMPS_NOM, 'prenom' => PROJET_CHAMPS_PRENOM)) ;
Line 202... Line 202...
202
                $annuaire->setId($tableau_document[$i]->_id_proprietaire) ;
202
                $annuaire->setId($tableau_document[$i]->_id_proprietaire) ;
203
                $nom_prenom = $annuaire->getInfo('nom').' '.$annuaire->getInfo('prenom') ;
203
                $nom_prenom = $annuaire->getInfo('nom').' '.$annuaire->getInfo('prenom') ;
204
                // On rempli le tableau à donner en paramètre à HTML_Table avec toutes ces infos, une par colonne
204
                // On rempli le tableau � donner en param�tre � HTML_Table avec toutes ces infos, une par colonne
205
                $ligne_tableau = array($lien_nom, $taille, $nom_prenom, $tableau_document[$i]->getDateMiseAJour()) ;
205
                $ligne_tableau = array($lien_nom, $taille, $nom_prenom, $tableau_document[$i]->getDateMiseAJour()) ;
206
                if ($droits <= PROJET_DROIT_CONTRIBUTEUR) array_push ($ligne_tableau, $tableau_document[$i]->getVisibilite()) ;
206
                if ($droits <= PROJET_DROIT_CONTRIBUTEUR) array_push ($ligne_tableau, $tableau_document[$i]->getVisibilite()) ;
207
                
207
                
208
                // On ajoute au tableau, les action couper / modifier / supprimer
208
                // On ajoute au tableau, les action couper / modifier / supprimer
209
                if ($droits <= PROJET_DROIT_COORDINATEUR || $this->_auth->getAuthData(PROJET_CHAMPS_ID) == $tableau_document[$i]->_id_proprietaire) 
209
                if ($droits <= PROJET_DROIT_COORDINATEUR || $this->_auth->getAuthData(PROJET_CHAMPS_ID) == $tableau_document[$i]->_id_proprietaire) 
210
                                                array_push ($ligne_tableau, $this->_actions ($tableau_document[$i])) ;
210
                                                array_push ($ligne_tableau, $this->_actions ($tableau_document[$i])) ;
211
                if ($tableau_document[$i]->getVisibilite() != 'prive' || $droits < PROJET_DROIT_AUCUN) {
211
                if ($tableau_document[$i]->getVisibilite() != 'prive' || $droits < PROJET_DROIT_AUCUN) {
212
	                $this->addRow ($ligne_tableau, array('class' => $class[$compteur]), 'TD', true) ;
212
	                $this->addRow ($ligne_tableau, array('class' => $class[$compteur]), 'TD', true) ;
Line 226... Line 226...
226
    } // end of member function construitListe
226
    } // end of member function construitListe
Line 227... Line 227...
227
 
227
 
228
    /**
228
    /**
229
     * 
229
     * 
230
     *
230
     *
231
     * @param Array actions Un tableau avec les valeurs d'actions comme clé. "couper", modifier",
231
     * @param Array actions Un tableau avec les valeurs d'actions comme cl�. "couper", modifier",
232
     * "supprimer".
232
     * "supprimer".
233
     * @return void
233
     * @return void
234
     * @access public
234
     * @access public
235
     */
235
     */
Line 249... Line 249...
249
    {
249
    {
250
        $this->_chemin_icone = $chemin ;
250
        $this->_chemin_icone = $chemin ;
251
    } // end of member function setCheminIcones
251
    } // end of member function setCheminIcones
Line 252... Line 252...
252
 
252
 
253
    /**
253
    /**
254
     * Surcharge de l'opération de la classe mère. Ajoute la navigation dans les
254
     * Surcharge de l'op�ration de la classe m�re. Ajoute la navigation dans les
255
     * répertoires.
255
     * r�pertoires.
256
     *
256
     *
257
     * @return string
257
     * @return string
258
     * @access public
258
     * @access public
259
     */
259
     */
Line 281... Line 281...
281
    } // end of member function toHTML
281
    } // end of member function toHTML
Line 282... Line 282...
282
 
282
 
283
    /**
283
    /**
284
     * 
284
     * 
285
     *
285
     *
286
     * @param Array tableau_navigation Un tableau contenant les identifiants et les noms des répertoires.  0 => ["id"],
286
     * @param Array tableau_navigation Un tableau contenant les identifiants et les noms des r�pertoires.  0 => ["id"],
287
     * ["nom"] etc.
287
     * ["nom"] etc.
288
     * @return void
288
     * @return void
289
     * @access public
289
     * @access public
290
     */
290
     */
291
    function setCheminNavigation( $tableau_navigation )
291
    function setCheminNavigation( $tableau_navigation )
292
    {
292
    {
293
        $this->_chemin_navigation = $tableau_navigation ;
293
        $this->_chemin_navigation = $tableau_navigation ;
Line 294... Line 294...
294
    } // end of member function setCheminNavigation
294
    } // end of member function setCheminNavigation
295
 
295
 
296
    /**
296
    /**
297
     * Affiche la légende des actions du module "documents"
297
     * Affiche la l�gende des actions du module "documents"
298
     *
298
     *
299
     * @return string
299
     * @return string
300
     * @access public
300
     * @access public
Line 308... Line 308...
308
        return $res ;
308
        return $res ;
309
    } // end of member function affLegende
309
    } // end of member function affLegende
Line 310... Line 310...
310
 
310
 
311
 
311
 
312
    /**
312
    /**
313
     * Renvoie le chemin HTML, depuis le répertoire courant jusqu'à la racine.
313
     * Renvoie le chemin HTML, depuis le r�pertoire courant jusqu'� la racine.
314
     *
314
     *
315
     * @return string
315
     * @return string
316
     * @access private
316
     * @access private
Line 324... Line 324...
324
 
324
 
325
 
325
 
326
 
326
 
327
    /**
327
    /**
328
     * Renvoie une chaine contenant le code html des icones des actions possibles sur un
328
     * Renvoie une chaine contenant le code html des icones des actions possibles sur un
329
     * fichier, c'est à dire couper, modifier, supprimer.
329
     * fichier, c'est � dire couper, modifier, supprimer.
330
     *
330
     *
331
     * @return string
331
     * @return string