X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-doubler.php;h=7fb46edd0325df8b82055f8c65bbfa7582cac5e2;hp=e411c5432179c9213cca06d236638b9b26826335;hb=15e0995f7a4a4b2c9b1b1a9273f785cf13605829;hpb=3f7f0051c91c54cb691303b9d49fb9cd1a7a4e8c diff --git a/inc/extensions/ext-doubler.php b/inc/extensions/ext-doubler.php index e411c54321..7fb46edd03 100644 --- a/inc/extensions/ext-doubler.php +++ b/inc/extensions/ext-doubler.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 - 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 * @@ -41,77 +41,13 @@ if (!defined('__SECURITY')) { } // END - if // Version number -setThisExtensionVersion('0.1.7'); +setThisExtensionVersion('0.2.0'); // 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')); +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')); switch (getExtensionMode()) { - case 'register': // Do stuff when installation is running - // Doubler table - addDropTableSql('doubler'); - addCreateTableSql('doubler', " -`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, -`userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, -`refid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, -`points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000, -`remote_ip` VARCHAR(15) NOT NULL DEFAULT '0.0.0.0', -`timemark` BIGINT(10) NOT NULL DEFAULT 0, -`completed` ENUM('Y','N') NOT NULL DEFAULT 'N', -`is_ref` ENUM('Y','N') NOT NULL DEFAULT 'N', -PRIMARY KEY (`id`), -INDEX (`refid`), -INDEX (`userid`)", - 'User doubler data'); - - // - // --- SETTINGS --- - // - // Minimum points to double - addConfigAddSql('doubler_min', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000'); - // Maximum points to double - addConfigAddSql('doubler_max', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 10000.00000'); - // Points left on users account after doubling - addConfigAddSql('doubler_left', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 1000'); - // Charge for doubling points which goes to the webmaster (shreddered in fact!) - addConfigAddSql('doubler_charge', 'FLOAT(7,5) UNSIGNED NOT NULL DEFAULT 0.03000'); - // Referal percents - addConfigAddSql('doubler_ref', 'FLOAT(7,5) UNSIGNED NOT NULL DEFAULT 0.02000'); - // Shall I use the jackpot to take points from? (Y/N, default=Y) - addConfigAddSql('doubler_jackpot', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); - // A user account to take points from (default: 0->none) - addConfigAddSql('doubler_userid', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); - // Total payed out points from your doublers - addConfigAddSql('doubler_points', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000'); - // Sending mode of mails (immediately/daily reset) - // --> This also means who fast the doubled points will be payed out! - addConfigAddSql('doubler_send_mode', "ENUM('DIRECT','RESET') NOT NULL DEFAULT 'DIRECT'"); - // Timeout for entries to be purged (default: one week) - addConfigAddSql('doubler_timeout', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT ' . (getOneDay() * 7)); - // Number of newest entries to display - addConfigAddSql('doubler_display_new', 'TINYINT(3) UNSIGNED NOT NULL DEFAULT 10'); - // Number of entries which will be payed out soon - addConfigAddSql('doubler_display_pay', 'TINYINT(3) UNSIGNED NOT NULL DEFAULT 10'); - // Number of entries which are already payed out - addConfigAddSql('doubler_display_old', 'TINYINT(3) UNSIGNED NOT NULL DEFAULT 10'); - // Points used by every member - addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `doubler_points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000'); - // Counter for usage of the doubler - addConfigAddSql('doubler_counter', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); - - // - // --- MENU SYSTEMS --- - // - // Admin menu - addAdminMenuSql('doubler', NULL, '{OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Verdoppler','Einstellungen und Einträge auflisten.', 4); - addAdminMenuSql('doubler','list_doubler','Auflisten','Einträge aus der Verdiensttabelle auflisten', 1); - addAdminMenuSql('doubler','config_doubler','Einstellungen','Prozentuale Gebühr usw. einstellen.', 2); - - // Guest menu (informations / default doubler link) - addGuestMenuSql('main', 'doubler', 'Verdoppeln!', 3); - - // Member menu - addMemberMenuSql('main', 'doubler', 'Verdoppeln!', 7); + case 'setup': // Do stuff when installation is running break; case 'remove': // Do stuff when removing extension @@ -120,124 +56,34 @@ INDEX (`userid`)", addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='doubler'"); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `what`='doubler' LIMIT 1"); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='doubler' LIMIT 1"); + + // Unregister points data + unregisterExtensionPointsData('doubler_direct'); + unregisterExtensionPointsData('doubler_reset'); + + // Unregister filters + unregisterFilter(__FILE__, __LINE__, 'config_userid_exclusion_sql', 'EXLCUDE_DOUBLER_USERID', TRUE, isExtensionDryRun()); + + // Unregister subject lines + unregisterExtensionPointsData('doubler_direct'); + unregisterExtensionPointsData('doubler_reset'); 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`='doubler' LIMIT 1"); - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='Y', `locked`='N' WHERE `what`='doubler' LIMIT 1"); - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='N', `hidden`='N', `admin_only`='N', `mem_only`='N' WHERE `module`='doubler' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y',`locked`='N' WHERE `what`='doubler' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='Y',`locked`='N' WHERE `what`='doubler' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='N',`hidden`='N',`admin_only`='N',`mem_only`='N' WHERE `module`='doubler' LIMIT 1"); break; case 'deactivate': // Do stuff when admin deactivates this extension // SQL commands to run - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='N', `locked`='Y' WHERE `what`='doubler' LIMIT 1"); - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='N', `locked`='Y' WHERE `what`='doubler' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='N',`locked`='Y' WHERE `what`='doubler' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='N',`locked`='Y' WHERE `what`='doubler' LIMIT 1"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='Y' WHERE `module`='doubler' LIMIT 1"); break; case 'update': // Update an extension - switch (getCurrentExtensionVersion()) { - case '0.0.1': // SQL queries for v0.0.1 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Problem mit Mitglieder-Id behoben."); - break; - - case '0.0.2': // SQL queries for v0.0.2 - // Total used points - addConfigAddSql('doubler_user', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000'); - - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Gebühr wird vom Verdoppler-Pott abgezogen."); - break; - - case '0.0.3': // SQL queries for v0.0.3 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Drei SQL-Fehler beseitigt."); - break; - - case '0.0.4': // SQL queries for v0.0.4 - // Shall I use the doubler's account to take points from? (Y/N, default=Y) - addConfigAddSql('doubler_own', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); - - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("{?POINTS?}-Guthaben des Verdopplers kann optional nicht mit einbezogen werden."); - break; - - case '0.0.5': // SQL queries for v0.0.5 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Counter-Stand und noch zum Verdoppeln übrige {?POINTS?} in Templates eingebunden. Auflistung in Admin-Bereich komplettiert."); - break; - - case '0.0.6': // SQL queries for v0.0.6 - addConfigAddSql('doubler_max_sent', 'TINYINT(3) UNSIGNED NOT NULL DEFAULT 1'); - addConfigAddSql('doubler_group_sent', 'TINYINT(3) UNSIGNED NOT NULL DEFAULT 1'); - addConfigAddSql('doubler_sent_all', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); - - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Gebührenabzug wird beim Einzahlen abgezogen (wurde von Auszahlung abgezogen) und maximal bei Auszahlung zu kontrollierende Accounts einstellbar.
Template admin_config_doubler_pro.tpl ist überflüssig geworden. Bitte löschen Sie dies!"); - break; - - case '0.0.7': // SQL queries for v0.0.7 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Wörter {?mt_word?}, {?mt_word2?} und {?mt_word3?} sind austauschbar.

