From: quix0r Date: Fri, 8 Jul 2011 05:58:23 +0000 (+0000) Subject: Extension ext-grade continued, functions for menu SQLs simplified: X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=ad4f29040d3d6583e5ddf58599020e29753da12c;p=mailer.git Extension ext-grade continued, functions for menu SQLs simplified: - Extension ext-grade now have (non-existing) guest and member menus - addMenuSql() have now two parameters less: locked='Y' and visible='N' is now default - Menu 'mydata' moved to action 'account' (fits better there) - TODOs.txt updated --- diff --git a/DOCS/TODOs.txt b/DOCS/TODOs.txt index b794024348..e3d4d8ea59 100644 --- a/DOCS/TODOs.txt +++ b/DOCS/TODOs.txt @@ -41,7 +41,7 @@ ./inc/extensions/ext-yoomedia.php:121: // @TODO Can this be moved into a database table? ./inc/extensions/ext-yoomedia.php:54:// @TODO Only deprecated when 'ext-network' is ready! setExtensionDeprecated('Y'); ./inc/extensions-functions.php:155: // @TODO Do we still need this? setExtensionUpdateNotes(''); -./inc/extensions-functions.php:1947:// @TODO This should be rewrittten to allow, more development states, e.g. 'planing','alpha','beta','beta2','stable' +./inc/extensions-functions.php:1939:// @TODO This should be rewrittten to allow, more development states, e.g. 'planing','alpha','beta','beta2','stable' ./inc/extensions-functions.php:425:// @TODO Change from ext_id to ext_name (not just even the variable! ;-) ) ./inc/extensions-functions.php:562: // @TODO Extension is loaded, what next? ./inc/filter/bonus_filter.php:56: // @TODO This query isn't right, it will only update if the user was for a longer time away! diff --git a/inc/extensions-functions.php b/inc/extensions-functions.php index 87744d1744..ddc4afbb83 100644 --- a/inc/extensions-functions.php +++ b/inc/extensions-functions.php @@ -1813,27 +1813,23 @@ function addAdminMenuSql ($action, $what, $title, $descr, $sort) { } // Adds a guest menu to the SQL queue if the menu entry is not found -function addGuestMenuSql ($action, $what, $title, $visible, $locked, $sort) { +function addGuestMenuSql ($action, $what, $title, $sort) { // Now check if this menu is there if (!isMenuActionValid('guest', $action, $what)) { // Is what null? if (is_null($what)) { // Add main menu - $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_guest_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s',NULL,'%s','%s','%s',%s)", + $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_guest_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s',NULL,'%s','N','Y',%s)", $action, $title, - $visible, - $locked, bigintval($sort) ); } else { // Add sub menu - $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_guest_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s','%s','%s','%s','%s',%s)", + $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_guest_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s','%s','%s','N','Y',%s)", $action, $what, $title, - $visible, - $locked, bigintval($sort) ); } @@ -1847,27 +1843,23 @@ function addGuestMenuSql ($action, $what, $title, $visible, $locked, $sort) { } // Adds a member menu to the SQL queue if the menu entry is not found -function addMemberMenuSql ($action, $what, $title, $visible, $locked, $sort) { +function addMemberMenuSql ($action, $what, $title, $sort) { // Now check if this menu is there if (!isMenuActionValid('member', $action, $what)) { // Is what null? if (is_null($what)) { // Add main menu - $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_member_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s',NULL,'%s','%s','%s',%s)", + $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_member_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s',NULL,'%s','N','Y',%s)", $action, $title, - $visible, - $locked, bigintval($sort) ); } else { // Add sub menu - $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_member_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s','%s','%s','%s','%s',%s)", + $sql = sprintf("INSERT INTO `{?_MYSQL_PREFIX?}_member_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES('%s','%s','%s','N','Y',%s)", $action, $what, $title, - $visible, - $locked, bigintval($sort) ); } diff --git a/inc/extensions/ext-active.php b/inc/extensions/ext-active.php index 3114ebe1ff..be79a48ceb 100644 --- a/inc/extensions/ext-active.php +++ b/inc/extensions/ext-active.php @@ -49,7 +49,7 @@ setExtensionVersionHistory(array('0.0.0', '0.0.1', '0.0.2', '0.0.3', '0.0.4', '0 switch (getExtensionMode()) { case 'register': // Do stuff when installation is running // SQL commands to run - addGuestMenuSql('main', 'active', 'Heute Online', 'N', 'Y', 10); + addGuestMenuSql('main', 'active', 'Heute Online', 10); break; case 'remove': // Do stuff when removing extension diff --git a/inc/extensions/ext-bank.php b/inc/extensions/ext-bank.php index c9081481e2..9525d3edbb 100644 --- a/inc/extensions/ext-bank.php +++ b/inc/extensions/ext-bank.php @@ -144,14 +144,14 @@ UNIQUE (`account_id`, `tan`) addAdminMenuSql('bank', 'list_bank_trans', 'Überweisungen auflisten', 'Nach Auswahl eines Mitgliedes und einem Konto (benötgt JavaScript!) können Sie seitenweise die Überweisungen durchschauen.', 13); // Member menu - addMemberMenuSql('bank', NULL, 'Bank-Account', 'N', 'Y', 3); - addMemberMenuSql('bank', 'bank_infos', 'Angebotspakete', 'N', 'Y', 1); - addMemberMenuSql('bank', 'bank_create', 'Konto anlegen', 'N', 'Y', 2); - addMemberMenuSql('bank', 'bank_deposit', 'Auf Konto einzahlen', 'N', 'Y', 3); - addMemberMenuSql('bank', 'bank_withdraw', 'Vom Konto abheben', 'N', 'Y', 4); - addMemberMenuSql('bank', 'bank_output', 'Kontoauszug', 'N', 'Y', 5); - addMemberMenuSql('bank', 'bank_change', 'Paket wechseln', 'N', 'Y', 6); - addMemberMenuSql('bank', 'bank_remove', 'Konto Kündigen', 'N', 'Y', 7); + addMemberMenuSql('bank', NULL, 'Bank-Account', 3); + addMemberMenuSql('bank', 'bank_infos', 'Angebotspakete', 1); + addMemberMenuSql('bank', 'bank_create', 'Konto anlegen', 2); + addMemberMenuSql('bank', 'bank_deposit', 'Auf Konto einzahlen', 3); + addMemberMenuSql('bank', 'bank_withdraw', 'Vom Konto abheben', 4); + addMemberMenuSql('bank', 'bank_output', 'Kontoauszug', 5); + addMemberMenuSql('bank', 'bank_change', 'Paket wechseln', 6); + addMemberMenuSql('bank', 'bank_remove', 'Konto Kündigen', 7); break; case 'remove': // Do stuff when removing extension diff --git a/inc/extensions/ext-beg.php b/inc/extensions/ext-beg.php index 59a28de5a8..99daece2fd 100644 --- a/inc/extensions/ext-beg.php +++ b/inc/extensions/ext-beg.php @@ -50,8 +50,8 @@ switch (getExtensionMode()) { case 'register': // Do stuff when installation is running // SQL commands to run addAdminMenuSql('setup', 'config_beg', 'Bettel-Link', 'IP-Sperre, {OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Vergütung usw. können Sie hier einstellen.', 10); - addGuestMenuSql('main', 'beg', '{OPEN_CONFIG}POINTS{CLOSE_CONFIG} erbetteln!', 'N', 'Y', 4); - addMemberMenuSql('main', 'beg', 'Ihr Bettel-Link', 'N', 'Y', 6); + addGuestMenuSql('main', 'beg', '{OPEN_CONFIG}POINTS{CLOSE_CONFIG} erbetteln!', 4); + addMemberMenuSql('main', 'beg', 'Ihr Bettel-Link', 6); addConfigAddSql('beg_timeout', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 600'); addConfigAddSql('beg_userid_timeout', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 1800'); addConfigAddSql('beg_points', 'FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00100'); @@ -159,12 +159,8 @@ PRIMARY KEY (`id`) addConfigAddSql('beg_rallye', "ENUM('Y','N') NOT NULL DEFAULT 'N'"); addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `beg_points` FLOAT(21,5) UNSIGNED NOT NULL DEFAULT 0.00000"); - // Determine if menu entries are locked and/or visible to the user - $visible = convertBooleanToYesNo(isExtensionActive('beg')); - $locked = convertBooleanToYesNo(!isExtensionActive('beg')); - - addMemberMenuSql('main','beg2','Bettel-Rallye', $visible, $locked, 7); - addAdminMenuSql('user','list_beg','Bettel-Rallye','Listet alle Teilnehmer der monatlichen Bettel-Rallye auf.','12'); + addMemberMenuSql('main', 'beg2', 'Bettel-Rallye', 7); + addAdminMenuSql('user', 'list_beg', 'Bettel-Rallye', 'Listet alle Teilnehmer der monatlichen Bettel-Rallye auf.', 12); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Optionale Bettel-Rallye möglich. Und die erbettelten {?POINTS?} können entweder nur dem bettelndem Mitglied direkt oder auch seinem Werber gutgeschrieben werden können."); diff --git a/inc/extensions/ext-bonus.php b/inc/extensions/ext-bonus.php index e7e5e68e46..a7b833e826 100644 --- a/inc/extensions/ext-bonus.php +++ b/inc/extensions/ext-bonus.php @@ -53,7 +53,7 @@ switch (getExtensionMode()) { // SQL commands to run addAdminMenuSql('email', 'send_bonus', 'Bonusmail senden', 'Versenden Sie hier Bonus-Mails an alle Mitglieder oder nur an alle aus einer Kategorie. Es spielt keine Rolle, wie viele Mails bereits versendet worden, Sie können hier immer senden.', 5); - addMemberMenuSql('main', 'bonus', 'Bonuspunkte', 'N', 'Y', 7); + addMemberMenuSql('main', 'bonus', 'Bonuspunkte', 7); addDropTableSql('bonus'); addCreateTableSql('bonus', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, @@ -164,7 +164,7 @@ INDEX `userid` (`userid`) case '0.2.3': // SQL queries for v0.2.3 addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='bonus' LIMIT 1"); - addMemberMenuSql('main', 'bonus', 'Aktiv-Rallye', 'N', 'Y', 7); + addMemberMenuSql('main', 'bonus', 'Aktiv-Rallye', 7); // Update notes (these will be set as task text!) setExtensionUpdateNotes("Aktiv-Rallye mit Klick-Vergütung hinzugefügt."); diff --git a/inc/extensions/ext-booking.php b/inc/extensions/ext-booking.php index a66c71e220..300e2b2e83 100644 --- a/inc/extensions/ext-booking.php +++ b/inc/extensions/ext-booking.php @@ -74,7 +74,7 @@ PRIMARY KEY (`id`) addAdminMenuSql('user','list_booking','Kontoauszüge','Kontoauszüge aller Ihrer Mitglieder oder eines einzelnen Mitgliedes anzeigen.',10); // Member menu - addMemberMenuSql('main', 'booking', '{OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Kontoauszug', 'N', 'Y', 5); + addMemberMenuSql('main', 'booking', '{OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Kontoauszug', 5); // Add the filters registerFilter('post_add_points', 'ADD_BOOKING_RECORD', false, true, isExtensionDryRun()); diff --git a/inc/extensions/ext-coupon.php b/inc/extensions/ext-coupon.php index 369c2eba1f..cce5017403 100644 --- a/inc/extensions/ext-coupon.php +++ b/inc/extensions/ext-coupon.php @@ -97,9 +97,9 @@ UNIQUE KEY (`coupon_code`) addAdminMenuSql('coupon', 'send_coupon', 'Versenden/Neuen erstellen', 'Versendet neue Gutscheine an die Mitglieder. Wenn Sie auf "Absenden" klicken, warten Sie bitte die Folgeseite ab, da der Versand der Gutscheine derzeit nicht gepoolt ist.', 2); addAdminMenuSql('coupon', 'config_coupon', 'Einstellungen', 'Allgemeine Einstellungen zu Code-Gutscheinen und Gutscheinen von Sponsoren (z.B. per API) können hier vorgenommen werden.', 3); // - Member entries - addMemberMenuSql('coupon', NULL, 'Gutscheine', 'N', 'Y', 3); - addMemberMenuSql('coupon', 'cash_coupon', 'Gutschein einlösen', 'N', 'Y', 1); - addMemberMenuSql('coupon', 'list_coupon', 'Eingelöste auflisten', 'N', 'Y', 2); + addMemberMenuSql('coupon', NULL, 'Gutscheine', 3); + addMemberMenuSql('coupon', 'cash_coupon', 'Gutschein einlösen', 1); + addMemberMenuSql('coupon', 'list_coupon', 'Eingelöste auflisten', 2); // Add filter (for changing user_points column dynamically registerFilter('determine_points_column_name', 'COUPON_CHANGE_POINTS_COLUMN_NAME', false, true, isExtensionDryRun()); diff --git a/inc/extensions/ext-debug.php b/inc/extensions/ext-debug.php index fa314cc331..c101fc3989 100644 --- a/inc/extensions/ext-debug.php +++ b/inc/extensions/ext-debug.php @@ -114,11 +114,11 @@ PRIMARY KEY (`id`) ) TYPE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Debug client <-> log connection'"); // Guest menus - addGuestMenuSql('debug',NULL,'Debug-System','Y','Y',2); - addGuestMenuSql('debug','debug_info','Informationen','Y','Y',1); - addGuestMenuSql('debug','debug_reg','Anmeldung','Y','Y',2); - addGuestMenuSql('debug','debug_unreg','Abmeldung','Y','Y',3); - addGuestMenuSql('debug','debug_pilory','Spam-Pranger','Y','Y',4); + addGuestMenuSql('debug', NULL, 'Debug-System', 2); + addGuestMenuSql('debug', 'debug_info', 'Informationen', 1); + addGuestMenuSql('debug', 'debug_reg', 'Anmeldung', 2); + addGuestMenuSql('debug', 'debug_unreg', 'Abmeldung', 3); + addGuestMenuSql('debug', 'debug_pilory', 'Spam-Pranger', 4); // Admin menu addAdminMenuSql('debug', NULL, 'Debug-System', 'Verwalten Sie hier komfortabel das debug.log, welches sich im Verzeichnis {?CACHE_PATH?} befindet.', 10); diff --git a/inc/extensions/ext-doubler.php b/inc/extensions/ext-doubler.php index f79d7f182e..80c327d91a 100644 --- a/inc/extensions/ext-doubler.php +++ b/inc/extensions/ext-doubler.php @@ -108,10 +108,10 @@ PRIMARY KEY (`id`) addAdminMenuSql('doubler','config_doubler','Einstellungen','Prozentuale Gebühr usw. einstellen.', 2); // Guest menu (informations / default doubler link) - addGuestMenuSql('main', 'doubler', 'Verdoppeln!', 'N', 'Y', 3); + addGuestMenuSql('main', 'doubler', 'Verdoppeln!', 3); // Member menu - addMemberMenuSql('main', 'doubler', 'Verdoppeln!', 'N', 'Y', 7); + addMemberMenuSql('main', 'doubler', 'Verdoppeln!', 7); break; case 'remove': // Do stuff when removing extension diff --git a/inc/extensions/ext-forced.php b/inc/extensions/ext-forced.php index 298381bf95..0ce4bc3d32 100644 --- a/inc/extensions/ext-forced.php +++ b/inc/extensions/ext-forced.php @@ -148,8 +148,8 @@ PRIMARY KEY ( `forced_stats_id` ) addAdminMenuSql('forced','stats_forced','Statistiken','Zeigt Gesamtstatistiken und zu den einzelnen Kampagnen und Werbmitteln an. Die hier angezeigte Statistik kann jedoch nicht manuell gelöscht werden (bitte auch nicht selber tun) da sie auch gleichzeitigt als Reload-Sperre dient.',4); // - Members - addMemberMenuSql('earn','forced_banner','Forced-Banner','Y','N',2); - addMemberMenuSql('earn','forced_textlink','Forced-Textlinks','Y','N',3); + addMemberMenuSql('earn', 'forced_banner', 'Forced-Banner', 2); + addMemberMenuSql('earn', 'forced_textlink', 'Forced-Textlinks', 3); break; case 'remove': // Do stuff when removing extension diff --git a/inc/extensions/ext-grade.php b/inc/extensions/ext-grade.php index a798c5b38b..acc1b5f3dc 100644 --- a/inc/extensions/ext-grade.php +++ b/inc/extensions/ext-grade.php @@ -75,7 +75,7 @@ PRIMARY KEY (`id`), // Connection grade<->cash data addDropTableSql('grade_cash_connect'); - addCreateTableSql('grade_cash_conenct', "( + addCreateTableSql('grade_cash_connect', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `grade_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `grade_cash_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -95,6 +95,19 @@ PRIMARY KEY (`id`), UNIQUE KEY (`userid`,`grade_id`), INDEX (`grade_id`) ) TYPE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Grade<->user connection'"); + + // Admin menu entries + addAdminMenuSql('grade', NULL, 'Einstufungen', 'Stufen Sie Ihre Mitglieder ein, die sie ab einer einstellbaren Anzahl an {?POINTS?} oder bestätigten Mails usw. erhalten und durch die Einstufung Ermäßigungen oder Sonderboni erhalten können.', 6); + addAdminMenuSql('grade', 'list_grades', 'Auflisten...', 'Listet alle Einstufungen auf, auch sind diese hier editierbar, neue hinzufügbar und löschbar.', 1); + addAdminMenuSql('grade', 'list_cash_grade', 'Ermäßigungen/Sonderboni', 'Listet alle Ermäßigungen/Sonderbi auf, auch sind diese hier editierbar, neue hinzufügbar und löschbar.', 2); + addAdminMenuSql('grade', 'list_current_grades', 'Mitglieder-Einstufungen', 'Liste alle durch die Mitglieder aktuell erreichten Einstungen auf. Diese sind nicht editierbar (wir wollen ja nicht schummeln und bestimmten Mitgliedern bessere Einstufungen geben, oder? ;-) ).', 3); + addAdminMenuSql('grade', 'config_grade', 'Einstellungen ...', 'Diverse Einstellungen zu den Einstufungen.', 4); + + // Member menu + addMemberMenuSql('account', 'grade', 'Erreichte Stufe', 2); + + // Guest menu + addGuestMenuSql('members', 'grade', 'Einstufungen', 4); break; case 'remove': // Do stuff when removing extension @@ -103,6 +116,11 @@ INDEX (`grade_id`) addDropTableSql('grade_cash_data'); addDropTableSql('grade_cash_connect'); addDropTableSql('grade_user_connect'); + + // Menu entries + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='grade' LIMIT 5"); + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what`='grade' LIMIT 1"); + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `what`='grade' LIMIT 1"); break; case 'activate': // Do stuff when admin activates this extension diff --git a/inc/extensions/ext-holiday.php b/inc/extensions/ext-holiday.php index bf6ec1bb40..587ffb0b76 100644 --- a/inc/extensions/ext-holiday.php +++ b/inc/extensions/ext-holiday.php @@ -64,7 +64,7 @@ PRIMARY KEY (`id`) addConfigAddSql('holiday_max', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 30'); // Add member menu - addMemberMenuSql('main', 'holiday', 'Urlaubsschaltung', 'Y', 'Y', 4); + addMemberMenuSql('main', 'holiday', 'Urlaubsschaltung', 4); // Add admin menus addAdminMenuSql('holiday', NULL, 'Urlaubsmanagement', 'Hier können Sie Urlaubsschaltungen Ihrer Mitglieder auflisten oder auch wieder aufheben.', 4); diff --git a/inc/extensions/ext-html_mail.php b/inc/extensions/ext-html_mail.php index 05079459d5..03171c959c 100644 --- a/inc/extensions/ext-html_mail.php +++ b/inc/extensions/ext-html_mail.php @@ -52,7 +52,7 @@ switch (getExtensionMode()) { addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `html` ENUM('Y','N') NOT NULL DEFAULT 'Y'"); addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_bonus` ADD `html_msg` ENUM('Y','N') NOT NULL DEFAULT 'N'"); addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_pool` ADD `html_msg` ENUM('Y','N') NOT NULL DEFAULT 'N'"); - addMemberMenuSql('main', 'html_mail', 'HTML-Empfang', 'N', 'Y', 3); + addMemberMenuSql('main', 'html_mail', 'HTML-Empfang', 3); break; case 'remove': // Do stuff when removing extension diff --git a/inc/extensions/ext-imprint.php b/inc/extensions/ext-imprint.php index 514888520c..4098d18751 100644 --- a/inc/extensions/ext-imprint.php +++ b/inc/extensions/ext-imprint.php @@ -55,10 +55,10 @@ switch (getExtensionMode()) { addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `what`='impressum' LIMIT 1"); // Extend guest menu - addGuestMenuSql('main','imprint','Impressum','N','N',4); + addGuestMenuSql('main', 'imprint', 'Impressum', 4); // Extend admin menu - addAdminMenuSql('setup','config_imprint','Impressum','Einstellungen zum Impressum.',8); + addAdminMenuSql('setup', 'config_imprint', 'Impressum', 'Einstellungen zum Impressum.', 8); // Extend config with with entries addConfigAddSql('imprint_image_url', "VARCHAR(255) NOT NULL DEFAULT ''"); diff --git a/inc/extensions/ext-mediadata.php b/inc/extensions/ext-mediadata.php index 9d41c9e9f8..aeafa9486e 100644 --- a/inc/extensions/ext-mediadata.php +++ b/inc/extensions/ext-mediadata.php @@ -139,7 +139,7 @@ Bitte stellen Sie diesen derzeit manuell unter