X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fextensions%2Fext-birthday.php;h=4cd81c3d5124f197e8e3d69ce44b98383676c86d;hb=cd7d344ea7007cfa20413acd3e03e50f0ab86d86;hp=d83aedbc72aad685e14c70c4f3d07992a9411f10;hpb=adb34cea9c14bcac14030f8eb1e6ae2c3231c962;p=mailer.git diff --git a/inc/extensions/ext-birthday.php b/inc/extensions/ext-birthday.php index d83aedbc72..4cd81c3d51 100644 --- a/inc/extensions/ext-birthday.php +++ b/inc/extensions/ext-birthday.php @@ -14,11 +14,10 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2013 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 * @@ -39,25 +38,27 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); -} +} // 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"); - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_user_birthday`"); - addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what`='config_birthday'"); + addDropTableSql('user_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 @@ -78,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"); - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_user_birthday`"); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_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) -) Type={?_TABLE_TYPE?}"); + addConfigAddSql('birthday_points', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); + addDropTableSql('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 '', +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!) @@ -160,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."); @@ -178,29 +180,47 @@ 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 {?_MYSQL_PREFIX?}_points_data hinzugef&uum;gt."); + break; + } // END - switch break; case 'modify': // When the extension got modified break; - case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305. + case 'test': // For testing purposes break; case 'init': // Do stuff when extension is initialized break; default: // Unknown extension mode - logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s detected.", getExtensionMode())); + reportBug(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName())); break; -} +} // END - switch // [EOF] ?>