TYPO3 CMS  TYPO3_6-2
TableRenderer.php
Go to the documentation of this file.
1 <?php
3 
23 
24  // offset, x
28  public $offX = 0;
29 
30  // offset, y
34  public $offY = 0;
35 
36  // top menu
40  public $tm = '';
41 
42  // left menu
46  public $lm = '';
47 
48  // right menu
52  public $rm = '';
53 
54  // bottom menu
58  public $bm = '';
59 
60  // content
64  public $content = '';
65 
66  // top menu TDparams
70  public $tmTDparams = 'valign="top"';
71 
72  // left menu TDparams
76  public $lmTDparams = 'valign="top"';
77 
78  // right menu TDparams
82  public $rmTDparams = 'valign="top"';
83 
84  // bottom menu TDparams
88  public $bmTDparams = 'valign="top"';
89 
90  // content TDparams
94  public $contentTDparams = 'valign="top"';
95 
96  // content margin, left
100  public $cMl = 1;
101 
102  // content margin, right
106  public $cMr = 1;
107 
108  // content margin, top
112  public $cMt = 0;
113 
114  // content margin, bottom
118  public $cMb = 1;
119 
120  // Places a little gif-spacer in the bottom of the content frame
124  public $contentW = 0;
125 
129  public $tableParams = 'border="0" cellspacing="0" cellpadding="0"';
130 
141  public function start($offset, $cMargins) {
143  $cMargArr = \TYPO3\CMS\Core\Utility\GeneralUtility::intExplode(',', $cMargins);
144  $cols = 0;
145  $rows = 0;
146  if ($this->lm) {
147  $cols++;
148  }
149  if ($this->rm) {
150  $cols++;
151  }
152  if ($cMargArr[0]) {
153  $cols++;
154  }
155  if ($cMargArr[2]) {
156  $cols++;
157  }
158  if ($cMargArr[1] || $cMargArr[3] || $this->tm || $this->bm || $this->content || $this->contentW) {
159  $cols++;
160  }
161  if ($cMargArr[1]) {
162  $rows++;
163  }
164  if ($cMargArr[3]) {
165  $rows++;
166  }
167  if ($this->tm) {
168  $rows++;
169  }
170  if ($this->bm) {
171  $rows++;
172  }
173  if ($this->content) {
174  $rows++;
175  }
176  if ($this->contentW) {
177  $rows++;
178  }
179  if (!$rows && $cols) {
180  // If there are no rows in the middle but still som columns...
181  $rows = 1;
182  }
183  if ($rows && $cols) {
184  $res = LF . '<table ' . $this->tableParams . '>';
185  // Top offset:
186  if ($offArr[1]) {
187  $xoff = $offArr[0] ? 1 : 0;
188  if ($cols + $xoff > 1) {
189  $colspan = ' colspan="' . ($cols + $xoff) . '"';
190  }
191  $res .= '<tr><td' . $colspan . '><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" width="1" height="' . $offArr[1] . '" alt="" title="" /></td></tr>';
192  }
193  // The rows:
194  if ($rows > 1) {
195  $rowspan = ' rowspan="' . $rows . '"';
196  }
197  $res .= '<tr>';
198  if ($offArr[0]) {
199  $res .= '<td' . $rowspan . '><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" height="1" width="' . $offArr[0] . '" alt="" title="" /></td>';
200  }
201  if ($this->lm) {
202  $res .= '<td' . $rowspan . ' ' . $this->lmTDparams . '>' . $this->lm . '</td>';
203  }
204  if ($cMargArr[0]) {
205  $res .= '<td' . $rowspan . '><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" height="1" width="' . $cMargArr[0] . '" alt="" title="" /></td>';
206  }
207  // Content...
208  $middle = array();
209  if ($this->tm) {
210  $middle[] = '<td ' . $this->tmTDparams . '>' . $this->tm . '</td>';
211  }
212  if ($cMargArr[1]) {
213  $middle[] = '<td><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" width="1" height="' . $cMargArr[1] . '" alt="" title="" /></td>';
214  }
215  if ($this->content) {
216  $middle[] = '<td ' . $this->contentTDparams . '>' . $this->content . '</td>';
217  }
218  if ($cMargArr[3]) {
219  $middle[] = '<td><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" width="1" height="' . $cMargArr[3] . '" alt="" title="" /></td>';
220  }
221  if ($this->bm) {
222  $middle[] = '<td ' . $this->bmTDparams . '>' . $this->bm . '</td>';
223  }
224  if ($this->contentW) {
225  $middle[] = '<td><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" height="1" width="' . $this->contentW . '" alt="" title="" /></td>';
226  }
227  if (isset($middle[0])) {
228  $res .= $middle[0];
229  }
230  // Left of content
231  if ($cMargArr[2]) {
232  $res .= '<td' . $rowspan . '><img src="' . $GLOBALS['TSFE']->absRefPrefix . 'clear.gif" height="1" width="' . $cMargArr[2] . '" alt="" title="" /></td>';
233  }
234  if ($this->rm) {
235  $res .= '<td' . $rowspan . ' ' . $this->rmTDparams . '>' . $this->rm . '</td>';
236  }
237  $res .= '</tr>';
238  // More than the two rows
239  $mCount = count($middle);
240  for ($a = 1; $a < $mCount; $a++) {
241  $res .= '<tr>' . $middle[$a] . '</tr>';
242  }
243  $res .= '</table>';
244  return $res;
245  }
246  }
247 
248 }
static intExplode($delimiter, $string, $removeEmptyValues=FALSE, $limit=0)
if(!defined('TYPO3_MODE')) $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['logoff_pre_processing'][]