[TASK] Remove superfluous parenthesis in sysext frontend
[Packages/TYPO3.CMS.git] / typo3 / sysext / frontend / Classes / ContentObject / MultimediaContentObject.php
1 <?php
2 namespace TYPO3\CMS\Frontend\ContentObject;
3
4 /***************************************************************
5 * Copyright notice
6 *
7 * (c) 2010-2011 Xavier Perseguers <typo3@perseguers.ch>
8 * (c) 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 MULTIMEDIA class object.
32 *
33 * @author Xavier Perseguers <typo3@perseguers.ch>
34 * @author Steffen Kamper <steffen@typo3.org>
35 */
36 class MultimediaContentObject extends \TYPO3\CMS\Frontend\ContentObject\AbstractContentObject {
37
38 /**
39 * Rendering the cObject, MULTIMEDIA
40 *
41 * @param array $conf Array of TypoScript properties
42 * @return string Output
43 */
44 public function render($conf = array()) {
45 $content = '';
46 $filename = isset($conf['file.']) ? $this->cObj->stdWrap($conf['file'], $conf['file.']) : $conf['file'];
47 $incFile = $GLOBALS['TSFE']->tmpl->getFileName($filename);
48 if ($incFile) {
49 $fileinfo = \TYPO3\CMS\Core\Utility\GeneralUtility::split_fileref($incFile);
50 if (\TYPO3\CMS\Core\Utility\GeneralUtility::inList('txt,html,htm', $fileinfo['fileext'])) {
51 $content = $GLOBALS['TSFE']->tmpl->fileContent($incFile);
52 } else {
53 // Default params...
54 $parArray = array();
55 // Src is added
56 $width = isset($conf['width.']) ? $this->cObj->stdWrap($conf['width'], $conf['width.']) : $conf['width'];
57 if (!$width) {
58 $width = 200;
59 }
60 $height = isset($conf['height.']) ? $this->cObj->stdWrap($conf['height'], $conf['height.']) : $conf['height'];
61 if (!$height) {
62 $height = 200;
63 }
64 $parArray['src'] = 'src="' . $GLOBALS['TSFE']->absRefPrefix . $incFile . '"';
65 if (\TYPO3\CMS\Core\Utility\GeneralUtility::inList('au,wav,mp3', $fileinfo['fileext'])) {
66
67 }
68 if (\TYPO3\CMS\Core\Utility\GeneralUtility::inList('avi,mov,mpg,asf,wmv', $fileinfo['fileext'])) {
69 $parArray['width'] = 'width="' . $width . '"';
70 $parArray['height'] = 'height="' . $height . '"';
71 }
72 if (\TYPO3\CMS\Core\Utility\GeneralUtility::inList('swf,swa,dcr', $fileinfo['fileext'])) {
73 $parArray['quality'] = 'quality="high"';
74 $parArray['width'] = 'width="' . $width . '"';
75 $parArray['height'] = 'height="' . $height . '"';
76 }
77 if (\TYPO3\CMS\Core\Utility\GeneralUtility::inList('class', $fileinfo['fileext'])) {
78 $parArray['width'] = 'width="' . $width . '"';
79 $parArray['height'] = 'height="' . $height . '"';
80 }
81 // fetching params
82 $params = isset($conf['params.']) ? $this->cObj->stdWrap($conf['params'], $conf['params.']) : $conf['params'];
83 $lines = explode(LF, $params);
84 foreach ($lines as $l) {
85 $parts = explode('=', $l);
86 $parameter = strtolower(trim($parts[0]));
87 $value = trim($parts[1]);
88 if ((string) $value != '') {
89 $parArray[$parameter] = $parameter . '="' . htmlspecialchars($value) . '"';
90 } else {
91 unset($parArray[$parameter]);
92 }
93 }
94 if ($fileinfo['fileext'] == 'class') {
95 unset($parArray['src']);
96 $parArray['code'] = 'code="' . htmlspecialchars($fileinfo['file']) . '"';
97 $parArray['codebase'] = 'codebase="' . htmlspecialchars($fileinfo['path']) . '"';
98 $content = '<applet ' . implode(' ', $parArray) . '></applet>';
99 } else {
100 $content = '<embed ' . implode(' ', $parArray) . '></embed>';
101 }
102 }
103 }
104 if (isset($conf['stdWrap.'])) {
105 $content = $this->cObj->stdWrap($content, $conf['stdWrap.']);
106 }
107 return $content;
108 }
109
110 }
111
112
113 ?>