]> git.mxchange.org Git - mailer.git/blobdiff - inc/extensions/ext-sql_patches.php
ADD UNIQUE ... what? INDEX now. And auto-unregistration of missing filter functions...
[mailer.git] / inc / extensions / ext-sql_patches.php
index e869cf090453ead4e726ee23871842dc6281a5dd..e9cb0920e9812fb0bf85d6723e89da44ea0d0340 100644 (file)
@@ -17,7 +17,7 @@
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
  * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
- * For more information visit: http://www.mxchange.org                  *
+ * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
@@ -41,17 +41,17 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Version number
-setThisExtensionVersion('0.8.4');
+setThisExtensionVersion('0.8.5');
 
 // Version history array (add more with , '0.0.1' and so on)
-setExtensionVersionHistory(array('0.0.0', '0.0.1', '0.0.2', '0.0.3', '0.0.4', '0.0.5', '0.0.6', '0.0.7', '0.0.8', '0.0.9', '0.1.0', '0.1.1', '0.1.2', '0.1.3', '0.1.4', '0.1.5', '0.1.6', '0.1.7', '0.1.8', '0.1.9', '0.2.0', '0.2.1', '0.2.2', '0.2.3', '0.2.4', '0.2.5', '0.2.6', '0.2.7', '0.2.8', '0.2.9', '0.3.0', '0.3.1', '0.3.2', '0.3.3', '0.3.4', '0.3.5', '0.3.6', '0.3.7', '0.3.8', '0.3.9', '0.4.0', '0.4.1', '0.4.2', '0.4.3', '0.4.4', '0.4.5', '0.4.6', '0.4.7', '0.4.8', '0.4.9', '0.5.0', '0.5.1', '0.5.2', '0.5.3', '0.5.4', '0.5.5', '0.5.6', '0.5.7', '0.5.8', '0.5.9', '0.6.0', '0.6.1', '0.6.2', '0.6.3', '0.6.4', '0.6.4', '0.6.5', '0.6.6', '0.6.7', '0.6.8', '0.6.9', '0.7.0', '0.7.1', '0.7.2', '0.7.3', '0.7.4', '0.7.5', '0.7.6', '0.7.7', '0.7.8', '0.7.9', '0.8.0', '0.8.1', '0.8.2', '0.8.3', '0.8.4'));
+setExtensionVersionHistory(array('0.0.0', '0.0.1', '0.0.2', '0.0.3', '0.0.4', '0.0.5', '0.0.6', '0.0.7', '0.0.8', '0.0.9', '0.1.0', '0.1.1', '0.1.2', '0.1.3', '0.1.4', '0.1.5', '0.1.6', '0.1.7', '0.1.8', '0.1.9', '0.2.0', '0.2.1', '0.2.2', '0.2.3', '0.2.4', '0.2.5', '0.2.6', '0.2.7', '0.2.8', '0.2.9', '0.3.0', '0.3.1', '0.3.2', '0.3.3', '0.3.4', '0.3.5', '0.3.6', '0.3.7', '0.3.8', '0.3.9', '0.4.0', '0.4.1', '0.4.2', '0.4.3', '0.4.4', '0.4.5', '0.4.6', '0.4.7', '0.4.8', '0.4.9', '0.5.0', '0.5.1', '0.5.2', '0.5.3', '0.5.4', '0.5.5', '0.5.6', '0.5.7', '0.5.8', '0.5.9', '0.6.0', '0.6.1', '0.6.2', '0.6.3', '0.6.4', '0.6.4', '0.6.5', '0.6.6', '0.6.7', '0.6.8', '0.6.9', '0.7.0', '0.7.1', '0.7.2', '0.7.3', '0.7.4', '0.7.5', '0.7.6', '0.7.7', '0.7.8', '0.7.9', '0.8.0', '0.8.1', '0.8.2', '0.8.3', '0.8.4', '0.8.5'));
 
 // Keep this extension always active!
 setExtensionAlwaysActive('Y');
 
 switch (getExtensionMode()) {
        case 'register': // Do stuff when installation is running
-               // This depends on 'cache' now
+               // This depends on ext-cache now
                addExtensionDependency('cache');
                break;
 
@@ -113,8 +113,7 @@ IN (
        case 'update': // Update an extension
                switch (getCurrentExtensionVersion()) {
                        case '0.0.1': // SQL queries for v0.0.1
-                               addConfigAddSql('ext_autopurge', "ENUM('Y','N') NOT NULL DEFAULT 'Y'");
-                               addAdminMenuSql('setup','config_extensions','Erweitungsmanagement','Alle Einstellungen am Erweiterungsmanagement.', 10);
+                               addAdminMenuSql('setup', 'config_extensions', 'Erweitungsmanagement', 'Alle Einstellungen am Erweiterungsmanagement.', 10);
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Es kann nun bestimmt werden, ob vom Server gelöschte ext-xxx.php erkannt werden sollen und die verknüpften Daten auch aus der Datenbank entfernt werden sollen.");
@@ -192,7 +191,7 @@ IN (
                                break;
 
                        case '0.1.2': // SQL queries for v0.1.2
-                               addAdminMenuSql('setup','config_refid','Standard-Ref-Id','Stellen Sie hier die Mitglieder-Id ein, die genommen werden soll, wenn der Gast n icht per Referal-Link Ihren {?mt_word?} aufgerufen hat.', 7);
+                               addAdminMenuSql('setup','config_refid','Standard-Ref-Id','Stellen Sie hier die Mitglied-Id ein, die genommen werden soll, wenn der Gast n icht per Referal-Link Ihren {?mt_word?} aufgerufen hat.', 7);
                                addConfigAddSql('def_refid', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0');
 
                                // Update notes (these will be set as task text!)
@@ -336,13 +335,13 @@ IN (
                                break;
 
                        case '0.3.1': // SQL queries for v0.3.1
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_extensions` ADD UNIQUE `ext_name` (`ext_name`)");
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admins` ADD UNIQUE `login` (`login`)");
+                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_extensions` ADD UNIQUE INDEX `ext_name` (`ext_name`)");
+                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admins` ADD UNIQUE INDEX `login` (`login`)");
                                addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_refbanner` ADD INDEX `visible` (`visible`)");
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_refdepths` ADD UNIQUE `level` (`level`)");
+                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_refdepths` ADD UNIQUE INDEX `level` (`level`)");
                                addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_refsystem` ADD INDEX `level` (`level`)");
                                addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_pool` ADD INDEX `data_type` (`data_type`)");
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_mod_reg` ADD UNIQUE `module` (`module`)");
+                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_mod_reg` ADD UNIQUE INDEX `module` (`module`)");
                                addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admin_menu` ADD INDEX `action` (`action`)");
                                addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admin_menu` ADD INDEX `what` (`what`)");
                                addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_task_system` ADD INDEX `task_type` (`task_type`)");
@@ -553,7 +552,7 @@ INDEX (`admin_id`)",
                        case '0.5.0': // SQL queries for v0.5.0
                                addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_refsystem` DROP INDEX `level`');
                                addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_refsystem` DROP INDEX `userid`');
-                               addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_refsystem` ADD UNIQUE `userid_level` (`userid`,`level`)');
+                               addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_refsystem` ADD UNIQUE INDEX `userid_level` (`userid`,`level`)');
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Referal-System unterstützt nun detailierte Referal-Übersicht und vieles mehr.");
@@ -623,7 +622,7 @@ INDEX (`admin_id`)",
 `filter_active` ENUM('N','Y') NOT NULL DEFAULT 'Y',
 `filter_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 PRIMARY KEY (`filter_id`),
-UNIQUE `name_function` (`filter_name` , `filter_function`)",
+UNIQUE INDEX `name_function` (`filter_name` , `filter_function`)",
                                        'Filter system');
 
                                // Admin menu
@@ -783,7 +782,7 @@ INDEX (`ip`)",
 
                        case '0.7.7': // SQL queries for v0.7.7
                                addMemberMenuSql('earn', NULL, 'Verdienen', 2);
-                               addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='earn', `sort`=1 WHERE `what`='unconfirmed' LIMIT 1");
+                               addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='earn',`sort`=1 WHERE `what`='unconfirmed' LIMIT 1");
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Men&uuml;punkt <strong>Verdienen</strong> hinzugef&uuml;gt und <strong>Unbest&auml;tigte Mails</strong> als ersten Punkt dort hin verschoben.");
@@ -810,12 +809,12 @@ INDEX (`ip`)",
 `locked_mode` ENUM('LOCKED','UNLOCKED') NOT NULL DEFAULT 'LOCKED',
 `payment_method` ENUM('DIRECT','REFERAL') NOT NULL DEFAULT 'REFERAL',
 `notify_recipient` ENUM('Y','N') NOT NULL DEFAULT 'N',
-PRIMARY KEY(`id`),
+PRIMARY KEY (`id`),
 INDEX (`subject`)",
                                        'Points account data');
 
                                // Admin menu
-                               addAdminMenuSql('setup','list_point_accounts','Guthabenkonten...','Veralten Sie hier bequem Einstellungen zu den Guthabenkonten.',5);
+                               addAdminMenuSql('setup', 'list_point_accounts', 'Guthabenkonten...', 'Veralten Sie hier bequem Einstellungen zu den Guthabenkonten.', 5);
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Tabelle <em>points_data</em> erzeugt, diese soll das {?POINTS?}-Guthaben komplett lenken.");
@@ -851,7 +850,6 @@ INDEX (`subject`)",
                                break;
 
                        case '0.8.4': // SQL queries for v0.8.4
-                               addDropTableSql('history');
                                addCreateTableSql('history', "
 `history_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `history_subject` VARCHAR(255) NOT NULL DEFAULT 'GENERIC',
@@ -870,6 +868,14 @@ INDEX (`history_last_used` DESC)",
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Allgemeine Historie-Tabelle hinzugef&uuml;gt.");
                                break;
+
+                       case '0.8.5': // SQL queries for v0.8.5
+                               // Old-lost configuration entry
+                               addConfigDropSql('ext_autopurge');
+
+                               // Update notes (these will be set as task text!)
+                               setExtensionUpdateNotes("Uralten Konfigurationseintrag entfernt.");
+                               break;
                } // END - switch
                break;
 
@@ -880,6 +886,12 @@ INDEX (`history_last_used` DESC)",
                break;
 
        case 'init': // Do stuff when extension is initialized
+               // Transfer POINTS word
+               if (isExtensionInstalledAndNewer('sql_patches', '0.0.3')) {
+                       // Okay, recent enough, so transfer the word for POINTS
+                       setConfigEntry('POINTS', getPointsWord());
+               } // END - if
+
                // Init key
                setConfigEntry('secret_key', '');
 
@@ -904,11 +916,6 @@ INDEX (`history_last_used` DESC)",
                                debug_report_bug(__FILE__, __LINE__, 'Cannot read secret file! Please try to reload.');
                        }
                } // END - if
-
-               // Transfer words/numbers to constants if config entry is found
-               if (isExtensionInstalledAndNewer('sql_patches', '0.0.3')) {
-                       setConfigEntry('POINTS', getPointsWord());
-               } // END - if
                break;
 
        default: // Unknown extension mode