TYPO3 v15 dev-main snapshot ()
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _feature-107488-1758106735:
|
||||
|
||||
===========================================================
|
||||
Feature: #107488 - Extensible scheduler task timing options
|
||||
===========================================================
|
||||
|
||||
See :issue:`107488`
|
||||
|
||||
Description
|
||||
===========
|
||||
|
||||
The scheduler task timing configuration has been migrated to the single TCA
|
||||
:php:`execution_details` field, which is of type `json`. This field has now been
|
||||
enhanced to allow extensions to customize the corresponding timing-related
|
||||
fields, particularly the frequency field with custom cron expressions. This is
|
||||
achieved through the new :php:`overrideFieldTca` option, available in the TCA
|
||||
field configuration.
|
||||
|
||||
Previously, frequency options were only configurable through the global
|
||||
:php:`$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['scheduler']['frequencyOptions']`
|
||||
array, which has been moved to the TCA configuration to provide better
|
||||
extensibility and consistency with TYPO3's configuration patterns, see
|
||||
:ref:`breaking-107488-1758106735`.
|
||||
|
||||
Enhanced customization options
|
||||
==============================
|
||||
|
||||
Extensions can now override any timing-related field configuration using the
|
||||
:php:`overrideFieldTca` mechanism in the :php:`execution_details` field.
|
||||
|
||||
Available fields:
|
||||
|
||||
* **Frequency field**: :php:`frequency`
|
||||
* **Running type field**: :php:`runningType`
|
||||
* **Parallel execution settings**: :php:`multiple`
|
||||
* **Start or end date fields**: :php:`start` and :php:`end`
|
||||
|
||||
Example usage
|
||||
=============
|
||||
|
||||
Extensions can now add custom frequency options by creating a TCA override file:
|
||||
|
||||
.. code-block:: php
|
||||
:caption: EXT:my_extension/Configuration/TCA/Overrides/tx_scheduler_task.php
|
||||
|
||||
$GLOBALS['TCA']['tx_scheduler_task']['columns']['execution_details']['config']
|
||||
['overrideFieldTca']['frequency']['config']['valuePicker']['items'][] = [
|
||||
'value' => '0 2 * * *',
|
||||
'label' => 'LLL:EXT:my_extension/Resources/Private/Language/locallang.xlf:daily_2am',
|
||||
];
|
||||
|
||||
Extensions can also add a description:
|
||||
|
||||
.. code-block:: php
|
||||
:caption: EXT:my_extension/Configuration/TCA/Overrides/tx_scheduler_task.php
|
||||
|
||||
$GLOBALS['TCA']['tx_scheduler_task']['columns']['execution_details']['config']
|
||||
['overrideFieldTca']['multiple'] = [
|
||||
'description' => 'my_extension.messages:multiple.description',
|
||||
];
|
||||
|
||||
Related changes
|
||||
===============
|
||||
|
||||
See :ref:`breaking-107488-1758106735` for information about the breaking change
|
||||
regarding the removal of the global `frequencyOptions` configuration.
|
||||
|
||||
Impact
|
||||
======
|
||||
|
||||
This enhancement provides a more flexible and extensible way to configure
|
||||
scheduler task timing options, allowing extensions to seamlessly integrate
|
||||
custom timing configurations while maintaining consistency with TYPO3's
|
||||
configuration patterns.
|
||||
|
||||
.. index:: Backend, TCA, ext:scheduler
|
||||
Reference in New Issue
Block a user