Formulaires tabulés et filtrés : Guide d'installation

Installer le composant

Ce composant s'installe en deux temps :

Le premier est une installation standard d'un composant local :

Dézippez l'archive dans le répertoire /local de votre installation

Naviguez vers les Notifications du menu Administration de Site pour terminer l'installation

Dans un deuxième temps, vous devez modifier le fichier lib/formslib.php pour y remplacer le moteur de rendu des formulaires :

A la fin de ce script est initialisé le moteur de rendu standard :

/**
* @global object $GLOBALS['_HTML_QuickForm_default_renderer']
* @name $_HTML_QuickForm_default_renderer
*/
$GLOBALS['_HTML_QuickForm_default_renderer'] = new MoodleQuickForm_Renderer();

Cette définition doit être complétée comme ceci :

/**
* @global object $GLOBALS['_HTML_QuickForm_default_renderer']
* @name $_HTML_QuickForm_default_renderer
*/
$GLOBALS['_HTML_QuickForm_default_renderer'] = new MoodleQuickForm_Renderer();
// PATCH : Overloads quickform renderer
$config = get_config('local_tabbedquickform');
if (!empty($config->enable) && is_dir($CFG->dirroot.'/local/tabbedquickform')) {
$GLOBALS['_HTML_QuickForm_default_renderer'] = new MoodleQuickForm_Tabbed_Renderer();
}
// /PATCH

Cette modification affectera TOUS les formulaires de Moodle à partir du moment où elle est activée dans la configuration générale.

Configurer la fonctionnalité

La configuration générale de ce composant ne propose que deux options. Vous l'atteindrez par le menu :

Administration de site > Plugins > Plugins Locaux > formulaires à onglets

Activation du moteur de rendu tabulaire

En activant le moteur, vous remplacerez l'ancien moteur de rendu de formulaire en sections rabattables par le moteur à onglets disposant en plus de la capacité de filtrage fonctionnel.

Autoriser le masquage des champs obligatoires (déconseillé)

Si cette options est activée, alors l'administrateur pourra aussi décider de masquer les champs obligatoires. Attention, le système de masque enregistre une valeur unique por certains éléments de formulaires. Il est impératif de fournir cette valeur par défaut au moment de l'activation du masque, où le formulaire se mettra à boucler en erreur. La valeur par défaut sera proposée systématiqumeent, pour tous les usages ultérieurs du formulaire. Cette fonctionnalité ne peut donc être utilisée pour les champs qui demandent une valeur “unique et différente à chaque fois”.

Mode par défaut des formulaires

Par défaut (sans enregistrement de quoi que ce soit dans les préférences utilisateur), le mode des formulaires peut être :

Filtré : Les champs qui ont été masqués par l'administrateur n'apparaitront plus.

Complet : Tous les champs d'origine des formulaires apparaissent

Chaque utilisateur peut par la suite choisir à tout moment quel mode d'affichage des formulaires il souhaite.

Types de pages exclus

L'usage des formulaires dans Moodle est très varié, et il peut arriver que certaines pages de Moodle mettent en oeuvre des formulaires Quickform d'une manière particulière empêchant le dispositif de fitrage de fonctionner, ou perturbant le fonctionnement du formulaire.

Cette liste permet d'ajouter des types de pages à exclure du filtrage. Ces types de page peuvent être obtenus en activant l'affichage des informations techniques de page dans les options de déboggage (développement) de Moodle. Ajoutez le type de page à la suite de la liste pour désactiver le rendu tabulé de formulaire pour cette page. Le rendu standard de Moodle sera proposé pour ces formulaires.

Supprimer tous les masques (option communautaire)

en activant ce lien, vous pouvez effacer tous les masques enregistrés dans Moodle et rétablir toutes les options de moodle.

Importer / Exporter / Supprimer tout ou sélectivement des masques (version "pro")

Dans la version “pro” de ce composant les administrateurs peuvent exporter et réimporter les listes de masques. Ils peuvent également supprimer un ensemble sélectif de masques en spécifiant un pattern de fltrage (syntaxe du LIKE Mysql).

Export

Résoudre d'éventuels problèmes de non fonctionnement

Les cas répertoriés ponctuels de non fonctionnement reposent sur l'absence d'invocation de JQuery par certaines pages natives de Moodle. L'intégration des TabbedQuickForm s'effectue très en amont de la production de la page dans les librairies fondamentales de Moodle. Il n'y est pas possible d'ajouter la demande du support JQUery à cet endroit.

Résoudre le problème

La solution à ces dysfonctionnements locaux peut être résolue facilement par les intégrateurs de theme de Moodle en ajoutant les lignes suivantes à la fin du fichier de configuration de thème, localisé dans les répertoires :

/theme/<nom_theme>/config.php

Ajoutez les lignes suivantes en toute fin du fichier :

// Tabbed quickform addition for generalizing the Jquery.
global $PAGE;
if (!$PAGE->state) {
$PAGE->requires->jquery();
}

Revenir au sommaire du composant - Index des plugins - Retour au catalogue