[SPIP] +2.1.12
[velocampus/web/www.git] / www / plugins / auto / noiZetier / base / noizetier_installation.php
diff --git a/www/plugins/auto/noiZetier/base/noizetier_installation.php b/www/plugins/auto/noiZetier/base/noizetier_installation.php
new file mode 100644 (file)
index 0000000..58b5cc6
--- /dev/null
@@ -0,0 +1,72 @@
+<?php
+
+// Sécurité
+if (!defined("_ECRIRE_INC_VERSION")) return;
+
+include_spip('inc/meta');
+
+// Installation et mise à jour
+function noizetier_upgrade($nom_meta_version_base, $version_cible){
+
+       $version_actuelle = '0.0';
+       if (
+               (!isset($GLOBALS['meta'][$nom_meta_version_base]))
+               || (($version_actuelle = $GLOBALS['meta'][$nom_meta_version_base]) != $version_cible)
+       ){
+               
+               if (version_compare($version_actuelle,'0.0','=')) {
+                       // Création des tables
+                       include_spip('base/create');
+                       include_spip('base/abstract_sql');
+                       creer_base();
+                       
+                       // Installation d'une configuration par défaut
+                       
+                       echo _T('noizetier:installation_tables');
+                       ecrire_meta($nom_meta_version_base, $version_actuelle=$version_cible, 'non');
+               }
+               if (version_compare($version_actuelle,'0.2','<')) {
+                       // Ajout du champ 'contexte'
+                       include_spip('base/create');
+                       include_spip('base/abstract_sql');
+                       maj_tables('spip_noisettes');
+                       ecrire_meta($nom_meta_version_base, $version_actuelle='0.2', 'non');
+               }
+               if (version_compare($version_actuelle,'0.3','<')) {
+                       // Suppression du champ 'contexte' ... il n'aura pas tenu longtemps !
+                       include_spip('base/abstract_sql');
+                       sql_alter('TABLE spip_noisettes DROP COLUMN contexte');
+                       ecrire_meta($nom_meta_version_base, $version_actuelle='0.3', 'non');
+               }
+               if (version_compare($version_actuelle,'0.4','<')) {
+                       // Ajout du champ 'contexte'
+                       include_spip('base/create');
+                       include_spip('base/abstract_sql');
+                       maj_tables('spip_noisettes');
+                       ecrire_meta($nom_meta_version_base, $version_actuelle='0.4', 'non');
+               }
+               
+               ecrire_meta($nom_meta_version_base, $version_actuelle=$version_cible, 'non');
+       
+       }
+
+}
+
+// Désinstallation
+function noizetier_vider_tables($nom_meta_version_base){
+
+       include_spip('base/abstract_sql');
+       
+       // On efface les tables du plugin
+       sql_drop_table('spip_noisettes');
+       
+       // On efface la version enregistrée
+       effacer_meta($nom_meta_version_base);
+       
+       // On efface les compositions enregistrées
+       effacer_meta('noizetier_compositions');
+       
+
+}
+
+?>