X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fextensions%2Fext-mediadata.php;h=d89f25bfa7dc52681748afca403a9a8ae985d578;hb=168004e78b90321c9e8b0f1d9b591fb8159a9c96;hp=4eb2ca0a54f3aa5a8864cdc196482b386ec4860f;hpb=1573ab55476ee1a840d4e168feca084b76ec1710;p=mailer.git
diff --git a/inc/extensions/ext-mediadata.php b/inc/extensions/ext-mediadata.php
index 4eb2ca0a54..d89f25bfa7 100644
--- a/inc/extensions/ext-mediadata.php
+++ b/inc/extensions/ext-mediadata.php
@@ -1,7 +1,7 @@
aktuellen Zustandes berücksichtigen kann und nicht bereits gelöschter Mitglieder.");
- break;
+ addExtensionSql('');
- case "0.0.5": // SQL queries for v0.0.5
- // Update notes (these will be set as task text!)
- EXT_SET_UPDATE_NOTES("if-Anweisungen auf Funktion empty() umgestellt.");
+ // Add the filters
+ registerFilter('add_points', 'UPDATE_MEDIADATA_ENTRY', false, true, isExtensionDryRun());
+ registerFilter('sub_points', 'UPDATE_MEDIADATA_ENTRY', false, true, isExtensionDryRun());
break;
- case "0.0.6": // SQL queries for v0.0.6
- // Update notes (these will be set as task text!)
- EXT_SET_UPDATE_NOTES("Mediendaten mussten komplett regeneriert werden.");
- break;
-
- case "0.0.7": // SQL queries for v0.0.7
- ADD_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_config` ADD mt_start BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
- ADD_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_config` ADD mt_stage BIGINT(20) UNSIGNED NOT NULL DEFAULT '500'");
- ADD_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('setup','config_mediadata','Mediendaten','Stellen Sie allgemeine Einstellungen zu den Mediendaten ein.', 10)");
+ case 'remove': // Do stuff when removing extension
+ // SQL commands to run
+ addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_mediadata`');
+ addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what`='config_mediadata'");
+ addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `what`='mediadata'");
- // Update notes (these will be set as task text!)
- EXT_SET_UPDATE_NOTES("Start des {!MT_WORD2!} und Anzahl Anmeldungen aufgenommen. (Task #13)
-Bitte stellen Sie diesen derzeit manuell unter Einstellungen-Medidata selber einstellen.");
+ // Remove the filters
+ unregisterFilter(__FUNCTION__, __LINE__, 'add_points', 'UPDATE_MEDIADATA_ENTRY', true, isExtensionDryRun());
+ unregisterFilter(__FUNCTION__, __LINE__, 'sub_points', 'UPDATE_MEDIADATA_ENTRY', true, isExtensionDryRun());
break;
- case "0.0.8": // SQL queries for v0.0.8
- // Update notes (these will be set as task text!)
- EXT_SET_UPDATE_NOTES("Fehlerhinweis bei deaktivierter Erweiterung verbessert.");
+ 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`='mediadata' LIMIT 1");
break;
- case "0.0.9": // SQL queries for v0.0.9
- ADD_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`,`visible`,`locked`) VALUES ('main','mediadata','Mediendaten',3,'Y','N')");
+ 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`='mediadata' LIMIT 1");
+ break;
- // Update notes (these will be set as task text!)
- EXT_SET_UPDATE_NOTES("Menüpunkt wird durch diese Erweiterung generiert.");
+ 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("Berechnung der Gesamt-{?POINTS?} korregiert.");
+ break;
+
+ case '0.0.2': // SQL queries for v0.0.2
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Daten des Scriptes mit eingebunden.");
+ break;
+
+ case '0.0.3': // SQL queries for v0.0.3
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Sicherheitsupdate: SQL-Anweisungen geschützt.");
+ break;
+
+ case '0.0.4': // SQL queries for v0.0.4
+ // SQL commands to run
+ addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_mediadata`');
+ addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_mediadata` (
+`media_key` VARCHAR(255) NOT NULL DEFAULT '',
+`media_value` VARCHAR(255) NOT NULL DEFAULT '',
+PRIMARY KEY (media_key)
+) TYPE={?_TABLE_TYPE?}");
+
+ // Add auto-check file
+ addIncludeToPool('extension', 'inc/gen_mediadata.php');
+
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Teile der Mediendaten werden in seperater Tabelle gesichert. Bitte beachten Sie, dass dieses Update nur Daten des aktuellen Zustandes berücksichtigen kann und nicht bereits gelöschter Mitglieder.");
+ break;
+
+ case '0.0.5': // SQL queries for v0.0.5
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("if-Anweisungen auf Funktion empty() umgestellt.");
+ break;
+
+ case '0.0.6': // SQL queries for v0.0.6
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Mediendaten mussten komplett regeneriert werden.");
+ break;
+
+ case '0.0.7': // SQL queries for v0.0.7
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `mt_start` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
+ addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `mt_stage` BIGINT(20) UNSIGNED NOT NULL DEFAULT '500'");
+ addAdminMenuSql('setup','config_mediadata','Mediendaten','Stellen Sie allgemeine Einstellungen zu den Mediendaten ein.', 10);
+
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Start des {?mt_word2?} und Anzahl Anmeldungen aufgenommen. (Task #13)
+Bitte stellen Sie diesen derzeit manuell unter Einstellungen-Medidata selber einstellen.");
+ break;
+
+ case '0.0.8': // SQL queries for v0.0.8
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Fehlerhinweis bei deaktivierter Erweiterung verbessert.");
+ break;
+
+ case '0.0.9': // SQL queries for v0.0.9
+ addGuestMenuSql('main','mediadata','Mediendaten','N','N',3);
+
+ // Update notes (these will be set as task text!)
+ setExtensionUpdateNotes("Menüpunkt wird durch diese Erweiterung generiert.");
+ break;
+ } // END - switch
break;
- }
- break;
-case "test": // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305.
- break;
+ case 'modify': // When the extension got modified
+ break;
-default: // Do stuff when extension is loaded
- break;
-}
+ case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305.
+ break;
-if ((isset($dry_run)) && (isset($EXT_LOAD_MODE))) {
- if ((!$dry_run) && ($EXT_LOAD_MODE == "update") && ($EXT_VER == "0.0.4")) {
- // Add auto-check file
- $INC_POOL[] = sprintf("%sinc/gen_mediadata.php", constant('PATH'));
- } // END - if
-} // END - if
+ case 'init': // Do stuff when extension is initialized
+ break;
-// Keep this extension always active!
-EXT_SET_ALWAYS_ACTIVE("Y");
+ default: // Unknown extension mode
+ logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
+ break;
+} // END - switch
-//
+// [EOF]
?>