20,7 → 20,7 |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
|
// CVS : $Id: projetControleur.class.php,v 1.46 2008-08-28 14:48:54 alexandre_tb Exp $ |
// CVS : $Id: projetControleur.class.php,v 1.45 2008-08-26 12:42:10 alexandre_tb Exp $ |
|
/** |
* Application projet |
33,7 → 33,7 |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.46 $ |
*@version $Revision: 1.45 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
564,7 → 564,7 |
if ($isCoord || $isAdm) { |
$res .= '<li class="projet_niv1">'.PROJET_GESTION_PROJET ; |
$res .= '<ul id="projet_group_niv2_ges">' ; |
// L'action modifier les proprietes du projet |
// L'action modifier les propriétés du projet |
$this->_url->addQueryString(PROJET_VARIABLE_ACTION, PROJET_MODIFIER_DESCRIPTION) ; |
$res .= '<li class="projet_niv2"><a href="'.$this->_url->getURL().'">'.PROJET_MODIFIER_PROPRIETES."</a></li>\n" ; |
if ($isAdm || (PROJET_UTILISATEURS_COORD && $isCoord)) { |
913,7 → 913,7 |
if ($formulaire_document->validate()) { |
// Creation d'un objet document vide |
$document = new document ($this->_id_document, $this->_db) ; |
// On passe aussi le numero de repertoire s'il existe |
// On passe aussi le numero de répertoire s'il existe |
if ($this->_id_repertoire != '') $document->setIdRepertoire($this->_id_repertoire) ; |
$document->majSQL($formulaire_document->getSubmitValues()) ; |
} else { |
1094,7 → 1094,7 |
} // end of member function envoyerUnMailValidation |
|
/** |
* Renvoie le formulaire de creation d'une liste. |
* Renvoie le formulaire de création d'une liste. |
* |
* @param int action Indique le type d'action, PROJET_ACTION_NOUVELLE_LISTE |
* @return string |
1113,7 → 1113,7 |
} |
|
/** |
* Transmet au serveur la demande de creation d'une nouvelle liste. |
* Transmet au serveur la demande de création d'une nouvelle liste. |
* |
* @return void |
* @access public |
1130,7 → 1130,7 |
include_once PROJET_CHEMIN_CLASSES.'liste_discussion.class.php'; |
$liste = new liste_discussion('', $this->_db) ; |
|
// On verifie que le nom de la liste soit unique |
// On vérifie que le nom de la liste soit unique |
if (liste_discussion::verifieDoubleListe($formulaire_liste->getSubmitValue('nom_liste').'@'. |
$formulaire_liste->getSubmitValue('domaine_liste'), $this->_db)) { |
// On rajoute la liste dans la base |
1163,7 → 1163,7 |
} // end of member function nouvelleListeValidation |
|
/** |
* Supprime la liste de discussion associee au projet |
* Supprime la liste de discussion associée au projet |
* |
* @return void |
* @access public |
1184,7 → 1184,7 |
/** |
* |
* |
* @param string presentation Pour affecter une presentation au projet |
* @param string presentation Pour affecter une présentation au projet |
* @return void |
* @access public |
*/ |
1205,7 → 1205,89 |
$this->_type = $type ; |
} // end of member function setPresentation |
|
|
/** |
* Fonction affichant les participants à un projet |
* |
* @return string |
* @access public |
*/ |
function voirParticipants( ) |
{ |
include_once PROJET_CHEMIN_CLASSES.'HTML_listeParticipants.class.php' ; |
include_once PROJET_CHEMIN_CLASSES.'projet.class.php' ; |
$projet = new projet ($this->_db, $this->_id_projet) ; |
$titre = '<h1>'.$projet->getTitre().'</h1>'."\n" ; |
$titre .= '<h2>'.PROJET_LISTE_PARTICIPANT.'</h2>'."\n" ; |
include_once PROJET_CHEMIN_CLASSES.'participe.class.php' ; |
$participants = new participe($this->_db) ; |
|
// On teste ici s'il y a une mise à jour de statut |
if (isset($_POST['statut'])) { |
// $_GET['id_utilisateur'] et $_GET['statut'] proviennent du formulaire voir HTML_listeParticipants |
$participants->setStatut($_POST['statut'], $_GET['id_utilisateur'], $this->_id_projet) ; |
} |
|
// Ce qui suit doit être amàliorà pour sortir la requête sur l'annuaire |
// On teste s'il y a un ajout d'utilisateur voir HTML_listeParticipants |
if (isset($_POST['mail_utilisateur'])) { |
$requete = 'select '.PROJET_CHAMPS_ID.' from '.PROJET_ANNUAIRE.' where '.PROJET_CHAMPS_MAIL.'="'.$_POST['mail_utilisateur'].'"'; |
$resultat = $this->_db->query ($requete) ; |
if (DB::isError ($resultat)) { |
die ('Echec de la requete : '.$requete.'<br />'.$resultat->getMessage()) ; |
} |
if (!$resultat->numRows()) { |
$msg = PROJET_MAIL_ABSENT; |
} else { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC) ; |
$participants->setStatut(3, $ligne[PROJET_CHAMPS_ID], $this->_id_projet) ; |
} |
} |
|
if ($this->_auth->getAuth()) { |
$statut = participe::getStatutSurProjetCourant($this->_auth->getAuthData(PROJET_CHAMPS_ID), $this->_id_projet, $this->_db) ; |
if ($statut == 2) $droits = PROJET_DROIT_CONTRIBUTEUR ; |
if ($statut == 1) $droits = PROJET_DROIT_COORDINATEUR ; |
if (participe::isAdministrateur($this->_auth->getAuthData(PROJET_CHAMPS_ID), $this->_db)) $droits = PROJET_DROIT_ADMINISTRATEUR ; |
$HTML_listeParticipants = new HTML_listeParticipants(true) ; |
if ($statut < 2) $HTML_listeParticipants->setModeModification() ; |
// Mise en place de l'url |
$this->_url->addQueryString (PROJET_VARIABLE_ACTION, PROJET_ACTION_VOIR_PARTICIPANT) ; |
$HTML_listeParticipants->setURL($this->_url) ; |
// Construction de l'entete |
$entete = array (PROJET_NOM, PROJET_PRENOM) ; |
|
if ($this->_auth->getAuth()) { |
array_push ($entete, PROJET_MAIL) ; |
} else { |
$droits = PROJET_DROIT_AUCUN ; |
} |
$info_utilisateur = $participants->getInscrits($this->_id_projet, $droits) ; |
array_push ($entete, PROJET_DATE_INSCRIPTION) ; |
$HTML_listeParticipants->construitEntete($entete) ; |
|
$HTML_listeParticipants->construitListe($info_utilisateur, statut::getTousLesStatuts(PROJET_STATUT_SAUF_ADM_COORD, $this->_db)) ; |
|
$res = $HTML_listeParticipants->toHTML() ; |
|
if ($statut < 2) { |
$res .= PROJET_NOUVEAU_UTILISATEUR_LAIUS ; |
$res .= '<form action="'.$this->_url->getURL().'" method="post">'."\n" ; |
if (isset ($msg) && $msg != '') { |
$res .= '<div>'.$msg.'</div>' ; |
} |
$res .= '<input type="text" name="mail_utilisateur" size="32" />' ; |
$res .= '<input type="submit" value="'.PROJET_NOUVEAU_UTILISATEUR.'" />'."\n" ; |
$res .= '</form>'."\n" ; |
} |
} else { |
$res .= '<p>'.PROJET_TEXTE_NON_IDENTIFIE.'</p>'."\n" ; |
} |
return $titre.$res ; |
|
} // end of member function voirParticipants |
|
/** |
* Inscrit un utilisateur a un projet avec le statut observateur |
* |
* @return void |
1408,7 → 1490,7 |
$res .= '<br /><a href="'.$this->_url->getURL().'">'.PROJET_RETOUR_RESUME.'</a>'; |
return $res; |
|
} |
} // end of member function formulaireWiki |
|
|
function associerWiki( ) |
1418,7 → 1500,7 |
$db = &$GLOBALS['_GEN_commun']['pear_db'] ; |
$res=''; |
|
// Comportement par defaut |
// Comportement par défaut |
// requete sur la table gen_wikini pour affichage de la liste des Wikini |
$requete = "select gewi_id_wikini, gewi_code_alpha_wikini, gewi_page from gen_wikini" ; |
|
1437,7 → 1519,7 |
|
while ($ligne = $resultat->fetchRow()) { |
$this->_url->addQueryString ('id_wikini', $ligne[0]) ; |
array_push ($tableau_wikini, array ($ligne[1]."\n", // Premiere colonne, le nom de l'application |
array_push ($tableau_wikini, array ($ligne[1]."\n", // première colonne, le nom de l'application |
$ligne[2]."\n", // Deuxieme colonne, la page par defaut |
'<a href="'.$this->_url->getURL()."&".PROJET_VARIABLE_ACTION."=".PROJET_ACTION_ASSOCIER_WIKI_V."".'">'.PROJET_CHOISIR_WIKINI.'</a>'."\n", |
)); |
1528,7 → 1610,7 |
} // end of member function referencerListeExterne |
|
/** |
* Realise les mises a jours dans la table projet_lien_liste_externe |
* Réalise les mises à jours dans la table projet_lien_liste_externe |
* |
* @return void |
* @access public |
1687,9 → 1769,6 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.45 2008-08-26 12:42:10 alexandre_tb |
* nettoyage url apres suppression d un fichier |
* |
* Revision 1.44 2008-08-26 08:52:28 alexandre_tb |
* suppression de la methode accueilProjet desormais remplacee par resume.php |
* |