X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-debug.php;h=9a3296b7ef1aa6498d167e20d8d6eef59ee3cd52;hp=7b626c069f4723341e14f0452cb4b13ec128d95a;hb=e5527fd38a6585c8466dc28d013f12d21eb7c07a;hpb=e2148142f8b1a8f40fd6e7ca32185569c5a9083e diff --git a/inc/extensions/ext-debug.php b/inc/extensions/ext-debug.php index 7b626c069f..9a3296b7ef 100644 --- a/inc/extensions/ext-debug.php +++ b/inc/extensions/ext-debug.php @@ -14,11 +14,10 @@ * $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 * - * 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 * @@ -39,53 +38,53 @@ // 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'); // This extension is in development (non-productive) -enableExtensionProductive(false); +enableExtensionProductive(FALSE); switch (getExtensionMode()) { - case 'register': // Do stuff when installation is running (modules.php?module=admin is called) + case 'setup': // 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', `file` VARCHAR(255) NOT NULL DEFAULT '', -`line` MEDIUMINT NOT NOT NULL DEFAULT 0, -`message` LONGTEXT, -`comment` TINYTEXT, +`line` MEDIUMINT NOT NULL DEFAULT 0, +`message` LONGTEXT NOT NULL, +`comment` TINYTEXT NOT NULL, `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, +`raw_data` LONGTEXT NOT NULL, `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 '', @@ -94,57 +93,57 @@ PRIMARY KEY (`id`) `status` ENUM('ACTIVE','NEW','PENDING','LOCKED','DELETED','SPAM') NOT NULL DEFAULT 'PENDING', `type` ENUM ('CLIENT','RELAY','SERVER') NOT NULL DEFAULT 'CLIENT', `inserted` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, -`lock_spam_reason` TINYTEXT, -UNIQUE (`key`), -UNIQUE (`url`), -PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?} COMMENT='Debug clients'"); +`lock_spam_reason` TINYTEXT NOT NULL, +PRIMARY KEY (`id`), +UNIQUE INDEX (`key`), +UNIQUE INDEX (`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')"); + 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`), -UNIQUE (`log_id`), -PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?} COMMENT='Debug client <-> log connection'"); +PRIMARY KEY (`id`), +UNIQUE INDEX (`log_id`), +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 {?TITLE?}-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 {?TITLE?}-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())); + reportBug(__FILE__, __LINE__, sprintf('Unknown extension mode %s in extension %s detected.', getExtensionMode(), getCurrentExtensionName())); break; -} +} // END - switch // [EOF] ?>