X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-transfer.php;h=a1f480f7e1aed84e88cec3b102e797d60a4e2f79;hp=1cba7f6b890e7b2738bb866ee2a49d5a4e8454c0;hb=1d22c70e65e858422ee0d17a7612f4b5c0757a42;hpb=9725980ca9c052e5c1a9edb8b815e8506b876448 diff --git a/inc/extensions/ext-transfer.php b/inc/extensions/ext-transfer.php index 1cba7f6b89..a1f480f7e1 100644 --- a/inc/extensions/ext-transfer.php +++ b/inc/extensions/ext-transfer.php @@ -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 * @@ -41,19 +41,16 @@ if (!defined('__SECURITY')) { } // END - if // Version number -setThisExtensionVersion('0.2.9'); +setThisExtensionVersion('0.3.0'); -// Version history array (add more with , '0.1.0' and so on) -setExtensionVersionHistory(array('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')); +// 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')); switch (getExtensionMode()) { case 'register': // Do stuff when installation is running - // SQL commands to run - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_user_transfers_in`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_user_transfers_out`'); - // Transfer from a member - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_user_transfers_in` ( + addDropTableSql('user_transfers_in'); + addCreateTableSql('user_transfers_in', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `from_userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -61,13 +58,14 @@ switch (getExtensionMode()) { `reason` VARCHAR(255) NOT NULL DEFAULT '', `time_trans` VARCHAR(14) NOT NULL DEFAULT 0, `trans_id` VARCHAR(12) NOT NULL DEFAULT '', -KEY (`userid`), -KEY (`from_userid`), -PRIMARY KEY (`id`) -) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); +PRIMARY KEY (`id`), +INDEX (`userid`), +INDEX (`from_userid`)", + 'Ingoing points transfers'); // Transfers to a member - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_user_transfers_out` ( + addDropTableSql('user_transfers_out'); + addCreateTableSql('user_transfers_out', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `to_userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -75,10 +73,10 @@ PRIMARY KEY (`id`) `reason` VARCHAR(255) NOT NULL DEFAULT '', `time_trans` VARCHAR(14) NOT NULL DEFAULT 0, `trans_id` VARCHAR(12) NOT NULL DEFAULT '', -KEY (`userid`), -KEY (`to_userid`), -PRIMARY KEY (`id`) -) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); +PRIMARY KEY (`id`), +INDEX (`userid`), +INDEX (`to_userid`)", + 'Outgoing points transfers'); // Admin menu addAdminMenuSql('transfer', NULL, '{OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Transfer','Verwalten Sie hier die {OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Transaktionen zwischen Ihren Mitgliedern.', 7); @@ -87,36 +85,39 @@ PRIMARY KEY (`id`) addAdminMenuSql('transfer','del_transfer','Manuell löschen','Hier können Sie - abgesehen von der automatischen Löschung - Transaktionen selber löschen. Bitte beachten Sie, dass immer aus- und eingehende Transaktionen gleichzeitig gelöscht werden.', 3); // Member menu - addMemberMenuSql('main','transfer','{OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Transfer','N','Y', 5); + addMemberMenuSql('extras', 'transfer', '{OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Transfer', 5); // Add config values - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `transfer_max` BIGINT(20) UNSIGNED NOT NULL DEFAULT 50"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `transfer_age` BIGINT(20) UNSIGNED NOT NULL DEFAULT ".(getOneDay()*28)); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `transfer_timeout` BIGINT(20) UNSIGNED NOT NULL DEFAULT {?ONE_DAY?}"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `transfer_balance` BIGINT(20) UNSIGNED NOT NULL DEFAULT 100"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `transfer_code` BIGINT(20) UNSIGNED NOT NULL DEFAULT 5"); + addConfigAddSql('transfer_max', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 50'); + addConfigAddSql('transfer_age', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT ' . (getOneDay() * 28)); + addConfigAddSql('transfer_timeout', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT {?ONE_DAY?}'); + addConfigAddSql('transfer_balance', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 100'); + addConfigAddSql('transfer_code', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 5'); // Add row(s) to user's data - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD opt_in ENUM('Y','N') NOT NULL DEFAULT 'N'"); + addExtensionAddTableColumnSql('user_data', 'opt_in', "ENUM('Y','N') NOT NULL DEFAULT 'N'"); break; case 'remove': // Do stuff when removing extension // SQL commands to run - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_user_transfers_in`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_user_transfers_out`'); + addDropTableSql('user_transfers_in'); + addDropTableSql('user_transfers_out'); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='transfer'"); - addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='transfer'"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` DROP `opt_in`"); + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='transfer' LIMIT 1"); + addExtensionDropTableColumnSql('user_data', 'opt_in'); + + // Unregister points data + unregisterExtensionPointsData('transfer'); break; case 'activate': // Do stuff when admin activates this extension // SQL commands to run - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y', `locked`='N' WHERE `what`='transfer' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y',`locked`='N' WHERE `what`='transfer' LIMIT 1"); break; case 'deactivate': // Do stuff when admin deactivates this extension // SQL commands to run - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y', `locked`='N' WHERE `what`='transfer' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y',`locked`='N' WHERE `what`='transfer' LIMIT 1"); break; case 'update': // Update an extension @@ -137,10 +138,10 @@ PRIMARY KEY (`id`) break; case '0.0.5': // SQL queries for v0.0.5 - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD ap_transfer ENUM('Y','N') NOT NULL DEFAULT 'Y'"); + addConfigAddSql('ap_transfer', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Link Auflisten im Admin-Bereich hatte das eingeloggte Mitglied und nicht den eingeloggten Admin abgefragt. Automatisches Löschen von veraltete Einträgen kann unabhängig von der autopurge-Erweiterung de-/aktiviert werden. Bitte aktualisieren Sie auch die beiden Admin-Templates!"); + setExtensionUpdateNotes("Link Auflisten im Admin-Bereich hatte das eingeloggte Mitglied und nicht den eingeloggten Admin abgefragt. Automatisches Löschen von veraltete Einträgen kann unabhängig von der autopurge-Erweiterung de-/aktiviert werden. Bitte aktualisieren Sie auch die beiden Admin-Templates!"); break; case '0.0.6': // SQL queries for v0.0.6 @@ -233,9 +234,6 @@ PRIMARY KEY (`id`) addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_admin_menu_las` (`la_id`, `la_action`, `la_what`) VALUES ('member', '', 'del_transfer')"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_admin_menu_las` (`la_id`, `la_action`, `la_what`) VALUES ('config', '', 'config_transfer')"); - // Depends on sql_patches (or you have to execute these both SQL statements by phpMyAdmin - addExtensionDependency('sql_patches'); - // Update notes (these will be set as task text!) setExtensionUpdateNotes("Erweiterung in's neue Menüsystem integriert."); break; @@ -246,10 +244,10 @@ PRIMARY KEY (`id`) break; case '0.2.5': // SQL queries for v0.2.5 - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='extras', `sort`=5 WHERE `what`='transfer' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='extras',`sort`=5 WHERE `what`='transfer' LIMIT 1"); // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Mitgliedsmenü komplett geändert."); + setExtensionUpdateNotes("Eintrag im Mitgliedsmenü verschoben."); break; case '0.2.6': // SQL queries for v0.2.6 @@ -259,19 +257,27 @@ PRIMARY KEY (`id`) case '0.2.7': // SQL queries for v0.2.7 // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Die {?POINTS?} können nun wieder wie gewohnt transferiert werden. Der Grund für {--TRANSFER_INVALID_PASSWORD--} war, dass der Cookie-Hash ein anderer ist, als der in der Datenbank... :-/"); + setExtensionUpdateNotes("Die {?POINTS?} können nun wieder wie gewohnt transferiert werden. Der Grund für {--MEMBER_TRANSFER_INVALID_PASSWORD--} war, dass der Cookie-Hash ein anderer ist, als der in der Datenbank... :-/"); break; case '0.2.8': // SQL queries for v0.2.8 // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Fehlermeldung Notice: Undefined index: to_userid in {?PATH?}/inc/modules/member/what-transfer.php on line 301 gefixt. Danke an Piter01."); + setExtensionUpdateNotes("Fehlermeldung Notice: Undefined index: to_userid in {?PATH?}/inc/modules/member/what-transfer.php on line 301 gefixt. Danke an Piter01."); break; case '0.2.9': // SQL queries for v0.2.9 // Update notes (these will be set as task text!) setExtensionUpdateNotes("Fehlerhinweis bei deaktivierter Erweiterung verbessert."); break; - } + + case '0.3.0': // SQL queries for v0.3.0 + // Register points data + registerExtensionPointsData('transfer', 'points', 'LOCKED', 'DIRECT'); + + // Update notes + setExtensionUpdateNotes("Ünerweisungen anderer Mitglieder werden nun über die Tabelle {OPEN_CONFIG}_MYSQL_PREFIX{CLOSE_CONFIG}_points_data verwaltet."); + break; + } // END - switch break; case 'modify': // When the extension got modified @@ -290,7 +296,7 @@ PRIMARY KEY (`id`) default: // Unknown extension mode logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName())); break; -} +} // END - switch // [EOF] ?>