Bug #18047 » 20080129_docheader_alt_doc_db_list.diff
typo3/alt_doc.php (working copy) | ||
---|---|---|
* @var mediumDoc
|
||
*/
|
||
var $doc;
|
||
var $template; // a static HTML template, usually in templates/alt_doc.html
|
||
var $content; // Content accumulation
|
||
var $retUrl; // Return URL script, processed. This contains the script (if any) that we should RETURN TO from the alt_doc.php script IF we press the close button. Thus this variable is normally passed along from the calling script so we can properly return if needed.
|
||
... | ... | |
*
|
||
* @return boolean True, then save the document (data submitted)
|
||
*/
|
||
function doProcessData() {
|
||
$out = $this->doSave || isset($_POST['_savedok_x']) || isset($_POST['_saveandclosedok_x']) || isset($_POST['_savedokview_x']) || isset($_POST['_savedoknew_x']);
|
||
return $out;
|
||
function doProcessData() {
|
||
return ($this->doSave || isset($_POST['_savedok_x']) || isset($_POST['_saveandclosedok_x']) || isset($_POST['_savedokview_x']) || isset($_POST['_savedoknew_x']));
|
||
}
|
||
... | ... | |
// Create an instance of the document template object
|
||
$this->doc = t3lib_div::makeInstance('template');
|
||
$this->template = $this->doc->getHtmlTemplate('templates/alt_doc.html');
|
||
$this->doc->divClass = 'typo3-fullDoc';
|
||
$this->doc->backPath = $BACK_PATH;
|
||
$this->doc->docType = 'xhtml_trans';
|
||
... | ... | |
global $BE_USER,$LANG;
|
||
// Starting content accumulation:
|
||
$this->content='';
|
||
$this->content.=$this->doc->startPage('TYPO3 Edit Document');
|
||
$this->content = $this->doc->startPage('TYPO3 Edit Document');
|
||
// Begin edit:
|
||
if (is_array($this->editconf)) {
|
||
... | ... | |
// Creating the editing form, wrap it with buttons, document selector etc.
|
||
$editForm = $this->makeEditForm();
|
||
if ($editForm) {
|
||
$this->firstEl = reset($this->elementsData);
|
||
... | ... | |
$this->tceforms->printNeededJSFunctions_top().
|
||
$this->compileHeader().'
|
||
<div id="typo3-docbody">'.
|
||
$this->extraFormHeaders.
|
||
$this->compileForm($editForm).
|
||
$this->tceforms->printNeededJSFunctions().
|
||
$this->functionMenus().
|
||
... | ... | |
*/
|
||
function getButtons() {
|
||
global $TCA,$LANG;
|
||
$buttons = array();
|
||
$buttons = array('save' => '', 'save_view' => '', 'save_new' => '', 'save_close' => '', 'close' => '', 'delete' => '', 'undo' => '', 'history' => '', 'columns_only' => '');
|
||
// Render SAVE type buttons:
|
||
// The action of each button is decided by its name attribute. (See doProcessData())
|
||
... | ... | |
}
|
||
}
|
||
$buttons['shortcut'] = $this->shortCutLink();
|
||
$buttons['open_in_new_window'] = $this->openInNewWindowLink();
|
||
return $buttons;
|
||
}
|
||
... | ... | |
* @return string HTML <select> element (if applicable)
|
||
*/
|
||
function makeDocSel() {
|
||
global $BE_USER,$LANG;
|
||
global $BE_USER, $LANG;
|
||
$docSel = '';
|
||
// Render the selector ONLY if it has not been disabled:
|
||
... | ... | |
/**
|
||
* Put together the various elements for the header
|
||
* Put together the various elements for the header using a static HTML
|
||
* template
|
||
*
|
||
* @return string Composite HTML
|
||
*/
|
||
... | ... | |
global $LANG;
|
||
$btns = $this->getButtons();
|
||
$docSel = $this->makeDocSel();
|
||
$cMenu = $this->makeCmenu();
|
||
$content = t3lib_parsehtml::getSubpart($this->template, '###DOCHEADER###');
|
||
$content = '
|
||
<!-- Page header with buttons for saving & closing and path details -->
|
||
<div id="typo3-docheader">
|
||
<div id="typo3-docheader-row1">
|
||
<div class="buttonsleft">'.$btns['save'].$btns['save_view'].$btns['save_close'].$btns['save_new'].'</div>
|
||
<div class="buttonsright">'.$docSel.$cMenu.$btns['delete'].$btns['shortcut'].$btns['history'].$buttons['columns_only'].$btns['undo'].$btns['close'].'</div>
|
||
</div>
|
||
';
|
||
$markerArray = array();
|
||
$markerArray['DOCUMENT_SELECTOR'] = $this->makeDocSel();
|
||
$markerArray['CACHE_MENU'] = $this->makeCmenu();
|
||
$markerArray['PAGEPATH'] = $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.path',1).': '.htmlspecialchars($this->generalPathOfForm);
|
||
if (is_array($this->tceforms->extraFormHeaders)) {
|
||
$this->extraFormHeaders = '<div id="typo3-docheader-rowextra">'.implode(chr(10), $this->tceforms->extraFormHeaders).'</div>';
|
||
// -- compiling buttons --
|
||
// get button template, then loop through the buttons and replace them in the template
|
||
$btnTmpl = t3lib_parsehtml::getSubpart($this->template, '###BUTTON_GROUPS###');
|
||
$btnTmpl = t3lib_parsehtml::substituteMarkerArray($btnTmpl, $btns, '###|###', true);
|
||
// getting the wrap for each group
|
||
$btnWrap = t3lib_parsehtml::getSubpart($this->template, '###BUTTON_GROUP_WRAP###');
|
||
// looping through the groups (max 6) and remove the empty groups
|
||
$grpId = 1;
|
||
for ($grpNum = 1; $grpNum < 6; $grpNum++) {
|
||
$btnMarker = '###BUTTON_GROUP'.$grpNum.'###';
|
||
$btnGroup = t3lib_parsehtml::getSubpart($btnTmpl, $btnMarker);
|
||
if (trim($btnGroup)) {
|
||
if ($btnWrap) {
|
||
$btnGroup = t3lib_parsehtml::substituteMarker($btnWrap, '###BUTTONS###', $btnGroup);
|
||
}
|
||
$btnTmpl = t3lib_parsehtml::substituteSubpart($btnTmpl, $btnMarker, trim($btnGroup));
|
||
}
|
||
}
|
||
// replace the marker with the template and remove all line breaks (for IE compat)
|
||
$markerArray['BUTTONLIST'] = str_replace("\n", '', $btnTmpl);
|
||
// -- end compiling buttons
|
||
// language switch/selector for editing
|
||
// show only when a single record is edited - multiple records are too confusing
|
||
// language switch/selector for editing, show only when a single record is edited
|
||
// - multiple records are too confusing
|
||
if (count($this->elementsData) == 1) {
|
||
$langSelector = '<div class="langselector">'.$this->languageSwitch($this->firstEl['table'], $this->firstEl['uid'], $this->firstEl['pid']).'</div>';
|
||
$langSelector = $this->languageSwitch($this->firstEl['table'], $this->firstEl['uid'], $this->firstEl['pid']);
|
||
}
|
||
if ($langSelector) {
|
||
$langTmpl = t3lib_parsehtml::getSubpart($this->template, '###DOCHEADER_LANGSELECTOR###');
|
||
$langTmpl = t3lib_parsehtml::substituteMarker($langTmpl, '###LANGSELECTOR###', $langSelector);
|
||
$markerArray['LANGSELECTOR'] = $langTmpl;
|
||
} else {
|
||
$markerArray['LANGSELECTOR'] = '';
|
||
}
|
||
|
||
$content.='
|
||
<div id="typo3-docheader-row2">
|
||
<div class="pagepath">'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.path',1).': '.htmlspecialchars($this->generalPathOfForm).'</div>
|
||
<div class="infooptions">'.$langSelector.'</div>
|
||
</div>
|
||
</div>';
|
||
return $content;
|
||
if (is_array($this->tceforms->extraFormHeaders)) {
|
||
$extraTmpl = t3lib_parsehtml::getSubpart($this->template, '###DOCHEADER_EXTRAHEADER###');
|
||
$extraTmpl = t3lib_parsehtml::substituteMarker($extraTmpl, '###EXTRAHEADER###', implode(chr(10), $this->tceforms->extraFormHeaders));
|
||
$markerArray['EXTRAHEADER'] = $extraTmpl;
|
||
} else {
|
||
$markerArray['EXTRAHEADER'] = '';
|
||
}
|
||
// replacing all markers with the finished markers and return the HTML content
|
||
return t3lib_parsehtml::substituteMarkerArray($content, $markerArray, '###|###');
|
||
}
|
||
... | ... | |
* @return string
|
||
*/
|
||
function openInNewWindowLink() {
|
||
global $BE_USER,$LANG;
|
||
global $BE_USER, $LANG;
|
||
if ($this->returnUrl == 'close.html') {
|
||
return '';
|
||
}
|
||
$aOnClick = 'vHWin=window.open(\''.t3lib_div::linkThisScript(array('returnUrl'=>'close.html')).'\',\''.md5($this->R_URI).'\',\''.($BE_USER->uc['edit_wideDocument']?'width=670,height=500':'width=600,height=400').',status=0,menubar=0,scrollbars=1,resizable=1\');vHWin.focus();return false;';
|
||
$aOnClick = 'vHWin=window.open(\''.t3lib_div::linkThisScript(array('returnUrl'=>'close.html')).'\',\''.md5($this->R_URI).'\',\'width=670,height=500,status=0,menubar=0,scrollbars=1,resizable=1\');vHWin.focus();return false;';
|
||
return '<a href="#" onclick="'.htmlspecialchars($aOnClick).'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->doc->backPath,'gfx/open_in_new_window.gif','width="19" height="14"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.openInNewWindow',1).'" alt="" /></a>';
|
||
}
|
typo3/class.db_list_extra.inc (working copy) | ||
---|---|---|
var $CBnames=array(); // Tracking names of elements (for clipboard use)
|
||
var $duplicateStack=array(); // Used to track which elements has duplicates and how many
|
||
/**
|
||
* Writes the top of the full listing
|
||
* Create the panel of buttons for submitting the form or otherwise perform operations.
|
||
*
|
||
* @param array Current page record
|
||
* @return void (Adds content to internal variable, $this->HTMLcode)
|
||
* @return array all available buttons as an assoc. array
|
||
*/
|
||
function writeTop($row) {
|
||
global $LANG;
|
||
function getButtons() {
|
||
global $LANG;
|
||
|
||
$buttons = array(
|
||
'csh' => '',
|
||
'view' => '',
|
||
'edit' => '',
|
||
'hide_unhide' => '',
|
||
'move' => '',
|
||
'new_record' => '',
|
||
'paste' => '',
|
||
'level_up' => '',
|
||
'cache' => '',
|
||
'reload' => '',
|
||
'shortcut' => '',
|
||
'csv' => '',
|
||
'export' => ''
|
||
);
|
||
// Makes the code for the pageicon in the top
|
||
$this->pageRow = $row;
|
||
$this->counter++;
|
||
$alttext = t3lib_BEfunc::getRecordIconAltText($row,'pages');
|
||
$iconImg = t3lib_iconWorks::getIconImage('pages',$row,$this->backPath,'class="absmiddle" title="'.htmlspecialchars($alttext).'"');
|
||
$titleCol = 'test'; // pseudo title column name
|
||
$this->fieldArray = Array($titleCol,'up'); // Setting the fields to display in the list (this is of course "pseudo fields" since this is the top!)
|
||
// Filling in the pseudo data array:
|
||
$theData = Array();
|
||
$theData[$titleCol] = $this->widthGif;
|
||
// Get users permissions for this row:
|
||
$localCalcPerms = $GLOBALS['BE_USER']->calcPerms($row);
|
||
$theData['up']=array();
|
||
// Initialize control panel for currect page ($this->id):
|
||
// Some of the controls are added only if $this->id is set - since they make sense only on a real page, not root level.
|
||
$theCtrlPanel =array();
|
||
// "View page" icon is added:
|
||
$theCtrlPanel[]='<a href="#" onclick="'.htmlspecialchars(t3lib_BEfunc::viewOnClick($this->id,$this->backPath,t3lib_BEfunc::BEgetRootLine($this->id))).'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/zoom.gif','width="12" height="12"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.showPage',1).'" alt="" />'.
|
||
'</a>';
|
||
// If edit permissions are set (see class.t3lib_userauthgroup.php)
|
||
if ($localCalcPerms&2) {
|
||
// Adding "Edit page" icon:
|
||
if ($this->id) {
|
||
$params='&edit[pages]['.$row['uid'].']=edit';
|
||
$theCtrlPanel[]='<a href="#" onclick="'.htmlspecialchars(t3lib_BEfunc::editOnClick($params,$this->backPath,-1)).'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/edit2.gif','width="11" height="12"').' title="'.$LANG->getLL('editPage',1).'" alt="" />'.
|
||
// Get users permissions for this page record:
|
||
$localCalcPerms = $GLOBALS['BE_USER']->calcPerms($this->pageRow);
|
||
|
||
// CSH
|
||
if (!strlen($this->id)) {
|
||
$buttons['csh'] = t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'list_module_noId', $GLOBALS['BACK_PATH']);
|
||
} elseif(!$this->id) {
|
||
$buttons['csh'] = t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'list_module_root', $GLOBALS['BACK_PATH']);
|
||
} else {
|
||
$buttons['csh'] = t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'list_module', $GLOBALS['BACK_PATH']);
|
||
}
|
||
|
||
if (isset($this->id)) {
|
||
// View
|
||
$buttons['view'] = '<a href="#" onclick="' . htmlspecialchars(t3lib_BEfunc::viewOnClick($this->id, $this->backPath, t3lib_BEfunc::BEgetRootLine($this->id))) . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/zoom.gif', 'width="12" height="12"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.showPage', 1) . '" alt="" />' .
|
||
'</a>';
|
||
|
||
// If edit permissions are set (see class.t3lib_userauthgroup.php)
|
||
if ($localCalcPerms&2 && !empty($this->id)) {
|
||
|
||
// Edit
|
||
$params = '&edit[pages][' . $this->pageRow['uid'] . ']=edit';
|
||
$buttons['edit'] = '<a href="#" onclick="' . htmlspecialchars(t3lib_BEfunc::editOnClick($params, $this->backPath, -1)) . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/edit2.gif', 'width="11" height="12"') . ' title="' . $LANG->getLL('editPage', 1) . '" alt="" />' .
|
||
'</a>';
|
||
}
|
||
// Adding "New record" icon:
|
||
if (!$GLOBALS['SOBE']->modTSconfig['properties']['noCreateRecordsLink']) {
|
||
$theCtrlPanel[]='<a href="#" onclick="'.htmlspecialchars('return jumpExt(\''.$this->backPath.'db_new.php?id='.$this->id.'\');').'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/new_el.gif','width="11" height="12"').' title="'.$LANG->getLL('newRecordGeneral',1).'" alt="" />'.
|
||
'</a>';
|
||
}
|
||
// Adding "Hide/Unhide" icon:
|
||
if ($this->id) {
|
||
if ($row['hidden']) {
|
||
$params='&data[pages]['.$row['uid'].'][hidden]=0';
|
||
$theCtrlPanel[]='<a href="#" onclick="'.htmlspecialchars('return jumpToUrl(\''.$GLOBALS['SOBE']->doc->issueCommand($params,-1).'\');').'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/button_unhide.gif','width="11" height="10"').' title="'.$LANG->getLL('unHidePage',1).'" alt="" />'.
|
||
// Unhide
|
||
if ($this->pageRow['hidden']) {
|
||
$params = '&data[pages][' . $this->pageRow['uid'] . '][hidden]=0';
|
||
$buttons['hide_unhide'] = '<a href="#" onclick="' . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');') . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/button_unhide.gif', 'width="11" height="10"') . ' title="' . $LANG->getLL('unHidePage', 1) . '" alt="" />' .
|
||
'</a>';
|
||
// Hide
|
||
} else {
|
||
$params='&data[pages]['.$row['uid'].'][hidden]=1';
|
||
$theCtrlPanel[]='<a href="#" onclick="'.htmlspecialchars('return jumpToUrl(\''.$GLOBALS['SOBE']->doc->issueCommand($params,-1).'\');').'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/button_hide.gif','width="11" height="10"').' title="'.$LANG->getLL('hidePage',1).'" alt="" />'.
|
||
$params = '&data[pages][' . $this->pageRow['uid'] . '][hidden]=1';
|
||
$buttons['hide_unhide'] = '<a href="#" onclick="' . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');') . '">'.
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/button_hide.gif', 'width="11" height="10"') . ' title="' . $LANG->getLL('hidePage', 1) . '" alt="" />' .
|
||
'</a>';
|
||
}
|
||
|
||
// Move
|
||
$buttons['move'] = '<a href="#" onclick="' . htmlspecialchars('return jumpExt(\'' . $this->backPath . 'move_el.php?table=pages&uid=' . $this->pageRow['uid'] . '\');') . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/move_' . ($this->table == 'tt_content' ? 'record' : 'page') . '.gif', 'width="11" height="12"') . ' title="' . $LANG->getLL('move_page', 1) . '" alt="" />' .
|
||
'</a>';
|
||
|
||
// Up one level
|
||
$buttons['level_up'] = '<a href="' . htmlspecialchars($this->listURL($this->pageRow['pid'])) . '" onclick="setHighlight(' . $this->pageRow['pid'] . ')">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/i/pages_up.gif', 'width="18" height="16"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.upOneLevel', 1) . '" alt="" />' .
|
||
'</a>';
|
||
|
||
// New record
|
||
if (!$GLOBALS['SOBE']->modTSconfig['properties']['noCreateRecordsLink']) {
|
||
$buttons['new_record'] = '<a href="#" onclick="' . htmlspecialchars('return jumpExt(\'' . $this->backPath . 'db_new.php?id=' . $this->id . '\');') . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/new_el.gif', 'width="11" height="12"') . ' title="' . $LANG->getLL('newRecordGeneral', 1) . '" alt="" />' .
|
||
'</a>';
|
||
}
|
||
}
|
||
// Adding "move page" button:
|
||
if ($this->id) {
|
||
$theCtrlPanel[]='<a href="#" onclick="'.htmlspecialchars('return jumpExt(\''.$this->backPath.'move_el.php?table=pages&uid='.$row['uid'].'\');').'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/move_'.($this->table=='tt_content'?'record':'page').'.gif','width="11" height="12"').' title="'.$LANG->getLL('move_page',1).'" alt="" />'.
|
||
|
||
|
||
// Paste
|
||
if (($localCalcPerms&8) || ($localCalcPerms&16)) {
|
||
$elFromTable = $this->clipObj->elFromTable('');
|
||
if (count($elFromTable)) {
|
||
$buttons['paste'] = '<a href="' . htmlspecialchars($this->clipObj->pasteUrl('', $this->id)) . '" onclick="' . htmlspecialchars('return ' . $this->clipObj->confirmMsg('pages', $this->pageRow, 'into', $elFromTable)) . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/clip_pasteafter.gif', 'width="12" height="12"') . ' title="' . $LANG->getLL('clip_paste', 1) . '" alt="" />' .
|
||
'</a>';
|
||
}
|
||
}
|
||
|
||
// Cache
|
||
$buttons['cache'] = '<a href="' . htmlspecialchars($this->listURL() . '&clear_cache=1') . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/clear_cache.gif', 'width="14" height="14"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.clear_cache', 1) . '" alt="" />' .
|
||
'</a>';
|
||
|
||
if ($this->table) {
|
||
|
||
// CSV
|
||
$buttons['csv'] = '<a href="' . htmlspecialchars($this->listURL() . '&csv=1') . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/csv.gif', 'width="27" height="14"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.csv', 1) . '" alt="" />' .
|
||
'</a>';
|
||
|
||
// Export
|
||
if (t3lib_extMgm::isLoaded('impexp')) {
|
||
$buttons['export'] = '<a href="' . htmlspecialchars($this->backPath. 'mod.php?M=xMOD_tximpexp&tx_impexp[action]=export&tx_impexp[list][]=' . rawurlencode($this->table . ':' . $this->id)) . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, t3lib_extMgm::extRelPath('impexp') . 'export.gif', ' width="18" height="16"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:rm.export', 1) . '" alt="" />' .
|
||
'</a>';
|
||
}
|
||
|
||
}
|
||
}
|
||
// "Paste into page" link:
|
||
if (($localCalcPerms&8) || ($localCalcPerms&16)) {
|
||
$elFromTable = $this->clipObj->elFromTable('');
|
||
if (count($elFromTable)) {
|
||
$theCtrlPanel[]='<a href="'.htmlspecialchars($this->clipObj->pasteUrl('',$this->id)).'" onclick="'.htmlspecialchars('return '.$this->clipObj->confirmMsg('pages',$this->pageRow,'into',$elFromTable)).'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/clip_pasteafter.gif','width="12" height="12"').' title="'.$LANG->getLL('clip_paste',1).'" alt="" />'.
|
||
|
||
// Reload
|
||
$buttons['reload'] = '<a href="' . htmlspecialchars($this->listURL()) . '">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/refresh_n.gif', 'width="14" height="14"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.reload', 1) . '" alt="" />' .
|
||
'</a>';
|
||
|
||
// Shortcut
|
||
if ($GLOBALS['BE_USER']->mayMakeShortcut()) {
|
||
$buttons['shortcut'] = $GLOBALS['TBE_TEMPLATE']->makeShortcutIcon('id, imagemode, pointer, table, search_field, search_levels, showLimit, sortField, sortRev', implode(',', array_keys($this->MOD_MENU)), 'web_list');
|
||
}
|
||
|
||
// Back
|
||
if ($this->returnUrl) {
|
||
$buttons['back'] = '<a href="' . htmlspecialchars(t3lib_div::linkThisUrl($this->returnUrl, array('id' => $this->id))) . '" class="typo3-goBack">' .
|
||
'<img' . t3lib_iconWorks::skinImg($this->backPath, 'gfx/goback.gif', 'width="14" height="14"') . ' title="' . $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.goBack', 1) . '" alt="" />' .
|
||
'</a>';
|
||
}
|
||
}
|
||
// Finally, compile all elements of the control panel into table cells:
|
||
if (count($theCtrlPanel)) {
|
||
$theData['up'][]='
|
||
return $buttons;
|
||
}
|
||
|
||
/**
|
||
* Generate the page path for docheader
|
||
*
|
||
* @return string Page path
|
||
*/
|
||
function getPagePath() {
|
||
global $LANG;
|
||
|
||
// Add icon with clickmenu, etc:
|
||
if ($this->id) { // If there IS a real page...:
|
||
<!--
|
||
Control panel for page
|
||
-->
|
||
<table border="0" cellpadding="0" cellspacing="0" class="bgColor4" id="typo3-dblist-ctrltop">
|
||
<tr>
|
||
<td>'.implode('</td>
|
||
<td>',$theCtrlPanel).'</td>
|
||
</tr>
|
||
</table>';
|
||
// Setting the path of the page
|
||
$pagePath = $LANG->sL('LLL:EXT:lang/locallang_core.php:labels.path', 1) . ': <strong>' . htmlspecialchars(t3lib_div::fixed_lgd_cs($this->pageRow['_thePath'],-$this->fixedL)) . '</strong>';
|
||
|
||
}
|
||
// Add "clear-cache" link:
|
||
$theData['up'][]='<a href="'.htmlspecialchars($this->listURL().'&clear_cache=1').'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/clear_cache.gif','width="14" height="14"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.clear_cache',1).'" alt="" />'.
|
||
'</a>';
|
||
// Add "CSV" link, if a specific table is shown:
|
||
if ($this->table) {
|
||
$theData['up'][]='<a href="'.htmlspecialchars($this->listURL().'&csv=1').'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/csv.gif','width="27" height="14"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.csv',1).'" alt="" />'.
|
||
'</a>';
|
||
}
|
||
// Add "Export" link, if a specific table is shown:
|
||
if ($this->table && t3lib_extMgm::isLoaded('impexp')) {
|
||
$theData['up'][]='<a href="'.htmlspecialchars($this->backPath.'mod.php?M=xMOD_tximpexp&tx_impexp[action]=export&tx_impexp[list][]='.rawurlencode($this->table.':'.$this->id)).'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,t3lib_extMgm::extRelPath('impexp').'export.gif',' width="18" height="16"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:rm.export',1).'" alt="" />'.
|
||
'</a>';
|
||
}
|
||
// Add "refresh" link:
|
||
$theData['up'][]='<a href="'.htmlspecialchars($this->listURL()).'">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/refresh_n.gif','width="14" height="14"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.reload',1).'" alt="" />'.
|
||
'</a>';
|
||
// Add icon with clickmenu, etc:
|
||
|
||
return $pagePath;
|
||
}
|
||
|
||
/**
|
||
* Setting title of page + icon with clickmenu + uid for docheader
|
||
*
|
||
* @return string Page info
|
||
*/
|
||
function getPageInfo() {
|
||
global $LANG;
|
||
|
||
$alttext = t3lib_BEfunc::getRecordIconAltText($this->pageRow, 'pages');
|
||
$iconImg = t3lib_iconWorks::getIconImage('pages', $this->pageRow, $this->backPath, 'class="absmiddle" title="'. htmlspecialchars($alttext) . '"');
|
||
|
||
// Add icon with clickmenu, etc:
|
||
if ($this->id) { // If there IS a real page...:
|
||
// Setting title of page + the "Go up" link:
|
||
$theData[$titleCol].='<br /><span title="'.htmlspecialchars($row['_thePathFull']).'">'.htmlspecialchars(t3lib_div::fixed_lgd_cs($row['_thePath'],-$this->fixedL)).'</span>';
|
||
$theData['up'][]='<a href="'.htmlspecialchars($this->listURL($row['pid'])).'" onclick="setHighlight('.$row['pid'].')">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/i/pages_up.gif','width="18" height="16"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.upOneLevel',1).'" alt="" />'.
|
||
'</a>';
|
||
// Make Icon:
|
||
$theIcon = $this->clickMenuEnabled ? $GLOBALS['SOBE']->doc->wrapClickMenuOnIcon($iconImg,'pages',$this->id) : $iconImg;
|
||
$theIcon = $this->clickMenuEnabled ? $GLOBALS['SOBE']->doc->wrapClickMenuOnIcon($iconImg, 'pages', $this->id) : $iconImg;
|
||
|
||
// Setting title of page + icon with clickmenu + uid
|
||
$pageInfo = $LANG->getLL('viewRecords',1) . $theIcon . '<strong>' . htmlspecialchars($this->pageRow['title']) . '</strong> <em>[pid: ' . $this->pageRow['uid'] . ']</em>';
|
||
|
||
|
||
} else { // On root-level of page tree:
|
||
// Setting title of root (sitename):
|
||
$theData[$titleCol].='<br />'.htmlspecialchars(t3lib_div::fixed_lgd_cs($GLOBALS['TYPO3_CONF_VARS']['SYS']['sitename'],-$this->fixedL));
|
||
// Make Icon:
|
||
$theIcon = '<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/i/_icon_website.gif','width="18" height="16"').' alt="" />';
|
||
|
||
// Setting title of root (sitename):
|
||
$pageInfo = $LANG->getLL('viewRecords',1) . $theIcon . '<strong>' . htmlspecialchars(t3lib_div::fixed_lgd_cs($GLOBALS['TYPO3_CONF_VARS']['SYS']['sitename'],-$this->fixedL)) . '</strong>';
|
||
}
|
||
// If there is a returnUrl given, add a back-link:
|
||
if ($this->returnUrl) {
|
||
$theData['up'][]='<a href="'.htmlspecialchars(t3lib_div::linkThisUrl($this->returnUrl,array('id'=>$this->id))).'" class="typo3-goBack">'.
|
||
'<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/goback.gif','width="14" height="14"').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.goBack',1).'" alt="" />'.
|
||
'</a>';
|
||
}
|
||
// Finally, the "up" pseudo field is compiled into a table - has been accumulated in an array:
|
||
$theData['up']='
|
||
<table border="0" cellpadding="0" cellspacing="0">
|
||
<tr>
|
||
<td>'.implode('</td>
|
||
<td>',$theData['up']).'</td>
|
||
</tr>
|
||
</table>';
|
||
// ... and the element row is created:
|
||
$out.=$this->addelement(1,$theIcon,$theData,'',$this->leftMargin);
|
||
// ... and wrapped into a table and added to the internal ->HTMLcode variable:
|
||
$this->HTMLcode.='
|
||
<!--
|
||
Page header for db_list:
|
||
-->
|
||
<table border="0" cellpadding="0" cellspacing="0" id="typo3-dblist-top">
|
||
'.$out.'
|
||
</table>';
|
||
|
||
return $pageInfo;
|
||
}
|
||
/**
|
typo3/db_list.php (working copy) | ||
---|---|---|
require_once (PATH_t3lib.'class.t3lib_pagetree.php');
|
||
require_once (PATH_t3lib.'class.t3lib_recordlist.php');
|
||
require_once (PATH_t3lib.'class.t3lib_clipboard.php');
|
||
require_once (PATH_t3lib.'class.t3lib_parsehtml.php');
|
||
require_once ($BACK_PATH.'class.db_list.inc');
|
||
require_once ($BACK_PATH.'class.db_list_extra.inc');
|
||
$BE_USER->modAccess($MCONF,1);
|
||
... | ... | |
// Start document template object:
|
||
$this->doc = t3lib_div::makeInstance('template');
|
||
$this->template = $this->doc->getHtmlTemplate('templates/db_list.html');
|
||
$this->doc->divClass = 'typo3-fullDoc';
|
||
$this->doc->backPath = $BACK_PATH;
|
||
$this->doc->docType='xhtml_trans';
|
||
$this->doc->inDocStylesArray[] = 'html { overflow: hidden; }';
|
||
// Loading current page record and checking access:
|
||
$this->pageinfo = t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause);
|
||
... | ... | |
$dblist->alternateBgColors=$this->modTSconfig['properties']['alternateBgColors']?1:0;
|
||
$dblist->allowedNewTables = t3lib_div::trimExplode(',',$this->modTSconfig['properties']['allowedNewTables'],1);
|
||
$dblist->newWizards=$this->modTSconfig['properties']['newWizards']?1:0;
|
||
$dblist->pageRow = $this->pageinfo;
|
||
$dblist->counter++;
|
||
$dblist->MOD_MENU = array('bigControlPanel' => '', 'clipBoard' => '', 'localization' => '');
|
||
// Clipboard is initialized:
|
||
$dblist->clipObj = t3lib_div::makeInstance('t3lib_clipboard'); // Start clipboard
|
||
$dblist->clipObj->initializeClipboard(); // Initialize - reads the clipboard content from the user session
|
||
... | ... | |
$dblist->start($this->id,$this->table,$this->pointer,$this->search_field,$this->search_levels,$this->showLimit);
|
||
$dblist->setDispFields();
|
||
// Render the page header:
|
||
$dblist->writeTop($this->pageinfo);
|
||
// Render versioning selector:
|
||
$dblist->HTMLcode.= $this->doc->getVersionSelector($this->id);
|
||
... | ... | |
window.location.href = URL;
|
||
return false;
|
||
}
|
||
// workaround since IE6 cannot deal with relative height for scrolling elements
|
||
function resizeDocBody() {
|
||
$("typo3-docbody").style.height = (document.body.offsetHeight - parseInt($("typo3-docheader").getStyle("height")));
|
||
}
|
||
if (/MSIE 6/.test(navigator.userAgent)) {
|
||
Event.observe(window, "resize", resizeDocBody, false);
|
||
Event.observe(document, "load", resizeDocBody, false);
|
||
}
|
||
function jumpExt(URL,anchor) { //
|
||
var anc = anchor?anchor:"";
|
||
window.location.href = URL+(T3_THIS_LOCATION?"&returnUrl="+T3_THIS_LOCATION:"")+anc;
|
||
... | ... | |
// Begin to compile the whole page, starting out with page header:
|
||
$this->content='';
|
||
$this->content.=$this->doc->startPage('DB list');
|
||
$this->content.= $this->doc->startPage('DB list');
|
||
$this->content.= $this->compileHeader($dblist);
|
||
$this->content.= '<div id="typo3-docbody">';
|
||
$this->content.= '<form action="'.htmlspecialchars($dblist->listURL()).'" method="post" name="dblistForm">';
|
||
// List Module CSH:
|
||
if (!strlen($this->id)) {
|
||
$this->content.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'list_module_noId', $GLOBALS['BACK_PATH'],'<br/>|');
|
||
} elseif (!$this->id) { // zero...:
|
||
$this->content.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'list_module_root', $GLOBALS['BACK_PATH'],'<br/>|');
|
||
}
|
||
// Add listing HTML code:
|
||
$this->content.= $dblist->HTMLcode;
|
||
$this->content.= '<input type="hidden" name="cmd_table" /><input type="hidden" name="cmd" /></form>';
|
||
// List Module CSH:
|
||
if ($this->id) {
|
||
$this->content.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'list_module', $GLOBALS['BACK_PATH'],'<br/>|');
|
||
}
|
||
// If a listing was produced, create the page footer with search form etc:
|
||
if ($dblist->HTMLcode) {
|
||
... | ... | |
// Display sys-notes, if any are found:
|
||
$this->content.=$dblist->showSysNotesForPage();
|
||
// ShortCut:
|
||
if ($BE_USER->mayMakeShortcut()) {
|
||
$this->content.='<br/>'.$this->doc->makeShortcutIcon('id,imagemode,pointer,table,search_field,search_levels,showLimit,sortField,sortRev',implode(',',array_keys($this->MOD_MENU)),$this->MCONF['name']);
|
||
}
|
||
}
|
||
// Finally, close off the page:
|
||
// Close the docbody
|
||
$this->content .= '</div>';
|
||
$this->content.= $this->doc->endPage();
|
||
}
|
||
... | ... | |
function printContent() {
|
||
echo $this->content;
|
||
}
|
||
|
||
/**
|
||
* Put together the various elements for the header using a static HTML
|
||
* template
|
||
*
|
||
* @return string Composite HTML
|
||
*/
|
||
function compileHeader(&$dblist) {
|
||
global $LANG;
|
||
$btns = $dblist->getButtons();
|
||
$content = t3lib_parsehtml::getSubpart($this->template, '###DOCHEADER###');
|
||
$markerArray = array();
|
||
$markerArray['PAGEPATH'] = $dblist->getPagePath();
|
||
$markerArray['PAGEINFO'] = $dblist->getPageInfo();
|
||
// -- compiling buttons --
|
||
// get button template, then loop through the buttons and replace them in the template
|
||
$btnTmpl = t3lib_parsehtml::getSubpart($this->template, '###BUTTON_GROUPS###');
|
||
$btnTmpl = t3lib_parsehtml::substituteMarkerArray($btnTmpl, $btns, '###|###', true);
|
||
// getting the wrap for each group
|
||
$btnWrap = t3lib_parsehtml::getSubpart($this->template, '###BUTTON_GROUP_WRAP###');
|
||
// looping through the groups (max 6) and remove the empty groups
|
||
$grpId = 1;
|
||
for ($grpNum = 1; $grpNum < 6; $grpNum++) {
|
||
$btnMarker = '###BUTTON_GROUP'.$grpNum.'###';
|
||
$btnGroup = t3lib_parsehtml::getSubpart($btnTmpl, $btnMarker);
|
||
if (trim($btnGroup)) {
|
||
if ($btnWrap) {
|
||
$btnGroup = t3lib_parsehtml::substituteMarker($btnWrap, '###BUTTONS###', $btnGroup);
|
||
}
|
||
$btnTmpl = t3lib_parsehtml::substituteSubpart($btnTmpl, $btnMarker, trim($btnGroup));
|
||
}
|
||
}
|
||
// replace the marker with the template and remove all line breaks (for IE compat)
|
||
$markerArray['BUTTONLIST'] = str_replace("\n", '', $btnTmpl);
|
||
// -- end compiling buttons
|
||
// replacing all markers with the finished markers and return the HTML content
|
||
return t3lib_parsehtml::substituteMarkerArray($content, $markerArray, '###|###');
|
||
}
|
||
}
|
||
// Include extension?
|
typo3/stylesheet.css (working copy) | ||
---|---|---|
background-color: #9BA1A8;
|
||
}
|
||
body#typo3-alt-doc-php { padding: 0; margin: 0; overflow: hidden; height: 100%; }
|
||
body#typo3-alt-doc-php, body#typo3-db-list-php { padding: 0; margin: 0; overflow: hidden; height: 100%; }
|
||
/****************************************
|
||
* SPECIFIC WRAPPERS
|
||
*
|
||
... | ... | |
div#typo3-docheader div.buttonsleft { margin: 0 0 0 3px; line-height: 16px; float: left; }
|
||
div#typo3-docheader div.buttonsright { margin: 0 3px 0 0; line-height: 16px; float: right; }
|
||
div#typo3-docheader img, div#typo3-docheader input { margin: 2px 3px 0; vertical-align: top; }
|
||
div#typo3-docheader img.typo3-csh-icon { margin: 2px 15px 0 2px; }
|
||
div#typo3-docheader select { margin: 2px 0 0; }
|
||
div#typo3-docheader img.typo3-csh-icon { margin: 2px 2px 0 2px; }
|
||
div#typo3-docheader select { margin: 1px 0 0; }
|
||
div#typo3-docheader div.pagepath { margin-left: 6px; float: left; }
|
||
div#typo3-docheader div.infooptions { margin-right: 6px; float: right; }
|
||
div#typo3-docbody { width: 98%; padding: 2% 0% 2% 2%; overflow: auto; top: 49px; bottom: 0; position: absolute; z-index: 2; }
|
||
* html div#typo3-docbody { height: 90%; top: 49px; padding-top: 0; padding-bottom: 0; }
|
||
* html div#typo3-docbody table.typo3-TCEforms { margin-top: 20px; }
|
||
div#typo3-docheader div.buttongroup { height: 20px; float: left; padding-right: 20px; border-right: 1px dashed #ccc; margin-right: 5px; }
|
||
/* Login Screen
|
||
... | ... | |
TABLE#typo3-page-stdlist TR TD.c-headLine { background-color: #ABBBB4; }
|
||
/* Web > List */
|
||
TABLE.typo3-dblist { width: 98%; }
|
||
TABLE.typo3-dblist { width: 93%; }
|
||
TABLE.typo3-dblist IMG { vertical-align: middle; }
|
||
TABLE.typo3-dblist TR TD { padding-left: 1px; padding-right: 6px; }
|
||
TABLE.typo3-dblist TR TD.db_list_alt { background-color: #E3DFD3; }
|
||
... | ... | |
TABLE#typo3-versionSelector { background-color: #ABBBB4; margin-top: 5px; margin-bottom: 5px; }
|
||
TABLE#typo3-versionSelector TD { padding-left: 2px; padding-right: 2px; }
|
||
DIV#typo3-newRecordLink, DIV.typo3-newRecordLink { margin: 5px 0px 5px 0px; font-weight: bold; }
|
||
DIV#typo3-newRecordLink, DIV.typo3-newRecordLink { margin: 5px 0px 5px 0px; font-weight: bold; width: 93%; }
|
||
DIV#typo3-newRecordLink IMG, DIV.typo3-newRecordLink IMG { margin-right: 5px; vertical-align: middle; }
|
||
INPUT.smallCheckboxes { vertical-align: middle; margin: 0px; padding: 0px; width: 12px; height: 12px; }
|
||
DIV#typo3-listOptions { margin: 10px 0px 10px 0px; }
|
||
DIV#typo3-listOptions { margin: 10px 0px 10px 0px; width: 93%; }
|
||
/* File > List */
|
||
TABLE#typo3-filelist IMG { vertical-align: middle; }
|
||
... | ... | |
*********************************************/
|
||
/* context menus */
|
||
div#contentMenu0 { z-index: 1; position: absolute; }
|
||
div#contentMenu1 { z-index: 2; position: absolute; }
|
||
div#contentMenu0 { z-index: 10; position: absolute; }
|
||
div#contentMenu1 { z-index: 20; position: absolute; }
|
||
/* Dimmed span tag color (disabled) */
|
||
.typo3-dimmed { color: #666; }
|
||
... | ... | |
H2,H3,H4,DIV { border: 1px dotted #666; }
|
||
*/
|
||
typo3/sysext/lang/locallang_mod_web_list.xml (working copy) | ||
---|---|---|
<label index="defaultLanguage">Default</label>
|
||
<label index="multipleLanguages">All languages</label>
|
||
<label index="Localize">Localize to:</label>
|
||
<label index="viewRecords">Viewing records of</label>
|
||
</languageKey>
|
||
</data>
|
||
</T3locallang>
|
typo3/sysext/t3skin/stylesheets/typo3-TCEforms.css (working copy) | ||
---|---|---|
table#typo3-altdoc-header input,
|
||
.c-inputButton {
|
||
background: #EFEFF4;
|
||
background: transparent;
|
||
border: 0;
|
||
}
|
||
... | ... | |
table.typo3-TCEforms table#typo3-altdoc-header input:hover,
|
||
.c-inputButton:hover {
|
||
background: #F8F9FA;
|
||
background: transparent;
|
||
border: 0;
|
||
}
|
||
typo3/template.php (working copy) | ||
---|---|---|
}
|
||
}
|
||
}
|
||
/**
|
||
* Function to load a HTML template file with markers. Can be overriden with
|
||
*
|
||
* @param string tmpl name, usually in the typo3/template/ directory, can be overriden by
|
||
* @param string Default width/height, defined like 'width="12" height="14"'
|
||
* @param integer Mode: 0 (zero) is default and returns src/width/height. 1 returns value of src+backpath, 2 returns value of w/h.
|
||
* @return string Returns ' src="[backPath][src]" [wHattribs]'
|
||
* @see skinImgFile()
|
||
*/
|
||
function getHtmlTemplate($filename) {
|
||
if ($GLOBALS['TBE_STYLES']['htmlTemplates'][$filename]) {
|
||
$filename = $GLOBALS['TBE_STYLES']['htmlTemplates'][$filename];
|
||
}
|
||
return ($filename ? t3lib_div::getURL($this->backPath.$filename) : '');
|
||
}
|
||
}
|
||
// ******************************
|
||
// Extension classes of the template class.
|
||
// These are meant to provide backend screens with different widths.
|
typo3/templates/db_list.html (revision 0) | ||
---|---|---|
<!-- ###DOCHEADER### -->
|
||
<!-- Page header with buttons for saving & closing and path details -->
|
||
<div id="typo3-docheader">
|
||
<div id="typo3-docheader-row1">
|
||
<div class="buttonsleft">###BUTTONLIST###</div>
|
||
</div>
|
||
<div id="typo3-docheader-row2">
|
||
<div class="pagepath">###PAGEPATH###</div>
|
||
<div class="infooptions">###PAGEINFO###</div>
|
||
</div>
|
||
</div>
|
||
<!-- ###DOCHEADER### -->
|
||
|
||
|
||
<!-- Grouping the icons on top -->
|
||
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
<div class="buttongroup">###BUTTONS###</div>
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
<!-- ###BUTTON_GROUP1### -->###CSH###<!-- ###BUTTON_GROUP1### -->
|
||
<!-- ###BUTTON_GROUP2### -->###VIEW######EDIT######HIDE_UNHIDE######MOVE###<!-- ###BUTTON_GROUP2### -->
|
||
<!-- ###BUTTON_GROUP3### -->###NEW_RECORD######PASTE###<!-- ###BUTTON_GROUP3### -->
|
||
<!-- ###BUTTON_GROUP4### -->###LEVEL_UP###<!-- ###BUTTON_GROUP4### -->
|
||
<!-- ###BUTTON_GROUP5### -->###CACHE######RELOAD######SHORTCUT###<!-- ###BUTTON_GROUP5### -->
|
||
<!-- ###BUTTON_GROUP6### -->###CSV######EXPORT###<!-- ###BUTTON_GROUP6### -->
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
|
typo3/templates/alt_doc.html (revision 0) | ||
---|---|---|
<!-- ###DOCHEADER### -->
|
||
<!-- Page header with buttons for saving & closing and path details -->
|
||
<div id="typo3-docheader">
|
||
<div id="typo3-docheader-row1">
|
||
<div class="buttonsleft">###BUTTONLIST###</div>
|
||
<div class="buttonsright">###DOCUMENT_SELECTOR### ###CACHE_MENU###</div>
|
||
</div>
|
||
<div id="typo3-docheader-row2">
|
||
<div class="pagepath">###PAGEPATH###</div>
|
||
<div class="infooptions">###LANGSELECTOR###</div>
|
||
</div>
|
||
###EXTRAHEADER###
|
||
</div>
|
||
<!-- ###DOCHEADER### -->
|
||
|
||
<!-- ###DOCHEADER_EXTRAHEADER### -->
|
||
<div id="typo3-docheader-rowextra">###EXTRAHEADER###</div>
|
||
<!-- ###DOCHEADER_EXTRAHEADER### -->
|
||
|
||
<!-- ###DOCHEADER_LANGSELECTOR### -->
|
||
<div class="langselector">###LANGSELECTOR###</div>
|
||
<!-- ###DOCHEADER_LANGSELECTOR### -->
|
||
|
||
|
||
<!-- Grouping the icons on top -->
|
||
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
<div class="buttongroup">###BUTTONS###</div>
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
<!-- ###BUTTON_GROUP1### -->###CLOSE###<!-- ###BUTTON_GROUP1### -->
|
||
<!-- ###BUTTON_GROUP2### -->###SAVE######SAVE_VIEW######SAVE_CLOSE######SAVE_NEW###<!-- ###BUTTON_GROUP2### -->
|
||
<!-- ###BUTTON_GROUP3### -->###DELETE######UNDO######HISTORY###<!-- ###BUTTON_GROUP3### -->
|
||
<!-- ###BUTTON_GROUP4### -->###SHORTCUT######COLUMNS_ONLY######OPEN_IN_NEW_WINDOW###<!-- ###BUTTON_GROUP4### -->
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
|
typo3/templates/alt_doc.html (revision 0) | ||
---|---|---|
<!-- ###DOCHEADER### -->
|
||
<!-- Page header with buttons for saving & closing and path details -->
|
||
<div id="typo3-docheader">
|
||
<div id="typo3-docheader-row1">
|
||
<div class="buttonsleft">###BUTTONLIST###</div>
|
||
<div class="buttonsright">###DOCUMENT_SELECTOR### ###CACHE_MENU###</div>
|
||
</div>
|
||
<div id="typo3-docheader-row2">
|
||
<div class="pagepath">###PAGEPATH###</div>
|
||
<div class="infooptions">###LANGSELECTOR###</div>
|
||
</div>
|
||
###EXTRAHEADER###
|
||
</div>
|
||
<!-- ###DOCHEADER### -->
|
||
|
||
<!-- ###DOCHEADER_EXTRAHEADER### -->
|
||
<div id="typo3-docheader-rowextra">###EXTRAHEADER###</div>
|
||
<!-- ###DOCHEADER_EXTRAHEADER### -->
|
||
|
||
<!-- ###DOCHEADER_LANGSELECTOR### -->
|
||
<div class="langselector">###LANGSELECTOR###</div>
|
||
<!-- ###DOCHEADER_LANGSELECTOR### -->
|
||
|
||
|
||
<!-- Grouping the icons on top -->
|
||
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
<div class="buttongroup">###BUTTONS###</div>
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
<!-- ###BUTTON_GROUP1### -->###CLOSE###<!-- ###BUTTON_GROUP1### -->
|
||
<!-- ###BUTTON_GROUP2### -->###SAVE######SAVE_VIEW######SAVE_CLOSE######SAVE_NEW###<!-- ###BUTTON_GROUP2### -->
|
||
<!-- ###BUTTON_GROUP3### -->###DELETE######UNDO######HISTORY###<!-- ###BUTTON_GROUP3### -->
|
||
<!-- ###BUTTON_GROUP4### -->###SHORTCUT######COLUMNS_ONLY######OPEN_IN_NEW_WINDOW###<!-- ###BUTTON_GROUP4### -->
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
|
typo3/templates/db_list.html (revision 0) | ||
---|---|---|
<!-- ###DOCHEADER### -->
|
||
<!-- Page header with buttons for saving & closing and path details -->
|
||
<div id="typo3-docheader">
|
||
<div id="typo3-docheader-row1">
|
||
<div class="buttonsleft">###BUTTONLIST###</div>
|
||
</div>
|
||
<div id="typo3-docheader-row2">
|
||
<div class="pagepath">###PAGEPATH###</div>
|
||
<div class="infooptions">###PAGEINFO###</div>
|
||
</div>
|
||
</div>
|
||
<!-- ###DOCHEADER### -->
|
||
|
||
|
||
<!-- Grouping the icons on top -->
|
||
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
<div class="buttongroup">###BUTTONS###</div>
|
||
<!-- ###BUTTON_GROUP_WRAP### -->
|
||
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
<!-- ###BUTTON_GROUP1### -->###CSH###<!-- ###BUTTON_GROUP1### -->
|
||
<!-- ###BUTTON_GROUP2### -->###VIEW######EDIT######HIDE_UNHIDE######MOVE###<!-- ###BUTTON_GROUP2### -->
|
||
<!-- ###BUTTON_GROUP3### -->###NEW_RECORD######PASTE###<!-- ###BUTTON_GROUP3### -->
|
||
<!-- ###BUTTON_GROUP4### -->###LEVEL_UP###<!-- ###BUTTON_GROUP4### -->
|
||
<!-- ###BUTTON_GROUP5### -->###CACHE######RELOAD######SHORTCUT###<!-- ###BUTTON_GROUP5### -->
|
||
<!-- ###BUTTON_GROUP6### -->###CSV######EXPORT###<!-- ###BUTTON_GROUP6### -->
|
||
<!-- ###BUTTON_GROUPS### -->
|
||
|