[TASK] Introduce Enum constants for t3ver_state
[Packages/TYPO3.CMS.git] / typo3 / sysext / frontend / Classes / ContentObject / ContentTableContentObject.php
1 <?php
2 namespace TYPO3\CMS\Frontend\ContentObject;
3
4 /***************************************************************
5 * Copyright notice
6 *
7 * (c) 2010-2013 Xavier Perseguers <typo3@perseguers.ch>
8 * (c) 2010-2013 Steffen Kamper <steffen@typo3.org>
9 * All rights reserved
10 *
11 * This script is part of the TYPO3 project. The TYPO3 project is
12 * free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * The GNU General Public License can be found at
18 * http://www.gnu.org/copyleft/gpl.html.
19 * A copy is found in the textfile GPL.txt and important notices to the license
20 * from the author is found in LICENSE.txt distributed with these scripts.
21 *
22 *
23 * This script is distributed in the hope that it will be useful,
24 * but WITHOUT ANY WARRANTY; without even the implied warranty of
25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 * GNU General Public License for more details.
27 *
28 * This copyright notice MUST APPEAR in all copies of the script!
29 ***************************************************************/
30 /**
31 * Contains CTABLE class object.
32 *
33 * @author Xavier Perseguers <typo3@perseguers.ch>
34 * @author Steffen Kamper <steffen@typo3.org>
35 */
36 class ContentTableContentObject extends \TYPO3\CMS\Frontend\ContentObject\AbstractContentObject {
37
38 /**
39 * Rendering the cObject, CTABLE
40 *
41 * @param array $conf Array of TypoScript properties
42 * @return string Output
43 */
44 public function render($conf = array()) {
45 $controlTable = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Frontend\\ContentObject\\TableRenderer');
46 $tableParams = isset($conf['tableParams.']) ? $this->cObj->stdWrap($conf['tableParams'], $conf['tableParams.']) : $conf['tableParams'];
47 if ($tableParams) {
48 $controlTable->tableParams = $tableParams;
49 }
50 // loads the pagecontent
51 $conf['cWidth'] = isset($conf['cWidth.']) ? $this->cObj->stdWrap($conf['cWidth'], $conf['cWidth.']) : $conf['cWidth'];
52 $controlTable->contentW = $conf['cWidth'];
53 // loads the menues if any
54 if (is_array($conf['c.'])) {
55 $controlTable->content = $this->cObj->cObjGet($conf['c.'], 'c.');
56 $contentTDParams = isset($conf['c.']['TDParams.']) ? $this->cObj->stdWrap($conf['c.']['TDParams'], $conf['c.']['TDParams.']) : $conf['c.']['TDParams'];
57 $controlTable->contentTDparams = isset($contentTDParams) ? $contentTDParams : 'valign="top"';
58 }
59 if (is_array($conf['lm.'])) {
60 $controlTable->lm = $this->cObj->cObjGet($conf['lm.'], 'lm.');
61 $lmTDParams = isset($conf['lm.']['TDParams.']) ? $this->cObj->stdWrap($conf['lm.']['TDParams'], $conf['lm.']['TDParams.']) : $conf['lm.']['TDParams'];
62 $controlTable->lmTDparams = isset($lmTDParams) ? $lmTDParams : 'valign="top"';
63 }
64 if (is_array($conf['tm.'])) {
65 $controlTable->tm = $this->cObj->cObjGet($conf['tm.'], 'tm.');
66 $tmTDParams = isset($conf['tm.']['TDParams.']) ? $this->cObj->stdWrap($conf['tm.']['TDParams'], $conf['tm.']['TDParams.']) : $conf['tm.']['TDParams'];
67 $controlTable->tmTDparams = isset($tmTDParams) ? $tmTDParams : 'valign="top"';
68 }
69 if (is_array($conf['rm.'])) {
70 $controlTable->rm = $this->cObj->cObjGet($conf['rm.'], 'rm.');
71 $rmTDParams = isset($conf['rm.']['TDParams.']) ? $this->cObj->stdWrap($conf['rm.']['TDParams'], $conf['rm.']['TDParams.']) : $conf['rm.']['TDParams'];
72 $controlTable->rmTDparams = isset($rmTDParams) ? $rmTDParams : 'valign="top"';
73 }
74 if (is_array($conf['bm.'])) {
75 $controlTable->bm = $this->cObj->cObjGet($conf['bm.'], 'bm.');
76 $bmTDParams = isset($conf['bm.']['TDParams.']) ? $this->cObj->stdWrap($conf['bm.']['TDParams'], $conf['bm.']['TDParams.']) : $conf['bm.']['TDParams'];
77 $controlTable->bmTDparams = isset($bmTDParams) ? $bmTDParams : 'valign="top"';
78 }
79 $conf['offset'] = isset($conf['offset.']) ? $this->cObj->stdWrap($conf['offset'], $conf['offset.']) : $conf['offset'];
80 $conf['cMargins'] = isset($conf['cMargins.']) ? $this->cObj->stdWrap($conf['cMargins'], $conf['cMargins.']) : $conf['cMargins'];
81 $theValue = $controlTable->start($conf['offset'], $conf['cMargins']);
82 if (isset($conf['stdWrap.'])) {
83 $theValue = $this->cObj->stdWrap($theValue, $conf['stdWrap.']);
84 }
85 return $theValue;
86 }
87
88 }