aboutsummaryrefslogtreecommitdiff
path: root/include/debug.php
diff options
context:
space:
mode:
authorthirdid <thirdid@c5b2fb0a-d05d-0410-98c8-828840a80ff6>2010-01-26 22:40:33 -0500
committerthirdid <thirdid@c5b2fb0a-d05d-0410-98c8-828840a80ff6>2010-01-26 22:40:33 -0500
commit88d5d2af84cde0ce1107551fd2a61455e493b7c8 (patch)
tree3b728a2a0de423e1097dc53317658f43704e8399 /include/debug.php
parent3dfd48f1219caddf6b3bbf7e463b06648364d338 (diff)
downloadbayonetcms-88d5d2af84cde0ce1107551fd2a61455e493b7c8.tar.gz
Changing directory 'includes' -> 'include'
git-svn-id: http://svn.3rd-infantry-division.org/testing/branches/Bayonet CMS v2.1@465 c5b2fb0a-d05d-0410-98c8-828840a80ff6
Diffstat (limited to 'include/debug.php')
-rw-r--r--include/debug.php225
1 files changed, 225 insertions, 0 deletions
diff --git a/include/debug.php b/include/debug.php
new file mode 100644
index 0000000..29f4195
--- /dev/null
+++ b/include/debug.php
@@ -0,0 +1,225 @@
+<?php
+/**
+ * Bayonet Content Management System
+ * Copyright (C) 2008 Joseph Hunkeler
+ *
+ * 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/>.
+ */
+
+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;
+
+static $log_message_last = NULL;
+static $log_message_queue = array();
+static $log_message_pos = 0;
+
+function decho($message, $force = false)
+{
+ global $log_message_last, $log_message_queue, $log_message_pos, $config;
+
+ 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');
+ if(!is_array($message) && !is_object($message))
+ $message = "[$timestamp]: $message";
+ else
+ {
+ $message = $message;
+ }
+
+ //if(count($log_message_queue) >= 100)
+ // array_pop($log_message_queue);
+
+ array_push($log_message_queue, $message);
+
+ $log_message_pos++;
+}
+
+function queuePrint($obj, $force = false)
+{
+ global $config;
+
+ if($force == false)
+ {
+ if($config['debug']['enabled'] == false ||
+ $config['debug']['show_messages'] == false) return;
+ }
+
+ if(is_array($obj))
+ {
+ $array_dump = print_r($obj,true);
+ if(empty($obj))
+ {
+ echo "Array was empty<br />\n";
+ return;
+ }
+ echo "<pre>" . $array_dump . "</pre><br/>\n";
+ //WriteLog($array_dump,BAYONET_LOG_INFO);
+ }
+ elseif(is_object($obj))
+ {
+ ob_start();
+ var_dump($obj);
+ $obj_dump = ob_get_contents();
+ ob_end_clean();
+ //htmlentities($obj_dump,ENT_QUOTES);
+ //WriteLog($obj_dump,BAYONET_LOG_INFO);
+ echo "<pre>" . $obj_dump . "</pre><br/>\n";
+ }
+ elseif(is_string($obj))
+ {
+ $message = wordwrap($obj,80,'<br />');
+ echo $obj . "<br/>\n";
+ //WriteLog($message,BAYONET_LOG_INFO);
+ }
+ else
+ {
+ echo "queuePrint: Invalid type of " . gettype($obj) . "<br/>\n";
+ }
+}
+
+function logQueueFlush($force = false)
+{
+ error_reporting(0);
+ global $log_message_queue, $config;
+
+ if($force == false)
+ {
+ if($config['debug']['show_messages'] == false) return;
+ }
+
+ $messageCount = 0;
+ static $log_message_last_count = 0;
+ static $next = false;
+
+ OpenContent();
+ echo "<div class=\"contentHeading\">Bayonet Debug Messages</div>";
+ echo "<div class=\"content\">";
+
+ if(count($log_message_queue) < 1)
+ {
+ echo "<p>No messages</p>";
+ echo "</div></div>";
+ return false;
+ }
+
+ echo "<b>" . count($log_message_queue) . " messages received.</b><br/><br/>\n";
+ foreach($log_message_queue as $message)
+ {
+ if($message != $log_message_queue[$messageCount - 1])
+ {
+ if($force)
+ queuePrint($message, true);
+ else
+ queuePrint($message);
+ }
+ elseif($message == $log_message_queue[$messageCount - 1])
+ {
+ $log_message_last_count++;
+ if($config['debug']['repeat_messages'] == true)
+ {
+ //echo "{$messageCount}: $message<br/>\n";
+ if($force)
+ queuePrint($message,true);
+ else
+ queuePrint($message);
+ }
+ if($config['debug']['repeat_messages'] == false)
+ {
+ if($log_message_queue[$messageCount + 1] != $message)
+ {
+ $next = true;
+ }
+ }
+
+ }
+
+ if($next == true)
+ {
+ queuePrint("<b>Last message recieved $log_message_last_count times</b><br/>\n");
+ $log_message_last_count = 0;
+ $next = false;
+ }
+
+ ++$messageCount;
+ }
+
+ echo "</div>";
+ CloseContent();
+ error_reporting(1);
+}
+
+/*
+function decho($message, $flag = REPEAT)
+{
+ global $last_message, $last_message_count;
+ if($last_message == $message)
+ {
+ if($flag == NO_REPEAT)
+ ++$last_message_count;
+ else
+ $last_message_count = $last_message_count;
+ return;
+ }
+ elseif($last_message != $message)
+ {
+ if($last_message_count > 0 && !is_array($last_message) && !is_object($last_message))
+ {
+ WriteLog("Receieved previous message <b>$last_message_count</b> times\n",BAYONET_LOG_INFO);
+ }
+ else
+ {
+ if(is_array($message))
+ {
+ $array_dump = print_r($message,true);
+ WriteLog($array_dump,BAYONET_LOG_INFO);
+ }
+ elseif(is_object($message))
+ {
+ ob_start();
+ var_dump($message);
+ $obj_dump = ob_get_contents();
+ ob_end_clean();
+ //htmlentities($obj_dump,ENT_QUOTES);
+ WriteLog($obj_dump,BAYONET_LOG_INFO);
+ }
+ elseif(is_string($message))
+ {
+ $message = wordwrap($message,80,'<br />');
+ WriteLog($message,BAYONET_LOG_INFO);
+ }
+ }
+
+ $last_message_count = 0;
+ }
+
+ $last_message = $message;
+
+}
+*/
+
+
+?> \ No newline at end of file