From 5e8ae6820176b8cfaef5b385204cbb040d90c59a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?C=C3=B4me=20Bernigaud?= <come.bernigaud@laposte.net>
Date: Fri, 5 Jul 2013 15:34:58 +0200
Subject: [PATCH] Fixes: #2554 functions_debug should follow guidelines

---
 include/functions_debug.inc | 165 ++++++++++++++++--------------------
 1 file changed, 74 insertions(+), 91 deletions(-)

diff --git a/include/functions_debug.inc b/include/functions_debug.inc
index ba9705ba1..e9f1cdcbf 100644
--- a/include/functions_debug.inc
+++ b/include/functions_debug.inc
@@ -37,7 +37,7 @@
 ----------------------------------------------------------------------*/
 
 
-# This file must be the first include on your page.
+// This file must be the first include on your page.
 
 /* used for tracking of generation-time */
 {
@@ -61,34 +61,34 @@
  */
 class Print_a_class {
 
-  # this can be changed to FALSE if you don't like the fancy string formatting
+  // this can be changed to FALSE if you don't like the fancy string formatting
   var $look_for_leading_tabs = TRUE;
 
   var $output;
   var $iterations;
-  var $key_bg_color = '1E32C8';
+  var $key_bg_color   = '1E32C8';
   var $value_bg_color = 'DDDDEE';
-  var $fontsize = '8pt';
-  var $keyalign = 'center';
-  var $fontfamily = 'Verdana';
+  var $fontsize       = '8pt';
+  var $keyalign       = 'center';
+  var $fontfamily     = 'Verdana';
   var $export_flag;
   var $show_object_vars;
   var $export_dumper_path = 'http://tools.www.mdc.xmc.de/print_a_dumper/print_a_dumper.php';
-  # i'm still working on the dumper! don't use it now
-  # put the next line into the print_a_dumper.php file (optional)
-  # print htmlspecialchars( stripslashes ( $_POST['array'] ) );
+  /* i'm still working on the dumper! don't use it now
+  * put the next line into the print_a_dumper.php file (optional)
+  * print htmlspecialchars( stripslashes ( $_POST['array'] ) ); */
   var $export_hash;
 
   /*!
    * \brief Print_a_class constructor
    */
-  function Print_a_class() {
+  function __construct()
+  {
     $this->export_hash = uniqid('');
   }
 
 
-  /*!
-   *  recursive function!
+  /*! recursive function!
    * if print_a() was called with a fourth parameter (1 or 2)
    * and you click on the table a window opens with only the output of print_a() in it
    * 1 = serialized array
@@ -110,16 +110,17 @@ class Print_a_class {
    *
    * \param boolean $key_bg_colo false
    */
-  function print_a($array, $iteration = FALSE, $key_bg_color = FALSE) {
+  function print_a($array, $iteration = FALSE, $key_bg_color = FALSE)
+  {
     $key_bg_color or $key_bg_color = $this->key_bg_color;
 
-    if( !$iteration && isset($this->export_flag) ) {
+    if (!$iteration && isset($this->export_flag)) {
       $this->output .= '<form id="pa_form_'.$this->export_hash.'" action="'.$this->export_dumper_path.'?mode='.$this->export_flag.'" method="post" target="_blank"><input name="array" type="hidden" value="'.htmlspecialchars( serialize( $array ) ).'"></form>';
     }
 
-    # lighten up the background color for the key td's =)
-    if( $iteration ) {
-      for($i=0; $i<6; $i+=2) {
+    // lighten up the background color for the key td's =)
+    if ($iteration) {
+      for ($i = 0; $i < 6; $i += 2) {
         $c = substr( $key_bg_color, $i, 2 );
         $c = hexdec( $c );
         ( $c += 15 ) > 255 and $c = 255;
@@ -129,18 +130,17 @@ class Print_a_class {
       $key_bg_color = $tmp_key_bg_color;
     }
 
-    # build a single table ... may be nested
+    // build a single table ... may be nested
     $this->output .= '<table style="border:none;" cellspacing="1" '.( !$iteration && $this->export_flag ? 'onClick="document.getElementById(\'pa_form_'.$this->export_hash.'\').submit();" )' : '' ).'>';
-    foreach( $array as $key => $value ) {
+    foreach ($array as $key => $value) {
 
-      $value_style = 'color:black;';
-      $key_style = 'color:white;';
+      $value_style  = 'color:black;';
+      $key_style    = 'color:white;';
 
-      $type = gettype( $value );
-      # print $type.'<br />';
+      $type = gettype($value);
 
-      # change the color and format of the value
-      switch( $type ) {
+      // change the color and format of the value
+      switch ($type) {
         case 'array':
           break;
 
@@ -165,14 +165,14 @@ class Print_a_class {
           break;
 
         case 'string':
-          if( $this->look_for_leading_tabs && preg_match('/^\t/m', $value) ) {
-            $search = array('/\t/', "/\n/");
-            $replace = array('&nbsp;&nbsp;&nbsp;','<br />');
-            $value = preg_replace( $search, $replace, htmlspecialchars( $value ) );
-            $value_style = 'color:black;border:1px gray dotted;';
+          if ($this->look_for_leading_tabs && preg_match('/^\t/m', $value)) {
+            $search       = array('/\t/', "/\n/");
+            $replace      = array('&nbsp;&nbsp;&nbsp;','<br />');
+            $value        = preg_replace( $search, $replace, htmlspecialchars($value));
+            $value_style  = 'color:black;border:1px gray dotted;';
           } else {
-            $value_style = 'color:black;';
-            $value = nl2br( htmlspecialchars( $value ) );
+            $value_style  = 'color:black;';
+            $value        = nl2br(htmlspecialchars($value));
           }
           break;
       }
@@ -184,15 +184,15 @@ class Print_a_class {
       $this->output .= '<td nowrap="nowrap" style="background-color:#'.$this->value_bg_color.';font: '.$this->fontsize.' '.$this->fontfamily.'; color:black;">';
 
 
-      # value output
-      if($type == 'array') {
-        if(count($value)){
+      // value output
+      if ($type == 'array') {
+        if (count($value)) {
           $this->print_a( $value, TRUE, $key_bg_color );
-        }else{
+        } else {
           $this->output .= '<div style="color:blue;">Array (empty)</div>';
         }
-      } elseif($type == 'object') {
-        if( $this->show_object_vars ) {
+      } elseif ($type == 'object') {
+        if ($this->show_object_vars) {
           $this->print_a( get_object_vars( $value ), TRUE, $key_bg_color );
         } else {
           $this->output .= '<div style="'.$value_style.'">OBJECT - '.get_class($value).'</div>';
@@ -219,23 +219,27 @@ class Print_a_class {
  *
  * \param boolean $export_flag false
  */
-function print_a( $array, $return_mode = FALSE, $show_object_vars = FALSE, $export_flag = FALSE ) {
-  $e= error_reporting (0);
-  if( is_array( $array ) or is_object( $array ) ) {
+function print_a($array, $return_mode = FALSE, $show_object_vars = FALSE, $export_flag = FALSE )
+{
+  $e = error_reporting(0);
+  if (is_array($array) or is_object($array)) {
     $pa = new Print_a_class;
-    $show_object_vars and $pa->show_object_vars = TRUE;
-    $export_flag and $pa->export_flag = $export_flag;
+    if ($show_object_vars) {
+      $pa->show_object_vars = TRUE;
+    }
+    if ($export_flag) {
+      $pa->export_flag = $export_flag;
+    }
 
-    $pa->print_a( $array );
+    $pa->print_a($array);
 
-    # $output = $pa->output; unset($pa);
     $output = &$pa->output;
   } else {
     $output = '<span style="color:red;font-size:small;">print_a( '.gettype( $array ).' )</span>';
   }
 
   error_reporting ($e);
-  if($return_mode) {
+  if ($return_mode) {
     return $output;
   } else {
     print $output;
@@ -243,13 +247,14 @@ function print_a( $array, $return_mode = FALSE, $show_object_vars = FALSE, $expo
   }
 }
 
-function _script_globals() {
+function _script_globals()
+{
   global $GLOBALS_initial_count;
 
   $varcount = 0;
 
-  foreach($GLOBALS as $GLOBALS_current_key => $GLOBALS_current_value) {
-    if(++$varcount > $GLOBALS_initial_count) {
+  foreach ($GLOBALS as $GLOBALS_current_key => $GLOBALS_current_value) {
+    if (++$varcount > $GLOBALS_initial_count) {
       /* die wollen wir nicht! */
       if ($GLOBALS_current_key != 'HTTP_SESSION_VARS' && $GLOBALS_current_key != '_SESSION') {
         $script_GLOBALS[$GLOBALS_current_key] = $GLOBALS_current_value;
@@ -264,13 +269,14 @@ function _script_globals() {
 /*!
  * \brief Show the runtime
  */
-function show_runtime() {
+function show_runtime()
+{
   $MICROTIME_END    = microtime();
   $MICROTIME_START  = explode(' ', $GLOBALS['MICROTIME_START']);
   $MICROTIME_END    = explode(' ', $MICROTIME_END);
   $GENERATIONSEC    = $MICROTIME_END[1] - $MICROTIME_START[1];
-  $GENERATIONMSEC = $MICROTIME_END[0] - $MICROTIME_START[0];
-  $GENERATIONTIME = substr($GENERATIONSEC + $GENERATIONMSEC, 0, 8);
+  $GENERATIONMSEC   = $MICROTIME_END[0] - $MICROTIME_START[0];
+  $GENERATIONTIME   = substr($GENERATIONSEC + $GENERATIONMSEC, 0, 8);
 
   return '<span style="color:red;font-weight:normal;font-size:9px;">(runtime: '.$GENERATIONTIME.' sec)</span>';
 }
@@ -282,8 +288,11 @@ function show_runtime() {
  * show_vars(1) shows all
  * show_vars(,1) shows object properties in addition
  */
-function show_vars($show_all_vars = FALSE, $show_object_vars = FALSE) {
-  if(isset($GLOBALS['no_vars'])) return;
+function show_vars($show_all_vars = FALSE, $show_object_vars = FALSE)
+{
+  if (isset($GLOBALS['no_vars'])) {
+    return;
+  }
 
   $script_globals = _script_globals();
   print '
@@ -305,20 +314,21 @@ function show_vars($show_all_vars = FALSE, $show_object_vars = FALSE) {
   ';
 
   $vars_arr['script_globals'] = array('global script variables', '#7ACCC8');
-  $vars_arr['_GET'] = array('$_GET', '#7DA7D9');
-  $vars_arr['_POST'] = array('$_POST', '#F49AC1');
-  $vars_arr['_FILES'] = array('$_POST FILES', '#82CA9C');
+
+  $vars_arr['_GET']     = array('$_GET', '#7DA7D9');
+  $vars_arr['_POST']    = array('$_POST', '#F49AC1');
+  $vars_arr['_FILES']   = array('$_POST FILES', '#82CA9C');
   $vars_arr['_SESSION'] = array('$_SESSION', '#FCDB26');
-  $vars_arr['_COOKIE'] = array('$_COOKIE', '#A67C52');
+  $vars_arr['_COOKIE']  = array('$_COOKIE', '#A67C52');
 
-  if($show_all_vars) {
-    $vars_arr['_SERVER'] =  array('SERVER', '#A186BE');
-    $vars_arr['_ENV'] =  array('ENV', '#7ACCC8');
+  if ($show_all_vars) {
+    $vars_arr['_SERVER']  = array('SERVER', '#A186BE');
+    $vars_arr['_ENV']     = array('ENV', '#7ACCC8');
   }
 
-  foreach($vars_arr as $vars_name => $vars_data) {
-    if($vars_name != 'script_globals') global $$vars_name;
-    if($$vars_name) {
+  foreach ($vars_arr as $vars_name => $vars_data) {
+    if ($vars_name != 'script_globals') global $$vars_name;
+    if ($$vars_name) {
       print '<div class="vars-container" style="background-color:'.$vars_data[1].';"><span class="varsname">'.$vars_data[0].'</span><br />';
       print_a($$vars_name, FALSE, $show_object_vars, FALSE );
       print '</div>';
@@ -326,31 +336,4 @@ function show_vars($show_all_vars = FALSE, $show_object_vars = FALSE) {
   }
   print '</div>';
 }
-
-
-/*!
- * \brief Prints sql strings
- *
- * \param string $sql_string
- *
- * \param boolean $simple_mode FALSE
- */
-function pre($sql_string, $simple_mode = FALSE) {
-
-  if(!$simple_mode) {
-    # erste leere Zeile im SQL löschen
-    $sql_string = preg_replace('/\^s+/m','', $sql_string);
-    # letze leere Zeile im SQL löschen
-    $sql_string = preg_replace('/\s+$/m','', $sql_string);
-
-    # kleinste Anzahl von führenden TABS zählen
-    preg_match_all('/^\t+/m', $sql_string, $matches);
-    $minTabCount = strlen(min($matches[0]));
-
-    # und entfernen
-    $sql_string = preg_replace('/^\t{'.$minTabCount.'}/m', '', $sql_string);
-  }
-
-  print '<pre>'.$sql_string.'</pre>';
-}
 ?>
-- 
GitLab