diff options
author | jhunkeler <jhunkeler@c5b2fb0a-d05d-0410-98c8-828840a80ff6> | 2009-12-25 00:38:03 -0500 |
---|---|---|
committer | jhunkeler <jhunkeler@c5b2fb0a-d05d-0410-98c8-828840a80ff6> | 2009-12-25 00:38:03 -0500 |
commit | 752d40ac119723885e7923fc37f2e6f0db086f21 (patch) | |
tree | 3b96530f6ae9b0222bccfe4127b8b6b043358168 | |
parent | 44a18f3e13077138af782f96cffb39294bca6283 (diff) | |
download | bayonetcms-752d40ac119723885e7923fc37f2e6f0db086f21.tar.gz |
Debugging was incomplete. Apparently I forgot to double-check to make
certain that arrays and objects were being parsed out in the correct
fashion. That has been fixed, so decho will properly insert both types
into the message stack.
logQueueFlush can now be forced to operate if debugging is disabled globally
Example: logQueueFlush(FORCE);
The inital commit of the download module has been added. It works, but
the MySQL back-end needs to be beefed up with more file information.
git-svn-id: http://svn.3rd-infantry-division.org/testing/branches/Bayonet CMS v2@399 c5b2fb0a-d05d-0410-98c8-828840a80ff6
-rw-r--r-- | includes/debug.php | 50 | ||||
-rw-r--r-- | includes/functions.php | 18 | ||||
-rw-r--r-- | modules/download/index.php | 65 |
3 files changed, 117 insertions, 16 deletions
diff --git a/includes/debug.php b/includes/debug.php index c50e016..1a5dcb1 100644 --- a/includes/debug.php +++ b/includes/debug.php @@ -21,6 +21,7 @@ define("RUDI_DEBUG",true); define("RUDI_DEBUG_LEVEL",true); define('NO_REPEAT',false); define('REPEAT',true); +define('FORCE', true); static $last_message = NULL; static $last_message_count = 0; @@ -29,32 +30,44 @@ static $log_message_last = NULL; static $log_message_queue = array(); static $log_message_pos = 0; -function decho($message, $from = "GENERIC") +function decho($message, $force = false) { global $log_message_last, $log_message_queue, $log_message_pos, $config; - - if($config['debug']['enabled'] == false || + /* + if($force == false) + { + if($config['debug']['enabled'] == false || $config['debug']['show_messages'] == false) return; + } + */ date_default_timezone_set($config['logs']['timezone']); $timestamp = date('H:i:s T'); - $message = "[$timestamp]: $message"; + if(!is_array($message) && !is_object($message)) + $message = "[$timestamp]: $message"; + else + { + $message = $message; + } array_push($log_message_queue, $message); $log_message_pos++; } -function queuePrint($obj) +function queuePrint($obj, $force = false) { global $config; - if($config['debug']['enabled'] == false || + if($force == false) + { + if($config['debug']['enabled'] == false || $config['debug']['show_messages'] == false) return; - + } + if(is_array($obj)) { $array_dump = print_r($obj,true); - echo $array_dump . "<br/>\n"; + echo "<pre>" . $array_dump . "</pre><br/>\n"; //WriteLog($array_dump,BAYONET_LOG_INFO); } elseif(is_object($obj)) @@ -65,7 +78,7 @@ function queuePrint($obj) ob_end_clean(); //htmlentities($obj_dump,ENT_QUOTES); //WriteLog($obj_dump,BAYONET_LOG_INFO); - echo $obj_dump . "<br/>\n"; + echo "<pre>" . $obj_dump . "</pre><br/>\n"; } elseif(is_string($obj)) { @@ -75,11 +88,14 @@ function queuePrint($obj) } } -function logQueueFlush() +function logQueueFlush($force = false) { global $log_message_queue, $config; - if($config['debug']['show_messages'] == false) return; + if($force == false) + { + if($config['debug']['show_messages'] == false) return; + } $messageCount = 0; static $log_message_last_count = 0; @@ -91,8 +107,11 @@ function logQueueFlush() foreach($log_message_queue as $message) { if($message != $log_message_queue[$messageCount - 1]) - { - queuePrint($message); + { + if($force) + queuePrint($message, true); + else + queuePrint($message); } elseif($message == $log_message_queue[$messageCount - 1]) { @@ -100,7 +119,10 @@ function logQueueFlush() if($config['debug']['repeat_messages'] == true) { //echo "{$messageCount}: $message<br/>\n"; - queuePrint($message); + if($force) + queuePrint($message,true); + else + queuePrint($message); } if($config['debug']['repeat_messages'] == false) { diff --git a/includes/functions.php b/includes/functions.php index 4518fa8..6238ec4 100644 --- a/includes/functions.php +++ b/includes/functions.php @@ -175,13 +175,13 @@ function BBCode($Text) // Images // [img]pathtoimage[/img] - $Text = preg_replace("/\[img\](.+?)\[\/img\]/", '<img src="$1">', $Text); + $Text = preg_replace("/\[img\](.+?)\[\/img\]/", '<img src="$1" />', $Text); //[img=align]image source[/img] $Text = preg_replace("(\[img align\=(.+?)\](.+?)\[\/img\])is","<img src=\"$2\" align=\"$1\" />",$Text); // [img=widthxheight]image source[/img] - $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '<img src="$3" height="$2" width="$1">', $Text); + $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '<img src="$3" height="$2" width="$1" />', $Text); // Alignment // [align=type]text[/align] @@ -251,6 +251,20 @@ function LinkModule($module_name,$args = NULL,$link_name) } /** + * LinkModuleFile() + * + * Helper function to link to Bayonet internal module files. + * + * @param mixed $module_name + * @param mixed $link_name + * @return + */ + function LinkModuleFile($module_name, $file_name, $link_name) + { + return "<a href=\"?load={$module_name}&file={$file_name}\">{$link_name}</a>"; + } + +/** * LinkPage() * * Helper function to link to Bayonet pages. diff --git a/modules/download/index.php b/modules/download/index.php new file mode 100644 index 0000000..1fa99e5 --- /dev/null +++ b/modules/download/index.php @@ -0,0 +1,65 @@ +<?php
+/**
+ * Bayonet Content Management System
+ * Copyright (C) 2008 Joseph Hunkeler & Evan O'Connell
+ *
+ * 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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+if(!defined("MODULE_FILE"))
+{
+ die("Access denied...");
+}
+global $db;
+$download = NULL;
+$download_relative_path = "modules/" . basename(dirname(__FILE__)) . "/files/";
+$download_absolute_path = dirname(__FILE__) . "/files/";
+
+$result = $db->Query("SELECT uid, name, description, filename FROM bayonet_downloads");
+while(($row = $db->Fetch($result)) !== false)
+{
+ $download[] = $row;
+}
+
+OpenTable();
+echo "<div class=\"contentHeading\">Downloads</div>";
+echo "<div class=\"content\">";
+foreach($download as $file)
+{
+ $download_full_path = $download_absolute_path . $file['filename'];
+
+ if(file_exists($download_full_path))
+ {
+ echo "<p>";
+ echo LinkInternal($file['name'], $file['filename'], $download_relative_path) . "<br/>\n";
+ echo "<b>Filename:</b> {$file['filename']}<br/>\n";
+ printf("<b>Size:</b> %.2fKB<br/>\n", filesize($download_full_path) / 1024);
+ echo "<b>MD5 Hash:</b> " . md5_file($download_full_path) . "<br/>\n";
+ echo "<b>Description:</b> {$file['description']}<br/>\n";
+ echo "</p>";
+ }
+ else
+ {
+ decho("File $download_absolute_path{$file['filename']} does not exist! Not listing for download.");
+ }
+}
+decho($download);
+//logQueueFlush(FORCE);
+
+echo "</div>";
+
+CloseTable();
+
+
+?>
\ No newline at end of file |