X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-debug.php;h=a4c4d1ac36ac170336559b176f11b6c44436fe5d;hp=7b626c069f4723341e14f0452cb4b13ec128d95a;hb=0f3a135204757cc8750262871c8e62c42300acb4;hpb=e2148142f8b1a8f40fd6e7ca32185569c5a9083e diff --git a/inc/extensions/ext-debug.php b/inc/extensions/ext-debug.php index 7b626c069f..a4c4d1ac36 100644 --- a/inc/extensions/ext-debug.php +++ b/inc/extensions/ext-debug.php @@ -14,10 +14,9 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * + * Copyright (c) 2009 - 2011 by Mailer Developer Team * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -39,13 +38,13 @@ // Some security stuff... if (!defined('__SECURITY')) { die(); -} +} // END - if // Version number -setThisExtensionVersion('0.0'); +setThisExtensionVersion('0.0.0'); -// Version history array (add more with , '0.1.0' and so on) -setExtensionVersionHistory(array('0.0')); +// Version history array (add more with , '0.0.1' and so on) +setExtensionVersionHistory(array('0.0.0')); // Keep this extension always active! setExtensionAlwaysActive('Y'); @@ -54,10 +53,10 @@ setExtensionAlwaysActive('Y'); enableExtensionProductive(false); switch (getExtensionMode()) { - case 'register': // Do stuff when installation is running (modules.php?module=admin is called) + case 'register': // Do stuff when installation is running // Table for debug log entries - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_log`"); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_debug_log` ( + addDropTableSql('debug_log'); + addCreateTableSql('debug_log', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sender_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `timestamp` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00', @@ -67,25 +66,25 @@ switch (getExtensionMode()) { `comment` TINYTEXT, `status` ENUM('NEW','PENDING','ACCEPTED','FIXED','INVALID','DUBLICATE','SPAM') NOT NULL DEFAULT 'NEW', `inserted` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, -INDEX (`sender_id`), -PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?} COMMENT='Debug log data'"); +PRIMARY KEY (`id`), +INDEX (`sender_id`)", + 'Debug log data'); // Table against debug log abuse - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_log_abuse`"); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_debug_log_abuse` ( + addDropTableSql('debug_log_abuse'); + addCreateTableSql('debug_log_abuse', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `client_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `timestamp` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00', `raw_data` LONGTEXT, `inserted` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, -INDEX (`client_id`), -PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?} COMMENT='Debug log abuse'"); +PRIMARY KEY (`id`), +INDEX (`client_id`)", + 'Debug log abuse'); // Table on relay/server for client exchanges - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_client`"); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_debug_client` ( + addDropTableSql('debug_client'); + addCreateTableSql('debug_client', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `key` VARCHAR(255) NOT NULL DEFAULT 'SELF', `url` VARCHAR(255) NOT NULL DEFAULT '', @@ -95,56 +94,56 @@ PRIMARY KEY (`id`) `type` ENUM ('CLIENT','RELAY','SERVER') NOT NULL DEFAULT 'CLIENT', `inserted` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `lock_spam_reason` TINYTEXT, +PRIMARY KEY (`id`), UNIQUE (`key`), -UNIQUE (`url`), -PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?} COMMENT='Debug clients'"); +UNIQUE (`url`)", + 'Debug clients'); // Add this exchange as first client addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_debug_client` (`url`,`title`,`webmaster`,`status`) VALUES ('{?URL?}','{?MAIN_TITLE?}','{?WEBMASTER?}','ACTIVE')"); // Table for debug log <-> client connection - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_client_log`"); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_debug_client_log` ( + addDropTableSql('debug_client_log'); + addCreateTableSql('debug_client_log', " `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, -`client_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 1, +`client_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `log_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, -INDEX `client_log` (`client_id`,`log_id`), +PRIMARY KEY (`id`), UNIQUE (`log_id`), -PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?} COMMENT='Debug client <-> log connection'"); +INDEX `client_log` (`client_id`,`log_id`)", + '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); - addAdminMenuSql('debug','import_debug','debug.log importieren','Importieren Sie hier manuell die debug.log, damit neue Einträge mit bestehenden abgeglichen werden können und dann evtl. hinzugefügt werden. Die debug.log wird nach dem Import automatisch vom Server entfernt. Dieser Vorgang wird für Sie nachts automatisch erledigt!',1); - addAdminMenuSql('debug','list_debug','Einträge anzeigen','Listet alle bereits importierten Einträge auf. Von hier aus versenden Sie noch nicht gemeldete Fehler an das Relay-Netzwerk, damt diese vom Entwicklerteam geprüft werden können.',2); - addAdminMenuSql('debug','reg_debug','Am Server anmelden','Sie müssen zuerst Ihren Debug-Client (Ihr {?mt_word?} ist dies) oder Relay am Server von mxchange.org anmelden. Dies geschieht für Sie nicht automatisch, da Sie Ihre Daten zuvor überprüfen müssen, wie z.B. URL, eMail-Adresse und {?mt_word?}-Titel.',3); - addAdminMenuSql('debug','unreg_debug','Vom Server abmelden','Melden Sie bitte Ihren {?mt_word?} wieder vom Projekt-Server ab, damit mein Entwicklerteam weiss, welche Keys nicht mehr genutzt werden.',4); - addAdminMenuSql('debug','config_debug','Einstellungen','Ändern Sie hier alle Einstellungen, wie auch den Debug-Modus - ob Client, Hub oder selber Server sein. Lesen Sie dazu die Anleitung unter DOCs/de/debug/README.txt durch! Oder kommen Sie in's Forum. Das Team von mxchange.org hilft Ihnen gerne weiter.',5); + addAdminMenuSql('debug', NULL, 'Debug-System', 'Verwalten Sie hier komfortabel das debug.log, welches sich im Verzeichnis {?CACHE_PATH?} befindet.', 10); + addAdminMenuSql('debug', 'import_debug', 'debug.log importieren', 'Importieren Sie hier manuell die debug.log, damit neue Einträge mit bestehenden abgeglichen werden können und dann evtl. hinzugefügt werden. Die debug.log wird nach dem Import automatisch vom Server entfernt. Dieser Vorgang wird für Sie nachts automatisch erledigt!', 1); + addAdminMenuSql('debug', 'list_debug', 'Einträge anzeigen', 'Listet alle bereits importierten Einträge auf. Von hier aus versenden Sie noch nicht gemeldete Fehler an das Relay-Netzwerk, damt diese vom Entwicklerteam geprüft werden können.', 2); + addAdminMenuSql('debug', 'reg_debug', 'Am Server anmelden', 'Sie müssen zuerst Ihren Debug-Client (Ihr {?mt_word?} ist dies) oder Relay am Server von mxchange.org anmelden. Dies geschieht für Sie nicht automatisch, da Sie Ihre Daten zuvor überprüfen müssen, wie z.B. URL, eMail-Adresse und {?mt_word?}-Titel.', 3); + addAdminMenuSql('debug', 'unreg_debug', 'Vom Server abmelden', 'Melden Sie bitte Ihren {?mt_word?} wieder vom Projekt-Server ab, damit mein Entwicklerteam weiss, welche Keys nicht mehr genutzt werden.', 4); + addAdminMenuSql('debug', 'config_debug', 'Einstellungen', 'Ändern Sie hier alle Einstellungen, wie auch den Debug-Modus - ob Client, Hub oder selber Server sein. Lesen Sie dazu die Anleitung unter DOCs/de/debug/README.txt durch! Oder kommen Sie in's Forum. Das Team von mxchange.org hilft Ihnen gerne weiter.', 5); // Config entries - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_key` VARCHAR(255) NOT NULL DEFAULT ''"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_mode` ENUM('CLIENT','RELAY','SERVER') NOT NULL DEFAULT 'CLIENT'"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_new_log` ENUM('ACCEPT','FIRST','REG') NOT NULL DEFAULT 'FIRST'"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_new_client` ENUM('ACTIVE','NEW','REG') NOT NULL DEFAULT 'NEW'"); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_reject_log` BIGINT(20) UNSIGNED NOT NULL DEFAULT " . (getConfig('ONE_DAY') * 30)); - addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `debug_master_url` VARCHAR(255) NOT NULL DEFAULT '{?SERVER_URL?}'"); + addConfigAddSql('debug_id', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT 0'); + addConfigAddSql('debug_key', "VARCHAR(255) NOT NULL DEFAULT ''"); + addConfigAddSql('debug_mode', "ENUM('CLIENT','RELAY','SERVER') NOT NULL DEFAULT 'CLIENT'"); + addConfigAddSql('debug_new_log', "ENUM('ACCEPT','FIRST','REG') NOT NULL DEFAULT 'FIRST'"); + addConfigAddSql('debug_new_client', "ENUM('ACTIVE','NEW','REG') NOT NULL DEFAULT 'NEW'"); + addConfigAddSql('debug_reject_log', 'BIGINT(20) UNSIGNED NOT NULL DEFAULT ' . (getOneDay() * 30)); + addConfigAddSql('debug_master_url', "VARCHAR(255) NOT NULL DEFAULT '{?SERVER_URL?}'"); break; case 'remove': // Do stuff when removing extension // SQL commands to run - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_client_log`"); - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_client`"); - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_log`"); - addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_debug_log_abuse`"); + addDropTableSql('debug_client_log'); + addDropTableSql('debug_client'); + addDropTableSql('debug_log'); + addDropTableSql('debug_log_abuse'); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `action`='debug'"); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='debug'"); break; @@ -160,30 +159,29 @@ PRIMARY KEY (`id`) break; case 'update': // Update an extension - switch (getCurrentExtensionVersion()) - { + switch (getCurrentExtensionVersion()) { case '0.0.1': // SQL queries for v0.0.1 addExtensionSql(''); // Update notes (these will be set as task text!) setExtensionUpdateNotes(''); break; - } + } // END - switch break; case 'modify': // When the extension got modified break; - case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305. + case 'test': // For testing purposes break; case 'init': // Do stuff when extension is initialized break; default: // Unknown extension mode - DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown extension mode %s detected.", getExtensionMode())); + logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName())); break; -} +} // END - switch // [EOF] ?>