X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-rallye.php;h=54c4d84c4d627985a2548eb756e49149b726fcf1;hp=f563aa4936f1dcf702f353cada99e6b4dbafcb09;hb=e5dffd4249c97200cbad02f3f4eaf5c373fdb89a;hpb=5bdeaf8b452206598b6c6cd4f941145b11a0eccc
diff --git a/inc/extensions/ext-rallye.php b/inc/extensions/ext-rallye.php
index f563aa4936..54c4d84c4d 100644
--- a/inc/extensions/ext-rallye.php
+++ b/inc/extensions/ext-rallye.php
@@ -1,19 +1,23 @@
user connection table');
- // Remove menus
- $SQLs[] = "DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE action='rallye' LIMIT 4";
- $SQLs[] = "DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_guest_menu` WHERE what='rallyes' LIMIT 1";
- $SQLs[] = "DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_member_menu` WHERE what='rallyes' LIMIT 1";
+ // Admin menu
+ addAdminMenuSql('rallye', NULL, 'Rallye-Management','Richten Sie neue Ref-Rallyes ein, die zeitgesteuert anfangen und aufhöhren. Dabei wird alles weitere automatisch geregelt.',9);
+ addAdminMenuSql('rallye','add_rallye','Neue Rallye hinzufügen','Neue Ref-Rallye hinzufügen.',1);
+ addAdminMenuSql('rallye','list_rallye_prices','Preise einrichten','Richten Sie Preise zu den Rallyes ein.',2);
+ addAdminMenuSql('rallye','list_rallyes','Rallyes verwalten','Alle bestehenden Ref-Rallyes auflisten, bearbeiten, stoppen, löschen usw.',3);
- // Unregister filter
- UNREGISTER_FILTER('extra_autopurge', 'RALLYE_EXTRA_AUTOPURGE', true, $dry_run);
- break;
+ // Guest menu
+ addGuestMenuSql('main', 'rallyes', 'Ref-Rallyes', 9);
-case "activate": // Do stuff when admin activates this extension
- // SQL commands to run
- $SQLs[] = "UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET `visible`='Y', `locked`='N' WHERE what='rallyes' LIMIT 1";
- $SQLs[] = "UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `visible`='Y', `locked`='N' WHERE what='rallyes' LIMIT 1";
- break;
-
-case "deactivate": // Do stuff when admin deactivates this extension
- // SQL commands to run
- $SQLs[] = "UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET `visible`='N', `locked`='Y' WHERE what='rallyes' LIMIT 1";
- $SQLs[] = "UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `visible`='N', `locked`='Y' WHERE what='rallyes' LIMIT 1";
- break;
-
-case "update": // Update an extension
- switch ($EXT_VER)
- {
- case "0.0.1": // SQL queries for v0.0.1
- $SQLs[] = "ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_data` ADD expired ENUM('Y','N') NOT NULL DEFAULT 'N'";
-
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Ablaufen der Rallyes intergriert.";
+ // Member menu
+ addMemberMenuSql('main', 'rallyes', 'Ref-Rallyes', 9);
break;
- case "0.0.2": // SQL queries for v0.0.2
- $SQLs[] = "ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_users` ADD curr_points FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000";
+ case 'remove': // Do stuff when removing extension
+ // Drop tables
+ addDropTableSql('rallye_data');
+ addDropTableSql('rallye_prices');
+ addDropTableSql('rallye_users');
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Aktueller {!POINTS!}-Stand wird beachtet.";
- break;
-
- case "0.0.6": // SQL queries for v0.0.6
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Fehler Unknown column 'd.useid' in 'on clause' behoben.";
- break;
-
- case "0.0.7": // SQL queries for v0.0.7
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Fehlende Abfrage im Mitlieder-Modul, on Erweiterung auch aktiviert ist.";
- break;
-
- case "0.0.8": // SQL queries for v0.0.8
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Fehler Template nicht gefunden behoben und Admin-Formulare ausgelagert";
- break;
-
- case "0.0.9": // SQL queries for v0.0.9
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist. Und der vorherige Fehler Template nicht gefunden ist endlich beseitigt.";
- break;
+ // Remove menus
+ addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='rallye'");
+ addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `what`='rallyes' LIMIT 1");
+ addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='rallyes' LIMIT 1");
- case "0.1.0": // SQL queries for v0.2.1
- $SQLs[] = "ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_users` CHANGE curr_points curr_points FLOAT(23,5) UNSIGNED NOT NULL DEFAULT 0.00000";
+ // Remove points_data entry
+ unregisterExtensionPointsData('rallye_winner');
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "5 Nachkommastellen implementiert.";
+ // Unregister filter
+ unregisterFilter(__FILE__, __LINE__, 'extra_autopurge', 'RALLYE_EXTRA_AUTOPURGE', TRUE, isExtensionDryRun());
+ unregisterFilter(__FILE__, __LINE__, 'init', 'RALLYE_NOTIFY_USERS', TRUE, isExtensionDryRun());
+ unregisterFilter(__FILE__, __LINE__, 'add_rallye_notify_sqls', 'ADD_RALLYE_SQL_COLUMNS', TRUE, isExtensionDryRun());
break;
- case "0.1.1": // SQL queries for v0.1.1
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist.";
+ case 'activate': // Do stuff when admin activates this extension
+ // SQL commands to run
+ addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='Y',`locked`='N' WHERE `what`='rallyes' LIMIT 1");
+ addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y',`locked`='N' WHERE `what`='rallyes' LIMIT 1");
break;
- case "0.1.2": // SQL queries for v0.1.2
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Problem mit Speicherung der Einstellungen beseitigt.";
+ case 'deactivate': // Do stuff when admin deactivates this extension
+ // SQL commands to run
+ addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_guest_menu` SET `visible`='N',`locked`='Y' WHERE `what`='rallyes' LIMIT 1");
+ addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='N',`locked`='Y' WHERE `what`='rallyes' LIMIT 1");
break;
- case "0.1.3": // SQL queries for v0.1.3
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Anzeigefehler im Gast-/Mitgliedsbereich behoben.";
+ case 'update': // Update an extension
break;
- case "0.1.4": // SQL queries for v0.1.4
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Admin-Mails korregiert.";
+ case 'modify': // When the extension got modified
break;
- case "0.1.5": // SQL queries for v0.1.5
- // 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.";
+ case 'test': // For testing purposes
break;
- case "0.1.6": // SQL queries for v0.1.6
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Seit Patch 340 überflüssige HTML-Tags entfernt.";
+ case 'init': // Do stuff when extension is initialized
break;
- case "0.1.7": // SQL queries for v0.1.7
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Aktivierte bzw. abgelaufene Rallyes werden nur ausserhalb des CSS-Modus geladen (wenn also nicht css.php aufgerufen wurde)";
+ default: // Unknown extension mode
+ reportBug(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
break;
+} // END - switch
- case "0.1.8": // SQL queries for v0.1.8
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Weitere Templates vom Admin-Bereich ausgelagert und Referal-Anazahl in der Mail zur Rallye-Ankündigung repariert.";
- break;
-
- case "0.1.9": // SQL queries for v0.1.9
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Funktion ADMIN_USER_PROFILE_LINK() mit Verlinkung auf Referal-Liste implementiert.";
- break;
-
- case "0.2.0": // SQL queries for v0.2.0
- $SQLs[] = "ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_data` ADD min_users BIGINT(20) UNSIGNED NOT NULL DEFAULT 0";
- $SQLs[] = "ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_data` ADD min_prices BIGINT(20) UNSIGNED NOT NULL DEFAULT '3'";
-
- // Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Ablaufen der Rallyes intergriert. Bauen Sie in Ihr Template templates/de/emails/member/member_rallye_notify.tpl folgende zwei Zeilen ein:
-