Minus-Guthaben des Verdoppler-Accounts repariert und Mitgliedsmail erweitert mit Transaktionsummer und IP-Nummer."); - break; - - case '0.0.8': // SQL queries for v0.0.8 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Bitte verschieben Sie die doubler-Templates (Ordner: {?PATH?}/templates/".getLanguage()."/html/) in den neuen Order doubler!"); - break; - - case '0.0.9': // SQL queries for v0.0.9 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Abspeichern von Einstellungen repariert."); - break; - - case '0.1.0': // SQL queries for v0.2.1 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Vorbereitung auf die neue Mediendaten v0.0.4."); - break; - - case '0.1.1': // SQL queries for v0.1.1 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Zwei SQL-Fehler in inc/doubler_send.php beseitigt."); - break; - - case '0.1.2': // SQL queries for v0.1.2 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Sicherheitsupdate für die Include-Befehle."); - break; - - case '0.1.3': // SQL queries for v0.1.3 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("De-/Aktivieren des mit dieser Erweiterung verknüpften Modules eingebunden."); - break; - - case '0.1.4': // SQL queries for v0.1.4 - addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `action`='extras', `sort`=4 WHERE `what`='doubler' LIMIT 1"); - - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Mitgliedsmenü komplett umgebaut."); - break; - - case '0.1.5': // SQL queries for v0.1.5 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Hash-Erstellung von md5() auf bessere Funktion generateHash() umgestellt."); - break; - - case '0.1.6': // SQL queries for v0.1.6 - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Fehlerhinweis bei deaktivierter Erweiterung verbessert."); - break; - - case '0.1.7': // SQL queries for v0.1.7 - addExtensionSql('UPDATE `{?_MYSQL_PREFIX?}_config` SET `doubler_charge`=`doubler_charge`*100 WHERE `config`=0 LIMIT 1'); - addExtensionSql('UPDATE `{?_MYSQL_PREFIX?}_config` SET `doubler_ref`=`doubler_ref`*100 WHERE `config`=0 LIMIT 1'); - - // Update notes (these will be set as task text!) - setExtensionUpdateNotes("Fehlerhinweis bei deaktivierter Erweiterung verbessert."); - break; - } // END - switch break; case 'modify': // When the extension got modified @@ -250,7 +96,7 @@ INDEX (`userid`)", 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