[TASK] Use language labels in Extension Manager javascript
[Packages/TYPO3.CMS.git] / typo3 / sysext / extensionmanager / Classes / ViewHelpers / DownloadExtensionViewHelper.php
1 <?php
2 namespace TYPO3\CMS\Extensionmanager\ViewHelpers;
3
4 /***************************************************************
5 * Copyright notice
6 *
7 * (c) 2012 Susanne Moog <susanne.moog@typo3.org>
8 * All rights reserved
9 *
10 * This script is part of the TYPO3 project. The TYPO3 project is
11 * free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * The GNU General Public License can be found at
17 * http://www.gnu.org/copyleft/gpl.html.
18 * A copy is found in the textfile GPL.txt and important notices to the license
19 * from the author is found in LICENSE.txt distributed with these scripts.
20 *
21 *
22 * This script is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 * GNU General Public License for more details.
26 *
27 * This copyright notice MUST APPEAR in all copies of the script!
28 ***************************************************************/
29 /**
30 * view helper
31 *
32 * @author Susanne Moog <susanne.moog@typo3.org>
33 * @package Extension Manager
34 * @subpackage ViewHelpers
35 */
36 class DownloadExtensionViewHelper extends \TYPO3\CMS\Fluid\ViewHelpers\FormViewHelper {
37
38 /**
39 * @var string
40 */
41 protected $tagName = 'form';
42
43 /**
44 * Renders a download link
45 *
46 * @param \TYPO3\CMS\Extensionmanager\Domain\Model\Extension $extension
47 * @return string the rendered a tag
48 */
49 public function render(\TYPO3\CMS\Extensionmanager\Domain\Model\Extension $extension) {
50 $installPaths = \TYPO3\CMS\Extensionmanager\Domain\Model\Extension::returnAllowedInstallPaths();
51 $pathSelector = '<ul>';
52 foreach ($installPaths as $installPathType => $installPath) {
53 $pathSelector .= '<li>
54 <input type="radio" id="' . $extension->getExtensionKey() . '-downloadPath-' . $installPathType . '" name="' . $this->getFieldNamePrefix('downloadPath') . '[downloadPath]" class="downloadPath" value="' . $installPathType . '"' . ($installPathType == 'Local' ? 'checked="checked"' : '') . '/>
55 <label for="' . $extension->getExtensionKey() . '-downloadPath-' . $installPathType . '">' . $installPathType . '</label>
56 </li>';
57 }
58 $pathSelector .= '</ul>';
59 $uriBuilder = $this->controllerContext->getUriBuilder();
60 $action = 'checkDependencies';
61 $uriBuilder->reset();
62 $uriBuilder->setFormat('json');
63 $uri = $uriBuilder->uriFor($action, array(
64 'extension' => $extension->getUid()
65 ), 'Download');
66 $this->tag->addAttribute('href', $uri);
67 $label = '<input type="submit" value="' . \TYPO3\CMS\Extbase\Utility\LocalizationUtility::translate('extensionList.downloadViewHelper.submit', 'extensionmanager') . '" />';
68 $this->tag->setContent($label . $pathSelector);
69 $this->tag->addAttribute('class', 'download');
70 return '<div id="' . $extension->getExtensionKey() . '-downloadFromTer" class="downloadFromTer">' . $this->tag->render() . '</div>';
71 }
72
73 }
74
75
76 ?>