diff --git a/Documentation/ColumnsConfig/Type/Group/Examples.rst b/Documentation/ColumnsConfig/Type/Group/Examples.rst index 284ef505..47d905cf 100644 --- a/Documentation/ColumnsConfig/Type/Group/Examples.rst +++ b/Documentation/ColumnsConfig/Type/Group/Examples.rst @@ -1,26 +1,26 @@ -.. include:: /Includes.rst.txt -.. _columns-group-examples: +.. include:: /Includes.rst.txt +.. _columns-group-examples: ======== Examples ======== -.. _tca_example_group_db_10: +.. _tca_example_group_db_10: Group relation to a single page =============================== -.. include:: /Images/Rst/GroupDb10.rst.txt +.. include:: /Images/Rst/GroupDb10.rst.txt -.. include:: /CodeSnippets/GroupDb10.rst.txt +.. include:: /CodeSnippets/GroupDb10.rst.txt -.. _tca_example_group_db_1: +.. _tca_example_group_db_1: Group relation to be_groups and be_users ======================================== -.. include:: /Images/Rst/GroupDb1.rst.txt +.. include:: /Images/Rst/GroupDb1.rst.txt -.. include:: /CodeSnippets/GroupDb1.rst.txt +.. include:: /CodeSnippets/GroupDb1.rst.txt diff --git a/Documentation/ColumnsConfig/Type/Group/Index.rst b/Documentation/ColumnsConfig/Type/Group/Index.rst index 0ee322f4..ee4f5e8c 100644 --- a/Documentation/ColumnsConfig/Type/Group/Index.rst +++ b/Documentation/ColumnsConfig/Type/Group/Index.rst @@ -1,21 +1,21 @@ -.. include:: /Includes.rst.txt -.. _columns-group: -.. _columns-group-introduction: +.. include:: /Includes.rst.txt +.. _columns-group: +.. _columns-group-introduction: ============ Group fields ============ -.. versionchanged:: 12.0 - The newly introduced column type :ref:`folder ` replaces - the old combination of :php:`type => 'group'` together with - :php:`internal_type => 'folder'`. +.. versionchanged:: 12.0 + The newly introduced column type :ref:`folder ` replaces + the old combination of :php:`type => 'group'` together with + :php:`internal_type => 'folder'`. .. versionadded:: 13.0 - When using the `group` type, TYPO3 takes care of - :ref:`generating the according database field `. - A developer does not need to define this field in an extension's - :file:`ext_tables.sql` file. + When using the `group` type, TYPO3 takes care of + :ref:`generating the according database field `. + A developer does not need to define this field in an extension's + :file:`ext_tables.sql` file. The group element (:php:`type' => 'group'`) in TYPO3 makes it possible to create references from a record of one table to many records from multiple tables in the system. The foreign tables can be the table itself (thus a self-reference) or any other table. @@ -38,9 +38,9 @@ The group field uses either the CSV format to store uids of related records or a You can read more on how data is structured in :ref:`columns-group-data` chapter. -.. toctree:: - :titlesonly: +.. toctree:: + :titlesonly: - Examples - StoredDataValues - Properties/Index + Examples + StoredDataValues + Properties/Index diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/Allowed.rst b/Documentation/ColumnsConfig/Type/Group/Properties/Allowed.rst index 3ef3f0c1..294b670c 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/Allowed.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/Allowed.rst @@ -1,28 +1,28 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-allowed: +.. include:: /Includes.rst.txt +.. _columns-group-properties-allowed: ======= allowed ======= -.. confval:: allowed +.. confval:: allowed + :name: group-allowed + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: string (list) + :Scope: Proc. / Display - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: string (list) - :Scope: Proc. / Display + A comma list of tables from :php:`$GLOBALS['TCA']`, for example "pages,be\_users". - A comma list of tables from :php:`$GLOBALS['TCA']`, for example "pages,be\_users". + .. note:: + If the field is the foreign side of a bidirectional MM relation, only the first table is used and that + must be the table of the records on the native side of the relation. - .. note:: - If the field is the foreign side of a bidirectional MM relation, only the first table is used and that - must be the table of the records on the native side of the relation. - - .. note:: - When using Extbase, you also need to fill - :ref:`foreign_table ` - property with the same table name as used in - :ref:`allowed ` property - (but with just one table name). + .. note:: + When using Extbase, you also need to fill + :ref:`foreign_table ` + property with the same table name as used in + :ref:`allowed ` property + (but with just one table name). Examples ======== @@ -30,6 +30,6 @@ Examples Group relation to be_groups and be_users ---------------------------------------- -.. include:: /Images/Rst/GroupDb1.rst.txt +.. include:: /Images/Rst/GroupDb1.rst.txt -.. include:: /CodeSnippets/GroupDb1.rst.txt +.. include:: /CodeSnippets/GroupDb1.rst.txt diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/ElementBrowserEntryPoints.rst b/Documentation/ColumnsConfig/Type/Group/Properties/ElementBrowserEntryPoints.rst index 22c550e9..b3c07670 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/ElementBrowserEntryPoints.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/ElementBrowserEntryPoints.rst @@ -1,30 +1,30 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-elementBrowserEntryPoints: +.. include:: /Includes.rst.txt +.. _columns-group-properties-elementBrowserEntryPoints: ========================== elementBrowserEntryPoints ========================== -.. confval:: elementBrowserEntryPoints (type => group) +.. confval:: elementBrowserEntryPoints + :name: group-elementBrowserEntryPoints + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: array + :Scope: Display - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: array - :Scope: Display + By default, the last selected page is used when opening the element browser. + Setting this configuration value changes this behaviour. - By default, the last selected page is used when opening the element browser. - Setting this configuration value changes this behaviour. + This configuration value is a PHP :php:`array`, containing `table => id` + pairs. When opening the element browser for a specific table (buttons below + the group field), the defined page is then always selected by default. There + is also the special `_default` key, used for the general element browser + button (on the right side of the group field), which is not dedicated to a + specific table. - This configuration value is a PHP :php:`array`, containing `table => id` - pairs. When opening the element browser for a specific table (buttons below - the group field), the defined page is then always selected by default. There - is also the special `_default` key, used for the general element browser - button (on the right side of the group field), which is not dedicated to a - specific table. + This configuration value also supports the known + markers `###SITEROOT###`, `###CURRENT_PID###` and `###PAGE_TSCONFIG_###`. - This configuration value also supports the known - markers `###SITEROOT###`, `###CURRENT_PID###` and `###PAGE_TSCONFIG_###`. - - Each `table => id` pair can also be overridden via page TSconfig. + Each `table => id` pair can also be overridden via page TSconfig. Examples ======== @@ -32,7 +32,7 @@ Examples Open the element browser on page 123 for tt_content elements ------------------------------------------------------------- -.. code-block:: php +.. code-block:: php 'simple_group' => [ 'label' => 'Simple group field', @@ -47,7 +47,7 @@ Open the element browser on page 123 for tt_content elements This could then be overridden via page TSconfig: -.. code-block:: typoscript +.. code-block:: typoscript TCEFORM.my_table.simple_group.config.elementBrowserEntryPoints.tt_content = 321 @@ -59,7 +59,7 @@ Open the element browser on different pages for tt_content and news records In case the group field allows more than one table, the `_default` key has to be set: -.. code-block:: php +.. code-block:: php 'extended_group' => [ 'label' => 'Extended group field', @@ -76,6 +76,6 @@ be set: Of course, the `_default` key can also be overridden via page TSconfig: -.. code-block:: typoscript +.. code-block:: typoscript TCEFORM.my_table.extended_group.config.elementBrowserEntryPoints._default = 122 diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/FieldControl.rst b/Documentation/ColumnsConfig/Type/Group/Properties/FieldControl.rst index 0c5eb60f..826d5dce 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/FieldControl.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/FieldControl.rst @@ -1,8 +1,8 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-fieldControl: -.. _tca_property_fieldControl_elementBrowser: -.. _columns-group-properties-elementBrowser: -.. _tca_property_fieldControl_insertClipboard: +.. include:: /Includes.rst.txt +.. _columns-group-properties-fieldControl: +.. _tca_property_fieldControl_elementBrowser: +.. _columns-group-properties-elementBrowser: +.. _tca_property_fieldControl_insertClipboard: ============ fieldControl @@ -11,29 +11,29 @@ fieldControl The field of type group can enable all common :ref:`field control options `. Furthermore the following are available: -.. confval:: elementBrowser (type => group) +.. confval:: elementBrowser + :name: group-fieldControl + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldControl'] + :type: array + :Scope: fieldControl + :Types: :ref:`group ` - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldControl'] - :type: array - :Scope: fieldControl - :Types: :ref:`group ` + The element browser field control used in :code:`type='group'` renders a + button to open an element browser. It is enabled by default if rendering a + group element. - The element browser field control used in :code:`type='group'` renders a - button to open an element browser. It is enabled by default if rendering a - group element. +.. confval:: insertClipboard -.. confval:: insertClipboard (type => group) + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldControl'] + :type: array + :Scope: fieldControl + :Types: :ref:`group ` - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldControl'] - :type: array - :Scope: fieldControl - :Types: :ref:`group ` - - The clipboard control adds a control button for :code:`type='group'` to paste records from - a users clipboard into the selection. It is enabled by default for :code:`type='group'` and - shown below the **element browser** if the - order has not been changed using the `before` and `after` keywords. It can be turned off by - setting `disabled` to true, just like any other fieldControl. + The clipboard control adds a control button for :code:`type='group'` to paste records from + a users clipboard into the selection. It is enabled by default for :code:`type='group'` and + shown below the **element browser** if the + order has not been changed using the `before` and `after` keywords. It can be turned off by + setting `disabled` to true, just like any other fieldControl. Examples ======== @@ -41,9 +41,9 @@ Examples Group field with element browser enabled ---------------------------------------- -.. include:: /Images/Rst/GroupDb1.rst.txt +.. include:: /Images/Rst/GroupDb1.rst.txt -.. include:: /CodeSnippets/GroupDb1.rst.txt +.. include:: /CodeSnippets/GroupDb1.rst.txt Group field with element browser disabled @@ -51,6 +51,6 @@ Group field with element browser disabled The element browser control can be disabled by setting :php:`disabled = true`: -.. include:: /Images/Rst/GroupDb3.rst.txt +.. include:: /Images/Rst/GroupDb3.rst.txt -.. include:: /CodeSnippets/GroupDb3.rst.txt +.. include:: /CodeSnippets/GroupDb3.rst.txt diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/FieldWizard.rst b/Documentation/ColumnsConfig/Type/Group/Properties/FieldWizard.rst index 5215c41a..38a2f499 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/FieldWizard.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/FieldWizard.rst @@ -1,5 +1,5 @@ -.. include:: /Includes.rst.txt -.. _group-fieldWizard: +.. include:: /Includes.rst.txt +.. _group-fieldWizard: =========== fieldWizard @@ -7,24 +7,24 @@ fieldWizard For general fieldWizard documentation see :ref:`here `. -.. _tca_property_fieldWizard_recordsOverview: +.. _tca_property_fieldWizard_recordsOverview: -.. confval:: recordsOverview +.. confval:: recordsOverview + :name: group-recordsOverview + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldWizard'] + :type: array + :Scope: fieldWizard - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldWizard'] - :type: array - :Scope: fieldWizard + Render an overview of the selected records with correct icon and click menu and title. Allows to + perform actions on the selected records directly. Links the record title to a direct editing form. - Render an overview of the selected records with correct icon and click menu and title. Allows to - perform actions on the selected records directly. Links the record title to a direct editing form. +.. _tca_property_fieldWizard_tableList: -.. _tca_property_fieldWizard_tableList: +.. confval:: tableList -.. confval:: tableList + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldWizard'] + :type: array + :Scope: fieldWizard - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config']['fieldWizard'] - :type: array - :Scope: fieldWizard - - Render a list of allowed tables and link to element browser. This field wizard is enabled by default. - This wizard allows to easily select records from a popup. + Render a list of allowed tables and link to element browser. This field wizard is enabled by default. + This wizard allows to easily select records from a popup. diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/Filter.rst b/Documentation/ColumnsConfig/Type/Group/Properties/Filter.rst index 36adb04e..99c4a7d8 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/Filter.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/Filter.rst @@ -1,48 +1,48 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-filter: +.. include:: /Includes.rst.txt +.. _columns-group-properties-filter: ====== filter ====== -.. confval:: filter +.. confval:: filter + :name: group-filter + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: array + :Scope: Proc. / Display - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: array - :Scope: Proc. / Display + Define filters for item values. Doesn't work in combination with a wizard. - Define filters for item values. Doesn't work in combination with a wizard. + This is useful when only foreign records matching certain criteria should be allowed to be used as values in the + group field. The values are filtered in the Element Browser as well as during processing in DataHandler. Filter + userFuncs should have two input arguments ($parameters and $parentObject). The first argument ($parameters) is an + array with the parameters of the filter as configured in the TCA, but with the additional parameter "values", which + contains the array of values which should be filtered by the userFunc. The function must return the filtered + array of values. - This is useful when only foreign records matching certain criteria should be allowed to be used as values in the - group field. The values are filtered in the Element Browser as well as during processing in DataHandler. Filter - userFuncs should have two input arguments ($parameters and $parentObject). The first argument ($parameters) is an - array with the parameters of the filter as configured in the TCA, but with the additional parameter "values", which - contains the array of values which should be filtered by the userFunc. The function must return the filtered - array of values. + .. note:: - .. note:: + Do not confuse the filter values with the page tree selector on the left side. To change the entry page in the navigation + use :ref:`elementBrowserEntryPoints ` instead. - Do not confuse the filter values with the page tree selector on the left side. To change the entry page in the navigation - use :ref:`elementBrowserEntryPoints ` instead. + Multiple filters can be defined, and an array of configuration data for each of the filters can be supplied: - Multiple filters can be defined, and an array of configuration data for each of the filters can be supplied: + .. code-block:: php - .. code-block:: php - - 'filter' => [ - [ - 'userFunc' => \Vendor\Extension\MyClass::class . '->doFilter', - 'parameters' => [ - // optional parameters for the filter go here + 'filter' => [ + [ + 'userFunc' => \Vendor\Extension\MyClass::class . '->doFilter', + 'parameters' => [ + // optional parameters for the filter go here + ], ], - ], - [ - 'userFunc' => \Vendor\Extension\OtherClass::class . '->myFilter', - 'parameters' => [ - // optional parameters for the filter go here + [ + 'userFunc' => \Vendor\Extension\OtherClass::class . '->myFilter', + 'parameters' => [ + // optional parameters for the filter go here + ], ], - ], - ], + ], Examples ======== @@ -55,35 +55,35 @@ case, you could use the filter functionality to make sure only females can be se The field configuration for the "mother" field could look like: -.. code-block:: php - - 'mother' => [ - 'label' => 'Mother', - 'config' => [ - 'type' => 'group', - 'allowed' => 'tx_myext_person', - 'size' => 1, - 'filter' => [ - [ - 'userFunc' => \Vendor\Extension\MyClass::class . '->doFilter', - 'parameters' => [ - 'evaluateGender' => 'female', - ], +.. code-block:: php + + 'mother' => [ + 'label' => 'Mother', + 'config' => [ + 'type' => 'group', + 'allowed' => 'tx_myext_person', + 'size' => 1, + 'filter' => [ + [ + 'userFunc' => \Vendor\Extension\MyClass::class . '->doFilter', + 'parameters' => [ + 'evaluateGender' => 'female', + ], + ], ], - ], - ] - ], + ] + ], The corresponding filter class would look like: -.. code-block:: php - - class MyClass - { - public function doFilter(array $parameters, $parentObject) - { - $fieldValues = $parameters['values']; - // do the filtering here - return $fieldValues; - } - } +.. code-block:: php + + class MyClass + { + public function doFilter(array $parameters, $parentObject) + { + $fieldValues = $parameters['values']; + // do the filtering here + return $fieldValues; + } + } diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/ForeignTable.rst b/Documentation/ColumnsConfig/Type/Group/Properties/ForeignTable.rst index 8a4e8de4..ba71dca8 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/ForeignTable.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/ForeignTable.rst @@ -1,19 +1,19 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-foreign-table: +.. include:: /Includes.rst.txt +.. _columns-group-properties-foreign-table: ============== foreign\_table ============== -.. confval:: foreign\_table +.. confval:: foreign\_table + :name: group-foreign-table + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: string (table name) + :Scope: Proc. / Display - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: string (table name) - :Scope: Proc. / Display - - This property does not really exist for group-type fields. It is needed as - a workaround for an Extbase limitation. It is used to resolve dependencies - during Extbase persistence. It should hold the same values as property - :ref:`allowed `. Notice that only one - table name is allowed here in contrast to the property - :ref:`allowed ` itself. + This property does not really exist for group-type fields. It is needed as + a workaround for an Extbase limitation. It is used to resolve dependencies + during Extbase persistence. It should hold the same values as property + :ref:`allowed `. Notice that only one + table name is allowed here in contrast to the property + :ref:`allowed ` itself. diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/HideSuggest.rst b/Documentation/ColumnsConfig/Type/Group/Properties/HideSuggest.rst index abc1c8c1..08e9c131 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/HideSuggest.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/HideSuggest.rst @@ -1,42 +1,42 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-hideSuggest: +.. include:: /Includes.rst.txt +.. _columns-group-properties-hideSuggest: =========== hideSuggest =========== -.. confval:: hideSuggest +.. confval:: hideSuggest + :name: group-hideSuggest + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: boolean + :Scope: Display - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: boolean - :Scope: Display + The "suggest wizard" is added by default to all database relation group fields. After a couple of characters have + been typed into this field, an ajax based search starts and shows a list of records matching the search word. - The "suggest wizard" is added by default to all database relation group fields. After a couple of characters have - been typed into this field, an ajax based search starts and shows a list of records matching the search word. + A :ref:`set of options ` is available to configure search details. - A :ref:`set of options ` is available to configure search details. - - Setting this property to `true` disables the suggest wizard. + Setting this property to `true` disables the suggest wizard. Examples ======== -.. _tca_example_group_db_11: +.. _tca_example_group_db_11: Suggest wizard is hidden ------------------------ -.. include:: /Images/Rst/GroupDb11.rst.txt +.. include:: /Images/Rst/GroupDb11.rst.txt -.. include:: /CodeSnippets/GroupDb11.rst.txt +.. include:: /CodeSnippets/GroupDb11.rst.txt -.. _tca_example_group_db_8: +.. _tca_example_group_db_8: Suggest wizard is shown ------------------------ -.. include:: /Images/Rst/GroupDb8.rst.txt +.. include:: /Images/Rst/GroupDb8.rst.txt -.. include:: /CodeSnippets/GroupDb8.rst.txt +.. include:: /CodeSnippets/GroupDb8.rst.txt diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/Index.rst b/Documentation/ColumnsConfig/Type/Group/Properties/Index.rst index 125f70d1..ac70953b 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/Index.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/Index.rst @@ -1,20 +1,20 @@ -.. include:: /Includes.rst.txt +.. include:: /Includes.rst.txt -.. _columns-group-properties: -.. _columns-group-properties-type: -.. _columns-group-properties-autosizemax: -.. _columns-group-properties-behaviour: -.. _columns-group-properties-default: -.. _columns-group-properties-dontremaptablesoncopy: -.. _columns-group-properties-fieldInformation: -.. _columns-group-properties-localizereferencesatparentlocalization: -.. _columns-group-properties-max-size: -.. _columns-group-properties-maxitems: -.. _columns-group-properties-minitems: -.. _columns-group-properties-multiple: -.. _columns-group-properties-size: -.. _columns-group-properties-readOnly: -.. _columns-group-properties-internal-type: +.. _columns-group-properties: +.. _columns-group-properties-type: +.. _columns-group-properties-autosizemax: +.. _columns-group-properties-behaviour: +.. _columns-group-properties-default: +.. _columns-group-properties-dontremaptablesoncopy: +.. _columns-group-properties-fieldInformation: +.. _columns-group-properties-localizereferencesatparentlocalization: +.. _columns-group-properties-max-size: +.. _columns-group-properties-maxitems: +.. _columns-group-properties-minitems: +.. _columns-group-properties-multiple: +.. _columns-group-properties-size: +.. _columns-group-properties-readOnly: +.. _columns-group-properties-internal-type: ========== Properties @@ -22,43 +22,43 @@ Properties Special properties ================== -.. toctree:: - :titlesonly: +.. toctree:: + :titlesonly: - Allowed - ElementBrowserEntryPoints - FieldControl - FieldWizard - Filter - ForeignTable - HideSuggest - Mm - PrependTname - SuggestOptions + Allowed + ElementBrowserEntryPoints + FieldControl + FieldWizard + Filter + ForeignTable + HideSuggest + Mm + PrependTname + SuggestOptions Common properties ================= -* :ref:`hideMoveIcons ` -* :ref:`autoSizeMax ` -* :ref:`behaviour > allowLanguageSynchronization ` -* :ref:`default ` -* :ref:`dontRemapTablesOnCopy ` -* :ref:`fieldControl ` +* :ref:`hideMoveIcons ` +* :ref:`autoSizeMax ` +* :ref:`behaviour > allowLanguageSynchronization ` +* :ref:`default ` +* :ref:`dontRemapTablesOnCopy ` +* :ref:`fieldControl ` - * :ref:`addRecord ` - * :ref:`editPopup ` - * :ref:`listModule ` + * :ref:`addRecord ` + * :ref:`editPopup ` + * :ref:`listModule ` -* :ref:`fieldInformation ` -* :ref:`fieldWizard ` with the following options +* :ref:`fieldInformation ` +* :ref:`fieldWizard ` with the following options - * :ref:`defaultLanguageDifferences ` - * :ref:`localizationStateSelector ` - * :ref:`otherLanguageContent ` + * :ref:`defaultLanguageDifferences ` + * :ref:`localizationStateSelector ` + * :ref:`otherLanguageContent ` -* :ref:`localizeReferencesAtParentLocalization ` -* :ref:`maxitems ` -* :ref:`minitems ` -* :ref:`readOnly ` -* :ref:`size ` +* :ref:`localizeReferencesAtParentLocalization ` +* :ref:`maxitems ` +* :ref:`minitems ` +* :ref:`readOnly ` +* :ref:`size ` diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/Mm.rst b/Documentation/ColumnsConfig/Type/Group/Properties/Mm.rst index beb45242..1c5d624c 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/Mm.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/Mm.rst @@ -16,8 +16,8 @@ MM referenced by TCA table columns. Dropping these definitions allows the Core to adapt and migrate definitions if needed. -.. confval:: MM (type => group) - +.. confval:: MM + :name: group-mm :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] :type: string (table name) :Scope: Proc. @@ -64,8 +64,8 @@ Related configurations ====================== .. _columns-group-properties-mm-match-fields: -.. confval:: MM_match_fields (type => group) - +.. confval:: MM_match_fields + :name: group-mm-match-fields :type: array :Scope: Display / Proc. @@ -74,8 +74,8 @@ Related configurations .. _columns-group-properties-mm-opposite-field: -.. confval:: MM_opposite_field (type => group) - +.. confval:: MM_opposite_field + :name: group-mm-opposite-field :type: string (field name) :Scope: Proc. @@ -96,8 +96,8 @@ Related configurations .. _columns-group-properties-mm-opposite-usage: -.. confval:: MM_oppositeUsage (type => group) - +.. confval:: MM_oppositeUsage + :name: group-mm-opposite-usage :type: array :Scope: Proc. @@ -114,8 +114,8 @@ Related configurations .. _columns-group-properties-mm-table-where: -.. confval:: MM_table_where (type => group) - +.. confval:: MM_table_where + :name: group-mm-table-where :type: string (SQL WHERE) :Scope: Proc. @@ -133,7 +133,8 @@ Related configurations .. _columns-group-properties-mm-hasuidfield: -.. confval:: MM_hasUidField (type => group) +.. confval:: MM_hasUidField + :name: group-mm-hasuidfield .. versionchanged:: 13.0 This setting is obsolete. Remove all occurrences of :php:`MM_hasUidField` diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/PrependTname.rst b/Documentation/ColumnsConfig/Type/Group/Properties/PrependTname.rst index fe84c5f1..ba01b365 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/PrependTname.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/PrependTname.rst @@ -1,16 +1,16 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-prepend-tname: +.. include:: /Includes.rst.txt +.. _columns-group-properties-prepend-tname: ============== prepend\_tname ============== -.. confval:: prepend_tname +.. confval:: prepend_tname + :name: group-prepend-tname + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: boolean + :Scope: Proc. - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: boolean - :Scope: Proc. - - Will prepend the table name to the stored relations (so instead of storing "23" you will - store e.g. "tt\_content\_23"). This is automatically turned on if multiple different tables are - allowed for one relation. + Will prepend the table name to the stored relations (so instead of storing "23" you will + store e.g. "tt\_content\_23"). This is automatically turned on if multiple different tables are + allowed for one relation. diff --git a/Documentation/ColumnsConfig/Type/Group/Properties/SuggestOptions.rst b/Documentation/ColumnsConfig/Type/Group/Properties/SuggestOptions.rst index 19745e1b..4a53d4fa 100644 --- a/Documentation/ColumnsConfig/Type/Group/Properties/SuggestOptions.rst +++ b/Documentation/ColumnsConfig/Type/Group/Properties/SuggestOptions.rst @@ -1,150 +1,150 @@ -.. include:: /Includes.rst.txt -.. _columns-group-properties-suggestOptions: +.. include:: /Includes.rst.txt +.. _columns-group-properties-suggestOptions: ============== suggestOptions ============== -.. confval:: suggestOptions - - :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] - :type: array - :Scope: Display - - Optional, additional suggest options used if the suggest wizard is not - :ref:`hidden `. The suggest wizard options can also be overriden - on a :ref:`page TSconfig ` level. - - Suggestions can be configured differently for each table. Settings in "default" are applied to all tables. - In the example below, there is a special setting for the "pages" table to search only standard pages. - - .. code-block:: php - - 'related_records' => [ - 'label' => 'Related records', - 'config' => [ - 'type' => 'group', - 'allowed' => 'pages, tt_content', - 'suggestOptions' => [ - 'default' => [ - 'searchWholePhrase' => 1 - ], - 'pages' => [ - 'searchCondition' => 'doktype = 1' - ] +.. confval:: suggestOptions + :name: group-suggestOptions + :Path: $GLOBALS['TCA'][$table]['columns'][$field]['config'] + :type: array + :Scope: Display + + Optional, additional suggest options used if the suggest wizard is not + :ref:`hidden `. The suggest wizard options can also be overriden + on a :ref:`page TSconfig ` level. + + Suggestions can be configured differently for each table. Settings in "default" are applied to all tables. + In the example below, there is a special setting for the "pages" table to search only standard pages. + + .. code-block:: php + + 'related_records' => [ + 'label' => 'Related records', + 'config' => [ + 'type' => 'group', + 'allowed' => 'pages, tt_content', + 'suggestOptions' => [ + 'default' => [ + 'searchWholePhrase' => 1 + ], + 'pages' => [ + 'searchCondition' => 'doktype = 1' + ] + ] ] - ] - ], + ], - additionalSearchFields (string) - Comma-separated list of fields the suggest wizard should also search in. By default the wizard looks only in the - fields listed in the :ref:`label ` and :ref:`label_alt ` - of TCA :ref:`ctrl properties `. + additionalSearchFields (string) + Comma-separated list of fields the suggest wizard should also search in. By default the wizard looks only in the + fields listed in the :ref:`label ` and :ref:`label_alt ` + of TCA :ref:`ctrl properties `. - addWhere (string) - Allows to define an additional where clause for the searchquery. It supplies a marker for ###THIS_UID### - which is useful to exclude the current record. + addWhere (string) + Allows to define an additional where clause for the searchquery. It supplies a marker for ###THIS_UID### + which is useful to exclude the current record. - .. note:: - Basically identical to 'searchCondition' - one will vanish sooner or later. + .. note:: + Basically identical to 'searchCondition' - one will vanish sooner or later. - cssClass (string) - Add a CSS class to every list item of the result list. + cssClass (string) + Add a CSS class to every list item of the result list. - maxItemsInResultList (integer) - Maximum number of results to display, default is :code:`10`. + maxItemsInResultList (integer) + Maximum number of results to display, default is :code:`10`. - maxPathTitleLength (integer) - Maximum number of characters to display when a path element is too long. + maxPathTitleLength (integer) + Maximum number of characters to display when a path element is too long. - minimumCharacters (integer) - Minimum number of characters needed to start the search. Works only in "default" configuration array. + minimumCharacters (integer) + Minimum number of characters needed to start the search. Works only in "default" configuration array. - orderBy (string) - Allows to add an `ORDER BY` part to the search query. + orderBy (string) + Allows to add an `ORDER BY` part to the search query. - pidList (list of values) - Limit the search to certain pages (and their sub pages). When pidList is empty all pages will be included in the - search (as long as the be\_user is allowed to see them). + pidList (list of values) + Limit the search to certain pages (and their sub pages). When pidList is empty all pages will be included in the + search (as long as the be\_user is allowed to see them). - **Example** + **Example** - .. code-block:: php + .. code-block:: php - 'storage_pid' => [ - 'config' => [ - 'suggestOptions' => [ - 'default' => [ - 'pidList' => '1,2,3,45', - ], - ], - ], - ], + 'storage_pid' => [ + 'config' => [ + 'suggestOptions' => [ + 'default' => [ + 'pidList' => '1,2,3,45', + ], + ], + ], + ], - pidDepth (integer) - Expand pidList by this number of levels. Has an effect only if pidList has a value. + pidDepth (integer) + Expand pidList by this number of levels. Has an effect only if pidList has a value. - **Example** + **Example** - .. code-block:: php + .. code-block:: php - 'storage_pid' => [ - 'config' => [ - 'suggestOptions' => [ - 'default' => [ - 'pidList' => '6,7', - 'pidDepth' => 4 - ], - ], - ], - ], + 'storage_pid' => [ + 'config' => [ + 'suggestOptions' => [ + 'default' => [ + 'pidList' => '6,7', + 'pidDepth' => 4 + ], + ], + ], + ], - receiverClass (string) - PHP class alternative receiver class, default is `TYPO3\\CMS\\Backend\\Form\\Wizard\\SuggestWizardDefaultReceiver`. - Can be used to implement an own search strategy. + receiverClass (string) + PHP class alternative receiver class, default is `TYPO3\\CMS\\Backend\\Form\\Wizard\\SuggestWizardDefaultReceiver`. + Can be used to implement an own search strategy. - renderFunc (string) - User function to manipulate the displayed records in the results. + renderFunc (string) + User function to manipulate the displayed records in the results. - searchCondition (string) - Additional WHERE clause (not prepended with :code:`AND`). + searchCondition (string) + Additional WHERE clause (not prepended with :code:`AND`). - .. note:: - Basically identical to 'addWhere' - one will vanish sooner or later. + .. note:: + Basically identical to 'addWhere' - one will vanish sooner or later. - **Example** + **Example** - .. code-block:: php + .. code-block:: php - 'storage_pid' => [ - 'config' => [ - 'suggestOptions' => [ - // configures the suggest wizard for the field "storage_pid" - // in table "pages" to search only for pages with doktype=1 - 'pages' => [ - 'searchCondition' => 'doktype=1', - ], - ], - ], - ], + 'storage_pid' => [ + 'config' => [ + 'suggestOptions' => [ + // configures the suggest wizard for the field "storage_pid" + // in table "pages" to search only for pages with doktype=1 + 'pages' => [ + 'searchCondition' => 'doktype=1', + ], + ], + ], + ], - searchWholePhrase (boolean) - Whether to do a :code:`LIKE=%mystring%` (searchWholePhrase = 1) or a :code:`LIKE=mystring%` - (to do a real find as you type), default is :code:`0`. + searchWholePhrase (boolean) + Whether to do a :code:`LIKE=%mystring%` (searchWholePhrase = 1) or a :code:`LIKE=mystring%` + (to do a real find as you type), default is :code:`0`. - **Example** + **Example** - .. code-block:: php + .. code-block:: php - 'storage_pid' => [ - 'config' => [ - 'suggestOptions' => [ - 'default' => [ - 'searchWholePhrase' => 1, - ], - ], - ], - ], + 'storage_pid' => [ + 'config' => [ + 'suggestOptions' => [ + 'default' => [ + 'searchWholePhrase' => 1, + ], + ], + ], + ], Examples ======== @@ -152,6 +152,6 @@ Examples Only show pages with doktype=1 in the suggest options ===================================================== -.. include:: /Images/Rst/GroupDb10.rst.txt +.. include:: /Images/Rst/GroupDb10.rst.txt -.. include:: /CodeSnippets/GroupDb10.rst.txt +.. include:: /CodeSnippets/GroupDb10.rst.txt diff --git a/Documentation/ColumnsConfig/Type/Group/StoredDataValues.rst b/Documentation/ColumnsConfig/Type/Group/StoredDataValues.rst index 6a6d31e2..78ca0e52 100644 --- a/Documentation/ColumnsConfig/Type/Group/StoredDataValues.rst +++ b/Documentation/ColumnsConfig/Type/Group/StoredDataValues.rst @@ -1,18 +1,18 @@ -.. include:: /Includes.rst.txt -.. _columns-group-data: +.. include:: /Includes.rst.txt +.. _columns-group-data: ================== Stored data values ================== -.. note:: +.. note:: This structural in-depth study should probably be moved elsewhere and cleaned up since it contains some invalid information. Since the "group" element allows to store references to multiple elements we might want to look at how these references are stored internally. -.. _columns-group-data-storage: +.. _columns-group-data-storage: Storage methods --------------- @@ -24,7 +24,7 @@ There are two main methods for this: The default and most wide spread method is the comma list. -.. _columns-group-data-reserved: +.. _columns-group-data-reserved: Reserved tokens --------------- @@ -33,7 +33,7 @@ In the comma list the token "," is used to separate the values. In addition the value from label value when delivered to the interface. Therefore these tokens are not allowed in reference values, not even if the MM method is used. -.. _columns-group-data-commalist: +.. _columns-group-data-commalist: The "Comma list" method (default) --------------------------------- @@ -51,15 +51,15 @@ Content Element and a Page in the same list. That would look like "tt\_content\_ "26,pages\_123" where "26" implicitly points to a "tt\_content" record given that the list of allowed tables were "tt\_content,pages". -.. _columns-group-data-mm: +.. _columns-group-data-mm: The "MM" method --------------- -.. versionadded:: 11.4 - Starting with v11.4 intermediate mm tables defined in :php:`['config']['MM']` - are created automatically and do not have to be defined in - file:`ext_tables.sql` anymore. +.. versionadded:: 11.4 + Starting with v11.4 intermediate mm tables defined in :php:`['config']['MM']` + are created automatically and do not have to be defined in + file:`ext_tables.sql` anymore. Using the MM method the Database Analyzer creates an intermediate MM table to store the relation data. The database fields in the affected tables only contain @@ -90,7 +90,7 @@ Or for "tt\_content\_26,pages\_123": | [uid of the record you are editing] | 123 | pages | 2 | +-------------------------------------+--------------+-------------+---------+ -.. _columns-group-data-api: +.. _columns-group-data-api: API for getting the reference list ----------------------------------