Créer un module

Mise en place du ModuleSetup

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Dernière mise à jour : 26/11/2012 à 11h43
Dans la version 3.0, nous n'avions pas la possibilité de personnaliser l'installation et la désinstallation d'un module, outre le fait de travailler avec des fichiers SQL.

Dans la version 4.0, nous avons intégré un nouveau système qui permet d'aller bien plus loin : Le ModuleSetup.


Le fonctionnement



Il faut créer un fichier LeNomDeVotreModuleSetup.class.php qui contiendra une classe du même nom.

Cette classe est une classe fille de DefaultModuleSetup et devra contenir une fonction install() et uninstall().

Pour plus de clarté dans votre module, créez un dossier phpboost à sa racine et placez-y votre classe.

Exemple :

Code PHP :
<?php
class MonModuleSetup extends DefaultModuleSetup
{
    public function install()
    {
 
    }
 
    public function uninstall()
    {
 
    }
}
?>


A chaque installation, et à chaque désinstallation, se fichier sera appelé. C'est donc à l'intérieur des deux fonctions que vous allez exécuter les différentes tâches que vous souhaitez faire. Créer des tables, les supprimer, etc.


La mise à jour d'un module



Vous allez également pouvoir faire les mises à jour de votre module à travers ce fichier en rajoutant une fonction upgrade() :

Code PHP :
 
public function upgrade($installed_version)
{
    return null;
}


De cette manière, l'utilisateur qui mettra à jour le module à travers l'administration, ne perdra pas ses données en cas de changement au niveau des tables ou autres. C'est maintenant à vous de procéder à la conversion des différents éléments.

L'argument passé en paramètre renvoi le numéro de version installée sur le serveur de l'utilisateur. En valeur de retour, il faudra renvoyer le nouveau numéro de version. Si la fonction ne retourne rien ou est nulle, alors la page de mise à jour renverra une erreur à l'utilisateur.