Attention : vous consultez actuellement la documentation dédiée aux versions 2.x de Moodle. La documentation pour les versions 3.x de Moodle est consultable ici : Format Page et celle pour Moodle 4.x est consultable là : Format Page.

Format Page

De MoodleDocs
Révision datée du 28 février 2015 à 15:38 par Valery Fremaux 2 (discussion | contributions) (→‎Installation)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à :navigation, rechercher


[Doc in progress]

Ce format de cours est issu de la migration "stricte" vers Moodle 2 du format Flexipage original de MoodleRooms, conservant un modèle de données intégral du modèle original en compatibilité ascendante, et en ajoutant l'ensemble des améliorations fonctionnelles apportées depuis 2008 à travers de nombreux projets d'intégration (Pairform@nce, Institut Iperia, Groupe IGS, ... ).

Un peu d'histoire

Pour les toutes premières origines du format Flexipage, il faut remonter en 2004 à une commande faite par Intel(r) à MoodleRooms (US) en vue d'intégrer sur Moodle le programme d'évangélisation numérique Intel Teach Essentials Online (tm).

Le format Flexipage a été publié à l'éopque en GPL code, et réutilisé par Intel(tm) dans le programme Teach Advanced Online(tm) (TAO) avec l'aide de Catalyst (NZ), puis dans le projet Pairform@nce du Ministère de l'Education Nationale par MyLearningFactory.

Les équipes affrétées par Intel(tm) ont collaboré de manière régulière autour du projet TAO pour adapter et consolider les fonctionalités du format Flexipage. La version Pairform@nce a ensuite été réutilisée dans de nombreux déploiements en France pour lesquels une continuité technologique en Moodle 2.x était souhaitable pour récupérer la masse de productions pédagogiques faites sous ce format.

Malheureusement, MoodleRooms a décidé, lors de l'évolution vers Moodle 2, de changer radicalement l'architecture de données de leur version Flexipage, prooquant une rupture technique totale avec l'existant, et rendant impossible la récupération des contenus 1.9.

Sur la base des multiples projets qui avaient un tel contenu disponible, MyLearningFactory a lancé en 2012 le projet de migrer vers moodle 2 une version compatible du format original, et d'y intégrer toutes les améliorations ajoutées depuis cette version.

