mtweb

Développement

Une action par requête

Mtweb fonctionne sur un principe d'état. Chaque requête sur l'application met cette dernière dans un état particulier, ce qui a pour effet l'exécution d'une action.

Une action est une méthode de classe (en termes de programmation orientée objet). Les classes qui implémentent les actions sont les controleurs de l'application. Ces controleurs sont organisés dans des dossiers, qui constituent les modules de l'application.

Les modules se trouvent dans le répertoire app/controllers. Par exemple le module config contient 4 controleurs :

 

Chacun de ces fichiers php défini une classe, dont les méthodes sont des actions de l'application. Ici, le module config regroupe dans ses contrôleurs les actions fournis avec mtweb pour traiter les requêtes de configuration du site (gestion des rôles, des plugins et des templates).

Pour chaque requête sur l'application, c'est le paramètre GET de nom e qui détermine l'action à éxecuter.

Cette URL déclenche l'exécution de la méthode add du controleur users dans le module admin :

index.php?e=admin/users/add

→ plus d'infos sur le traitement d'une action

L'Accès aux données

A chaque requête, mtweb instancie un objet data, dont les méthodes définissent les accès aux données de l'application.

Les méthodes de cet objet sont implémentées dans des modules d'accès aux données, qui sont des classes dont les méthodes implémentent les requêtes sur le SGBD. Ces modules d'accès aux données se trouvent dans le dossier app/data/modules :

Selon le SGBD choisi, les modules d'accès sont lus soit dans le dossier xml, si vous choisissez le stockage des données avec XML, soit dans le dossier sql pour les autres SGBD. Le dossier share contient quant à lui les modules dont les méthodes sont commune aux deux systèmes.

Dans l'arborescence ci-dessus, on voit les modules d'accès aux données qui utilisent le langage SQL, répartis dans deux fichiers (deux classes php) : un fichier qui défini des méthodes génériques d'accès aux données SQL (Create Read Update et Delete), et un autre qui regroupe quant à lui les méthodes d'accès aux données relatives aux utilisateurs. Vous pouvez ajouter des méthode dans ces fichiers, ou développer de nouveaux modules d'accès aux données, dans des nouveaux fichiers du dossier sql ou xml, selon le SGBD utilisé.

→ plus d'infos sur les modules de données

Les fichiers d'affichage 

Lorsqu'une action a terminé son exécution, mtweb va ensuite chercher à fournir un résultat et va alors regarder du coté des fichiers d'affichage, dans le dossier app/out :

 

Mtweb propose un système de template. Par défaut, un template est fourni : le template default. Pour modifier l'affichage, vous pouvez modifier les fichiers du dossier default, mais vous pouvez aussi développez votre propre template d'affichage, dans un nouveau dossier dans le repertoire out, et le selectionner dans l'administration du site.

→ plus d'infos sur les fichiers d'affichage