*** empty log message ***
authorKasper Skårhøj <kasper@typo3.org>
Thu, 12 Jan 2006 12:30:31 +0000 (12:30 +0000)
committerKasper Skårhøj <kasper@typo3.org>
Thu, 12 Jan 2006 12:30:31 +0000 (12:30 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@999 709f56b5-9817-0410-a4d7-c38de5d9e867

TODO.txt
typo3/sysext/lowlevel/config/index.php
typo3/sysext/lowlevel/dbint/index.php
typo3/sysext/lowlevel/dbint/locallang.xml [new file with mode: 0644]

index ac64d77..a48481d 100755 (executable)
--- a/TODO.txt
+++ b/TODO.txt
@@ -48,7 +48,7 @@ TCEmain
                - Implement flexform "index" as well (see marks
                - In "Help > About Modules" screen we might want to look if the index is empty and if so, present a link to "Tools > DB check" tool so the index can be created initially for updated sites?
                - (Make class.t3lib_refindex available in the frontend scope for integration in plugins that manipulate the database on their own and need to update the reference index. Actually, I'm inclined to think we should rather think about how to provide t3lib_tcemain for the frontend instead...!)
-               - CLI script for updating refindex with cron-job and reporting inconsistencies by email
+               - CLI script for updating refindex with cron-job [OK] and reporting inconsistencies by email
        - Record clean-up functionality (Tools > DB check module)
                - Remove references to deleted records (also deleted-to-recycler records? Maybe "deleted-to-recycler" references are important to remove in order to make sure "recycler" records are not selected!) (refs to MM for both tables/files)
                - Remove references to lost files etc.
index 76f163c..fc02709 100755 (executable)
 *  This copyright notice MUST APPEAR in all copies of the script!
 ***************************************************************/
 /**
- * Module: Log-viewing
+ * Module: Config
  *
- * This module lets you view the changelog.
+ * This module lets you view the config variables around TYPO3.
+ *
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
+ */
+/**
+ * [CLASS/FUNCTION INDEX of SCRIPT]
+ *
+ *
+ *
+ *   72: class SC_mod_tools_config_index
+ *   89:     function init()
+ *  103:     function jumpToUrl(URL)
+ *  117:     function menuConfig()
+ *  144:     function main()
+ *  268:     function printContent()
+ *
+ * TOTAL FUNCTIONS: 5
+ * (This index is automatically created/updated by the extension "extdeveval")
  *
- * @author     Kasper Skårhøj <kasperYYYY@typo3.com>
  */
-
 
 unset($MCONF);
-require ("conf.php");
-require ($BACK_PATH."init.php");
-require ($BACK_PATH."template.php");
-require_once (PATH_t3lib."class.t3lib_arraybrowser.php");
+require ('conf.php');
+require ($BACK_PATH.'init.php');
+require ($BACK_PATH.'template.php');
+require_once (PATH_t3lib.'class.t3lib_arraybrowser.php');
 
 $BE_USER->modAccess($MCONF,1);
 
@@ -47,26 +62,40 @@ $BE_USER->modAccess($MCONF,1);
 
 
 
-// ***************************
-// Script Classes
-// ***************************
+/**
+ * Script class for the Config module
+ *
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
+ * @package TYPO3
+ * @subpackage tx_lowlevel
+ */
 class SC_mod_tools_config_index {
-       var $MCONF=array();
-       var $MOD_MENU=array();
-       var $MOD_SETTINGS=array();
+
+       var $MCONF = array();
+       var $MOD_MENU = array();
+       var $MOD_SETTINGS = array();
        var $doc;
 
-       var $include_once=array();
+       var $include_once = array();
        var $content;
 
+
+
+       /**
+        * Initialization
+        *
+        * @return      void
+        */
        function init() {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
-               $this->MCONF = $GLOBALS["MCONF"];
+               global $BACK_PATH;
+
+               $this->MCONF = $GLOBALS['MCONF'];
 
                $this->menuConfig();
 
-               $this->doc = t3lib_div::makeInstance("noDoc");
+               $this->doc = t3lib_div::makeInstance('noDoc');
                $this->doc->backPath = $BACK_PATH;
+
                                // JavaScript
                $this->doc->JScode = '
                <script language="javascript" type="text/javascript">
@@ -77,161 +106,175 @@ class SC_mod_tools_config_index {
                </script>
                ';
 
-               $this->doc->form = '<form action="" method="POST">';
+               $this->doc->form = '<form action="" method="post">';
        }
+
+       /**
+        * Menu Configuration
+        *
+        * @return      void
+        */
        function menuConfig()   {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $TYPO3_CONF_VARS;
 
                        // MENU-ITEMS:
                        // If array, then it's a selector box menu
                        // If empty string it's just a variable, that'll be saved.
                        // Values NOT in this array will not be saved in the settings-array for the module.
                $this->MOD_MENU = array(
-                       "function" => array(
+                       'function' => array(
                                0 => '$TYPO3_CONF_VARS',
                                1 => '$TCA (tables.php)',
                                3 => '$TYPO3_LOADED_EXT',
                                4 => '$TBE_STYLES',
-
-       //                      2 => '$PAGES_TYPES (tables.php)'
                        ),
-                       "regexsearch" => "",
-                       "fixedLgd" => ""
+                       'regexsearch' => '',
+                       'fixedLgd' => ''
                );
 
                        // CLEANSE SETTINGS
-               $this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::_GP("SET"), $this->MCONF["name"]);
+               $this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::_GP('SET'), $this->MCONF['name']);
        }
+
+       /**
+        * [Describe function...]
+        *
+        * @return      [type]          ...
+        */
        function main() {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
-
-               $this->content.=$this->doc->startPage("Configuration");
-               $this->content.=$this->doc->header("Configuration");
-               $this->content.=$this->doc->spacer(5);
-
-                       $arrayBrowser = t3lib_div::makeInstance("t3lib_arrayBrowser");
-
-                       $menu = $LANG->sL("LLL:EXT:lang/locallang_core.php:labels.menu")." ".t3lib_BEfunc::getFuncMenu(0,"SET[function]",$this->MOD_SETTINGS["function"],$this->MOD_MENU["function"]).
-                                               fw("&nbsp;&nbsp;Crop lines:&nbsp;&nbsp;").t3lib_BEfunc::getFuncCheck(0,"SET[fixedLgd]",$this->MOD_SETTINGS["fixedLgd"]);
-                       $this->content.=$this->doc->section("",'<NOBR>'.$menu.'</NOBR>');
-
-                       switch($this->MOD_SETTINGS["function"]) {
-                               case 0:
-                                       $theVar = $TYPO3_CONF_VARS;
-                                       $arrayBrowser->varName = '$TYPO3_CONF_VARS';
-                               break;
-                               case 1:
-                                       reset($TCA);
-                                       while(list($ttable)=each($TCA)) {
-                                               t3lib_div::loadTCA($ttable);
-                                       }
-                                       $theVar = $TCA;
-                                       $arrayBrowser->varName = '$TCA';
-                               break;
-                               case 3:
-                                       $theVar = $GLOBALS['TYPO3_LOADED_EXT'];
-                                       $arrayBrowser->varName = '$TYPO3_LOADED_EXT';
-                               break;
-                               case 4:
-                                       $theVar = $GLOBALS['TBE_STYLES'];
-                                       $arrayBrowser->varName = '$TBE_STYLES';
-                               break;
-                               case 2:
-               //                      $theVar = $PAGES_TYPES;
-                               break;
-                               default:
-                                       $theVar = array();
-                               break;
-                       }
+               global $BE_USER,$LANG,$TCA,$TYPO3_CONF_VARS;
+
+               $this->content.= $this->doc->startPage('Configuration');
+               $this->content.= $this->doc->header('Configuration');
+               $this->content.= $this->doc->spacer(5);
+
+               $arrayBrowser = t3lib_div::makeInstance('t3lib_arrayBrowser');
+
+               $menu = $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.menu').' '.t3lib_BEfunc::getFuncMenu(0,'SET[function]',$this->MOD_SETTINGS['function'],$this->MOD_MENU['function']).
+                                       '&nbsp;&nbsp;Crop lines:&nbsp;&nbsp;'.t3lib_BEfunc::getFuncCheck(0,'SET[fixedLgd]',$this->MOD_SETTINGS['fixedLgd']);
+               $this->content.=$this->doc->section('','<nobr>'.$menu.'</nobr>');
+
+               switch($this->MOD_SETTINGS['function']) {
+                       case 0:
+                               $theVar = $TYPO3_CONF_VARS;
+                               $arrayBrowser->varName = '$TYPO3_CONF_VARS';
+                       break;
+                       case 1:
+                               reset($TCA);
+                               while(list($ttable) =each($TCA))        {
+                                       t3lib_div::loadTCA($ttable);
+                               }
+                               $theVar = $TCA;
+                               $arrayBrowser->varName = '$TCA';
+                       break;
+                       case 3:
+                               $theVar = $GLOBALS['TYPO3_LOADED_EXT'];
+                               $arrayBrowser->varName = '$TYPO3_LOADED_EXT';
+                       break;
+                       case 4:
+                               $theVar = $GLOBALS['TBE_STYLES'];
+                               $arrayBrowser->varName = '$TBE_STYLES';
+                       break;
+                       default:
+                               $theVar = array();
+                       break;
+               }
 
 
-                               // Update node:
-                       $update = 0;
-                       $node = t3lib_div::_GET('node');
-                       if (is_array($node))    {               // If any plus-signs were clicked, it's registred.
-                               $this->MOD_SETTINGS["node_".$this->MOD_SETTINGS["function"]] = $arrayBrowser->depthKeys($node, $this->MOD_SETTINGS["node_".$this->MOD_SETTINGS["function"]]);
-                               $update=1;
-                       }
-                       if ($update){   $GLOBALS["BE_USER"]->pushModuleData($this->MCONF["name"],$this->MOD_SETTINGS);}
-
-                       $arrayBrowser->depthKeys = $this->MOD_SETTINGS["node_".$this->MOD_SETTINGS["function"]];
-                       $arrayBrowser->regexMode = $this->MOD_SETTINGS["regexsearch"];
-                       $arrayBrowser->fixedLgd = $this->MOD_SETTINGS["fixedLgd"];
+                       // Update node:
+               $update = 0;
+               $node = t3lib_div::_GET('node');
+               if (is_array($node))    {               // If any plus-signs were clicked, it's registred.
+                       $this->MOD_SETTINGS['node_'.$this->MOD_SETTINGS['function']] = $arrayBrowser->depthKeys($node, $this->MOD_SETTINGS['node_'.$this->MOD_SETTINGS['function']]);
+                       $update = 1;
+               }
+               if ($update) {
+                       $GLOBALS['BE_USER']->pushModuleData($this->MCONF['name'],$this->MOD_SETTINGS);
+               }
 
+               $arrayBrowser->depthKeys = $this->MOD_SETTINGS['node_'.$this->MOD_SETTINGS['function']];
+               $arrayBrowser->regexMode = $this->MOD_SETTINGS['regexsearch'];
+               $arrayBrowser->fixedLgd = $this->MOD_SETTINGS['fixedLgd'];
 
-                       $search_field = t3lib_div::_GP("search_field");
-                       if (t3lib_div::_POST("search") && trim($search_field))  {               // If any POST-vars are send, update the condition array
-                               $arrayBrowser->depthKeys=$arrayBrowser->getSearchKeys($theVar, "",      $search_field, array());
-               //              debug($arrayBrowser->depthKeys);
-               //              debug($arrayBrowser->searchKeys);
-                       }
 
-                       $tree = $arrayBrowser->tree($theVar, "", "");
+               $search_field = t3lib_div::_GP('search_field');
+               if (t3lib_div::_POST('search') && trim($search_field))  {               // If any POST-vars are send, update the condition array
+                       $arrayBrowser->depthKeys=$arrayBrowser->getSearchKeys($theVar, '',      $search_field, array());
+               }
 
-                       $label = $this->MOD_MENU["function"][$this->MOD_SETTINGS["function"]];
-                       $this->content.= $this->doc->sectionEnd();
+               $tree = $arrayBrowser->tree($theVar, '', '');
 
-                               // Variable name:
-                       if (t3lib_div::_GP('varname'))  {
-                               $this->content.= '<div style="margin: 10px 10px 10px 10px; padding: 10px 10px 10px 10px; background-color: #eeeeee; border: 1px solid black;">Variable: <br/>
-                                       <input type="text" name="_" value="'.trim(htmlspecialchars(t3lib_div::_GP('varname'))).'" size="80" /><br/>
-                                       (Now, copy/paste this value into the configuration file where you can set it. This is all you can do from here...)
-                                       </div>
-                               ';
-                       }
+               $label = $this->MOD_MENU['function'][$this->MOD_SETTINGS['function']];
+               $this->content.= $this->doc->sectionEnd();
 
-                       $this->content.= '<BR><table border=0 cellpadding=1 cellspacing=0>';
-                       $this->content.= '<tr>
-                                               <td><img src=clear.gif width=1 height=1></td>
-                                               <td class="bgColor2">
-                                                       <table border=0 cellpadding=0 cellspacing=0 class="bgColor5" width="100%"><tr><td nowrap><b>'.fw($label).'</b></td></tr></table>
-                                               </td>
-                                       </tr>';
-                       $this->content.='<tr>
-                                               <td></td>
-                                               <td class="bgColor2">
-                                                       <table border=0 cellpadding=0 cellspacing=0 bgcolor="#D9D5C9" width="100%"><tr><td nowrap>'.$tree.'</td></tr></table><img src=clear.gif width=465 height=1></td>
-                                       </tr>
-                               </table>
+                       // Variable name:
+               if (t3lib_div::_GP('varname'))  {
+                       $this->content.= '<div style="margin: 10px 10px 10px 10px; padding: 10px 10px 10px 10px; background-color: #eeeeee; border: 1px solid black;">Variable: <br/>
+                               <input type="text" name="_" value="'.trim(htmlspecialchars(t3lib_div::_GP('varname'))).'" size="80" /><br/>
+                               (Now, copy/paste this value into the configuration file where you can set it. This is all you can do from here...)
+                               </div>
                        ';
+               }
+
+               $this->content.= '<br/><table border="0" cellpadding="1" cellspacing="0"">';
+               $this->content.= '<tr>
+                                       <td><img src="clear.gif" width="1" height="1" alt="" /></td>
+                                       <td class="bgColor2">
+                                               <table border="0" cellpadding="0" cellspacing="0" class="bgColor5" width="100%"><tr><td nowrap="nowrap"><b>'.$label.'</b></td></tr></table>
+                                       </td>
+                               </tr>';
+               $this->content.='<tr>
+                                       <td></td>
+                                       <td class="bgColor2">
+                                               <table border="0" cellpadding="0" cellspacing="0" bgcolor="#D9D5C9" width="100%"><tr><td nowrap="nowrap">'.$tree.'</td></tr></table>' .
+                                                               '<img src="clear.gif" width="465" height="1" alt="" /></td>
+                               </tr>
+                       </table>
+               ';
 
 
-                               // Search:
-                       $this->content.='<br>
-                               <table border=0 cellpadding=1 cellspacing=0>
-                                       <tr>
-                                               <td><img src=clear.gif width=1 height=1></td>
-                                               <td class="bgColor2">
-                                                       <table border=0 cellpadding=0 cellspacing=0 bgcolor="#D9D5C9">
-                                                       <tr>
-                                                               <td>'.fw("&nbsp;Enter search phrase:&nbsp;&nbsp;").'<input type="Text" name="search_field" value="'.htmlspecialchars($search_field).'"'.$GLOBALS["TBE_TEMPLATE"]->formWidth(20).'></td>
-                                                               <td><input type="Submit" name="search" value="Search"></td>
-                                                       </tr>
-                                                       <tr>
-                                                               <td>'.fw("&nbsp;Use ereg(), not stristr():&nbsp;&nbsp;").t3lib_BEfunc::getFuncCheck(0,"SET[regexsearch]",$this->MOD_SETTINGS["regexsearch"]).'</td>
-                                                               <td>&nbsp;</td>
-                                                       </tr>
-                                                       </table>
-                                               </td>
-                                       </tr>
-                               </table>
-                       <br>
-                       ';
+                       // Search:
+               $this->content.='<br>
+                       <table border="0" cellpadding="1" cellspacing="0"">
+                               <tr>
+                                       <td><img src="clear.gif" width="1" height="1" alt="" /></td>
+                                       <td class="bgColor2">
+                                               <table border="0" cellpadding="0" cellspacing="0" bgcolor="#D9D5C9">
+                                               <tr>
+                                                       <td>&nbsp;Enter search phrase:&nbsp;&nbsp;<input type="text" name="search_field" value="'.htmlspecialchars($search_field).'"'.$GLOBALS['TBE_TEMPLATE']->formWidth(20).'></td>
+                                                       <td><input type="submit" name="search" value="Search" /></td>
+                                               </tr>
+                                               <tr>
+                                                       <td>&nbsp;Use ereg(), not stristr():&nbsp;&nbsp;'.t3lib_BEfunc::getFuncCheck(0,'SET[regexsearch]',$this->MOD_SETTINGS['regexsearch']).'</td>
+                                                       <td>&nbsp;</td>
+                                               </tr>
+                                               </table>
+                                       </td>
+                               </tr>
+                       </table>
+               <br/>
+               ';
 
                if ($BE_USER->mayMakeShortcut())        {
-                       $this->content.=$this->doc->spacer(20).$this->doc->section('',$this->doc->makeShortcutIcon("","function",$this->MCONF["name"]));
+                       $this->content.=$this->doc->spacer(20).$this->doc->section('',$this->doc->makeShortcutIcon('','function',$this->MCONF['name']));
                }
        }
+
+       /**
+        * Print output to browser
+        *
+        * @return      void
+        */
        function printContent() {
 
-               $this->content.=$this->doc->endPage();
+               $this->content.= $this->doc->endPage();
                echo $this->content;
        }
 }
 
 // Include extension?
-if (defined("TYPO3_MODE") && $TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/lowlevel/config/index.php"])  {
-       include_once($TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/lowlevel/config/index.php"]);
+if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/lowlevel/config/index.php'])  {
+       include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/lowlevel/config/index.php']);
 }
 
 
@@ -246,7 +289,7 @@ if (defined("TYPO3_MODE") && $TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/lowleve
 
 
 // Make instance:
-$SOBE = t3lib_div::makeInstance("SC_mod_tools_config_index");
+$SOBE = t3lib_div::makeInstance('SC_mod_tools_config_index');
 $SOBE->init();
 $SOBE->main();
 $SOBE->printContent();
index 5845426..f43cec5 100755 (executable)
  *
  * This module lets you check if all pages and the records relate properly to each other
  *
- * @author     Kasper Skårhøj <kasperYYYY@typo3.com>
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
+ */
+/**
+ * [CLASS/FUNCTION INDEX of SCRIPT]
+ *
+ *
+ *
+ *  120: class SC_mod_tools_dbint_index
+ *  134:     function init()
+ *  147:     function jumpToUrl(URL)
+ *  164:     function menuConfig()
+ *  223:     function main()
+ *  265:     function printContent()
+ *  276:     function func_refindex()
+ *  340:     function func_search()
+ *  370:     function func_tree()
+ *  391:     function func_     records()
+ *  487:     function func_relations()
+ *  538:     function func_filesearch()
+ *  586:     function findFile($basedir,$pattern,&$matching_files,$depth)
+ *  629:     function func_default()
+ *
+ * TOTAL FUNCTIONS: 13
+ * (This index is automatically created/updated by the extension "extdeveval")
+ *
  */
 
 
@@ -44,72 +68,47 @@ require_once (PATH_t3lib.'class.t3lib_xml.php');
 require_once (PATH_t3lib.'class.t3lib_fullsearch.php');
 require_once (PATH_t3lib.'class.t3lib_refindex.php');
 
+$LANG->includeLLFile('EXT:lowlevel/dbint/locallang.xml');
 $BE_USER->modAccess($MCONF,1);
 
 
 
-// **************************
-// Setting english (ONLY!) LOCAL_LANG
-// **************************
-$LOCAL_LANG = Array (
-       'default' => Array (
-               'tables' => 'Tables:',
-               'fixLostRecord' => 'Click to move this lost record to rootlevel (pid=0)',
-
-               'doktype' => 'Document types:',
-               'pages' => 'Pages:',
-               'total_pages' => 'Total number of pages:',
-               'deleted_pages' => 'Marked-deleted pages:',
-               'hidden_pages' => 'Hidden pages:',
-               'relations' => 'Relations:',
-               'relations_description' => 'This will analyse the content of the tables and check if there are \'empty\' relations between records or if files are missing from their expected position.',
-
-               'files_many_ref' => 'Files referenced from more than one record:',
-               'files_no_ref' => 'Files with no references at all (delete them!):',
-               'files_no_file' => 'Missing files:',
-               'select_db' => 'Select fields:',
-               'group_db' => 'Group fields:',
 
-               'tree' => 'The Page Tree:',
-               'tree_description' => 'This shows all pages in the system in one large tree. Beware that this will probably result in a very long document which will also take some time for the server to compute!',
-               'records' => 'Records Statistics:',
-               'records_description' => 'This shows some statistics for the records in the database. This runs through the entire page-tree and therefore it will also load the server heavily!',
-               'search' => 'Search Whole Database',
-               'search_description' => 'This searches through all database tables and records for a text string.',
-               'filesearch' => 'Search all filenames for pattern',
-               'filesearch_description' => 'Will search recursively for filenames in the PATH_site (subdirs to the website path) matching a certain regex pattern.',
-               'title' => 'Database integrity check'
-       )
-);
 
 
-
-
-
-// ***************************
-// Script Classes
-// ***************************
+/**
+ * Script class for the DB int module
+ *
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
+ * @package TYPO3
+ * @subpackage tx_lowlevel
+ */
 class SC_mod_tools_dbint_index {
-       var $MCONF=array();
-       var $MOD_MENU=array();
-       var $MOD_SETTINGS=array();
+
+       var $MCONF = array();
+       var $MOD_MENU = array();
+       var $MOD_SETTINGS = array();
        var $doc;
 
        var $content;
        var $menu;
 
+
        /**
-        * @return      [type]          ...
+        * Initialization
+        * 
+        * @return      void
         */
        function init() {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG,$BACK_PATH;
                $this->MCONF = $GLOBALS['MCONF'];
 
                $this->menuConfig();
 
                $this->doc = t3lib_div::makeInstance('mediumDoc');
-               $this->doc->form='<form action="" method="POST">';
+               $this->doc->form='<form action="" method="post">';
                $this->doc->backPath = $BACK_PATH;
+               
                                // JavaScript
                $this->doc->JScode = '
                <script language="javascript" type="text/javascript">
@@ -119,20 +118,23 @@ class SC_mod_tools_dbint_index {
                        }
                </script>
                ';
+               
                $this->doc->tableLayout = Array (
                        'defRow' => Array (
                                '0' => Array('<td valign="top">','</td>'),
                                '1' => Array('<td valign="top">','</td>'),
-                               'defCol' => Array('<TD><img src="'.$this->doc->backPath.'clear.gif" width="15" height="1"></td><td valign="top">','</td>')
+                               'defCol' => Array('<td><img src="'.$this->doc->backPath.'clear.gif" width="15" height="1" alt="" /></td><td valign="top">','</td>')
                        )
                );
        }
 
        /**
-        * @return      [type]          ...
+        * Configure menu
+        * 
+        * @return      void
         */
        function menuConfig()   {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG;
 
                // MENU-ITEMS:
                        // If array, then it's a selector box menu
@@ -188,16 +190,16 @@ class SC_mod_tools_dbint_index {
        }
 
        /**
-        * @return      [type]          ...
+        * Main 
+        * 
+        * @return      void
         */
        function main() {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $BE_USER,$LANG;
 
-               // **************************
-               // Content creation
-               // **************************
-               $this->content.=$this->doc->startPage($LANG->getLL('title'));
-               $this->menu=t3lib_BEfunc::getFuncMenu(0,'SET[function]',$this->MOD_SETTINGS['function'],$this->MOD_MENU['function']);
+                       // Content creation
+               $this->content.= $this->doc->startPage($LANG->getLL('title'));
+               $this->menu = t3lib_BEfunc::getFuncMenu(0,'SET[function]',$this->MOD_SETTINGS['function'],$this->MOD_MENU['function']);
 
                switch($this->MOD_SETTINGS['function']) {
                        case 'search':
@@ -230,16 +232,37 @@ class SC_mod_tools_dbint_index {
        }
 
        /**
-        * @return      [type]          ...
+        * Print content
+        * 
+        * @return      void
         */
        function printContent() {
 
-               $this->content.=$this->doc->endPage();
+               $this->content.= $this->doc->endPage();
                echo $this->content;
        }
 
+
+
+
+
+
+
+
+
+       /****************************
+        *  
+        * Functionality implementation
+        * 
+        ****************************/
+
+       /**
+        * Check and update reference index!
+        *
+        * @return      [type]          ...
+        */
        function func_refindex()        {
-               global $TCA,$TYPO3_DB;
+               global $TYPO3_DB,$TCA;
 
                $this->content.=$this->doc->section('',$this->menu);//$this->doc->divider(5);
                $this->content.=$this->doc->section('',$menu2).$this->doc->spacer(10);
@@ -267,7 +290,7 @@ class SC_mod_tools_dbint_index {
         * @return      [type]          ...
         */
        function func_search()  {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG;
 
                $fullsearch = t3lib_div::makeInstance('t3lib_fullsearch');
                $this->content.=$this->doc->header($LANG->getLL('search'));
@@ -297,7 +320,7 @@ class SC_mod_tools_dbint_index {
         * @return      [type]          ...
         */
        function func_tree()    {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG,$BACK_PATH;
 
                $startID=0;
                $admin = t3lib_div::makeInstance('t3lib_admin');
@@ -318,7 +341,7 @@ class SC_mod_tools_dbint_index {
         * @return      [type]          ...
         */
        function func_records() {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG,$TCA,$BACK_PATH;
                global $PAGES_TYPES;
 
                $admin = t3lib_div::makeInstance('t3lib_admin');
@@ -414,7 +437,7 @@ class SC_mod_tools_dbint_index {
         * @return      [type]          ...
         */
        function func_relations()       {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG,$BACK_PATH;
 
                $this->content.=$this->doc->header($LANG->getLL('relations'));
                $this->content.=$this->doc->spacer(5);
@@ -465,7 +488,7 @@ class SC_mod_tools_dbint_index {
         * @return      [type]          ...
         */
        function func_filesearch()      {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG;
 
                $this->content.=$this->doc->header($LANG->getLL('relations'));
                $this->content.=$this->doc->spacer(5);
@@ -556,7 +579,7 @@ class SC_mod_tools_dbint_index {
         * @return      [type]          ...
         */
        function func_default() {
-               global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$CLIENT,$TYPO3_CONF_VARS;
+               global $LANG;
 
                $this->content.=$this->doc->header($LANG->getLL('title'));
                $this->content.=$this->doc->spacer(5);
diff --git a/typo3/sysext/lowlevel/dbint/locallang.xml b/typo3/sysext/lowlevel/dbint/locallang.xml
new file mode 100644 (file)
index 0000000..46a105d
--- /dev/null
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
+<T3locallang>
+    <meta type="array">
+        <description>Labels for DB int module</description>
+        <type>module</type>
+        <csh_table></csh_table>
+        <fileId>EXT:lowlevel/dbint/locallang.xml</fileId>
+        <labelContext type="array">
+            <label index="tables"></label>
+            <label index="fixLostRecord"></label>
+            <label index="doktype"></label>
+            <label index="pages"></label>
+            <label index="total_pages"></label>
+            <label index="deleted_pages"></label>
+            <label index="hidden_pages"></label>
+            <label index="relations"></label>
+            <label index="relations_description"></label>
+            <label index="files_many_ref"></label>
+            <label index="files_no_ref"></label>
+            <label index="files_no_file"></label>
+            <label index="select_db"></label>
+            <label index="group_db"></label>
+            <label index="tree"></label>
+            <label index="tree_description"></label>
+            <label index="records"></label>
+            <label index="records_description"></label>
+            <label index="search"></label>
+            <label index="search_description"></label>
+            <label index="filesearch"></label>
+            <label index="filesearch_description"></label>
+            <label index="title"></label>
+        </labelContext>
+    </meta>
+    <data type="array">
+        <languageKey index="default" type="array">
+            <label index="tables">Tables:</label>
+            <label index="fixLostRecord">Click to move this lost record to rootlevel (pid=0)</label>
+            <label index="doktype">Document types:</label>
+            <label index="pages">Pages:</label>
+            <label index="total_pages">Total number of pages:</label>
+            <label index="deleted_pages">Marked-deleted pages:</label>
+            <label index="hidden_pages">Hidden pages:</label>
+            <label index="relations">Relations:</label>
+            <label index="relations_description">This will analyse the content of the tables and check if there are 'empty' relations between records or if files are missing from their expected position.</label>
+            <label index="files_many_ref">Files referenced from more than one record:</label>
+            <label index="files_no_ref">Files with no references at all (delete them!):</label>
+            <label index="files_no_file">Missing files:</label>
+            <label index="select_db">Select fields:</label>
+            <label index="group_db">Group fields:</label>
+            <label index="tree">The Page Tree:</label>
+            <label index="tree_description">This shows all pages in the system in one large tree. Beware that this will probably result in a very long document which will also take some time for the server to compute!</label>
+            <label index="records">Records Statistics:</label>
+            <label index="records_description">This shows some statistics for the records in the database. This runs through the entire page-tree and therefore it will also load the server heavily!</label>
+            <label index="search">Search Whole Database</label>
+            <label index="search_description">This searches through all database tables and records for a text string.</label>
+            <label index="filesearch">Search all filenames for pattern</label>
+            <label index="filesearch_description">Will search recursively for filenames in the PATH_site (subdirs to the website path) matching a certain regex pattern.</label>
+            <label index="title">Database integrity check</label>
+        </languageKey>
+    </data>
+    <orig_hash type="array">
+        <languageKey index="default" type="array">
+            <label index="tables" type="integer">267355363</label>
+            <label index="fixLostRecord" type="integer">264598103</label>
+            <label index="doktype" type="integer">59646372</label>
+            <label index="pages" type="integer">9915692</label>
+            <label index="total_pages" type="integer">120516512</label>
+            <label index="deleted_pages" type="integer">251989828</label>
+            <label index="hidden_pages" type="integer">56221326</label>
+            <label index="relations" type="integer">158458960</label>
+            <label index="relations_description" type="integer">98163255</label>
+            <label index="files_many_ref" type="integer">253873964</label>
+            <label index="files_no_ref" type="integer">51429792</label>
+            <label index="files_no_file" type="integer">103076812</label>
+            <label index="select_db" type="integer">222215195</label>
+            <label index="group_db" type="integer">89872761</label>
+            <label index="tree" type="integer">254322778</label>
+            <label index="tree_description" type="integer">13437987</label>
+            <label index="records" type="integer">107937849</label>
+            <label index="records_description" type="integer">36151804</label>
+            <label index="search" type="integer">201691087</label>
+            <label index="search_description" type="integer">44447557</label>
+            <label index="filesearch" type="integer">138409460</label>
+            <label index="filesearch_description" type="integer">206400326</label>
+            <label index="title" type="integer">152428276</label>
+        </languageKey>
+    </orig_hash>
+    <orig_text type="array">
+        <languageKey index="default" type="array">
+        </languageKey>
+    </orig_text>
+</T3locallang>
\ No newline at end of file