Développement d'un programme de mise à jour : Différence entre versions

De OviWiki
Aller à : navigation, rechercher
m
m (Programme de mise à jour d'un module)
Ligne 8 : Ligne 8 :
 
== Programme de mise à jour d'un module ==
 
== Programme de mise à jour d'un module ==
  
le principe est identique pour les module, la fonction doit être dans le fichier init.php et s'appelle addon_upgrade($version_base,$version_ini) où addon est le nom du module.
+
Le principe est identique pour les modules, la fonction doit être dans le fichier init.php et s'appeller addon_upgrade($version_base,$version_ini) où addon est le nom du module.
 
+
  
 
== Outils à utiliser dans le programme de reprise ==
 
== Outils à utiliser dans le programme de reprise ==

Version du 29 août 2008 à 14:19

Programme de mise à jour du noyau

Lors de chaque mise à jour, la fonction ovidentia_upgrade($version_base,$version_ini) est appelée, il faut qu'elle renvoie TRUE pour que la mise à jour soit acceptée.

La fonction se trouve dans le fichier upgrade.php.


Programme de mise à jour d'un module

Le principe est identique pour les modules, la fonction doit être dans le fichier init.php et s'appeller addon_upgrade($version_base,$version_ini) où addon est le nom du module.

Outils à utiliser dans le programme de reprise

Paramètres

  • $version_base : le numéro de version stockée dans la base de données
  • $version_ini : le numéro de version stockée dans les fichiers (fichier ini)

lors de la mise à jour, le numéro de version $version_ini est généralement supérieur à $version_base

$babBody->addError($message)

Les messages d'erreur doivent être enregistrés avec la fonction $babBody->addError, il faut ensuite renvoyer FALSE pour que la mise à jour ne soit pas acceptée.

bab_isTable($table)

Teste l'existence d'une table.

bab_isTableField($table, $field)

Teste l'existence d'un champ de table.

bab_setUpgradeLogMsg($addon_name, $message, $uid = '')

Permet d'enregistrer un message personnalisé dans le log de mise à jour (table bab_upgrade_messages)

dans le cas du noyau $addon_name doit être renseigné avec la constante BAB_ADDON_CORE_NAME.

$uid est un identifiant unique optionnel en chaîne de caractère qui peut être renseigné pour identifier un message.

bab_getUpgradeLogMsg($addon_name, $uid)

Permet de récupérer un message enregistré au préalable avec la fonction bab_setUpgradeLogMsg.

Cette fonction permet de vérifier si une tâche à été effectuée ou non.