* -------------------------------------------------------------------- *
* Kurzbeschreibung : Management fuer Zugriffslogbuecher *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $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 - 2008 by Roland Haeder *
* For more information visit: http://www.mxchange.org *
************************************************************************/
// Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
-{
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
+ $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
require($INC);
}
+
// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+ADD_DESCR('admin', __FILE__);
-if (!empty($_GET['access'])) {
+if (REQUEST_ISSET_GET('access')) {
// Secure input and construct FQFN
- $access = SQL_ESCAPE(strip_tags($_GET['access']));
- $target = sprintf("%slogs/%s", PATH, $access);
+ $access = SQL_ESCAPE(strip_tags(REQUEST_GET('access')));
+ $target = sprintf("%slogs/%s", constant('PATH'), $access);
// Is the file valid and readable?
- if (FILE_READABLE($target)) {
+ if (isFileReadable($target)) {
// Load it directly
- $content = implode("", file($target));
+ $content = readFromFile($target);
+
+ // Save old content
+ $OUTPUT = ob_get_contents();
+
+ // Clean content
+ clearOutputBuffer();
// Set header
- if (substr($access, -3, 3) == "log") {
- header("Content-Type: text/plain");
- } elseif (substr($access, -3, 3) == ".gz") {
- header("Content-Type: text/plain");
+ if (substr($access, -3, 3) == 'log') {
+ // Output header
+ sendHeader('Content-Type: text/plain');
+ } elseif (substr($access, -3, 3) == '.gz') {
+ // @TODO Fix content-type here
+ sendHeader('Content-Type: text/plain');
+ } elseif (substr($access, -3, 3) == '.bz2') {
+ // @TODO Fix content-type here
+ sendHeader('Content-Type: text/plain');
} else {
- LOAD_TEMPLATE("admin_settings_saved", false, UNKNOWN_LOGFILE_FORMAT_1.$access.UNKNOWN_LOGFILE_FORMAT_2);
+ // Restore old content
+ OUTPUT_HTML($OUTPUT);
+
+ // Output message
+ LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_UNKNOWN_LOGFILE_FORMAT'), $access));
return;
}
- // Clean content
- ob_end_clean();
-
// Output the logfile's content and exit
print($content);
- exit;
+ shutdown();
} else {
// Not readable!
- LOAD_TEMPLATE("admin_settings_saved", false, LOGFILE_NOT_READABLE_1.$access.LOGFILE_NOT_READABLE_2);
+ LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('LOGFILE_NOT_READABLE'), $access));
}
} else {
// List access logfiles
- $dir = PATH.LOGS_BASE."/";
- if (is_dir($dir)) {
+ $dir = constant('PATH') . getConfig('logs_base') . '/';
+
+ // Is the directory there?
+ if (isDirectory($dir)) {
// logs directory does exist
- OUTPUT_HTML("<OL>");
- $handle = @opendir($dir) or mxchange_die("Cannot open directory ".LOGS_BASE."!");
- while($file = @readdir($handle)) {
+ OUTPUT_HTML("<ol>");
+ $handle = opendir($dir) or app_die(__FILE__, __LINE__, 'Cannot open directory '.getConfig('logs_base') . '!');
+ while ($file = readdir($handle)) {
// We currenly only like files with "access" as prefix, should be more flexible!
- if (substr($file, 0, 6) == "access") {
+ if (substr($file, 0, 6) == 'access') {
// Okay, let us print it out
- OUTPUT_HTML("<LI><A href=\"".URL."/modules.php?module=admin&what=".$GLOBALS['what']."&access=".urlencode($file)."\">".$file."</A></LI>");
+ OUTPUT_HTML("<li><a href=\"{!URL!}/modules.php?module=admin&what=".getWhat()."&access=".urlencode($file)."\">".$file."</a></li>");
}
}
- @closedir($handle);
- OUTPUT_HTML("</OL>");
- }
- else
- {
+ closedir($handle);
+ OUTPUT_HTML("</ol>");
+ } else {
// logs directory does not exist
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_LOGS_DIR_404_1.LOGS_BASE.ADMIN_LOGS_DIR_404_2);
+ LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_LOGS_DIR_404'), getConfig('logs_base')));
}
}