X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-payout.php;h=79b6600cf0ff4313de1a62d270e11621eb12081d;hp=c79b935663ff9fad7d0bcd2b3683b4ae89f1aaa3;hb=6d08952d672c5a5de7d8522f894a5665599a2a4a;hpb=c5a4b89497cf1430b387b43e0c7808ef6dac0acd diff --git a/inc/extensions/ext-payout.php b/inc/extensions/ext-payout.php index c79b935663..79b6600cf0 100644 --- a/inc/extensions/ext-payout.php +++ b/inc/extensions/ext-payout.php @@ -1,7 +1,7 @@ member_payout.tpl."; - break; - - case "0.1.9": // SQL queries for v0.1.9 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist."; - break; - - case "0.2.0": // SQL queries for v0.2.0 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "5 Nachkommastellen implementiert."; - break; +setThisExtensionVersion('0.3.8'); - case "0.2.1": // SQL queries for v0.2.1 - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_payouts CHANGE payout_total payout_total FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000"; - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_payout_types CHANGE rate rate FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000"; +// Version history array (add more with , '0.0.1' and so on) +setExtensionVersionHistory(array('0.0.0', '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', '0.3.1', '0.3.2', '0.3.3', '0.3.4', '0.3.5', '0.3.6', '0.3.7', '0.3.8')); - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Problem mit Speicherung der Einstellungen beseitigt."; +switch (getExtensionMode()) { + case 'setup': // Do stuff when installation is running + // SQL commands to run + addDropTableSql('user_payouts'); + addCreateTableSql('user_payouts', " +`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, +`userid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, +`payout_total` FLOAT(22,3) UNSIGNED NOT NULL DEFAULT 0.000, +`target_account` VARCHAR(255) NOT NULL DEFAULT '', +`target_bank` VARCHAR(255) NOT NULL DEFAULT '', +`payout_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, +`payout_timestamp` VARCHAR(10) NOT NULL DEFAULT 0, +`status` ENUM('NEW','ACCEPTED','REJECTED') NOT NULL DEFAULT 'NEW', +PRIMARY KEY (`id`), +INDEX (`userid`), +INDEX (`payout_id`)", + 'Done user payouts (and status)'); - case "0.2.2": // SQL queries for v0.2.2 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Buttons aus Aufgabenauflisten ausgelagert"; - break; - - case "0.2.3": // SQL queries for v0.2.3 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Menüpunkte im Gast-/Mitgliedsbereich können nicht mehr aufgerufen werden, wenn die Erweiterung deaktiviert ist."; - break; - - case "0.2.4": // SQL queries for v0.2.4 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Ausgabe der Auszahlungsmöglichkeiten im Mitgliedsbereich repariert."; - break; - - case "0.2.5": // SQL queries for v0.2.5 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Seit Patch 340 überflüssige HTML-Tags entfernt."; - break; - - case "0.2.6": // SQL queries for v0.2.6 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "IP-Nummer und Browserbezeichnung wird in Admin-Mails eingesetzt."; - break; - - case "0.2.7": // SQL queries for v0.2.7 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Link zum Mitgliedsprofil in Funktion ADMIN_USER_PROFILE_LINK() ausgelagert."; - break; - - case "0.2.8": // SQL queries for v0.2.8 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Work-Arount-Lösung zu temporären Problemen mit der Task-ID eingebaut."; - break; + addDropTableSql('payout_types'); + addCreateTableSql('payout_types', " +`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, +`type` VARCHAR(255) NOT NULL DEFAULT '', +`rate` FLOAT(22,3) UNSIGNED NOT NULL DEFAULT 0.000, +`min_points` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, +PRIMARY KEY (`id`)", + 'Payout types'); - case "0.2.9": // SQL queries for v0.2.9 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Nachricht an Admin bei Auszahlungsanfrage wird endlich versendet."; - break; + // Admin menu + addAdminMenuSql('setup','config_payouts','Auszahlungen','Auszahlungsarten einstellen, neu anlegen oder löschen.',15); + addAdminMenuSql('payouts','list_payouts','Anfragen auflisten','Listet alle Auszahlungsanfragen Ihrer Mitglieder auf.',16); - case "0.3.0": // SQL queries for v0.3.0 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "HTML-Code ausgelagert in Templates und SQL-Anweisungen abgesichert."; + // Member menu + addMemberMenuSql('main', 'payout', 'Auszahlungen', 11); break; - case "0.3.1": // SQL queries for v0.3.1 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Fehler in Auszahlungsfunktion beseitigt, wenn Umrechnungsrate ungleich 1 eingestellt ist."; + case 'remove': // Do stuff when removing extension + // SQL commands to run + addDropTableSql('user_payouts'); + addDropTableSql('payout_types'); + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='payouts'"); + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='payout'"); break; - case "0.3.2": // SQL queries for v0.3.2 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Abspeichern von Einstellungen repariert."; + 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`='payout' LIMIT 1"); break; - case "0.3.3": // SQL queries for v0.3.3 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Vorbereitung auf die neue Mediendaten v0.0.4."; + 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`='payout' LIMIT 1"); break; - case "0.3.4": // SQL queries for v0.3.4 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Anzahl zu überweisende {!POINTS!} müssen immer grösser 0 sein, ansonsten bricht das Script mit einer Fehlermeldung an das Mitglied ab."; + case 'update': // Update an extension break; - case "0.3.5": // SQL queries for v0.3.5 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Sicherheitsupdate für die Include-Befehle."; + case 'modify': // When the extension got modified break; - case "0.3.6": // SQL queries for v0.3.6 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Hash-Erstellung von md5() auf bessere Funktion generateHash() umgestellt."; + case 'test': // For testing purposes break; - case "0.3.7": // SQL queries for v0.3.7 - $SQLs[] = "UPDATE "._MYSQL_PREFIX."_admin_menu SET title = 'Auszahlungsmanagement' WHERE action = 'payouts' AND (what='' OR what IS NULL) LIMIT 1"; - - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Verwaltung nach Management umgestellt."; + case 'init': // Do stuff when extension is initialized break; - case "0.3.8": // SQL queries for v0.3.8 - // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Fehlerhinweis bei deaktivierter Erweiterung verbessert."; + default: // Unknown extension mode + reportBug(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName())); break; - } - break; - -default: // Do stuff when extension is loaded - break; -} +} // END - switch -// +// [EOF] ?>