Des nouveaux composants (blocs) ont alors été retravaillés pour compléter ce format (ex. bloc Etapes de Formation, Statitiques d'usage (Use_Stats), Rapport de session de fomation), et dans le même temps certains modules d'activité ont été réadaptés pour travailler avec ce format (ex. Checklist refondu en LearningTimeCheck / MyLearnignFactory)

Ce format est désormais appelé "Format Page" et non plus Flexipage.

Fonctionnalités du format "page"

  • Gérer le contenu du cours dans un ensemble de page en organisation hiérarchique
  • Donner une maîtrise complète de la mise en page à l'auteur pour chaque page (blocs et activités) en trois colonnes
  • Réutiliser plusieurs fois la même activité sur des pages différentes à partir d'un "sac à activités" indépendant des pages
  • Permettre une gestion libre, page par page des largeurs et présence de colonnes
  • Gestion des pages (ordre, hiérarchie, visibilité)

Nouvelles fonctionnalités spécifiques au format page

  • Copie de page: permet de copier la structure d'une page en une nouvelle page en copiant les références d'activités et en clonant les blocs.
  • Réodonnancement rapide: Le réordonnancement des pages se fait en Ajax avec un DHTMLTree en glisser-déposer
  • Déplacement facilité des items sur une page: avec des marqueurs de position dans les colonnes, ou depuis Moodle 2.6, avec prise en compte du glisser-déposer.
  • Page access: Now some pages can be set really public (no login)
  • Page access: Now some pages can be set published to teacher (though published)
  • Page access: Now some pages can be published to connected students (this was the actual use case).
  • Page access: Now some pages can be given to named students (individualiation by page)
  • Page access: Now some pages can be given access to some groups
  • Page override: A page can be now completely overriden by an activity. (Usually this will need some customscripting of some main activity view.php script in order to add multipage navigation in activities).
  • Conditional page: A page can be accessible ONLY if some activity has been completed
  • Discussion side page: Alike a wiki, we added a side discussion page for helping teacher and author team to comment and discuss about a pcourse page design
  • Fine grain individualisation: As everything that is published on pages is proxied by a Page Module block instance, we added an experimental fine grain individualization feature that let choosing "per student" and "per page item" the composition of the course for each student individually.
  • Current sticky page: Depending on a capability, the currently visited page is stored in user profile so he will come back to that page when comming back to that course. People who DO NOT have this capability allowed will start on the first accessible page in the hierarchy.

Depuis la version 2014xxxx :

  • Mise en page compatible avec les themes Bootstrap (s'applique sur Clean, Bootstrapbase, Essential)
  • Heure d'ouverture et de fermeture d'une page
  • Ouverture sur semaine glissante
  • Copie totale de page: clone tous les constituants de la page originale sur la page copiée.
  • Pages modèles: permet de définir certaines pages comme modèles globaux qui peuvent être appelés lors de la création d'une page dans un cours

Composants du format page

  • Le format page (format_page) lui-même
  • Le bloc Module de Page (block_page_module) : un composant obligatoire qui sert à l'encapsulation des ressources et activités Moodle dans un principe de bloc.
  • Etapes de formation (block_page_tracker): Un bloc accessoire permettant de constituer un menu simple avec l'affichage de marques de visites
  • Le module Menu Paginé: La navigation interne dans un cours au format Page, complètement programmable par l'auteur. C'est une alternative plus riche que le bloc précédent, et sous forme d'un "module d'activités", et donc réutilisable sur toutes les pages.

Installation

L'installation du format page nécessite un certain nombre d'opérations concernant le thème et la personnalisation de scripts.

1. Installation des composants principaux

Déployez le composant principal (format_page) dans le répertoire "course/format" en tant que "course/format/page"

Le paquetage contient des ressources annexes pour compléter l'installation et faire les détournements de code standard nécessaires.

2. Mettre en place le format dans le theme

Because of renegociating many parts of the page layout, you need to integrate page specific additions into your active themes. These are :

  • additional page layout mappings in the theme config
  • aditional layout php scripts in the theme/layout directory.

You will get full instructions in the Readme file of the theme_page package. Note that this package IS NOT a directly usable theme, although installs properly into your Moodle, but provides resources to alter other activate themes adding page feature additions. Consider it as a source code template.

Essential steps to follow are :

  1. copy page.php layout into your theme.
  2. add the following page mappings to the config.php file of your theme
   'format_page' => array(
       'file' => 'page.php',
       'regions' => array('side-pre', 'main', 'side-post'),
       'defaultregion' => 'side-post', // avoid putting in main, or standard course will fail showing the new block menu 
       'options' => array('langmenu' => true)
   ),
   'format_page_action' => array(
       'file' => 'page.php',
       'regions' => array(),
       'options' => array('langmenu' => true, 'noblocks' => true),
   ),

Probably the best way to integrate it is using the "base" course format, that applies to all other formats, but often header and footer sections have been redrawn for each theme. So it will be more convenient to copy the page.php file into each used theme, and reshape header and footer sections to what your theme needs.

Add a :

  $string['region-main'] = 'Main'; 

string to your theme string file.

Other theme discrepancies

We noticed that base theme of moodle forces standard header to be float:left without real use. This cause an issue of postionning to our "page editing tool" widget (may roll over important controls in the page header). Override this rule in your theme to float:none.

this can be done in the pagelayout.css file in theme/base/style

  #page-header{float:'none';width:100%)

3. Customscripts

Some customscripts are necessary to deroute some execution from core hard choices. The course index needs alteration to choose the appropriate page layout "page", when appropriate, and also derivate the standard block manager to a specially designed page_block_manager when required. If this step is not executed, the course format will not work properly.

1. Activate custom scripts in your main configuration file

 $CFG->customscripts = 'path/to/script/root';

2. Copy the content of the __goodies/customscript/<version> folder of the page format distribution into that location.

The customscripted pages have been packaged for each Moodle versions (we hope so).

4. Installing other components

DO NOT forget installing the Page Module block wich is mandatory for the page format to work correctly.

Patchs

No more patch needed from 2.6.

Screens

Capabilities

Page format brings his own capabilities to control which role can perform some actions :

  • format/page:editpages
  • format/page:viewhiddenpages
  • format/page:addpages
  • format/page:storecurrentpage
  • format/page:managepages
  • format/page:viewpagesettings
  • format/page:discuss
  • format/page:individualize