From 752d40ac119723885e7923fc37f2e6f0db086f21 Mon Sep 17 00:00:00 2001 From: jhunkeler Date: Fri, 25 Dec 2009 05:38:03 +0000 Subject: 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 --- includes/debug.php | 50 +++++++++++++++++++++++++---------- includes/functions.php | 18 +++++++++++-- modules/download/index.php | 65 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 117 insertions(+), 16 deletions(-) create mode 100644 modules/download/index.php 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 . "
\n"; + echo "
" . $array_dump . "

\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 . "
\n"; + echo "
" . $obj_dump . "

\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
\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\]/", '', $Text); + $Text = preg_replace("/\[img\](.+?)\[\/img\]/", '', $Text); //[img=align]image source[/img] $Text = preg_replace("(\[img align\=(.+?)\](.+?)\[\/img\])is","",$Text); // [img=widthxheight]image source[/img] - $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $Text); + $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $Text); // Alignment // [align=type]text[/align] @@ -250,6 +250,20 @@ function LinkModule($module_name,$args = NULL,$link_name) return "{$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 "{$link_name}"; + } + /** * LinkPage() * 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 @@ +. + */ + +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 "
Downloads
"; +echo "
"; +foreach($download as $file) +{ + $download_full_path = $download_absolute_path . $file['filename']; + + if(file_exists($download_full_path)) + { + echo "

"; + echo LinkInternal($file['name'], $file['filename'], $download_relative_path) . "
\n"; + echo "Filename: {$file['filename']}
\n"; + printf("Size: %.2fKB
\n", filesize($download_full_path) / 1024); + echo "MD5 Hash: " . md5_file($download_full_path) . "
\n"; + echo "Description: {$file['description']}
\n"; + echo "

"; + } + else + { + decho("File $download_absolute_path{$file['filename']} does not exist! Not listing for download."); + } +} +decho($download); +//logQueueFlush(FORCE); + +echo "
"; + +CloseTable(); + + +?> \ No newline at end of file -- cgit