Index: typo3/sysext/tsconfig_help/mod1/index.php =================================================================== --- typo3/sysext/tsconfig_help/mod1/index.php (revision 6276) +++ typo3/sysext/tsconfig_help/mod1/index.php (working copy) @@ -192,79 +192,75 @@ case 2: if ($GLOBALS['BE_USER']->user['admin']) { - if ($GLOBALS['TYPO3_OS'] === 'WIN') { - $this->content .= '

'.$LANG->getLL('noRebuildOnWindows').'


'; - } else { - if (t3lib_div::_GP('_rebuild')) { - // remove all data from the database - $this->purgeSQLContents(); + if (t3lib_div::_GP('_rebuild')) { + // remove all data from the database + $this->purgeSQLContents(); - // get all loaded extension keys - $extArray = $TYPO3_LOADED_EXT; + // get all loaded extension keys + $extArray = $TYPO3_LOADED_EXT; - $content = '
'.$LANG->getLL('loadedTSfrom').'

'; + $content = '
'.$LANG->getLL('loadedTSfrom').'

'; - // parse the extension names only (no need for all details from the TYPO3_LOADED_EXT table - foreach ($extArray as $extName => $dummy) { - // check that the extension is really loaded (which should always be the case) - if (t3lib_extMgm::isLoaded($extName)) { - // extract the content.xml from the manual.sxw ZIP file - $manual = $this->getZIPFileContents(t3lib_extMgm::extPath($extName).'doc/manual.sxw', 'content.xml'); + // parse the extension names only (no need for all details from the TYPO3_LOADED_EXT table + foreach ($extArray as $extName => $dummy) { + // check that the extension is really loaded (which should always be the case) + if (t3lib_extMgm::isLoaded($extName)) { + // extract the content.xml from the manual.sxw ZIP file + $manual = $this->getZIPFileContents(t3lib_extMgm::extPath($extName).'doc/manual.sxw', 'content.xml'); - // check if the manual file actually exists and if the content.xml could be loaded - if ($manual != '') { - // if the manual file exists, proceed with the load into the SQL database - $content .= '

Extension '.$extName.'...'; + // check if the manual file actually exists and if the content.xml could be loaded + if ($manual != '') { + // if the manual file exists, proceed with the load into the SQL database + $content .= '

Extension '.$extName.'...'; - // run the extraction processing and import the data into SQL. Return the number of TS tables found in the open office document - $number = $this->loadExtensionManual($extName, $manual); + // run the extraction processing and import the data into SQL. Return the number of TS tables found in the open office document + $number = $this->loadExtensionManual($extName, $manual); - // print a status message with a link to the openoffice manual - $content .= $number.' '.$LANG->getLL('sections').' (manual)

'; - } - } else { - // this should never happen! - die ("Fatal error : loaded extension not actually loaded? Please file a bug report at http://bugs.typo3.org!"); + // print a status message with a link to the openoffice manual + $content .= $number.' '.$LANG->getLL('sections').' (manual)

'; } + } else { + // this should never happen! + die ("Fatal error : loaded extension not actually loaded? Please file a bug report at http://bugs.typo3.org!"); } + } - $this->content .= $this->doc->section($LANG->getLL('rebuildTS'),$content.'
',0,1); + $this->content .= $this->doc->section($LANG->getLL('rebuildTS'),$content.'
',0,1); - // Issue warnings about duplicate or empty obj_strings, if any - // An obj_string should be unique. It should appear in only one extension manual and then only once - // If the sum of all occurrences of a given obj_string is more than one, issue a list of duplicate entries as a warning - $duplicateWarnings = ''; - $emptyWarnings = ''; - foreach ($this->objStringsPerExtension as $obj_string => $extensions) { - if (empty($obj_string)) { - $emptyWarnings = '

'.$LANG->getLL('warning_manualsWithoutMarkers'); + // Issue warnings about duplicate or empty obj_strings, if any + // An obj_string should be unique. It should appear in only one extension manual and then only once + // If the sum of all occurrences of a given obj_string is more than one, issue a list of duplicate entries as a warning + $duplicateWarnings = ''; + $emptyWarnings = ''; + foreach ($this->objStringsPerExtension as $obj_string => $extensions) { + if (empty($obj_string)) { + $emptyWarnings = '

'.$LANG->getLL('warning_manualsWithoutMarkers'); + foreach ($extensions as $extensionKey => $counter) { + $emptyWarnings .= ' '.$extensionKey.' ('.$counter.')
'; + } + $emptyWarnings .= '


'; + } else { + if (array_sum($extensions) > 1) { + $duplicateWarnings .= $obj_string.':'; foreach ($extensions as $extensionKey => $counter) { - $emptyWarnings .= ' '.$extensionKey.' ('.$counter.')
'; + $duplicateWarnings .= ' '.$extensionKey.' ('.$counter.')'; } - $emptyWarnings .= '


'; - } else { - if (array_sum($extensions) > 1) { - $duplicateWarnings .= $obj_string.':'; - foreach ($extensions as $extensionKey => $counter) { - $duplicateWarnings .= ' '.$extensionKey.' ('.$counter.')'; - } - $duplicateWarnings .= '
'; - } + $duplicateWarnings .= '
'; } } - $warnings = $emptyWarnings; - if (!empty($duplicateWarnings)) { - $warnings .= '

'.$LANG->getLL('warning_duplicateMarkers').'
'.$duplicateWarnings.'

'; - } - if (!empty($warnings)) { - $this->content .= $this->doc->section($LANG->getLL('updateWarnings'),'
'.$warnings.'
',0,1); - } } - - $content = '

'.$LANG->getLL('rebuildExplanation').'


'; - $content .= $LANG->getLL('rebuild').'
'; - $this->content .= $this->doc->section($LANG->getLL('rebuildTS'),$content,0,1); + $warnings = $emptyWarnings; + if (!empty($duplicateWarnings)) { + $warnings .= '

'.$LANG->getLL('warning_duplicateMarkers').'
'.$duplicateWarnings.'

'; + } + if (!empty($warnings)) { + $this->content .= $this->doc->section($LANG->getLL('updateWarnings'),'
'.$warnings.'
',0,1); + } } + + $content = '

'.$LANG->getLL('rebuildExplanation').'


'; + $content .= $LANG->getLL('rebuild').'
'; + $this->content .= $this->doc->section($LANG->getLL('rebuildTS'),$content,0,1); } else { $this->content .= '

'.$LANG->getLL('adminAccessOnly').'


'; }