Index: typo3/sysext/cms/layout/class.tx_cms_layout.php =================================================================== --- typo3/sysext/cms/layout/class.tx_cms_layout.php (revision 7072) +++ typo3/sysext/cms/layout/class.tx_cms_layout.php (working copy) @@ -1569,10 +1569,23 @@ // Edit content element: $params='&edit[tt_content]['.$this->tt_contentData['nextThree'][$row['uid']].']=edit'; - $out.=''. + $out_edit=''. 'backPath,'gfx/edit2.gif','width="11" height="12"').' title="'.htmlspecialchars($this->nextThree>1?sprintf($GLOBALS['LANG']->getLL('nextThree'),$this->nextThree):$GLOBALS['LANG']->getLL('edit')).'" alt="" />'. ''; + // Hook for hiding the edit icon + if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideEditIcon'])) { + foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideEditIcon'] as $classRef) { + $var_array = array( + 'out_edit' => &$out_edit, + 'uid' => $row['uid'] + ); + + t3lib_div::callUserFunction($classRef, $var_array, $this); + } + } + $out .= $out_edit; + if (!$disableMoveAndNewButtons) { // New content element: if ($this->option_newWizard) { @@ -1588,21 +1601,49 @@ // Move element up: if ($this->tt_contentData['prev'][$row['uid']]) { $params='&cmd[tt_content]['.$row['uid'].'][move]='.$this->tt_contentData['prev'][$row['uid']]; - $out.=''. + $out_moveup=''. 'backPath,'gfx/button_up.gif','width="11" height="10"').' title="'.$GLOBALS['LANG']->getLL('moveUp',1).'" alt="" />'. ''; } else { - $out.='backPath,'gfx/button_up.gif','width="11" height="10"',2).' alt="" />'; + $out_moveup='backPath,'gfx/button_up.gif','width="11" height="10"',2).' alt="" />'; } + + // Hook for hiding the move up icon + if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideMoveUpIcon'])) { + foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideMoveUpIcon'] as $classRef) { + $var_array = array( + 'out_moveup' => &$out_moveup, + 'uid' => $row['uid'] + ); + + t3lib_div::callUserFunction($classRef, $var_array, $this); + } + } + $out .= $out_moveup; + // Move element down: if ($this->tt_contentData['next'][$row['uid']]) { $params='&cmd[tt_content]['.$row['uid'].'][move]='.$this->tt_contentData['next'][$row['uid']]; - $out.=''. + $out_movedown=''. 'backPath,'gfx/button_down.gif','width="11" height="10"').' title="'.$GLOBALS['LANG']->getLL('moveDown',1).'" alt="" />'. ''; } else { - $out.='backPath,'gfx/button_down.gif','width="11" height="10"',2).' alt="" />'; + $out_movedown='backPath,'gfx/button_down.gif','width="11" height="10"',2).' alt="" />'; } + + // Hook for hiding the move down icon + if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideMoveDownIcon'])) { + foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideMoveDownIcon'] as $classRef) { + $var_array = array( + 'out_movedown' => &$out_movedown, + 'uid' => $row['uid'] + ); + + t3lib_div::callUserFunction($classRef, $var_array, $this); + } + } + $out .= $out_movedown; + } // Hide element: @@ -1610,24 +1651,51 @@ if ($hiddenField && $TCA['tt_content']['columns'][$hiddenField] && (!$TCA['tt_content']['columns'][$hiddenField]['exclude'] || $GLOBALS['BE_USER']->check('non_exclude_fields','tt_content:'.$hiddenField))) { if ($row[$hiddenField]) { $params='&data[tt_content]['.($row['_ORIG_uid'] ? $row['_ORIG_uid'] : $row['uid']).']['.$hiddenField.']=0'; - $out.=''. + $out_hide=''. 'backPath,'gfx/button_unhide.gif','width="11" height="10"').' title="'.$GLOBALS['LANG']->getLL('unHide',1).'" alt="" />'. ''; } else { $params='&data[tt_content]['.($row['_ORIG_uid'] ? $row['_ORIG_uid'] : $row['uid']).']['.$hiddenField.']=1'; - $out.=''. + $out_hide=''. 'backPath,'gfx/button_hide.gif','width="11" height="10"').' title="'.$GLOBALS['LANG']->getLL('hide',1).'" alt="" />'. ''; } + + // Hook for hiding the hide icon + if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideHideIcon'])) { + foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideHideIcon'] as $classRef) { + $var_array = array( + 'out_hide' => &$out_hide, + 'uid' => $row['uid'] + ); + + t3lib_div::callUserFunction($classRef, $var_array, $this); + } + } + $out .= $out_hide; + } // Delete $params='&cmd[tt_content]['.$row['uid'].'][delete]=1'; $confirm = $GLOBALS['LANG']->JScharCode($GLOBALS['LANG']->getLL('deleteWarning') . t3lib_BEfunc::translationCount('tt_content', $row['uid'], ' ' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xml:labels.translationsOfRecord'))); - $out.=''. + $out_delete=''. 'backPath,'gfx/garbage.gif','width="11" height="12"').' title="'.$GLOBALS['LANG']->getLL('deleteItem',1).'" alt="" />'. ''; + + // Hook for hiding the delete icon + if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideDeleteIcon'])) { + foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/sysext/cms/layout/class.tx_cms_layout.php']['hideDeleteIcon'] as $classRef) { + $var_array = array( + 'out_delete' => &$out_delete, + 'uid' => $row['uid'] + ); + + t3lib_div::callUserFunction($classRef, $var_array, $this); + } + } + $out .= $out_delete; // End cell: $out.= '