Outils pour utilisateurs

Outils du site


Panneau latéral

ref:core:moduletree

Arborescence d'un module

  • actions : contient les actions définies pour le module (si une action est appelée sur le module mais n'est pas présente dans ce dossier, l'implémentation fournie par le module generic est utilisée)
  • apache : permet de définir des fragments du fichier .htaccess compilé par la commande change.php compile-htaccess
  • change-commands : commandes accessibles via change.php <moduleName>.<commandName>
    • change-commands/default : commandes accessibles via change.php <commandName> (sans le préfixe de module) (déprécié)
  • changedev-commands : commandes accessibles uniquement en mode développement via change.php <moduleName>.<commandName>
    • change-commands/default : commandes accessibles uniquement en mode développement via change.php <commandName> (sans le préfixe de module) (déprécié)
  • config : ensemble de fichiers XML décrivant le module, son interface BO et les éléments qu'il apporte (blocs, tags, etc)
    • config/actions.xml : description (et implémentation JavaScript) des différentes actions que l'utilisateur peut effectuer en BO
    • config/blocks.xml : description des blocs (icône, paramètres, etc) à chaque bloc déclaré correspond une classe PHP dans lib/blocks
    • config/jsDependencies : dépendances entre les JavaScript du dossier lib/js
    • config/listeners.xml : listeners d'événements implémentés dans lib/listeners
    • config/module.xml : informations sur le module (catégorie, icône, visibilité, etc) et valeurs par défaut de configuration surchargeables dans la section modules du project.xml
    • perspective.xml : déclaration des documents affichés dans le backoffice du module et des actions réalisables dessus
    • rights.xml : déclaration des rôles et des permissions associées
    • urlrewriting.xml : définition des réécritures d'URL sur des actions ou des modèles de document
    • <documentName>.tags.xml : tags déclarés sur des document du module
    • <moduleName>.<documentName>.tags.xml : tags déclarés sur sur des documents d'autres modules
  • forms/editor : description des éditeurs BO des documents du module (un sous-dossier par modèle de document)
  • lib : classes PHP exploitées par le module en général la plupart des classes sont placées dans des sous-dossier par type de classes
    • lib/bin : fichiers batchs servant à l'exécution de tâches portant sur de très gros volumes de données et nécessitant d'être morcelées dans des requêtes séparées
    • lib/bindings : fichiers XUL utilisés par l'interface BO du module
    • lib/blocks : implémentation des blocs déclarés dans config/blocks.xml
    • lib/js : fichiers JavaScript utilisé en FO et déclarés dans config/jsDependencies.xml
    • lib/listeners : implémentation des listener d'événements déclarés dans config/listeners.xml
    • lib/phptal : extensions du moteur de templating
    • lib/service : services de documents et autres services
    • lib/task : implémentation des tâches planifiées
    • lib/workflowactions : actions utilisées par les workflows
  • patch : patchs de migration
  • persistentdocument : modèles XML des documents de ce module et leur implémentation PHP
    • persistentdocument/import : classes utilisées dans les imports XML de documents du dossier setup
    • persistentdocument/import/<moduleName>.binding.xml : liaison entre les classes PHP définies dans persistentdocument/import et les éléments XML des fichiers d'import
    • persistentdocument/filter : filtres fournis par ce module
  • setup : script d'installation du module et scripts XML d'import de données
    • initData.php : script PHP exécuté à l'installation du module et pouvant faire appel de des scripts XML
  • styles : fichiers CSS
  • templates : templates des blocs et actions du module
    • templates/perspectives : description du squelette global de l'interface BO du module
  • views : différentes vues des actions définies dans le dossier actions s'il y a lieu (dans la pratique assez peu d'actions on besoin de vues)
  • change.xml : description du module (version, dépendances, …)
  • LICENSE.txt : licence d'utilisation du module
ref/core/moduletree.txt · Dernière modification: 2017/01/19 14:54 (modification externe)