Updated the way debug=yes in url works to make it visually more appealing

This commit is contained in:
Neil Lathwood 2015-02-18 23:03:23 +00:00
parent 5e9e859272
commit d593710fc5
4 changed files with 111 additions and 2 deletions

View File

@ -1628,3 +1628,6 @@ tr.search:nth-child(odd) {
font-size: 2.5em;
}
.navbar-debug {
min-height: 25px;
}

View File

@ -0,0 +1,89 @@
<?php
$total_queries = count($sql_debug);
$total_php_issues = count($php_debug);
?>
<div class="modal fade" id="sql_debug" tabindex="-1" role="dialog" aria-labelledby="sql_debug_label" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="myModalLabel">SQL Debug</h4>
</div>
<div class="modal-body">
<table class="table table-condensed table-hover">
<?php
foreach ($sql_debug as $sql_error) {
echo ("
<tr>
<td>
$sql_error
</td>
</tr>
");
}
echo ("
<tr>
<td>
$total_queries total SQL queries run.
</td>
</tr>
");
?>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="php_debug" tabindex="-1" role="dialog" aria-labelledby="php_debug_label" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="myModalLabel">SQL Debug</h4>
</div>
<div class="modal-body">
<table class="table table-condensed table-hover">
<?php
foreach ($php_debug as $php_error) {
echo ("
<tr>
<td>
");
print_r($php_error);
echo("
</td>
</tr>
");
}
echo ("
<tr>
<td>
$total_php_issues total PHP issues / errors.
</td>
</tr>
");
?>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<nav class="navbar navbar-default navbar-fixed-bottom navbar-debug">
<div class="container-fluid">
<p><strong>Debug options:</strong> <a href="#" data-toggle="modal" data-target="#sql_debug">Show SQL Debug</a> / <a href="#" data-toggle="modal" data-target="#php_debug">Show PHP Debug</a></p>
</div>
</nav>

View File

@ -47,6 +47,7 @@ if (strpos($_SERVER['PATH_INFO'], "debug"))
ini_set('display_startup_errors', 1);
ini_set('log_errors', 1);
ini_set('error_reporting', E_ALL);
set_error_handler('logErrors');
} else {
$debug = FALSE;
ini_set('display_errors', 0);
@ -55,6 +56,11 @@ if (strpos($_SERVER['PATH_INFO'], "debug"))
ini_set('error_reporting', 0);
}
function logErrors($errno, $errstr, $errfile, $errline) {
global $php_debug;
$php_debug[] = array('errno' => $errno, 'errstr' => $errstr, 'errfile' => $errfile, 'errline' => $errline);
}
foreach ($_GET as $key=>$get_var)
{
if (strstr($key, "opt"))
@ -330,6 +336,13 @@ toastr.options.extendedTimeOut = 20;
echo("</script>");
}
if (is_array($sql_debug) && is_array($php_debug)) {
include_once "includes/print-debug.php";
}
?>
</body>
</html>

View File

@ -22,10 +22,14 @@ Usage
* Used by the other _query functions.
* */
function dbQuery($sql, $parameters = array()) {
global $fullSql, $debug;
global $fullSql, $debug, $sql_debug;
$fullSql = dbMakeQuery($sql, $parameters);
if($debug) {
print Console_Color::convert("\nSQL[%y".$fullSql."%n] ");
if(php_sapi_name() == 'cli' && empty($_SERVER['REMOTE_ADDR'])) {
print Console_Color::convert("\nSQL[%y".$fullSql."%n] ");
} else {
$sql_debug[] = $fullSql;
}
#echo("\nSQL[".$fullSql."] ");
}