]> git.mxchange.org Git - mailer.git/blobdiff - inc/extensions/ext-autopurge.php
AJAX installation is 'basicly finished' :) Plus I threw in a small christmas present...
[mailer.git] / inc / extensions / ext-autopurge.php
index 517afd2a52ba98308c98cd60d90334b71b59bd9b..ba1ff9d80186414134531b44fa2ec6e8e16c2fdc 100644 (file)
@@ -16,8 +16,8 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team                   *
+ * 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 *
@@ -51,20 +51,23 @@ setExtensionAlwaysActive('Y');
 
 switch (getExtensionMode()) {
        case 'register': // Do stuff when installation is running
-               // Add dependency to 'bonus'
+               // Add dependency to ext-bonus
                addExtensionDependency('bonus');
 
                // SQL commands to run
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_pool` CHANGE `data_type` `data_type` ENUM('TEMP','SEND','NEW','ADMIN','ACTIVE','DELETED') NOT NULL DEFAULT 'TEMP'");
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_bonus` CHANGE `data_type` `data_type` ENUM('NEW','QUEUE','SEND','DELETED') NOT NULL DEFAULT 'NEW'");
+               addExtensionChangeTableColumnSql('pool', 'data_type', 'data_type', "ENUM('TEMP','SEND','NEW','ADMIN','ACTIVE','DELETED') NOT NULL DEFAULT 'TEMP'");
+               addExtensionChangeTableColumnSql('bonus', 'data_type', 'data_type', "ENUM('NEW','QUEUE','SEND','DELETED') NOT NULL DEFAULT 'NEW'");
                break;
 
        case 'remove': // Do stuff when removing extension
                // SQL commands to run
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_pool` CHANGE `data_type` `data_type` ENUM('TEMP','SEND','NEW','ADMIN','ACTIVE') NOT NULL DEFAULT 'TEMP'");
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_bonus` CHANGE `data_type` `data_type` ENUM('NEW','QUEUE','SEND') NOT NULL DEFAULT 'NEW'");
+               addExtensionChangeTableColumnSql('pool', 'data_type', 'data_type', "ENUM('TEMP','SEND','NEW','ADMIN','ACTIVE') NOT NULL DEFAULT 'TEMP'");
+               addExtensionChangeTableColumnSql('bonus', 'data_type', 'data_type', "ENUM('NEW','QUEUE','SEND') NOT NULL DEFAULT 'NEW'");
                addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what` IN('config_autopurge','list_autopurge')");
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` DROP `ap_notified`");
+               addExtensionDropTableColumnSql('user_data', 'ap_notified');
+
+               // Unregister with points data
+               unregisterExtensionPointsData('autopurge_add');
                break;
 
        case 'activate': // Do stuff when admin activates this extension
@@ -79,7 +82,7 @@ switch (getExtensionMode()) {
 
        case 'update': // Update an extension
                switch (getCurrentExtensionVersion()) {
-                       case '0.1.0': // SQL queries for v0.1
+                       case '0.1.0': // SQL queries for v0.1.0
                                // Add dependency to 'user'
                                addExtensionDependency('user');
 
@@ -91,7 +94,7 @@ switch (getExtensionMode()) {
                                addConfigAddSql('ap_unconfirmed_time', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 432000');
                                addAdminMenuSql('setup', 'config_autopurge', 'Auto-Löschung', 'Automatisch inaktive oder nicht bestätigte Accounts löschen.', 12);
                                addAdminMenuSql('user', 'list_autopurge', 'Inaktive finden', 'Lassen Sie sich vor dem täglichen Reset anzeigen, welche Mitglieder als inaktiv erkannt werden und welche gelöscht werden.', 10);
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `ap_notified` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
+                               addExtensionAddTableColumnSql('user_data', 'ap_notified', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0');
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Automatisches Löschen von inaktiven bzw. nicht bestätigten Accounts hinzugefügt.");
@@ -230,7 +233,7 @@ switch (getExtensionMode()) {
 
                        case '0.3.6': // SQL queries for v0.3.6
                                // Update notes (these will be set as task text!)
-                               setExtensionUpdateNotes("Die Accounts der Standard-Referal-Id, der Bonus-Id, Bettellink-Id und der Verdoppler-Id werden nun nicht mehr gelöscht und tauchen auch unterhalb der Inaktiven-Liste nicht mehr auf.");
+                               setExtensionUpdateNotes("Die Accounts der Standard-Referral-Id, der Bonus-Id, Bettellink-Id und der Verdoppler-Id werden nun nicht mehr gelöscht und tauchen auch unterhalb der Inaktiven-Liste nicht mehr auf.");
                                break;
 
                        case '0.3.7': // SQL queries for v0.3.7
@@ -254,10 +257,8 @@ switch (getExtensionMode()) {
                                break;
 
                        case '0.4.1': // SQL queries for v0.4.1
-                               addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_points_data` (`subject`, `column_name`, `locked_mode`, `payment_method`) VALUES ('autopurge_add','points','LOCKED','DIRECT')");
-
-                               // This depends on ext-sql_patches
-                               addExtensionDependency('sql_patches');
+                               // Register with points data system
+                               registerExtensionPointsData('autopurge_add', 'points', 'LOCKED', 'DIRECT');
 
                                // Update notes
                                setExtensionUpdateNotes("R&uuml;ckschriften bei Auto-L&ouml;schungen werden nun &uuml;ber die Tabelle <strong>{OPEN_CONFIG}_MYSQL_PREFIX{CLOSE_CONFIG}_points_data</strong> verwaltet.");