Le CMS Joomla La mise en place du CMS est inscrite dans le dossier d’homologation Attente : avoir une plateforme commune de travail et de publication
CMS Content Management System SPIP, EzPublish, Joomla Fonction les plus connues : - création de site Web collaboratif - Echange / partage de documents - Workflow [chaîne de publication]
Quelles sont nos attentes vis-à-vis du CMS pour le CATI Avoir un système de gestion performant des utilisateurs pour organiser l’accès à différents dossiers ou applications existantes et à venir Pouvoir faire interagir facilement le CMS avec d’autres applications Avoir accès aux données stockées par le CMS Pouvoir ‘customiser’ facilement le CMS
Choix de Joomla 1.5 Choix fait à l’ODR en collaboration avec un partenaire ayant l’expérience de l’outil [APEM] Fonction importante recherchée : intégrateur d’applications en vue de la réalisation de portails à destination de nos partenaires
Quelques grands traits du CMS Joomla Système très ouvert utilisant PHP/MySQL Nombreux plugins améliorant très nettement le fonctionnement de base du logiciel et compatibles entre eux exemple plugin gmaccess : gestion performante des utilisateurs supporté par d’autres plugins comme rokDownloads dépôt de fichiers simple d’utilisation Communauté très active
Le portail URL : https://esrcarto.supagro.inra.fr/intranet/carto_joomla/ https://esrcarto.supagro.inra.fr/ Cinq portails : Recherche, Evaluation, Territoire, Emploi, Qualité Réseau Recherche : chaque membre du CATI a un login/mot de passe de base qu’il peut modifier
Utilisateur ‘CATI’ Quatre menus : Chaque menu contient des sections Menu principal / Votre portail / Menu Utilisateur / Menu Rédacteurs Chaque menu contient des sections Dans Menu ‘Votre Portail’ : .Vos Documents partagés / Cati / Mission Données Chaque section contient des catégories Dans la section CATI : Informations générales / Informations techniques / Pages "C'est quoi ?" / Pages "Mon opinion" / Ingé+ Chaque catégorie contient des articles
Backoffice de Joomla Création d’utilisateurs https://esrcarto.supagro.inra.fr/intranet/carto_joomla/administrator/ Création d’utilisateurs Création de groupes d’utilisateurs Composants/Gmaccess/Gestion des Groupes Création de menus Un utilisateur appartient à un ou plusieurs groupes Les groupes peuvent être imbriqués [héritage] Menu Administrateur/Arborescence des groupes GMAccess Les items des menus sont liés aux groupes Note : Possibilité de gérer avec PHP le remplissage direct des tables MySQL contenant les informations sur les utilisateurs
Base MySQL carto_joomla
Utilisation ‘classique’ Rédaction d’articles hors backoffice, il suffit d’avoir les droits Joomla dispose de JRE, éditeur de texte évolué autorisant le copier/coller de pages HTML Possibilité de lier des images ou des documents préalablement stockés dans des dossiers
Joomla : intégrateur d’application Un élément de menu n’est pas forcément une section comme dans l’exemple précédent de l’utilisateur ‘CATI’ Deux types importants d’éléments de menu : -Possibilité de lier une application externe à un élément de menu -Modification faite par nos soins : lors du lancement d’une application externe, possibilité de récupérer le login joomla d’une manière sécurisée si l’application gère elle-même ses propres utilisateurs
Ajouter un élément de menu Lien externe Menu Principal/Accès à carto dynamique Lien avec transmission de la session encapsuleur/[wrapper] Menu utilisateur/Lancer carto dynamique class WrapperController { function display() global $mainframe, $option ; $document =& JFactory::getDocument(); … // PL 20/01/2009 pour Carto $session =& JSession::getId(); // Get the page/component configuration $params = &$mainframe->getParams(); $url = $params->def( 'url', '' ); $row->url = $url; .. //PL090529 passage de l'identification de session pour carto //RC090612 Il peut déjà y avoir qqchose sur l'URL ? ou & if( strstr( $row->url, '?' ) === FALSE ) $row->url = $url .'?sess='.$session; else $row->url = $url .'&sess='.$session;
explication Une session PHP transmet l’identifiant dans une variable $sess Récupération du login Joomla à travers l’id de session enregistré dans joomla if( isset( $sess ) ) { $sql = "SELECT username FROM carto_joomla.jos_session WHERE session_id = '$sess' "; $resultat = mysql_query( $sql, $db ) or erreurmysql( $db, $sql ); $ligne = mysql_fetch_array( $resultat ); $loginutilisateur = $ligne[ username ]; }
Publier des fichiers Plugin RokDownloads Administrateur peut Ajouter des dossiers /sous dossiers L’utilisateur peut télécharger des documents Droits liés à Gmaccess Pour que le document téléchargé soit publié, il faut la validation de l’administrateur du dossier qui reçoit un mail de demande de validation [administration] Les fichiers transférés peuvent être référencés dans des articles
Partie CATI Des rubriques pouvant être remplies par les membres du CATI Informations générales Informations techniques Pages "C'est quoi ?" Pages "Mon opinion" Des accès à des applications développées par des membres du CATI Carto dynamique Medina Rica Idées ???