]> git.mxchange.org Git - mailer.git/blobdiff - inc/extensions/ext-birthday.php
Updated copyright year.
[mailer.git] / inc / extensions / ext-birthday.php
index 610dfb29d6adc12cf1af67e350eb09475070f5d4..59ab8f232adde21c978a6b0d6687fe888c03570d 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 - 2016 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 *
@@ -41,22 +41,24 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Version number
-setThisExtensionVersion('0.3.9');
+setThisExtensionVersion('0.4.1');
 
-// Version history array (add more with , '0.1.0' and so on)
-setExtensionVersionHistory(array('0.0', '0.1.0', '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'));
+// Version history array (add more with , '0.0.1' and so on)
+setExtensionVersionHistory(array('0.0.0', '0.1.0', '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.1'));
 
 switch (getExtensionMode()) {
-       case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
+       case 'setup': // Do stuff when installation is running
                // SQL commands to run
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD birthday_sent VARCHAR(10) NOT NULL DEFAULT 0");
+               addExtensionAddTableColumnSql('user_data', 'birthday_sent', 'VARCHAR(10) NOT NULL DEFAULT 0');
                break;
 
        case 'remove': // Do stuff when removing extension
                // SQL commands to run
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` DROP birthday_sent");
                addDropTableSql('user_birthday');
-               addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what`='config_birthday'");
+               addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what`='config_birthday' LIMIT 1");
+
+               // Unregister points data
+               unregisterExtensionPointsData('birthday_confirm');
                break;
 
        case 'activate': // Do stuff when admin activates this extension
@@ -77,16 +79,18 @@ switch (getExtensionMode()) {
                                break;
 
                        case '0.2.0': // SQL queries for v0.2
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `birthday_points` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
+                               addConfigAddSql('birthday_points', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0');
                                addDropTableSql('user_birthday');
-                               addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_user_birthday` (
+                               addCreateTableSql('user_birthday', "
 `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 `points` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 `chk_value` VARCHAR(255) NOT NULL DEFAULT '',
-KEY (`userid`),
-PRIMARY KEY (`id`)
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci");
+PRIMARY KEY (`id`),
+INDEX (`userid`)",
+                                       'Pending birthday codes');
+
+                               // Admin menu
                                addAdminMenuSql('setup','config_birthday','Geburtstagsmails','Stellen Sie hier ein, ob die Mitglieder {OPEN_CONFIG}POINTS{CLOSE_CONFIG} (nicht automatisch) gutgeschrieben kommen sollen oder nicht.', 9);
 
                                // Update notes (these will be set as task text!)
@@ -159,8 +163,7 @@ PRIMARY KEY (`id`)
                                break;
 
                        case '0.3.6': // SQL queries for v0.3.6
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD birthday_mode ENUM('DIRECT','REF') NOT NULL DEFAULT 'DIRECT'");
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD birthday_active ENUM('Y','N') NOT NULL DEFAULT 'N'");
+                               addConfigAddSql('birthday_active', "ENUM('Y','N') NOT NULL DEFAULT 'N'");
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Vergütungsmodus des Geburtstagsbonus einstellbar.");
@@ -177,14 +180,32 @@ PRIMARY KEY (`id`)
                                break;
 
                        case '0.3.9': // SQL queries for v0.3.9
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` CHANGE `birth_day` `birth_day` SMALLINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT '01',
-CHANGE `birth_month` `birth_month` SMALLINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT '01',
-CHANGE `birth_year` `birth_year` SMALLINT(4) UNSIGNED ZEROFILL NOT NULL DEFAULT 1970");
+                               addExtensionChangeTableColumnSql('user_data', 'birth_day', 'birth_day', 'SMALLINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 01');
+                               addExtensionChangeTableColumnSql('user_data', 'birth_month', 'birth_month', 'SMALLINT(2) UNSIGNED ZEROFILL NOT NULL DEFAULT 01');
+                               addExtensionChangeTableColumnSql('user_data', 'birth_year', 'birth_year', 'SMALLINT(4) UNSIGNED ZEROFILL NOT NULL DEFAULT 1970');
+
+                               // This update depends on ext-user
+                               addExtensionDependency('user');
 
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Datenbankspalten umgestellt auf SMALLINT() UNSIGNED ZEROFILL.");
                                break;
-               }
+
+                       case '0.4.0': // SQL queries for v0.4.0
+                               addConfigDropSql('birthday_mode');
+
+                               // Update notes (these will be set as task text!)
+                               setExtensionUpdateNotes("Dies brauchen wir nicht mehr.");
+                               break;
+
+                       case '0.4.1': // SQL queries for v0.4.1
+                               // Register points data
+                               registerExtensionPointsData('birthday_confirm', 'points', 'LOCKED', 'DIRECT');
+
+                               // Update notes (these will be set as task text!)
+                               setExtensionUpdateNotes("Eintrag in Tabelle <strong>{?_MYSQL_PREFIX?}_points_data</strong> hinzugef&uum;gt.");
+                               break;
+               } // END - switch
                break;
 
        case 'modify': // When the extension got modified
@@ -197,9 +218,9 @@ CHANGE `birth_year` `birth_year` SMALLINT(4) UNSIGNED ZEROFILL NOT NULL DEFAULT
                break;
 
        default: // Unknown extension mode
-               logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
+               reportBug(__FILE__, __LINE__, sprintf('Unknown extension mode %s in extension %s detected.', getExtensionMode(), getCurrentExtensionName()));
                break;
-}
+} // END - switch
 
 // [EOF]
 ?>