<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to module</title><link>https://sourceforge.net/p/vallect/wiki/module/</link><description>Recent changes to module</description><atom:link href="https://sourceforge.net/p/vallect/wiki/module/feed" rel="self"/><language>en</language><lastBuildDate>Wed, 13 Jun 2012 22:14:12 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/vallect/wiki/module/feed" rel="self" type="application/rss+xml"/><item><title>WikiPage module modified by Patrick CARDONA</title><link>https://sourceforge.net/p/vallect/wiki/module/</link><description>&lt;pre&gt;--- v4
+++ v5
@@ -15,6 +15,7 @@
 * Tout nouveau module doit prendre en compte les informations des tables existantes au moyen de références (id) à ces tables.
 
 En aucun cas l’un de ces modules ne doit:
+
 * Altérer une table existante ;
 * Altérer la feuille de style principale.
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Patrick CARDONA</dc:creator><pubDate>Wed, 13 Jun 2012 22:14:12 -0000</pubDate><guid>https://sourceforge.net3185ee0d10ef62fa1205b75f8f70c01a0def6e5a</guid></item><item><title>WikiPage module modified by Patrick CARDONA</title><link>https://sourceforge.net/p/vallect/wiki/module/</link><description>&lt;pre&gt;--- v3
+++ v4
@@ -53,7 +53,7 @@
 Où on trouve :
 
 fichier	| contenu
------------------
+--------|---------
 inc/*.inc.php |	fonctions
 interface/*.php	| Affichage conditionnel et appel de fonctions en fonction des variables retournées
 menu/*.mnu | Liens et items du menu de gauche
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Patrick CARDONA</dc:creator><pubDate>Wed, 13 Jun 2012 22:12:43 -0000</pubDate><guid>https://sourceforge.net2a77dd1e19554f145c73c94a0ec21f36077364eb</guid></item><item><title>WikiPage module modified by Patrick CARDONA</title><link>https://sourceforge.net/p/vallect/wiki/module/</link><description>&lt;pre&gt;--- v2
+++ v3
@@ -52,11 +52,12 @@
 
 Où on trouve :
 
-fichier	contenu
-inc/*.inc.php	fonctions
-interface/*.php	Affichage conditionnel et appel de fonctions en fonction des variables retournées
-menu/*.mnu	Liens et items du menu de gauche
-module.ini	Nom du module, version, cible d'installation
+fichier	| contenu
+-----------------
+inc/*.inc.php |	fonctions
+interface/*.php	| Affichage conditionnel et appel de fonctions en fonction des variables retournées
+menu/*.mnu | Liens et items du menu de gauche
+module.ini | Nom du module, version, cible d'installation
 
 Exemple de module.ini :
 -----------------------
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Patrick CARDONA</dc:creator><pubDate>Wed, 13 Jun 2012 22:11:26 -0000</pubDate><guid>https://sourceforge.nete070f1e2b90df54f4b3c36fe85ef35bfb726119e</guid></item><item><title>WikiPage module modified by Patrick CARDONA</title><link>https://sourceforge.net/p/vallect/wiki/module/</link><description>&lt;pre&gt;--- v1
+++ v2
@@ -39,8 +39,8 @@
 -----------------------------------------------------
 
 
-modules
-   |__ mod_exemple
+    modules
+       |__ mod_exemple
              |__ inc
                   |__ mod_exemple.inc.php
              |__ interface
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Patrick CARDONA</dc:creator><pubDate>Wed, 13 Jun 2012 22:08:34 -0000</pubDate><guid>https://sourceforge.netdce7f14881f97a35a483443749834f68d682f06e</guid></item><item><title>WikiPage module modified by Patrick CARDONA</title><link>https://sourceforge.net/p/vallect/wiki/module/</link><description>Modules
=======

Voyez aussi la [conception] générale de Vallect.

Modularité
----------

Les fonctionnalités ajoutées à Vallect sont autant de modules complémentaires que l’on doit pouvoir activer dans une interface d’administration. La modularité permet un développement plus clair et une mise à jour plus simple en cas de correctif. La notion de module facultatif n'a pas encore été implantée : tous les modules de cette version sont donc nécessaires.

Chaque nouveau module respecte les principes généraux et les principes suivants :

* Les modules sont importés (upload) dans un sous-dossier du dossier « modules » de Vallect afin d’assurer l’intégrité du code commun. Puis ils sont installés par l’administrateur.
* Pour comprendre l’architecture d’un module, observez les exemples fournis dans l'archive de Vallect.
* Tout nouveau module doit prendre en compte les informations des tables existantes au moyen de références (id) à ces tables.

En aucun cas l’un de ces modules ne doit:
* Altérer une table existante ;
* Altérer la feuille de style principale.

Toute nouvelle table doit être ajoutée sans altération des tables existantes. Le code SQL de création de ces tables doit être inscrit dans un fichier vallect_nomdelatable afin d’intégrer ultérieurement cette création dans une procédure d’installation automatique. Il existe désormais une procédure d’importation des fichiers de création de tables dans l’interface d’administration.

Entre deux publications de Vallect, une archive distincte peut être réalisée, indiquant un numéro de version propre au module (x.y)

~~~~~~
nomModule_x.y.zip
~~~~~~

ou

~~~~~~
nomModule_x.y.tar.gz
~~~~~~

Toute altération des feuilles de style doit s’effectuer via un fichier distinct du fichier principal vallect.css au moyen d’une directive css « import ». Cet aspect sera précisé dans les notes de version accompagnant le module.


Architecture d'un module : Vallect 1.5.x ou ultérieur
-----------------------------------------------------


modules
   |__ mod_exemple
             |__ inc
                  |__ mod_exemple.inc.php
             |__ interface
                  |__ mod_exemple.php
             |__ menu
                  |__ mod_exemple.mnu
             |__ module.ini


Où on trouve :

fichier	contenu
inc/*.inc.php	fonctions
interface/*.php	Affichage conditionnel et appel de fonctions en fonction des variables retournées
menu/*.mnu	Liens et items du menu de gauche
module.ini	Nom du module, version, cible d'installation

Exemple de module.ini :
-----------------------

~~~~~~
nom=defi
description="Gestion des défis"
interface=eleve
version=0.4
~~~~~~

Il existe trois possibilités pour l'interface cible :

* admin
* eleve
* prof

Il est recommandé d'observer plusieurs exemples ainsi que les fichiers conteneurs que sont administrateur.php, eleve.php ou prof.php

Liste des modules
-----------------

Il existe actuellement une trentaine de modules installés par défaut.
Attention ! Tous les modules ne sont pas décrits ici. Seuls apparaissent ceux qui ont fait ou font l'objet d'une documentation spécifique. Pour disposer de tous les modules, procurez-vous sur le site de Sourceforge la dernière version de Vallect : les modules se trouvent dans le dossier « modules » (évidemment). Les versions intermédiaires sont diffusées à part sur le même site, quand il s'agit de [Correctifs] pas encore intégrés à la dernière version publiée.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Patrick CARDONA</dc:creator><pubDate>Wed, 13 Jun 2012 22:06:01 -0000</pubDate><guid>https://sourceforge.net5d53b8e60abf0124ce22dc9c8839414856c150e2</guid></item></channel></rss>