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
00050 require_once(PATH_t3lib.'class.t3lib_page.php');
00051 require_once(PATH_t3lib.'class.t3lib_tcemain.php');
00052 require_once(PATH_t3lib.'class.t3lib_extobjbase.php');
00053
00054
00055
00056
00057
00058
00059
00067 class tx_wizardsortpages_webfunc_2 extends t3lib_extobjbase {
00068
00075 function modMenu() {
00076 global $LANG;
00077
00078 $modMenuAdd = array(
00079 );
00080 return $modMenuAdd;
00081 }
00082
00088 function main() {
00089 global $SOBE,$LANG;
00090
00091 if ($GLOBALS['BE_USER']->workspace===0) {
00092
00093 $theCode='';
00094
00095
00096 $sys_pages = t3lib_div::makeInstance('t3lib_pageSelect');
00097 $sortByField = t3lib_div::_GP('sortByField');
00098 if ($sortByField) {
00099 $menuItems=array();
00100 if (t3lib_div::inList('title,subtitle,crdate,tstamp',$sortByField)) {
00101 $menuItems = $sys_pages->getMenu($this->pObj->id,'uid,pid,title',$sortByField,'',0);
00102 } elseif ($sortByField=='REV') {
00103 $menuItems = $sys_pages->getMenu($this->pObj->id,'uid,pid,title','sorting','',0);
00104 $menuItems = array_reverse($menuItems);
00105 }
00106 if (count($menuItems)) {
00107 $tce = t3lib_div::makeInstance('t3lib_TCEmain');
00108 $tce->stripslashes_values=0;
00109 $menuItems = array_reverse($menuItems);
00110 $cmd=array();
00111 reset($menuItems);
00112 while(list(,$r)=each($menuItems)) {
00113 $cmd['pages'][$r['uid']]['move']=$this->pObj->id;
00114 }
00115 $tce->start(array(),$cmd);
00116 $tce->process_cmdmap();
00117 t3lib_BEfunc::getSetUpdateSignal('updatePageTree');
00118 }
00119 }
00120
00121
00122 $menuItems = $sys_pages->getMenu($this->pObj->id,'*','sorting','',0);
00123 reset($menuItems);
00124 $lines=array();
00125 $lines[]= '<tr>
00126 <td class="bgColor5"><b>'.$this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_title'),'title').'</b></td>
00127 '.(t3lib_extMgm::isLoaded('cms')?'<td class="bgColor5"><b>'.$this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_subtitle'),'subtitle').'</b></td>':'').'
00128 <td class="bgColor5"><b>'.$this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_tChange'),'tstamp').'</b></td>
00129 <td class="bgColor5"><b>'.$this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_tCreate'),'crdate').'</b></td>
00130 </tr>';
00131 while(list(,$rec)=each($menuItems)) {
00132 $m_perms_clause = $GLOBALS['BE_USER']->getPagePermsClause(2);
00133 $pRec = t3lib_BEfunc::getRecord ('pages',$rec['uid'],'uid',' AND '.$m_perms_clause);
00134 $lines[]= '<tr><td nowrap="nowrap">'.t3lib_iconWorks::getIconImage('pages',$rec,$GLOBALS['BACK_PATH'],'align="top" '.t3lib_BEfunc::titleAttribForPages($rec)).
00135 (!is_array($pRec)?$GLOBALS['TBE_TEMPLATE']->rfw('<b>'.$LANG->getLL('wiz_W',1).'</b> '):'').
00136 htmlspecialchars(t3lib_div::fixed_lgd_cs($rec['title'],$GLOBALS['BE_USER']->uc['titleLen'])).' </td>
00137 '.(t3lib_extMgm::isLoaded('cms')?'<td nowrap="nowrap">'.htmlspecialchars(t3lib_div::fixed_lgd_cs($rec['subtitle'],$GLOBALS['BE_USER']->uc['titleLen'])).' </td>':'').'
00138 <td nowrap="nowrap">'.t3lib_Befunc::datetime($rec['tstamp']).' </td>
00139 <td nowrap="nowrap">'.t3lib_Befunc::datetime($rec['crdate']).' </td>
00140 </tr>';
00141 }
00142
00143 $theCode.= '<b>'.$LANG->getLL('wiz_currentPageOrder',1).':</b><br /><br />
00144 <table border="0" cellpadding="0" cellspacing="0">'.implode('',$lines).'</table><br />';
00145
00146 if (count($menuItems)) {
00147
00148 $lines=array();
00149 $lines[] = $this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_title'),'title');
00150 if (t3lib_extMgm::isLoaded('cms')) $lines[] = $this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_subtitle'),'subtitle');
00151 $lines[] = $this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_tChange'),'tstamp');
00152 $lines[] = $this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_tCreate'),'crdate');
00153 $lines[] = '';
00154 $lines[] = $this->wiz_linkOrder($LANG->getLL('wiz_changeOrder_REVERSE'),'REV');
00155 $theCode.= '<b>'.$LANG->getLL('wiz_changeOrder').':</b><br /><br />'.implode('<br />',$lines);
00156 }
00157
00158
00159 $theCode.= t3lib_BEfunc::cshItem('_MOD_web_func', 'tx_wizardsortpages', $GLOBALS['BACK_PATH'],'<br/>|');
00160
00161 $out=$this->pObj->doc->section($LANG->getLL('wiz_sort'),$theCode,0,1);
00162 } else {
00163 $out=$this->pObj->doc->section($LANG->getLL('wiz_sort'),'Sorry, this function is not available in the current draft workspace!',0,1,1);
00164 }
00165 return $out;
00166 }
00167
00175 function wiz_linkOrder($title,$order) {
00176 return ' <a href="'.htmlspecialchars('index.php?id='.$GLOBALS['SOBE']->id.'&sortByField='.$order).'" onclick="return confirm('.$GLOBALS['LANG']->JScharCode($GLOBALS['LANG']->getLL('wiz_changeOrder_msg1')).')">'.htmlspecialchars($title).'</a>';
00177 }
00178 }
00179
00180 if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/wizard_sortpages/class.tx_wizardsortpages_webfunc_2.php']) {
00181 include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/wizard_sortpages/class.tx_wizardsortpages_webfunc_2.php']);
00182 }
00183 ?>