[!!!][TASK] Remove link.action vh from ext:documentation 83/33983/2
authorAndreas Fernandez <andreas.fernandez@aspedia.de>
Tue, 11 Nov 2014 14:08:20 +0000 (15:08 +0100)
committerChristian Kuhn <lolli@schwarzbu.ch>
Wed, 12 Nov 2014 07:26:22 +0000 (08:26 +0100)
Remove the doc:link.action view helper in favor of f:be.buttons.icon.

Resolves: #62859
Releases: master
Change-Id: I048966efae366f8ec20d1a6d13c5a65cbc5a3212
Reviewed-on: http://review.typo3.org/33983
Reviewed-by: Frank Nägler <typo3@naegler.net>
Tested-by: Frank Nägler <typo3@naegler.net>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
typo3/sysext/core/Documentation/Changelog/master/Breaking-62859-RemovalDocumentationLinkActionViewHelper.rst [new file with mode: 0644]
typo3/sysext/documentation/Classes/ViewHelpers/Link/ActionViewHelper.php [deleted file]
typo3/sysext/documentation/Resources/Private/Templates/Document/Download.html

diff --git a/typo3/sysext/core/Documentation/Changelog/master/Breaking-62859-RemovalDocumentationLinkActionViewHelper.rst b/typo3/sysext/core/Documentation/Changelog/master/Breaking-62859-RemovalDocumentationLinkActionViewHelper.rst
new file mode 100644 (file)
index 0000000..f7dce1b
--- /dev/null
@@ -0,0 +1,26 @@
+=========================================================
+Breaking: #62859 - Removal of doc:link.action view helper
+=========================================================
+
+Description
+===========
+
+The view helper \TYPO3\CMS\Documentation\ViewHelpers\Link\Action is removed.
+
+
+Impact
+======
+
+Extensions that rely on existence of \TYPO3\CMS\Documentation\ViewHelpers\Link\Action won't work.
+
+
+Affected installations
+======================
+
+A TYPO3 instance is affected if a 3rd party extension uses the removed view helper.
+
+
+Migration
+=========
+
+Either use f:be.buttons.icon or any of f:uri.* view helpers.
\ No newline at end of file
diff --git a/typo3/sysext/documentation/Classes/ViewHelpers/Link/ActionViewHelper.php b/typo3/sysext/documentation/Classes/ViewHelpers/Link/ActionViewHelper.php
deleted file mode 100644 (file)
index 71e58c3..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-namespace TYPO3\CMS\Documentation\ViewHelpers\Link;
-
-/**
- * This file is part of the TYPO3 CMS project.
- *
- * It is free software; you can redistribute it and/or modify it under
- * the terms of the GNU General Public License, either version 2
- * of the License, or any later version.
- *
- * For the full copyright and license information, please read the
- * LICENSE.txt file that was distributed with this source code.
- *
- * The TYPO3 project - inspiring people to share!
- */
-
-/**
- * A view helper for creating links to extbase actions using the loading mask.
- *
- * = Examples =
- *
- * <code title="link to the show-action of the current controller">
- * <d:link.action action="show">action link</d:link.action>
- * </code>
- * <output>
- * <a href="#" onclick="top.TYPO3.Backend.ContentContainer.setUrl('index.php?id=123&tx_myextension_plugin[action]=show&tx_myextension_plugin[controller]=Standard&cHash=xyz')">action link</a>
- * (depending on the current page and your TS configuration)
- * </output>
- */
-class ActionViewHelper extends \TYPO3\CMS\Fluid\ViewHelpers\Link\ActionViewHelper {
-
-       /**
-        * Renders the extbase action link.
-        *
-        * @param string $action Target action
-        * @param array $arguments Arguments
-        * @param string $controller Target controller. If NULL current controllerName is used
-        * @param string $extensionName Target Extension Name (without "tx_" prefix and no underscores). If NULL the current extension name is used
-        * @param string $pluginName Target plugin. If empty, the current plugin name is used
-        * @param int $pageUid target page. See TypoLink destination
-        * @param int $pageType type of the target page. See typolink.parameter
-        * @param bool $noCache set this to disable caching for the target page. You should not need this.
-        * @param bool $noCacheHash set this to suppress the cHash query parameter created by TypoLink. You should not need this.
-        * @param string $section the anchor to be added to the URI
-        * @param string $format The requested format, e.g. ".html
-        * @param bool $linkAccessRestrictedPages If set, links pointing to access restricted pages will still link to the page even though the page cannot be accessed.
-        * @param array $additionalParams additional query parameters that won't be prefixed like $arguments (overrule $arguments)
-        * @param bool $absolute If set, the URI of the rendered link is absolute
-        * @param bool $addQueryString If set, the current query parameters will be kept in the URI
-        * @param array $argumentsToBeExcludedFromQueryString arguments to be removed from the URI. Only active if $addQueryString = TRUE
-        * @return string Rendered link
-        */
-       public function render($action = NULL, array $arguments = array(), $controller = NULL, $extensionName = NULL, $pluginName = NULL, $pageUid = NULL, $pageType = 0, $noCache = FALSE, $noCacheHash = FALSE, $section = '', $format = '', $linkAccessRestrictedPages = FALSE, array $additionalParams = array(), $absolute = FALSE, $addQueryString = FALSE, array $argumentsToBeExcludedFromQueryString = array()) {
-               $uriBuilder = $this->controllerContext->getUriBuilder();
-               $uri = $uriBuilder
-                       ->reset()
-                       ->setTargetPageUid($pageUid)
-                       ->setTargetPageType($pageType)
-                       ->setNoCache($noCache)
-                       ->setUseCacheHash(!$noCacheHash)
-                       ->setSection($section)
-                       ->setFormat($format)
-                       ->setLinkAccessRestrictedPages($linkAccessRestrictedPages)
-                       ->setArguments($additionalParams)
-                       ->setCreateAbsoluteUri($absolute)
-                       ->setAddQueryString($addQueryString)
-                       ->setArgumentsToBeExcludedFromQueryString($argumentsToBeExcludedFromQueryString)
-                       ->uriFor($action, $arguments, $controller, $extensionName, $pluginName);
-
-               $this->tag->addAttribute('href', '#');
-               $this->tag->addAttribute('onclick', 'top.TYPO3.Backend.ContentContainer.setUrl(\'' . $uri . '\')');
-               $this->tag->setContent($this->renderChildren());
-               $this->tag->forceClosingTag(TRUE);
-               return $this->tag->render();
-       }
-}
index d03f91a..3153fdb 100644 (file)
@@ -1,5 +1,3 @@
-{namespace doc=TYPO3\CMS\Documentation\ViewHelpers}
-
 <f:layout name="Default"/>
 
 <f:section name="docheader-buttons">
                                <td class="hidden-xs">{document.shortcut}</td>
                                <td class="hidden-xs">{document.type}</td>
                                <td class="icons">
-                                       <doc:link.action action="fetch" arguments="{url:document.url, key:document.key, version:document.version}" title="{f:translate(key:'documentation.actions.download')}">
-                                               <span class="t3-icon t3-icon-actions t3-icon-system-extension-download">&nbsp;</span>
-                                       </doc:link.action>
+                                       <f:be.buttons.icon uri="{f:uri.action(action:'fetch',arguments:'{url:document.url, key:document.key, version:document.version}')}" icon="actions-system-extension-download" title="{f:translate(key:'documentation.actions.download')}"/>
                                </td>
                        </tr>
                </f:for>
                </tbody>
        </table>
 
-</f:section>
\ No newline at end of file
+</f:section>