Feature: #93921 - Sharing backend links 

See forge#93921

Description 

With the introduction of backend URL rewrites in forge#93048 and the backend module web component router in forge#93988, it's finally possible to share backend URLs between each other.

To ease the use of this, the \TYPO3\CMS\Backend\Template\Components\Buttons\Action\ShortcutButton is extended for a new option $copyUrlToClipboard , which defaults to true . This option extends the shortcut button in the module header of a backend module. Therefore, the button's icon is also changed. On click, a dropdown opens, including the additional possibility to copy the current backend URL directly to the operating system's clipboard, next to the already existing bookmark option.

For the dropdown button, a new icon share-alt is registered, which can be used through the IconFactory .

In case you are using the shortcut API in your custom backend module and don't want to use this additional option, you can disabled it by setting $shortcutButton->setCopyUrlToClipboard(false) . If disabled, the shortcut button is rendered with the same behaviour as before.

Besides the new option for the ShortcutButton , a new constant SHAREABLE_URL is available in the UriBuilder . It can be used as value for the $referenceType parameter, which is available for most of the "buildUri" methods, for example UriBuilder->buildUriFromRoute() .

$uri = $uriBuilder->buildUriFromRoute($routeName, $arguments, UriBuilder::SHAREABLE_URL);
Copied!

The above example will return an absolute URL without the automatically created token parameter.

Impact 

If the new option is enabled, instead of the shortcut button, a dropdown menu is displayed in the module header, including two options:

  • Option to add a shortcut to the current page
  • Option to copy the URL of the current page to the operating system's clipboard

When setting UriBuilder::SHAREABLE_URL as $referenceType in one of the "buildUri" methods supporting this parameter, a shareable URL will be returned.