diff --git a/typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php b/typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php index 39e644277bbf594bc9d0ad5e0974be1d786bd421..7d12140fe37fe5c8baa03749160de7934dafc10c 100644 --- a/typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php +++ b/typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php @@ -274,8 +274,9 @@ class SystemInformationToolbarItem implements ToolbarItemInterface * @param string $status The status of this system message * @param int $count Will be added to the total count * @param string $module The associated module + * @param string $params Query string with additional parameters */ - public function addSystemMessage($text, $status = InformationStatus::STATUS_OK, $count = 0, $module = '') + public function addSystemMessage($text, $status = InformationStatus::STATUS_OK, $count = 0, $module = '', $params = '') { $this->totalCount += (int)$count; @@ -288,6 +289,7 @@ class SystemInformationToolbarItem implements ToolbarItemInterface $this->systemMessages[] = [ 'module' => $module, + 'params' => $params, 'count' => (int)$count, 'status' => $messageSeverity, 'text' => $text diff --git a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/SystemInformationDropDown.html b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/SystemInformationDropDown.html index 4a8fe6998d57cb62c5c4ebf80176082c96add3d0..8b8d51f4665c3734d7368e257e452f35850d1437 100644 --- a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/SystemInformationDropDown.html +++ b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/SystemInformationDropDown.html @@ -46,7 +46,7 @@ <f:then> <p id="systeminformation_{message.module}" class="dropdown-text t3js-systeminformation-module typo3-module-menu-item submodule mod-{message.module}" - data-modulename="{message.module}"> + data-modulename="{message.module}" data-moduleparams="{message.params}"> <span class="text-{message.status}"><f:format.raw>{message.text}</f:format.raw></span> </p> </f:then> diff --git a/typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/SystemInformationMenu.js b/typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/SystemInformationMenu.js index 8128386c31ad1971d78802a9d76c4b1fe5b9bbe1..47ca331caf5e6d7d66a084d4233f72b899b7fa23 100644 --- a/typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/SystemInformationMenu.js +++ b/typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/SystemInformationMenu.js @@ -122,6 +122,7 @@ define([ var storedSystemInformationSettings = {}, moduleStorageObject = {}, requestedModule = $(e.currentTarget).data('modulename'), + moduleParams = $(e.currentTarget).data('moduleparams'), timestamp = Math.floor((new Date()).getTime() / 1000); if (PersistentStorage.isset('systeminformation')) { @@ -133,7 +134,7 @@ define([ var $ajax = PersistentStorage.set('systeminformation', JSON.stringify(storedSystemInformationSettings)); $ajax.done(function() { // finally, open the module now - TYPO3.ModuleMenu.App.showModule(requestedModule); + TYPO3.ModuleMenu.App.showModule(requestedModule, moduleParams); Viewport.Topbar.refresh(); }); }; diff --git a/typo3/sysext/belog/Classes/Controller/AbstractController.php b/typo3/sysext/belog/Classes/Controller/AbstractController.php index ead7588b1f46e266bbed5d6825595d9c3ac2f852..12ce846ad07870c178c1a5e21913136e9f833bc5 100644 --- a/typo3/sysext/belog/Classes/Controller/AbstractController.php +++ b/typo3/sysext/belog/Classes/Controller/AbstractController.php @@ -17,6 +17,7 @@ namespace TYPO3\CMS\Belog\Controller; use TYPO3\CMS\Backend\View\BackendTemplateView; use TYPO3\CMS\Extbase\Mvc\Controller\ActionController; use TYPO3\CMS\Extbase\Mvc\View\ViewInterface; +use TYPO3\CMS\Extbase\Property\TypeConverter\PersistentObjectConverter; /** * Abstract class to show log entries from sys_log @@ -137,6 +138,8 @@ abstract class AbstractController extends ActionController if (!isset($this->settings['timeFormat'])) { $this->settings['timeFormat'] = $GLOBALS['TYPO3_CONF_VARS']['SYS']['hhmm']; } + $constraintConfiguration = $this->arguments->getArgument('constraint')->getPropertyMappingConfiguration(); + $constraintConfiguration->allowProperties('action')->setTypeConverterOption(PersistentObjectConverter::class, PersistentObjectConverter::CONFIGURATION_CREATION_ALLOWED, true); } /** diff --git a/typo3/sysext/belog/Classes/Controller/SystemInformationController.php b/typo3/sysext/belog/Classes/Controller/SystemInformationController.php index ee27c4166fcbaa424ff36d27392a0cd07770eb59..b7f6223383408687c8e8c692643e4df2debf3a63 100644 --- a/typo3/sysext/belog/Classes/Controller/SystemInformationController.php +++ b/typo3/sysext/belog/Classes/Controller/SystemInformationController.php @@ -66,10 +66,11 @@ class SystemInformationController extends AbstractController if ($count > 0) { $systemInformationToolbarItem->addSystemMessage( - sprintf(LocalizationUtility::translate('systemmessage.errorsInPeriod', 'belog'), $count, BackendUtility::getModuleUrl('system_BelogLog')), + sprintf(LocalizationUtility::translate('systemmessage.errorsInPeriod', 'belog'), $count, BackendUtility::getModuleUrl('system_BelogLog', ['tx_belog_system_beloglog' => ['constraint' => ['action' => -1]]])), InformationStatus::STATUS_ERROR, $count, - 'system_BelogLog' + 'system_BelogLog', + http_build_query(['tx_belog_system_beloglog' => ['constraint' => ['action' => -1]]]) ); } }