Index: typo3/sysext/indexed_search/ext_typoscript_setup.txt =================================================================== --- typo3/sysext/indexed_search/ext_typoscript_setup.txt (revision 8160) +++ typo3/sysext/indexed_search/ext_typoscript_setup.txt (working copy) @@ -11,6 +11,8 @@ modified = } + pathCharacter = / |*| / |*| + show { rules = 1 parsetimes = 0 Index: typo3/sysext/indexed_search/pi/class.tx_indexedsearch.php =================================================================== --- typo3/sysext/indexed_search/pi/class.tx_indexedsearch.php (revision 8161) +++ typo3/sysext/indexed_search/pi/class.tx_indexedsearch.php (working copy) @@ -765,7 +765,7 @@ $sectionTitleLinked = $this->pi_getLL('unnamedSection','',1).':'; } else { $onclick = 'document.'.$this->prefixId.'[\''.$this->prefixId.'[_sections]\'].value=\''.$theRLid.'\';document.'.$this->prefixId.'.submit();return false;'; - $sectionTitleLinked = ''.htmlspecialchars($sectionName).':'; + $sectionTitleLinked = ''.$sectionName.':'; } $this->resultSections[$id] = array($sectionName,count($resultRows)); @@ -2113,7 +2113,7 @@ htmlspecialchars($row['data_filename']) . ''; } else { - $pathStr = htmlspecialchars($this->getPathFromPageId($pathId,$pathMP)); + $pathStr = $this->getPathFromPageId($pathId,$pathMP); $tmplArray['path'] = $this->linkPage($pathId,$pathStr,array( 'cHashParams' => $row['cHashParams'], 'data_page_type' => $row['data_page_type'], @@ -2287,7 +2287,7 @@ * * @param integer Page ID * @param string MP variable content - * @return string Path + * @return string Path (HTML-escaped) */ function getPathFromPageId($id,$pathMP='') { @@ -2299,8 +2299,14 @@ $rl = $this->getRootLine($id,$pathMP); $hitRoot = 0; $path = ''; - if (is_array($rl) && count($rl)) { + $pageCount = count($rl); + if (is_array($rl) && $pageCount) { + $index = 0; + $pathSeparator = isset($this->conf['pathCharacter']) ? $this->conf['pathCharacter'] : '/'; + $pathSeparators = $GLOBALS['TSFE']->tmpl->splitConfArray( + array('separator' => $pathSeparator), $pageCount); foreach ($rl as $k => $v) { + // Check fe_user if ($v['fe_group'] && ($v['uid']==$id || $v['extendToSubpages'])) { $this->fe_groups_required[$id][]=$v['fe_group']; @@ -2320,8 +2326,12 @@ if ($v['uid']==$GLOBALS['TSFE']->config['rootLine'][0]['uid']) { break; } - $path = '/'.$v['title'].$path; + $path = $pathSeparators[$index]['separator'] . htmlspecialchars($v['title']) . $path; + $index++; } + if (isset($this->conf['pathCharacter'])) { + $path .= $pathSeparators[$index]['separator']; + } } $this->cache_path[$identStr] = $path;