8 mai 2009 @ 9:57

Liste de cours moodle, menus déroulants

A la rentrée, le moodle de la HES-SO s’est offert une petite cure de jouvence: nouvelle version, nouveau serveur, nouvel OS, nouvelle présentation…

Pour cette dernière, nous avons, entre autres, adapté « PHP DBTreeView« , un composant Ajax sous licence LGPL, qui permet l’affichage de menus arborescents à partir d’un contenu extrait d’une base de données.

Notre table des matières comprend plus de 1500 cours répartis dans une centaine de catégories emboîtées. Celle-ci est désormais révélée progressivement, à la demande de l’internaute qui « déroule » une catégorie afin d’en afficher le contenu. Le chargement de la page d’accueil s’en trouve allégé.

Suite à diverses demandes, vous trouverez ci-après la démarche pour adapter ce code à votre plateforme moodle.

Menus moodle, affichage arborescent

 

1.      Télécharger l’archive ci-jointe ajax-treeview

2.      Copier le répertoire dbtreeview dans le répertoire lib de moodle

 

3.      Modifier le fichier index.php dans le répertoire root de moodle comme ceci :

a.      A la suite de :
require_once($CFG->dirroot .’/lib/blocklib.php’);
Ajouter :
require_once($CFG->dirroot .’/lib/dbtreeview/menu.php’);

b.      A la suite de :
print_header(strip_tags($SITE->fullname), $SITE->fullname, ‘home’,  »,
 ‘<meta name= »description » content= »‘. s(strip_tags($SITE->summary)) .’ » />’,
true,  », user_login_string($SITE).$langmenu);
Ajouter :
printf(« <script src=\ »%s/treeview.js\ » type=\ »text/javascript\ »></script>\n »,
    « lib/dbtreeview »);
printf(‘<link href= »%s/treeview.css » rel= »stylesheet » type= »text/css » media= »screen »/>’. »\n »,
    « lib/dbtreeview »);

 

4.      Dans la case FRONTPAGECATEGORYCOMBO

Ajouter à la place de  :
print_whole_category_list(NULL, NULL, NULL, -1, true);
le code suivant :
$rootAttributes = array(« code »=> »0″);
$treeID = « treev1″;
$tv = DBTreeView::createTreeView(
$rootAttributes,
« lib/dbtreeview »,
$treeID);
$tv->printTreeViewScript();

 

5.      Copier les images dans le thème dans le répertoire pix.

 

6.      Ajouter dans le thème, le fichier treeview.css

 

7.      Modifier en conséquence le fichier dbtreeview_config qui se trouve dans le répertoire lib/dbtreeview

 

8.      Aller dans la section admin de moodle « Page d’accueil » -> Réglages page d’accueil
Choisir « liste combinée » dans l’option « Page d’accueil » et « Éléments de la page d’accueil, une fois connecté »

 

 

 

Pour toute question,  vous pouvez vous adresser à  Raphael.Voirol_at_heig-vd.ch (Remplacer le  at par @)

  1. 5 réactions à “Liste de cours moodle, menus déroulants”
  2. Amir dit:
    déc 9, 2009

    Hi,
    What version of moodle is this code good for?
    I tried with 1.9.5+ and got a blank page on frontpage…

  3. Daniel dit:
    déc 14, 2009

    Sorry but this code has been optimized for the version which is currently running at Cyberlearn (1.9.3+)

  4. Gavin dit:
    oct 29, 2010

    The script above does not work properly. What are these « » » characters?

  5. admin dit:
    nov 5, 2010

    Hi Gavin,

    Related to the problems you mention, you can take contact with raphael.voirol[at]heig-vd.ch. He will answers you about that ’cause he is the author of the code.

    Thanks for your interst.

    Regards

  1. 1 Trackback(s)

  2. oct 19, 2009: Brase Net – Sebastian Brams » Tutorial: Aufklappbare Kursliste in Moodle

Laisser un commentaire