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\
is
extended for
a new option $copy
, 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-
is registered, which can
be used through the Icon
.
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
$shortcut
. If disabled, the
shortcut button is rendered with the same behaviour as before.
Note
Since both ViewHelpers, <be:
as well as <f:
are deprecated, the new option
is not available for those. In case you are currently using one of those
ViewHelpers, but still want to profit from the new option in your custom
backend modules, you have to create the shortcut button in the corresponding
controller using the shortcut API. This will anyways be required in TYPO3 v12.
Besides the new option for the Shortcut
, a new constant
SHAREABLE_
is available in the Uri
. It can be
used as value for the $reference
parameter, which is available
for most of the "buildUri" methods, for example Uri
.
$uri = $uriBuilder->buildUriFromRoute($routeName, $arguments, UriBuilder::SHAREABLE_URL);
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 Uri
as $reference
in
one of the "buildUri" methods supporting this parameter, a shareable URL
will be returned.