Attention : vous consultez actuellement la documentation dédiée aux versions 1.x de Moodle. La documentation pour les versions 2.x de Moodle est consultable ici : Types de champs d'information, celle pour les versions 3.x de Moodle est consultable ici : Types de champs d'information et celle pour Moodle 4.x est consultable là : Types de champs d'information.

Types de champs d'information

De MoodleDocs
Aller à :navigation, rechercher

Type : textfield

Le type le plus simple. Il se traduira par un champ de texte simple à saisir, et enregistre une donnée chaine dans le micro-modèle.

Ecriture

  $field['type'] = 'textfield';

Paramètres supplémentaires

maxlength : alimente l'attribut 'maxlength' du champ de texte.

size : alimente l'attribut 'size' du champ de texte.

default : valeur initiale par défaut.

Type : textarea

Le type le plus simple. Il se traduira par une zone de texte à saisir, et enregistre un paragraphe dans le micro-modèle.

Ecriture

  $field['type'] = 'textarea';

Paramètres supplémentaires

rows : alimente l'attribut 'rows' de la zone de texte.

cols : alimente l'attribut 'cols' de la zone de texte.

default : valeur initiale par défaut.

Type : choiceyesno

Un sélecteur booléen. Il se traduira par une liste à deux valeurs, et enregistre une valeur 0/1 dans le micro-modèle.

Ecriture

  $field['type'] = 'choiceyesno';

Paramètres supplémentaires

default : valeur initiale par défaut.

Type : list

Un sélecteur dans une liste fermée "en dur". Il se traduira par une liste de choix, et enregistre un code d'option dans le micro modèle.

Ecriture

  $field['type'] = 'list';

Paramètres supplémentaires

options : un tableau de clefs d'options.

multiple : 0 ou 1 (optionnel). Si marqué, permet un choix multiple.

default : valeur initiale par défaut.

Type : datasource

Un sélecteur dans une liste provenant d'une source de données externe. Il se traduira par une liste de choix, et enregistre un code d'option dans le micro modèle.

Plusieurs méthodes existent pour obtenir le liste de données de référence.

Ecriture

  $field['type'] = 'datasource';

Paramètres supplémentaires

source : la méthode d'obtention des entrées de listes ('dbfieldkeyed', 'dbfieldkey', 'function').

multiple : 0 ou 1 (optionnel). Si marqué, permet un choix multiple.

default : valeur initiale par défaut.

Méthodes d'alimentation de la liste

Méthode : dbfieldkeyed

Dans cette méthode, on considère que les clefs d'option et les libellés affichables de liste sont tous deux dans la table de données à examiner, et récupérables à l'aide d'une simple requête. Les champs caractéristiques de la source sont :

table : Le nom de la table (sans préfixe, exemple : course_categories)

key : désigne le nom du champ contenant les clefs d'options ('id' par défaut)

field : désigne le nom du champ contenant les valeurs afficables d'option (libellés)

select : une clause 'WHERE ... ' à appliquer dans la requête

ordering : les champs de la clause 'ORDER BY ...' appliquée à la requête

Méthode : dbfieldkey

Dans cette méthode, on considère que les clefs d'option proviennent de la table de données à examiner, mais les libellés affichables proviennent d'une "traduction" de ces options. Les champs caractéristiques de la source sont :

table : Le nom de la table (sans préfixe, exemple : course_categories)

field : désigne le nom du champ contenant les valeurs afficables d'option (libellés)

select : une clause 'WHERE ... ' à appliquer dans la requête

ordering : les champs de la clause 'ORDER BY ...' appliquée à la requête

domain : le domaine (composant) où aller chercher les traduction des options

Méthode : function

Cette méthode et la plus ouverte et permet au développeur d'écrire sa propre fonction pour obtenir la liste d'option. Les champs caractéristiques de la source sont :

file : Le nom du fichier de code à inclure où se trouve la fonction (chemin relatif à $CFG->dirroot)

function : Le nom de la fonction à appeler

(Il n'est pas possible pour l'instant de passer des attributs à cette fonction)