Skip to content

Commit

Permalink
[TASK] Improve extension configuration
Browse files Browse the repository at this point in the history
Improves the structure, implementation and documentation of
ext_conf_template.php.

Relates: #3810
  • Loading branch information
dkd-friedrich authored and dkd-kaehm committed Oct 13, 2023
1 parent 0d2c64b commit 9749512
Show file tree
Hide file tree
Showing 7 changed files with 84 additions and 39 deletions.
56 changes: 39 additions & 17 deletions Documentation/Configuration/Reference/ExtensionSettings.rst
Expand Up @@ -8,8 +8,14 @@ Extension Configuration

The following settings can be defined in the "Settings":>"Extension Configuration":>"solr"

Basic
-----


.. figure:: /Images/Backend/extensionconfiguration-basic.png

pluginNamespaces
----------------
~~~~~~~~~~~~~~~~

:Type: String
:Since: 11.1
Expand All @@ -21,17 +27,16 @@ A list of white listed plugin namespaces (Required by cacheHash/excludedParamete
This list only is available in Plugin -> Options -> Plugin Namespace.

includeGlobalQParameterInCacheHash
----------------------------------
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:Type: Boolean
:Since: 11.1
:Default: 0

Include/Exclude global q parameter in/from cacheHash.


useConfigurationFromClosestTemplate
-----------------------------------
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:Type: Boolean
:Since: 6.1
Expand All @@ -40,8 +45,14 @@ useConfigurationFromClosestTemplate
When this setting is active the closest page with a TypoScript template will be used to fetch the configuration.
This improves the performance but limits also the possibilities. E.g. conditions can not be used that are related to a certain page.


Monitoring
----------

.. figure:: /Images/Backend/extensionconfiguration-monitoring.png

useConfigurationTrackRecordsOutsideSiteroot
-------------------------------------------
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:Type: Boolean
:Since: 6.1
Expand All @@ -60,17 +71,8 @@ useConfigurationMonitorTables

Monitor tables - explicitly monitor these (still requires TypoScript configuration)

allowSelfSignedCertificates
---------------------------

:Type: Boolean
:Since: 6.1
:Default: 0

Can be used to allow self signed certificates - when using the SSL protocol.

monitoringType
--------------
~~~~~~~~~~~~~~

:Type: Int
:Since: 11.2
Expand All @@ -85,13 +87,33 @@ options are available:
- Delayed: Record update events will be queue and processed later, the scheduler task "Event Queue Worker" is required for processing.
- No monitoring: Monitoring is completely disabled, please note that you have to take care of Solr index updates yourself.

Route Enhancer
--------------

.. figure:: /Images/Backend/extensionconfiguration-routeenhancer.png

enableRouteEnhancer
-------------------
~~~~~~~~~~~~~~~~~~~

:Type: Boolean
:Since: 12.0
:Default: 0

To use the EXT:solr possibility to create speaking URLs for Solr facets, activate this option.

As this feature requires additional configuration and costly processing, it's disabled by default.
As this feature requires additional configuration and costly processing, it's disabled by default.

Advanced
--------

.. figure:: /Images/Backend/extensionconfiguration-advanced.png

allowSelfSignedCertificates
~~~~~~~~~~~~~~~~~~~~~~~~~~~

:Type: Boolean
:Since: 6.1
:Default: 0

Can be used to allow self signed certificates - when using the SSL protocol.

Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
44 changes: 33 additions & 11 deletions Resources/Private/Language/locallang_be.xlf
Expand Up @@ -3,35 +3,57 @@
<file source-language="en" datatype="plaintext" original="EXT:solr/Resources/Private/Language/locallang_be.xlf" date="2021-12-15T13:10:00Z" product-name="solr">
<header/>
<body>
<trans-unit id="extConf.category.monitoring" resname="extConf.category.monitoring">
<source>Monitoring</source>
</trans-unit>
<trans-unit id="extConf.category.routeEnhancer" resname="extConf.category.routeEnhancer">
<source>Route Enhancer</source>
</trans-unit>
<trans-unit id="extConf.monitoringType" xml:space="preserve">
<source>Monitoring: Define how data updates should be monitored</source>
<trans-unit id="extConf.allowSelfSignedCertificates" resname="extConf.allowSelfSignedCertificates">
<source>Allow self signed certificates</source>
</trans-unit>
<trans-unit id="extConf.enableRouteEnhancer" resname="extConf.enableRouteEnhancer">
<source>Enable route enhancer: If you want to use speaking URLs for Solr facets, you have to enable this option, otherwise the required Middleware is not active and the route enhancer has no effect.</source>
</trans-unit>
<trans-unit id="extConf.includeGlobalQParameterInCacheHash" resname="extConf.includeGlobalQParameterInCacheHash">
<source>Include/Exclude global q parameter in/from cacheHash.</source>
</trans-unit>
<trans-unit id="extConf.monitoringType" resname="extConf.monitoringType">
<source>Monitoring type: Define how data updates should be monitored.</source>
</trans-unit>
<trans-unit id="extConf.monitoringType.I.0" xml:space="preserve">
<trans-unit id="extConf.monitoringType.I.0" resname="extConf.monitoringType.I.0">
<source>Immediate</source>
</trans-unit>
<trans-unit id="extConf.monitoringType.I.1" xml:space="preserve">
<trans-unit id="extConf.monitoringType.I.1" resname="extConf.monitoringType.I.1">
<source>Delayed (Scheduler task)</source>
</trans-unit>
<trans-unit id="extConf.monitoringType.I.2" xml:space="preserve">
<trans-unit id="extConf.monitoringType.I.2" resname="extConf.monitoringType.I.2">
<source>No monitoring at all</source>
</trans-unit>
<trans-unit id="extConf.enableRouteEnhancer" xml:space="preserve">
<source>Enable route enhancer: If you want to use speaking URLs for Solr facets, you have to enable this option, otherwise the required Middleware is not active and the route enhancer has no effect.</source>
<trans-unit id="extConf.pluginNamespaces" resname="extConf.pluginNamespaces">
<source>A list of white listed plugin namespaces: Required by cacheHash/excludedParameters and plugin flex form. Note: This list only is available in Plugin -> Options -> Plugin Namespace</source>
</trans-unit>
<trans-unit id="extConf.useConfigurationFromClosestTemplate" resname="extConf.useConfigurationFromClosestTemplate">
<source>Use closest rootpage for configuration: Performance improvement</source>
</trans-unit>
<trans-unit id="extConf.useConfigurationTrackRecordsOutsideSiteroot" resname="extConf.useConfigurationTrackRecordsOutsideSiteroot">
<source>Enable/Disable record tracking outside siteroot</source>
</trans-unit>
<trans-unit id="extConf.useConfigurationMonitorTables" resname="extConf.useConfigurationMonitorTables">
<source>Monitor tables - explicitly monitor these: Still requires TypoScript configuration!</source>
</trans-unit>


<trans-unit id="task.eventQueueWorkerTask.title" xml:space="preserve">
<trans-unit id="task.eventQueueWorkerTask.title" resname="task.eventQueueWorkerTask.title">
<source>Event Queue Worker</source>
</trans-unit>
<trans-unit id="task.eventQueueWorkerTask.description" xml:space="preserve">
<trans-unit id="task.eventQueueWorkerTask.description" resname="task.eventQueueWorkerTask.description">
<source>Task handling the queue data update events. Required if monitoringType is set to "Delayed".</source>
</trans-unit>
<trans-unit id="task.eventQueueWorkerTask.limit" xml:space="preserve">
<trans-unit id="task.eventQueueWorkerTask.limit" resname="task.eventQueueWorkerTask.limit">
<source>Processing limit, the number of events to process</source>
</trans-unit>
<trans-unit id="task.eventQueueWorkerTask.statusMsg" xml:space="preserve">
<trans-unit id="task.eventQueueWorkerTask.statusMsg" resname="task.eventQueueWorkerTask.statusMsg">
<source>Data update events to process: %1$d, Errors: %2$d. %3$d events will be processed per run.</source>
</trans-unit>
</body>
Expand Down
23 changes: 12 additions & 11 deletions ext_conf_template.txt
@@ -1,25 +1,26 @@
# customcategory=Monitoring=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.category.monitoring
# customcategory=Routes=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.category.routeEnhancer

# cat=basic/enable/8; type=string; label=A list of white listed plugin namespaces (Required by cacheHash/excludedParameters and plugin flex form): Note: This list only is available in Plugin -> Options -> Plugin Namespace
# cat=basic/enable/a0; type=string; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.pluginNamespaces
pluginNamespaces = tx_solr

# cat=basic/enable/9; type=boolean; label=Include/Exclude global q parameter in/from cacheHash
# cat=basic/enable/a1; type=boolean; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.includeGlobalQParameterInCacheHash
includeGlobalQParameterInCacheHash = 0

# cat=basic/enable/10; type=boolean; label=Use closest rootpage for configuration (Performance improvement)
# cat=basic/enable/b1; type=boolean; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.useConfigurationFromClosestTemplate
useConfigurationFromClosestTemplate = 0

# cat=basic/enable/20; type=boolean; label=Enable/Disable record tracking outside siteroot
# cat=Monitoring/enable/c1; type=boolean; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.useConfigurationTrackRecordsOutsideSiteroot
useConfigurationTrackRecordsOutsideSiteroot = 1

# cat=basic/enable/30; type=string; label=Monitor tables - explicitly monitor these (still requires TS configuration)
# cat=Monitoring/enable/c2; type=string; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.useConfigurationMonitorTables
useConfigurationMonitorTables =

# cat=basic/enable/40; type=boolean; label=Allow self signed certificates
allowSelfSignedCertificates = 0

# cat=basic/enable/50; type=options[LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType.I.0=0,LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType.I.1=1,LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType.I.2=2]; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType
# cat=Monitoring/enable/c3; type=options[LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType.I.0=0,LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType.I.1=1,LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType.I.2=2]; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.monitoringType
monitoringType = 0

# cat=Routes/enable/10; type=boolean; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.enableRouteEnhancer
enableRouteEnhancer = 0
# cat=Routes/enable/d; type=boolean; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.enableRouteEnhancer
enableRouteEnhancer = 0

# cat=advanced/enable/e; type=boolean; label=LLL:EXT:solr/Resources/Private/Language/locallang_be.xlf:extConf.allowSelfSignedCertificates
allowSelfSignedCertificates = 0

0 comments on commit 9749512

Please sign in to comment.