00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00067 class tx_extrapagecmoptions {
00068
00079 function main(&$backRef,$menuItems,$table,$uid) {
00080 global $BE_USER,$TCA,$LANG;
00081
00082 $localItems = array();
00083 $subname = t3lib_div::_GP('subname');
00084
00085
00086 if (!$backRef->cmLevel) {
00087
00088
00089 if ($backRef->editOK) {
00090 $LL = $this->includeLL();
00091
00092 $localItems[]='spacer';
00093 $localItems['moreoptions']=$backRef->linkItem(
00094 $GLOBALS['LANG']->makeEntities($LANG->getLLL('label',$LL)),
00095 $backRef->excludeIcon(''),
00096 "top.loadTopMenu('".t3lib_div::linkThisScript()."&cmLevel=1&subname=moreoptions');return false;",
00097 0,
00098 1
00099 );
00100
00101 if (!in_array('hide',$backRef->disabledItems) && is_array($TCA[$table]['ctrl']['enablecolumns']) && $TCA[$table]['ctrl']['enablecolumns']['disabled'])
00102 $localItems['hide'] = $backRef->DB_hideUnhide($table,$backRef->rec,$TCA[$table]['ctrl']['enablecolumns']['disabled']);
00103 if (!in_array('edit_access',$backRef->disabledItems) && is_array($TCA[$table]['ctrl']['enablecolumns']))
00104 $localItems['edit_access'] = $backRef->DB_editAccess($table,$uid);
00105 if (!in_array('edit_pageheader',$backRef->disabledItems) && $table=='pages' && $backRef->editPageIconSet)
00106 $localItems['edit_pageheader'] = $backRef->DB_editPageHeader($uid);
00107 }
00108
00109
00110 reset($menuItems);
00111 $c=0;
00112 $deleteFound = FALSE;
00113 while(list($k)=each($menuItems)) {
00114 $c++;
00115 if (!strcmp($k,'delete')) {
00116 $deleteFound = TRUE;
00117 break;
00118 }
00119 }
00120
00121 if ($deleteFound) {
00122
00123 $c-=2;
00124
00125 array_splice(
00126 $menuItems,
00127 $c,
00128 0,
00129 $localItems
00130 );
00131 } else {
00132 $menuItems=array_merge($menuItems,$localItems);
00133 }
00134 } elseif ($subname==='moreoptions') {
00135 if ($backRef->editOK) {
00136 if (!in_array('move_wizard',$backRef->disabledItems) && ($table=='pages' || $table=='tt_content')) $localItems['move_wizard']=$backRef->DB_moveWizard($table,$uid,$backRef->rec);
00137 if (!in_array('new_wizard',$backRef->disabledItems) && ($table=='pages' || $table=='tt_content')) $localItems['new_wizard']=$backRef->DB_newWizard($table,$uid,$backRef->rec);
00138 if (!in_array('history',$backRef->disabledItems)) $localItems['history']=$backRef->DB_history($table,$uid);
00139 if (!in_array('perms',$backRef->disabledItems) && $table=='pages' && $BE_USER->check('modules','web_perm')) $localItems['perms']=$backRef->DB_perms($table,$uid,$backRef->rec);
00140 if (!in_array('db_list',$backRef->disabledItems) && $BE_USER->check('modules','web_list')) $localItems['db_list']=$backRef->DB_db_list($table,$uid,$backRef->rec);
00141 }
00142
00143
00144 if ($table=='pages') {
00145 $localItems['perms'] = $backRef->DB_tempMountPoint($uid);
00146 }
00147
00148
00149 $menuItems = array_merge($menuItems,$localItems);
00150 }
00151 return $menuItems;
00152 }
00153
00159 function includeLL() {
00160 global $LANG;
00161
00162 $LOCAL_LANG = $LANG->includeLLFile('EXT:extra_page_cm_options/locallang.php',FALSE);
00163 return $LOCAL_LANG;
00164 }
00165 }
00166
00167 if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/extra_page_cm_options/class.tx_extrapagecmoptions.php']) {
00168 include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/extra_page_cm_options/class.tx_extrapagecmoptions.php']);
00169 }
00170 ?>