+
+2007-02-16 Martin Kutschker <martin.t.kutschker@blackbox.net>
+
+ * Fixed bug #4207: User>Workspaces shows users pages they have no acces to
+
2007-02-16 Karsten Dambekalns <karsten@typo3.org>
* Fixed bug #4822: EM shows remote extensions as on this server only
/***************************************************************
* Copyright notice
*
-* (c) 1999-2006 Kasper Skaarhoj (kasperYYYY@typo3.com)
+* (c) 1999-2007 Kasper Skaarhoj (kasperYYYY@typo3.com)
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
// Traverse versions and build page-display array:
$pArray = array();
+ $wmArray = array(); // is page in web mount?
+ $rlArray = array(); // root line of page
+ $pagePermsClause = $GLOBALS['BE_USER']->getPagePermsClause(1);
foreach($versions as $table => $records) {
if (is_array($records)) {
foreach($records as $rec) {
$pageIdField = $table==='pages' ? 't3ver_oid' : 'realpid';
- $this->displayWorkspaceOverview_setInPageArray(
- $pArray,
- t3lib_BEfunc::BEgetRootLine($rec[$pageIdField], 'AND 1=1'),
- $table,
- $rec
- );
+ $pageId = $rec[$pageIdField];
+ if (!isset($wmArray[$pageId])) {
+ $wmArray[$pageId] = $GLOBALS['BE_USER']->isInWebMount($pageId,$pagePermsClause);
+ }
+ if ($wmArray[$pageId]) {
+ if (!isset($rlArray[$pageId])) {
+ $rlArray[$pageId] = t3lib_BEfunc::BEgetRootLine($pageId, 'AND 1=1');
+ }
+ $this->displayWorkspaceOverview_setInPageArray(
+ $pArray,
+ $rlArray[$pageId],
+ $table,
+ $rec
+ );
+ }
}
}
}
$SOBE->init();
$SOBE->main();
$SOBE->printContent();
-?>
\ No newline at end of file
+?>