本文整理汇总了PHP中TYPO3\CMS\Backend\Template\DocumentTemplate::getDynTabMenu方法的典型用法代码示例。如果您正苦于以下问题:PHP DocumentTemplate::getDynTabMenu方法的具体用法?PHP DocumentTemplate::getDynTabMenu怎么用?PHP DocumentTemplate::getDynTabMenu使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\CMS\Backend\Template\DocumentTemplate
的用法示例。
在下文中一共展示了DocumentTemplate::getDynTabMenu方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: main
//.........这里部分代码省略.........
$this->elementWrapper = $this->elementWrapperForTabs;
}
// Add document inline javascript
$this->doc->JScode = $this->doc->wrapScriptTags('
function goToalt_doc() { //
' . $this->onClickEvent . '
}
if(top.refreshMenu) {
top.refreshMenu();
} else {
top.TYPO3ModuleMenu.refreshMenu();
}
');
// Traverse items for the wizard.
// An item is either a header or an item rendered with a radio button and title/description and icon:
$cc = $key = 0;
$menuItems = array();
foreach ($wizardItems as $k => $wInfo) {
if ($wInfo['header']) {
$menuItems[] = array('label' => htmlspecialchars($wInfo['header']), 'content' => $this->elementWrapper['section'][0]);
$key = count($menuItems) - 1;
} else {
$content = '';
if (!$this->onClickEvent) {
// Radio button:
$oC = 'document.editForm.defValues.value=unescape(\'' . rawurlencode($wInfo['params']) . '\');goToalt_doc();' . (!$this->onClickEvent ? 'window.location.hash=\'#sel2\';' : '');
$content .= '<div class="contentelement-wizard-item-input"><input type="radio" name="tempB" value="' . htmlspecialchars($k) . '" onclick="' . htmlspecialchars($oC) . '" /></div>';
// Onclick action for icon/title:
$aOnClick = 'document.getElementsByName(\'tempB\')[' . $cc . '].checked=1;' . $oC . 'return false;';
} else {
$aOnClick = "document.editForm.defValues.value=unescape('" . rawurlencode($wInfo['params']) . "');goToalt_doc();" . (!$this->onClickEvent ? "window.location.hash='#sel2';" : '');
}
$menuItems[$key]['content'] .= '<li>
<div class="contentelement-wizard-item">
' . $content . '
<div class="contentelement-wizard-item-icon">
<a href="#" onclick="' . htmlspecialchars($aOnClick) . '">
<img' . IconUtility::skinImg($this->doc->backPath, $wInfo['icon'], '') . ' alt="" />
</a>
</div>
<div class="contentelement-wizard-item-text">
<a href="#" onclick="' . htmlspecialchars($aOnClick) . '">
<strong>' . htmlspecialchars($wInfo['title']) . '</strong>
<br />' . nl2br(htmlspecialchars(trim($wInfo['description']))) . '</a>
</div>
</div>
</li>';
$cc++;
}
}
// Add closing section-tag
foreach ($menuItems as $key => $val) {
$menuItems[$key]['content'] .= $this->elementWrapper['section'][1];
}
// Add the wizard table to the content, wrapped in tabs:
if ($this->config['renderMode'] == 'tabs') {
$code = $GLOBALS['LANG']->getLL('sel1', 1) . '<br /><br />' . $this->doc->getDynTabMenu($menuItems, 'new-content-element-wizard', FALSE, FALSE);
} else {
$code = $GLOBALS['LANG']->getLL('sel1', 1) . '<br /><br />';
foreach ($menuItems as $section) {
$code .= '<h3 class="divider">' . $section['label'] . '</h3>' . $section['content'];
}
}
$this->content .= $this->doc->section(!$this->onClickEvent ? $GLOBALS['LANG']->getLL('1_selectType') : '', $code, 0, 1);
// If the user must also select a column:
if (!$this->onClickEvent) {
// Add anchor "sel2"
$this->content .= $this->doc->section('', '<a name="sel2"></a>');
$this->content .= $this->doc->spacer(20);
// Select position
$code = $GLOBALS['LANG']->getLL('sel2', 1) . '<br /><br />';
// Load SHARED page-TSconfig settings and retrieve column list from there, if applicable:
$modTSconfig_SHARED = BackendUtility::getModTSconfig($this->id, 'mod.SHARED');
$colPosList = trim($modTSconfig_SHARED['properties']['colPos_list']) !== '' ? trim($modTSconfig_SHARED['properties']['colPos_list']) : '1,0,2,3';
$colPosList = implode(',', array_unique(GeneralUtility::intExplode(',', $colPosList)));
// Removing duplicates, if any
// Finally, add the content of the column selector to the content:
$code .= $posMap->printContentElementColumns($this->id, 0, $colPosList, 1, $this->R_URI);
$this->content .= $this->doc->section($GLOBALS['LANG']->getLL('2_selectPosition'), $code, 0, 1);
}
// Close wrapper div
$this->content .= '</div>';
} else {
// In case of no access:
$this->content = '';
$this->content .= $this->doc->header($GLOBALS['LANG']->getLL('newContentElement'));
$this->content .= $this->doc->spacer(5);
}
// Setting up the buttons and markers for docheader
$docHeaderButtons = $this->getButtons();
$markers['CSH'] = $docHeaderButtons['csh'];
$markers['CONTENT'] = $this->content;
// Build the <body> for the module
$this->content = $this->doc->startPage($GLOBALS['LANG']->getLL('newContentElement'));
$this->content .= $this->doc->moduleBody($this->pageinfo, $docHeaderButtons, $markers);
$this->content .= $this->doc->sectionEnd();
$this->content .= $this->doc->endPage();
$this->content = $this->doc->insertStylesAndJS($this->content);
}
示例2: main
/**
* Generate the main settings formular:
*
* @return void
* @todo Define visibility
*/
public function main()
{
global $LANG;
if ($this->languageUpdate) {
$this->doc->JScodeArray['languageUpdate'] .= '
if (top.refreshMenu) {
top.refreshMenu();
} else {
top.TYPO3ModuleMenu.refreshMenu();
}
';
}
if ($this->pagetreeNeedsRefresh) {
BackendUtility::setUpdateSignal('updatePageTree');
}
// Start page:
$this->doc->loadJavascriptLib('sysext/backend/Resources/Public/JavaScript/md5.js');
// Use a wrapper div
$this->content .= '<div id="user-setup-wrapper">';
// Load available backend modules
$this->loadModules = GeneralUtility::makeInstance('TYPO3\\CMS\\Backend\\Module\\ModuleLoader');
$this->loadModules->observeWorkspaces = TRUE;
$this->loadModules->load($GLOBALS['TBE_MODULES']);
$this->content .= $this->doc->header($LANG->getLL('UserSettings'));
// Show if setup was saved
if ($this->setupIsUpdated && !$this->tempDataIsCleared && !$this->settingsAreResetToDefault) {
$flashMessage = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', $LANG->getLL('setupWasUpdated'), $LANG->getLL('UserSettings'));
$this->content .= $flashMessage->render();
}
// Show if temporary data was cleared
if ($this->tempDataIsCleared) {
$flashMessage = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', $LANG->getLL('tempDataClearedFlashMessage'), $LANG->getLL('tempDataCleared'));
$this->content .= $flashMessage->render();
}
// Show if temporary data was cleared
if ($this->settingsAreResetToDefault) {
$flashMessage = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', $LANG->getLL('settingsAreReset'), $LANG->getLL('resetConfiguration'));
$this->content .= $flashMessage->render();
}
// Notice
if ($this->setupIsUpdated || $this->settingsAreResetToDefault) {
$flashMessage = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', $LANG->getLL('activateChanges'), '', \TYPO3\CMS\Core\Messaging\FlashMessage::INFO);
$this->content .= $flashMessage->render();
}
// If password is updated, output whether it failed or was OK.
if ($this->passwordIsSubmitted) {
if ($this->passwordIsUpdated) {
$flashMessage = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', $LANG->getLL('newPassword_ok'), $LANG->getLL('newPassword'));
} else {
$flashMessage = GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', $LANG->getLL('newPassword_failed'), $LANG->getLL('newPassword'), \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
}
$this->content .= $flashMessage->render();
}
// Render the menu items
$menuItems = $this->renderUserSetup();
$this->content .= $this->doc->getDynTabMenu($menuItems, 'user-setup', FALSE, FALSE, 1, FALSE, 1, $this->dividers2tabs);
$formToken = $this->formProtection->generateToken('BE user setup', 'edit');
$this->content .= $this->doc->section('', '<input type="hidden" name="simUser" value="' . $this->simUser . '" />
<input type="hidden" name="formToken" value="' . $formToken . '" />
<input type="hidden" value="1" name="data[save]" />
<input type="hidden" name="data[setValuesToDefault]" value="0" id="setValuesToDefault" />
<input type="hidden" name="data[clearSessionVars]" value="0" id="clearSessionVars" />');
// End of wrapper div
$this->content .= '</div>';
// Setting up the buttons and markers for docheader
$docHeaderButtons = $this->getButtons();
$markers['CSH'] = $docHeaderButtons['csh'];
$markers['CONTENT'] = $this->content;
// Build the <body> for the module
$this->content = $this->doc->moduleBody($this->pageinfo, $docHeaderButtons, $markers);
// Renders the module page
$this->content = $this->doc->render($LANG->getLL('UserSettings'), $this->content);
}