* Added Karsten D.s patches for DBAL.
[Packages/TYPO3.CMS.git] / t3lib / class.t3lib_bedisplaylog.php
index 8f75d00..c8cc389 100644 (file)
@@ -1,22 +1,22 @@
 <?php
 /***************************************************************
 *  Copyright notice
-*  
-*  (c) 1999-2003 Kasper Skaarhoj (kasper@typo3.com)
+*
+*  (c) 1999-2004 Kasper Skaarhoj (kasperYYYY@typo3.com)
 *  All rights reserved
 *
-*  This script is part of the TYPO3 project. The TYPO3 project is 
+*  This script is part of the TYPO3 project. The TYPO3 project 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 2 of the License, or
 *  (at your option) any later version.
-* 
+*
 *  The GNU General Public License can be found at
 *  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license 
+*  A copy is found in the textfile GPL.txt and important notices to the license
 *  from the author is found in LICENSE.txt distributed with these scripts.
 *
-* 
+*
 *  This script 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
 *
 *  This copyright notice MUST APPEAR in all copies of the script!
 ***************************************************************/
-/** 
+/**
  * Contains class for display of backend log
  *
  * $Id$
  * Revised for TYPO3 3.6 July/2003 by Kasper Skaarhoj
  * XHTML compliant
  *
- * @author     Kasper Skaarhoj <kasper@typo3.com>
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
  */
 /**
  * [CLASS/FUNCTION INDEX of SCRIPT]
  *
  *
  *
- *   81: class t3lib_BEDisplayLog 
- *  100:     function initArray()      
- *  117:     function getTimeLabel($code)      
- *  132:     function getUserLabel($code)      
- *  146:     function getTypeLabel($code)      
- *  160:     function getActionLabel($code)    
- *  178:     function getDetails($code,$text,$data,$sys_log_uid=0)     
- *  211:     function reset()  
- *  225:     function getErrorFormatting($sign)        
- *  235:     function formatDetailsForList($row)       
- *  252:     function stripPath($inArr)        
+ *   81: class t3lib_BEDisplayLog
+ *  102:     function initArray()
+ *  119:     function getTimeLabel($code)
+ *  134:     function getUserLabel($code)
+ *  148:     function getTypeLabel($code)
+ *  162:     function getActionLabel($code)
+ *  180:     function getDetails($code,$text,$data,$sys_log_uid=0)
+ *  212:     function reset()
+ *  226:     function getErrorFormatting($sign)
+ *  236:     function formatDetailsForList($row)
+ *  253:     function stripPath($inArr)
  *
  * TOTAL FUNCTIONS: 10
  * (This index is automatically created/updated by the extension "extdeveval")
 /**
  * This class holds some functions used to display the sys_log table-content.
  * Used in the status-scripts and the log-module.
- * 
- * @author     Kasper Skaarhoj <kasper@typo3.com>
+ *
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
  * @package TYPO3
  * @subpackage t3lib
  * @see tx_belog_webinfo, SC_mod_tools_log_index
  */
 class t3lib_BEDisplayLog {
-       var $lastTimeLabel='';
-       var $lastUserLabel='';
-       var $lastTypeLabel='';
-       var $lastActionLabel='';
-       
+       var $lastTimeLabel = '';
+       var $lastUserLabel = '';
+       var $lastTypeLabel = '';
+       var $lastActionLabel = '';
+
        var $detailsOn = 1;     // If detailsOn, %s is substituted with values from the data-array (see getDetails())
        var $stripPath = 1;     // This strips the path from any value in the data-array when the data-array is parsed through stripPath()
        var $errorSign = Array(
@@ -92,10 +92,12 @@ class t3lib_BEDisplayLog {
                3 => 'Secur!'
        );
 
+       var $be_user_Array = array();           // Username array (set externally)
+
        /**
         * Initialize the log table array with header labels.
-        * 
-        * @return      array           
+        *
+        * @return      array
         */
        function initArray()    {
                $codeArr=Array();
@@ -109,8 +111,8 @@ class t3lib_BEDisplayLog {
        }
 
        /**
-        * Get time label
-        * 
+        * Get time label for log listing
+        *
         * @param       integer         Timestamp to display
         * @return      string          If the timestamp was also shown last time, then "." is returned. Otherwise the new timestamp formatted with ->doc->formatTime()
         */
@@ -120,26 +122,26 @@ class t3lib_BEDisplayLog {
                        $this->lastTimeLabel=$t;
                        return $t;
                } else return '.';
-               
+
        }
 
        /**
-        * Get user name label
-        * 
+        * Get user name label for log listing
+        *
         * @param       integer         be_user uid
         * @return      string          If username is different from last username then the username, otherwise "."
         */
        function getUserLabel($code)    {
                if ($this->lastUserLabel!=$code)        {
                        $this->lastUserLabel=$code;
-                       $label=$GLOBALS['be_user_Array'][$code]['username'];
+                       $label = $this->be_user_Array[$code]['username'];
                        return $label ? $label : '['.$code.']';
                } else return '.';
        }
 
        /**
-        * Get type label
-        * 
+        * Get type label for log listing
+        *
         * @param       string          Key for the type label in locallang
         * @return      string          If labe is different from last type label then the label is returned, otherwise "."
         */
@@ -152,8 +154,8 @@ class t3lib_BEDisplayLog {
        }
 
        /**
-        * Get action label
-        * 
+        * Get action label for log listing
+        *
         * @param       string          Key for the action label in locallang
         * @return      string          If labe is different from last action label then the label is returned, otherwise "."
         */
@@ -167,7 +169,7 @@ class t3lib_BEDisplayLog {
 
        /**
         * Get details for the log entry
-        * 
+        *
         * @param       string          Suffix to "msg_" to get label from locallang.
         * @param       string          Details text
         * @param       array           Data array
@@ -180,9 +182,9 @@ class t3lib_BEDisplayLog {
                if (is_array($data))    {
                        if ($this->detailsOn)   {
                                if (is_object($GLOBALS['LANG']))        {
-                                       $label=$GLOBALS['LANG']->getLL('msg_'.$code);
+                                       $label = $GLOBALS['LANG']->getLL('msg_'.$code);
                                } else {
-                                       list($label)=explode(',',$text);
+                                       list($label) = explode(',',$text);
                                }
                                if ($label)     {$text=$label;}
                                $text = sprintf($text, htmlspecialchars($data[0]),htmlspecialchars($data[1]),htmlspecialchars($data[2]),htmlspecialchars($data[3]),htmlspecialchars($data[4]));
@@ -190,11 +192,10 @@ class t3lib_BEDisplayLog {
                                $text = str_replace('%s','',$text);
                        }
                }
-               
+
                        // Finding the history for the record
-               $query='SELECT uid,fieldlist FROM sys_history WHERE sys_log_uid='.intval($sys_log_uid);
-               $res = mysql(TYPO3_db,$query);
-               $newRow = mysql_fetch_assoc($res);
+               $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('uid,fieldlist', 'sys_history', 'sys_log_uid='.intval($sys_log_uid));
+               $newRow = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res);
                if (is_array($newRow))  {
                        $text.=' Changes in fields: <em>'.$newRow['fieldlist'].'</em>.';
                        $text.=' <a href="'.htmlspecialchars($GLOBALS['BACK_PATH'].'show_rechis.php?sh_uid='.$newRow['uid'].'&returnUrl='.rawurlencode(t3lib_div::getIndpEnv('REQUEST_URI'))).'"><b>->His</b></a>';
@@ -204,9 +205,9 @@ class t3lib_BEDisplayLog {
        }
 
        /**
-        * Reset
-        * 
-        * @return      void            
+        * Reset all internal "last..." variables to blank string.
+        *
+        * @return      void
         */
        function reset()        {
                $this->lastTimeLabel='';
@@ -217,7 +218,7 @@ class t3lib_BEDisplayLog {
 
        /**
         * Formats input string in red-colored font tags
-        * 
+        *
         * @param       string          Input value
         * @return      string          Input wrapped in red font-tag and bold
         * @obsolete
@@ -228,7 +229,7 @@ class t3lib_BEDisplayLog {
 
        /**
         * Formatting details text for the sys_log row inputted
-        * 
+        *
         * @param       array           sys_log row
         * @return      string          Details string
         */
@@ -244,9 +245,9 @@ class t3lib_BEDisplayLog {
        /**
         * For all entries in the $inArray (expected to be filepaths) the basename is extracted and set as value (if $this->stripPath is set)
         * This is done for log-entries from the FILE modules
-        * 
-        * @param       array           
-        * @return      array           
+        *
+        * @param       array           Array of file paths
+        * @return      array
         * @see formatDetailsForList()
         */
        function stripPath($inArr)      {
@@ -254,7 +255,7 @@ class t3lib_BEDisplayLog {
                        while(list($key,$val)=each($inArr))     {
                                $inArr[$key]=basename($val);
                        }
-               }       
+               }
                return $inArr;
        }
 }