Introduced wrapper function addCreateTableSql(), fixed parameter order:
[mailer.git] / inc / extensions / ext-doubler.php
index 0936e8a12d314d2fa5c4a78a88e906112ba62fd3..43a732d7293c45a4ac34373cfefc49ba70150141 100644 (file)
@@ -50,7 +50,7 @@ switch (getExtensionMode()) {
        case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
                // Doubler table
                addDropTableSql('doubler');
-               addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_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,
@@ -62,42 +62,42 @@ switch (getExtensionMode()) {
 KEY (`refid`),
 KEY (`userid`),
 PRIMARY KEY (`id`)
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci");
+) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'User doubler data'");
 
                //
                // --- SETTINGS ---
                //
                // Minimum points to double
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_min FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000");
+               addConfigAddSql('doubler_min', "FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000");
                // Maximum points to double
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_max FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 10000.00000");
+               addConfigAddSql('doubler_max', "FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 10000.00000");
                // Points left on users account after doubling
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_left BIGINT(20) UNSIGNED NOT NULL DEFAULT 1000");
+               addConfigAddSql('doubler_left', "BIGINT(20) UNSIGNED NOT NULL DEFAULT 1000");
                // Charge for doubling points which goes to the webmaster (shreddered in fact!)
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_charge FLOAT(7,5) UNSIGNED NOT NULL DEFAULT 0.03000");
+               addConfigAddSql('doubler_charge', "FLOAT(7,5) UNSIGNED NOT NULL DEFAULT 0.03000");
                // Referal percents
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_ref FLOAT(7,5) UNSIGNED NOT NULL DEFAULT 0.02000");
+               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)
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_jackpot ENUM('Y','N') NOT NULL DEFAULT 'Y'");
+               addConfigAddSql('doubler_jackpot', "ENUM('Y','N') NOT NULL DEFAULT 'Y'");
                // A user account to take points from (default: 0->none)
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_userid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
+               addConfigAddSql('doubler_userid', "BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
                // Total payed out points from your doublers
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_points FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000");
+               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!
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_send_mode ENUM('DIRECT','RESET') NOT NULL DEFAULT 'DIRECT'");
+               addConfigAddSql('doubler_send_mode', "ENUM('DIRECT','RESET') NOT NULL DEFAULT 'DIRECT'");
                // Timeout for entries to be purged (default: one week)
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `doubler_timeout` BIGINT(20) UNSIGNED NOT NULL DEFAULT ".(getOneDay()*7)."");
+               addConfigAddSql('doubler_timeout', "BIGINT(20) UNSIGNED NOT NULL DEFAULT ".(getOneDay()*7)."");
                // Number of newest entries to display
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `doubler_display_new` TINYINT(3) UNSIGNED NOT NULL DEFAULT 10");
+               addConfigAddSql('doubler_display_new', "TINYINT(3) UNSIGNED NOT NULL DEFAULT 10");
                // Number of entries which will be payed out soon
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `doubler_display_pay` TINYINT(3) UNSIGNED NOT NULL DEFAULT 10");
+               addConfigAddSql('doubler_display_pay', "TINYINT(3) UNSIGNED NOT NULL DEFAULT 10");
                // Number of entries which are already payed out
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `doubler_display_old` TINYINT(3) UNSIGNED NOT NULL DEFAULT 10");
+               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
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `doubler_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
+               addConfigAddSql('doubler_counter', "BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
 
                //
                // --- MENU SYSTEMS ---
@@ -145,7 +145,7 @@ PRIMARY KEY (`id`)
 
                        case '0.0.2': // SQL queries for v0.0.2
                                // Total used points
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_used FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000");
+                               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.");
@@ -158,7 +158,7 @@ PRIMARY KEY (`id`)
 
                        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)
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_own ENUM('Y','N') NOT NULL 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.");
@@ -170,9 +170,9 @@ PRIMARY KEY (`id`)
                                        break;
 
                                case '0.0.6': // SQL queries for v0.0.6
-                                       addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_max_sent TINYINT(3) UNSIGNED NOT NULL DEFAULT 1");
-                                       addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_group_sent TINYINT(3) UNSIGNED NOT NULL DEFAULT 1");
-                                       addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD doubler_sent_all ENUM('Y','N') NOT NULL DEFAULT 'Y'");
+                                       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&uuml;hrenabzug wird beim Einzahlen abgezogen (wurde von Auszahlung abgezogen) und maximal bei Auszahlung zu kontrollierende Accounts einstellbar.<br />Template <u>admin_config_doubler_pro.tpl</u> ist &uuml;berfl&uuml;ssig geworden. Bitte l&ouml;schen Sie dies!");