Rewrote some parts:
[mailer.git] / inc / extensions / ext-menu.php
index 6a41e4472f1534c4b3242e074c3d798d6b505f0c..348a4f2e1c5894ff05d543b0803a94d9b0e37143 100644 (file)
@@ -16,8 +16,8 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2009 - 2013 by Mailer Developer Team                   *
+ * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
@@ -41,13 +41,13 @@ if (!defined('__SECURITY')) {
 } // END - if
 
 // Version number
-setThisExtensionVersion('0.0.4');
+setThisExtensionVersion('0.0.5');
 
 // Version history array (add more with , '0.0.1' and so on)
-setExtensionVersionHistory(array('0.0.0','0.0.1','0.0.2','0.0.3', '0.0.4'));
+setExtensionVersionHistory(array('0.0.0','0.0.1','0.0.2','0.0.3', '0.0.4', '0.0.5'));
 
 switch (getExtensionMode()) {
-       case 'register': // Do stuff when installation is running
+       case 'setup': // Do stuff when installation is running
                // SQL commands to run
                // @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);
@@ -57,6 +57,12 @@ switch (getExtensionMode()) {
                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
@@ -103,11 +109,21 @@ switch (getExtensionMode()) {
 
                        case '0.0.4': // SQL queries for v0.0.4
                                // Change menu-string
-                               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_admin_menu` CHANGE `title` `title` VARCHAR(255) NOT NULL DEFAULT ''");
+                               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;
+
+                       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&uuml;gt, die Werbeeinblendungen hinzuf&uuml;gen. Auf diese Filter kann sp&auml;ter auch z.B. <strong>ext-clickbanner</strong> sich registrieren, damit die Werbung &quot;exklusiv&quot; angezeigt wird, muss das Flag <strong>exclusive</strong> auf <em>TRUE</em> gesetzt werden.");
+                               break;
                } // END - switch
                break;
 
@@ -121,7 +137,7 @@ switch (getExtensionMode()) {
                break;
 
        default: // Unknown extension mode
-               logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
+               reportBug(__FILE__, __LINE__, sprintf('Unknown extension mode %s in extension %s detected.', getExtensionMode(), getCurrentExtensionName()));
                break;
 } // END - switch