Project

General

Profile

Feature #18911 » 8623_v3.diff

Administrator Admin, 2010-08-15 12:30

View differences:

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'] == 0) {
// no shortcut_mode set, so target is directly set in $row['shortcut']
$searchField = 'uid';
$searchUid = intval($row['shortcut']);
} else { // check subpages - first subpage or random subpage
} elseif ($row['shortcut_mode'] == 1 || $row['shortcut_mode'] == 2) {
// 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) {
// shortcut to parent page
$searchField = 'uid';
$searchUid = $row['pid'];
}
$count = $GLOBALS['TYPO3_DB']->exec_SELECTcountRows(
'uid',
typo3/sysext/cms/ext_tables.php (Arbeitskopie)
array('', 0),
array('LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.1', 1),
array('LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.2', 2),
array('LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.3', 3),
),
'default' => '0'
)
typo3/sysext/cms/locallang_tca.xml (Arbeitskopie)
<label index="pages.shortcut_mode">Shortcut mode:</label>
<label index="pages.shortcut_mode.I.1">First subpage</label>
<label index="pages.shortcut_mode.I.2">Random subpage</label>
<label index="pages.shortcut_mode.I.3">Parent page</label>
<label index="pages.content_from_pid">Show content from this page instead:</label>
<label index="pages.mount_pid">Mount Point (advanced):</label>
<label index="pages.mount_pid_ol">Substitute Mount Point (this page) with Mounted page:</label>
typo3/sysext/cms/tslib/class.tslib_fe.php (Arbeitskopie)
* Get page shortcut; Finds the records pointed to by input value $SC (the shortcut value)
*
* @param integer The value of the "shortcut" field from the pages record
* @param integer The shortcut mode: 1 and 2 will select either first subpage or random subpage; the default is the page pointed to by $SC
* @param integer The shortcut mode: 1 and 2 will select either first subpage or random subpage, 3 will select the parent page; the default is the page pointed to by $SC
* @param integer The current page UID of the page which is a shortcut
* @param integer Safety feature which makes sure that the function is calling itself recursively max 20 times (since this function can find shortcuts to other shortcuts to other shortcuts...)
* @param array An array filled with previous page uids tested by the function - new page uids are evaluated against this to avoid going in circles.
......
$c++;
}
break;
case 3:
$parent = $this->sys_page->getPage($thisUid);
$page = $this->sys_page->getPage($parent['pid']);
break;
default:
$page = $this->sys_page->getPage($idArray[0]);
break;
......
$microtime_end = (isset($GLOBALS['TYPO3_MISC']['microtime_end'])) ? $GLOBALS['TYPO3_MISC']['microtime_end'] : NULL;
$microtime_BE_USER_start = (isset($GLOBALS['TYPO3_MISC']['microtime_BE_USER_start'])) ? $GLOBALS['TYPO3_MISC']['microtime_BE_USER_start'] : NULL;
$microtime_BE_USER_end = (isset($GLOBALS['TYPO3_MISC']['microtime_BE_USER_end'])) ? $GLOBALS['TYPO3_MISC']['microtime_BE_USER_end'] : NULL;
$this->scriptParseTime = $GLOBALS['TT']->getMilliseconds($microtime_end) - $GLOBALS['TT']->getMilliseconds($microtime_start)
- ($GLOBALS['TT']->getMilliseconds($microtime_BE_USER_end) - $GLOBALS['TT']->getMilliseconds($microtime_BE_USER_start));
}
(7-7/8)