X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fextensions%2Fext-menu.php;h=21fae0baad7f677f674f29ce70b8e2f07a850c37;hb=6dcb879ba3abb21843503cacc65d1fe0848eb90f;hp=847362f63c7f164f461a9f851f5a1f11fca8cd38;hpb=1dd584090ba559372adb525fba74f46262c7308c;p=mailer.git diff --git a/inc/extensions/ext-menu.php b/inc/extensions/ext-menu.php index 847362f63c..21fae0baad 100644 --- a/inc/extensions/ext-menu.php +++ b/inc/extensions/ext-menu.php @@ -1,7 +1,7 @@ Vorsicht! Löschen Sie nicht das Login-Menü!',2)"); - ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','admin_add','Admin-Menü hinzufügen','Weiteren Menüpunkt zum Admin-Bereich hinzufügen',3)"); - ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','guest_add','Gäste-Menü hinzufügen','Fügen Sie weitere Menüpunkte dem Gäste-Menü hinzu.',5)"); - ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','memedit','Mitgliedsmenü editieren','Mitgliedsmenü editieren oder löschen',6)"); - ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','guestedit','Gäste-Menü editieren','Gäste-Menü editieren, löschen',4)"); - ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('menu','mem_add','Mitgliedsmenü hinzufügen','Weiteren Menüpunkt zum Mitgliedsmenü hinzufügen',7)"); + // @TODO Convert menu-Id to one coding-standard. admin(edit|_add) => admin_menu_(edit|add), mem(edit|_add) => (edit|add)_(admin|guest|member)_menu + addAdminMenuSql('menu',NULL,'Menü-System','Alle drei Menü-System bearbeiten (Admin-, Mitglied- und Gast-Menü)',1); + addAdminMenuSql('menu','admin_add','Admin-Menü hinzufügen','Weiteren Menüpunkt zum Admin-Bereich hinzufügen',1); + addAdminMenuSql('menu','adminedit','Admin-Menü editieren','Das Administrationsmenü mit neuen Menüs erweitern, bestehende ändern oder löschen. Vorsicht! Löschen Sie nicht das Login-Menü!',2); + addAdminMenuSql('menu','mem_add','Mitgliedsmenü hinzufügen','Weiteren Menüpunkt zum Mitgliedsmenü hinzufügen',3); + addAdminMenuSql('menu','memedit','Mitgliedsmenü editieren','Mitgliedsmenü editieren oder löschen',4); + addAdminMenuSql('menu','guest_add','Gäste-Menü hinzufügen','Fügen Sie weitere Menüpunkte dem Gäste-Menü hinzu.',5); + addAdminMenuSql('menu','guestedit','Gäste-Menü editieren','Gäste-Menü editieren, löschen',6); + + // Unregister filter + unregisterFilter(__FILE__, __LINE__, 'guest_menu_advert', 'ADD_GENERIC_MENU_ADVERT', TRUE, isExtensionDryRun()); + unregisterFilter(__FILE__, __LINE__, 'member_menu_advert', 'ADD_GENERIC_MENU_ADVERT', TRUE, isExtensionDryRun()); + unregisterFilter(__FILE__, __LINE__, 'guest_menu_advert_end', 'ADD_GENERIC_MENU_ADVERT_END', TRUE, isExtensionDryRun()); + unregisterFilter(__FILE__, __LINE__, 'member_menu_advert_end', 'ADD_GENERIC_MENU_ADVERT_END', TRUE, isExtensionDryRun()); break; case 'remove': // Do stuff when removing extension // SQL commands to run - ADD_EXT_SQL("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_admin_menu` WHERE `action`='menu'"); + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='menu'"); break; case 'activate': // Do stuff when admin activates this extension @@ -75,26 +79,67 @@ switch ($EXT_LOAD_MODE) break; case 'update': // Update an extension - switch ($EXT_VER) - { + switch (getCurrentExtensionVersion()) { case '0.0.1': // SQL queries for v0.0.1 - ADD_EXT_SQL(''); + addConfigAddSql('guest_menu_advert_enabled', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); + addConfigAddSql('member_menu_advert_enabled', "ENUM('Y','N') NOT NULL DEFAULT 'Y'"); + + // Insert menu entry + addAdminMenuSql('menu','config_menu','Einstellungen','Einstellungen an den Gast- und Mitgliedsmenüs vornehmen.',7); // Update notes (these will be set as task text!) - EXT_SET_UPDATE_NOTES(''); + setExtensionUpdateNotes("Gast- und Mitgliedsmenüs können nun Werbung zwischen den Menüblöcken einblenden."); break; - } - break; - case 'modify': // When the extension got modified + case '0.0.2': // SQL queries for v0.0.2 + // Load the fix include + addIncludeToPool('extension', 'inc/fixes/fix_menu.php'); + + // Update notes (these will be set as task text!) + setExtensionUpdateNotes("Doppelte Menüpunkte bereinigt."); break; - case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305. + case '0.0.3': // SQL queries for v0.0.3 + // Change menu-string + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_admin_menu` SET `title`='Admin-Menü editieren' WHERE `what` = 'adminedit' LIMIT 1"); + + // Update notes (these will be set as task text!) + setExtensionUpdateNotes("Menüpunkt 'Vom Admin editieren' in 'Admin-Menü editieren' bei bereits bestehenden Installationen umändern."); + break; + + case '0.0.4': // SQL queries for v0.0.4 + // Change menu-string + addExtensionChangeTableColumnSql('admin_menu', 'title', 'title', "VARCHAR(255) NOT NULL DEFAULT ''"); + + // Update notes (these will be set as task text!) + setExtensionUpdateNotes("VARCHAR(50) ist zu kurz für Linktitel (wegen der dynamischen Anteile)."); break; - default: // Do stuff when extension is loaded + case '0.0.5': // SQL queries for v0.0.5 + registerFilter(__FILE__, __LINE__, 'guest_menu_advert', 'ADD_GENERIC_MENU_ADVERT', FALSE, TRUE, isExtensionDryRun()); + registerFilter(__FILE__, __LINE__, 'member_menu_advert', 'ADD_GENERIC_MENU_ADVERT', FALSE, TRUE, isExtensionDryRun()); + registerFilter(__FILE__, __LINE__, 'guest_menu_advert_end', 'ADD_GENERIC_MENU_ADVERT_END', FALSE, TRUE, isExtensionDryRun()); + registerFilter(__FILE__, __LINE__, 'member_menu_advert_end', 'ADD_GENERIC_MENU_ADVERT_END', FALSE, TRUE, isExtensionDryRun()); + + // Update notes (these will be set as task text!) + setExtensionUpdateNotes("Filter hinzugefügt, die Werbeeinblendungen hinzufügen. Auf diese Filter kann später auch z.B. ext-clickbanner sich registrieren, damit die Werbung "exklusiv" angezeigt wird, muss das Flag exclusive auf TRUE gesetzt werden."); break; -} + } // END - switch + break; + + case 'modify': // When the extension got modified + break; + + case 'test': // For testing purposes + break; + + case 'init': // Do stuff when extension is initialized + break; + + default: // Unknown extension mode + reportBug(__FILE__, __LINE__, sprintf('Unknown extension mode %s in extension %s detected.', getExtensionMode(), getCurrentExtensionName())); + break; +} // END - switch -// +// [EOF] ?>