« Modèles » : différence entre les versions

De MoodleDocs
Aller à :navigation, rechercher
Ligne 56 : Ligne 56 :
  <table>
  <table>
   <tr>
   <tr>
     <td>Name: [[nom]]</td>
     <td>Name: [[name]]</td>
   </tr>
   </tr>
  <table>   
  <table>   

Version du 29 juillet 2013 à 20:22

Les modèles pour le module Base de données permettent de contrôler le format visuel de l'information lors de la visualisation des listes ou lors de l'édition des données. C'est la même technique du publipostage dans les logiciels tels que Open Office Writer et Microsoft Word.


Usage des balises

Le contenu de chaque Champ que vous créez pour votre base de données et quelques balises spéciales (énumérées ci-dessous) peuvent être insérés dans des modèles. Les champs ont des formats [[nomduchamp]]. Toutes les autres balises ont le format ##balise##.

Pour utiliser les balises dans la boîte du côté gauche, utilisez l'éditeur HTML, placez votre curseur sur la zone de texte de votre cible et cliquez sur la balise de votre choix. Autrement, vous pouvez simplement taper le nom de la balise désirée comme ##ceci## ou comme [[ceci]].

  • ##edit## crée un lien avec icône permettant d'éditer votre donnée (disponible seulement si vous avez les permissions requises)
  • ##delete## crée un lien permettant de supprimer votre donnée (disponible seulement si vous avez les permissions requises)
  • ##approve## crée un lien permettant d'approuver la donnée (disponible seulement si vous avez les permissions requises)
  • ##more## crée un lien pour l'affichage fiche, pouvant contenir plus d'informations
  • ##moreurl## crée l'URL du lien ci-dessus. Utile pour créer vos propres liens. Vous pouvez cliquer sur l'icône du lien et taper ##moreurl## dans un champ URL ou dans le type vue code source
    <a href="##moreurl##">[[nomduchamp]]</a>
  • ##comments## crée un lien pour visualiser/éditer des commentaires, le lien texte est le nombre de commentaires (disponible seulement si les commentaires sont activés)
  • ##user## crée un lien pour la page de l'utilisateur qui entre la donnée
  • ##timeadded##
  • ##timemodified##

Modèle liste

Ce modèle permet le contrôle des champs utilisés et leur positionnement lorsqu'on visionne plusieurs entrées à la fois (ex: résultats de recherche). Il est possible que cette vue fournisse simplement un aperçu avec plus d'informations détaillés. En cliquant sur la fiche, on accède à la vue Affichage fiche.

Le modèle liste peut servir comme moyen d'exporter votre base de donnée sous un fichier CSV.

Modèle fiche

Cette vue est utilisé pour montrer une fiche à la fois donnant plus d'espace pour l'affichage d'information tel que les grandes images ou simplement plus de détails concernant une fiche lorsque l'espace est requise.

Modèle recherche avancée

Le modèle de recherche avancée est pour créer une interface qui sera utilisée par le moteur de recherche avancée.

Modèle nouvelle fiche

Ce modèle crée une interface qui sera utilisé pour ajouter ou modifier des fiches.

Modèle RSS

Vous laisse contrôler le contenu du flux RSS pour la base de données.

Modèle CSS

Si un de vos modèles HTML requiert CSS afin d'afficher des styles particuliers, vous pouvez les spécifier ici.

Modèle Javascript

Vous pouvez utiliser javascript pour manipuler la manière dont les éléments seront affichés dans le mode liste, fiche ou nouvelle fiche. Vous devez joindre les parties que vous voulez manipuler dans un élément HTML. La nomenclature est essentielle étant donné qu'elle vous permet d'identifier les éléments à manipuler.

Par exemple, vous désirez qu'un champ prenant le nom d'un utilisateur compte le nombre de fois qu'un nom corresponde à certains critères puis les affichent.

Votre base de données contiendra un champ nommé "nom". Dans votre modèle Liste, vous pourrez afficher le contenu de ce champ en utilisant le format [[nom]] à l'endroit où vous désirez afficher cet information. Par exemple, dans le Repeated entry sur le modèle Liste vous aurez:

 <table>
   <tr>
     <td>Name: [[name]]</td>
   </tr>
 <table>  

You now need to modify that entry to ensure that the part you want to manipulate is a named element.

 <table>
   <tr>
     <td name="named">Name: [[name]]</td>
   </tr>
 <table>  

The footer of your list view can then contain another named element to display the result.

  <div name="result"></div>

Your javascript template can now look as follows

 var cnt = 0;
 var re = /foo|Foo/;
 
 function init(){
   var namedElements = document.getElementsByName("named");
   for (i=0; i < namedElements.length; i++) {
       if(re.test(namedElements[i].innerHTML)) cnt++;
     }
   var namedResult = document.getElementsByName("result");
   namedResult[0].innerHTML = cnt;
   }
 
 window.onload = init;

This will display a table of names as is usual in the list view. Now at the bottom there will also be the count of the names that matched foo or Foo.

Reset templates button

When you first create a database the templates will be pre-filled with appropriate HTML. If you later add fields then you can press the reset templates button and it will add HTML for the new fields in a similar fashion. If you have edited any of the templates in the meantime then your changes will be lost. It is recommended that you finalize the database fields before changing the template code.

Voir aussi

Discussions sur les forums de "Using Moodle" (en anglais) :