//Autres auteurs : *@author Aucun *@copyright Tela-Botanica 2000-2005 *@version $Revision: 1.7.2.2 $ // +------------------------------------------------------------------------------------------------------+ */ // +------------------------------------------------------------------------------------------------------+ // | ENTETE du PROGRAMME | // +------------------------------------------------------------------------------------------------------+ // RAPPEL IMPORTANT // On se situe dans la méthode run() de la classe projetControleur // if (!isset($retour)) $retour = ''; // creation de l'objet projet courant include_once PROJET_CHEMIN_CLASSES.'projet.class.php' ; $projet = new projet ($this->_db, $this->_id_projet) ; // recuperation de la liste des documents associes // en filtrant sur le repertoire courant pour limiter le nombre de resultat if ($this->_id_repertoire != "") { $id_repertoire = $this->_id_repertoire; } else { $id_repertoire = 0 ; } $liste_documents = $projet->getListesDocuments(PROJET_CHEMIN_FICHIER, PROJET_CHEMIN_ICONES, $id_repertoire) ; // creation de la vue liste de document, on nettoie l'url //$this->_url->removeQueryString(PROJET_VARIABLE_ACTION) ; include_once PROJET_CHEMIN_CLASSES.'HTML_listeDocuments.class.php' ; $this->_url->addQueryString(PROJET_VARIABLE_ACTION, $this->_action) ; $vue_liste_document = new HTML_listeDocuments($this->_url, false, $this->_id_repertoire, $this->_auth, $projet->getId()) ; // reglage de parametres de la vue $vue_liste_document->setAction (array ("couper" => PROJET_ACTION_COUPER, "modifier" => PROJET_ACTION_MODIFIER, "supprimer" => PROJET_SUPPRESSION_FICHIER)) ; $vue_liste_document->setCheminIcones(PROJET_CHEMIN_ICONES) ; $tableau_navigation = document::getPath($this->_id_repertoire, $this->_db) ; //$retour .= $GLOBALS['log']; $tableau_navigation = array_merge(is_array ($tableau_navigation) ? array_reverse($tableau_navigation) : array(), array($id_repertoire)); $vue_liste_document->setCheminNavigation ($tableau_navigation) ; // verification des droits de l'utilisateur $entete_liste = array (PROJET_FICHIERS_NOM, PROJET_FICHIERS_TAILLE, PROJET_FICHIERS_PAR, PROJET_FICHIERS_CREE_LE) ; if ($this->_auth->getAuth()) { include_once PROJET_CHEMIN_CLASSES.'participe.class.php' ; $participant = new participe($this->_db) ; $id_u = $this->_auth->getAuthData(PROJET_CHAMPS_ID) ; $isParticipant = $participant->isContributeur($id_u, $this->_id_projet, $this->_db); if ($isParticipant) $droits = PROJET_DROIT_CONTRIBUTEUR; $isAdm = participe::isAdministrateur($this->_auth->getAuthData(PROJET_CHAMPS_ID), $this->_db) ; if ($isAdm) $droits = PROJET_DROIT_ADMINISTRATEUR ; $isCoord = $participant->isCoordinateur($id_u, $this->_id_projet, $this->_db) ; if ($isCoord) $droits = PROJET_DROIT_COORDINATEUR ; if ($isAdm) $isCoord = true ; $statut = participe::getStatutSurProjetCourant ($this->_auth->getAuthData(PROJET_CHAMPS_ID), $this->_id_projet, $this->_db) ; // si participant, on ajoute le champs visibilite if ($statut !='' || $isAdm) { array_push ($entete_liste, PROJET_FICHIERS_VISIBILITE) ; } // si chef de projet ou si proprietaire d'au moins 1 document $proprietaire_un_document = false ; foreach ($liste_documents as $document) { if ($this->_auth->getAuthData(PROJET_CHAMPS_ID) == $document->_id_proprietaire) { $proprietaire_un_document = true ; $droits = PROJET_DROIT_PROPRIETAIRE ; } } if ($statut > 0 || $proprietaire_un_document) { array_push ($entete_liste, PROJET_ACTION) ; } } else { $droits = PROJET_DROIT_AUCUN ; } if (!isset($droits)) $droits = PROJET_DROIT_AUCUN ; $vue_liste_document->construitEntete($entete_liste) ; $vue_liste_document->construitListe ($liste_documents, $droits, '', $this->_db) ; $retour .= '

'.PROJET_PROJET.' : '.$projet->getTitre()."

" ; $retour .= '

'.PROJET_DOCUMENT_DU_PROJET.'

'."\n" ; // Les liens pour l affichage classique ou arborescent (avec dojo) $this->_url->addQueryString('affichage', 'ajax'); $retour .= ''.PROJET_AFFICHAGE_ARBORESCENT.''."\n"; $this->_url->addQueryString('affichage', 'standart'); $retour .= ''.PROJET_AFFICHAGE_CLASSIQUE.''."\n"; $this->_url->removeQueryString('affichage'); $retour .= ''; if (!isset ($_SESSION['mode_affichage'])) { if (isset($_GET['affichage'])) $_SESSION['mode_affichage'] = $_GET['affichage']; else $_SESSION['mode_affichage'] = 'standart'; } else { if (isset($_GET['affichage'])) $_SESSION['mode_affichage'] = $_GET['affichage']; } $vue_liste_document->setModeAffichage($_SESSION['mode_affichage']); $retour .= $vue_liste_document->toHTML($projet->getId(), $droits); //$retour .= $GLOBALS['log']; ?>