Project

General

Profile

Bug #23505 » 15644.diff

Administrator Admin, 2010-09-05 21:04

View differences:

t3lib/class.t3lib_befunc.php (Arbeitskopie)
$lRec = self::getRecordWSOL('pages', intval($row['shortcut']), 'title');
$label = $lRec['title'];
}
if ($row['shortcut_mode']>0) {
if ($row['shortcut_mode'] != tslib_fe::SHORTCUT_MODE_NONE) {
$label.=', '.$LANG->sL($TCA['pages']['columns']['shortcut_mode']['label']).' '.
$LANG->sL(self::getLabelFromItemlist('pages', 'shortcut_mode', $row['shortcut_mode']));
}
t3lib/class.t3lib_page.php (Arbeitskopie)
// if shortcut, look up if the target exists and is currently visible
if ($row['doktype'] == 4 && ($row['shortcut'] || $row['shortcut_mode']) && $checkShortcuts) {
if ($row['shortcut_mode'] == 0) {
if ($row['shortcut_mode'] == tslib_fe::SHORTCUT_MODE_NONE) {
// no shortcut_mode set, so target is directly set in $row['shortcut']
$searchField = 'uid';
$searchUid = intval($row['shortcut']);
} elseif ($row['shortcut_mode'] == 1 || $row['shortcut_mode'] == 2) {
} elseif ($row['shortcut_mode'] == tslib_fe::SHORTCUT_MODE_FIRST_SUBPAGE || $row['shortcut_mode'] == tslib_fe::SHORTCUT_MODE_RANDOM_SUBPAGE) {
// check subpages - first subpage or random subpage
$searchField = 'pid';
// If a shortcut mode is set and no valid page is given to select subpags from use the actual page.
$searchUid = intval($row['shortcut'])?intval($row['shortcut']):$row['uid'];
} elseif ($row['shortcut_mode'] == 3) {
} elseif ($row['shortcut_mode'] == tslib_fe::SHORTCUT_MODE_PARENT) {
// shortcut to parent page
$searchField = 'uid';
$searchUid = $row['pid'];
typo3/sysext/cms/tslib/class.tslib_fe.php (Arbeitskopie)
protected $pageCache;
protected $pageCacheTags = array();
/**
* Named constants for "magic numbers" of the field shortcut_mode
*/
const SHORTCUT_MODE_NONE = 0;
const SHORTCUT_MODE_FIRST_SUBPAGE = 1;
const SHORTCUT_MODE_RANDOM_SUBPAGE = 2;
const SHORTCUT_MODE_PARENT = 3;
/**
* Class constructor
typo3/sysext/cms/tslib/class.tslib_content.php (Arbeitskopie)
// If we link across domains and page is free type shortcut, we must resolve the shortcut first!
// If we do not do it, TYPO3 will fail to (1) link proper page in RealURL/CoolURI because
// they return relative links and (2) show proper page if no RealURL/CoolURI exists when link is clicked
if ($enableLinksAcrossDomains && $page['doktype'] == 4 && $page['shortcut_mode'] == 0) {
if ($enableLinksAcrossDomains && $page['doktype'] == 4 && $page['shortcut_mode'] == tslib_fe::SHORTCUT_MODE_NONE) {
$page2 = $page; // Save in case of broken destination or endless loop
$maxLoopCount = 20; // Same as in RealURL, seems enough
while ($maxLoopCount && is_array($page) && $page['doktype'] == 4 && $page['shortcut_mode'] == 0) {
while ($maxLoopCount && is_array($page) && $page['doktype'] == 4 && $page['shortcut_mode'] == tslib_fe::SHORTCUT_MODE_NONE) {
$page = $GLOBALS['TSFE']->sys_page->getPage($page['shortcut'], $disableGroupAccessCheck);
$maxLoopCount--;
}
(1-1/2)