[BUGFIX] Output dashed name for missing CLI arguments

This changes the command argument name outputted on errors from variable
naming to dashed notation as used on the CLI.

Resolves: #61630
Releases: 6.2, master
Change-Id: Ie41c90c056505df859aec3ee306718c874dd8a05
Reviewed-on: http://review.typo3.org/34449
Reviewed-by: Helmut Hummel <helmut.hummel@typo3.org>
Tested-by: Markus Klein <klein.t3@reelworx.at>
[BUGFIX] Prevent double content link checks

When a link points to a content element by using it's anchor behind
the page UID the reference index contains two entries for this link,
one for the linked page and one for the linked content element.

Since the content element is already checked when the page link is
validated by extracting the anchor element from the URL it is not
required to handle any other references than those starting with
"pages:". This prevents content elements from being treated as pages.

Resolves: #50772
Releases: master, 6.2
Change-Id: I5337ea01614eee2228fe09936f49a88b5ea96e5d
[FEATURE] Reusable getCategoryFieldsForTable itemsProcFunc

Allow the usage of the method
\TYPO3\CMS\Core\Category\CategoryRegistry->getCategoryFieldsForTable
that can be used as itemsProcFunc for select fields in the TCA in
multiple context by introducing a new categorizedTable configuration key
in the config section of a column in the TCA.

This configuration key can either consist of a single string containing
the name of the table or a configuration array to define additional
conditions that need to be true so that a configured table is used.

Resolves: #53045
Releases: master
Change-Id: I128cbeb6747a8f83e68cdaaaafbc3ab5901353d4
[WIP][FEATURE] Skip access check for content_from_pid

This patch introduces a new config option called
config.content_from_pid_skipAccessCheck.

If this option is TRUE no access check will be performed for the
page from which the contents should be displayed.

Resolves: #57079
Change-Id: Ib2bf94674b136c09424a5adf7b8000bb5d6ba634
[TASK] Unify data for jump URL hash generation

The jump URL generation is unified and moved to a new JumpUrlUtility
class. All methods in the ContentObjectRenderer are now using the same
method for creating jump URLs.

The handling of file and directory names with special characters is
improved and FAL file records with special characters in their file names
will also be URL encoded.

Additionally Unit Tests are added to verify the jump URL function.

Resolves: #52156
Releases: 6.2
Change-Id: I7d2d8cec005aae56a118850071ca669ef9740c9d
[BUGFIX] Prevent exclude field mixup in FormEngine

Use a local variable for storing the excluded fields in the
FormEngine to prevent the configuration from being overwritten
by the inline form element renderer.

Resolves: #47359
Releases: master, 6.2
Change-Id: I5a7a2de16d767f854b4d3f89d599deec28266092
[BUGFIX] Type check fix in linkhandler link type

To determine if a link should be handled by the linkhandler link type
in the linkvalidator, the "type" entry in the $value array will be
checked instead of the $type variable which is always empty.

Resolves: #38639
Releases: master, 6.2
Change-Id: I8183bfca0e4662518063f0d3ec9ba6bab0ff58bf
[FEATURE] Provide TSConfig to link checkers

The currently active TSConfig for the linkvalidator is passed
to the LinkAnalyser instance which makes it publicly available
for the link checkers.

Resolves: #54518
Releases: master
Change-Id: I59d1de5fb3f818d340f499260589edf9a45d3148
Reviewed-on: http://review.typo3.org/26499
Reviewed-by: Markus Klein <klein.t3@reelworx.at>
Tested-by: Markus Klein <klein.t3@reelworx.at>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>>
[FEATURE] Report links to disabled linkhandler records

A new TSConfig setting is introduced to mod.linkvalidator that is called
linkhandler.reportHiddenRecords.

If this setting is enabled an error will be triggerd in the linkhandler
link checker if a linked record is not enabled.

Resolves: #54519
Releases: master
Change-Id: Ib95cff1f9bdc67b0636cf38e6d9f33a8cbbdff75
Reviewed-on: http://review.typo3.org/26503
Reviewed-by: Markus Klein <klein.t3@reelworx.at>
Tested-by: Markus Klein <klein.t3@reelworx.at>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
[BUGFIX] Use mod.linkvalidator settings in scheduler

Since mod.linkvalidator is used in all other places in the linkvalidator
as TSConfig key it is now also used in the scheduler to override existing
TSConfig.

To maintain backward compatibility the old mod.tx_linkvalidator setting
will be respected and a deprecation warning will be logged.

Resolves: #51360
Releases: 6.2
Change-Id: I6e6692d2ff6543f1154e4d64feb52efc5cdfcf83
[BUGFIX] Respect config.absRefPrefix in admin panel

All image paths rendered by the admin panel will now be prefixed
with $GLOBALS['TSFE']->absRefPrefix.

Resolves: #52211
Releases: master, 6.2
Change-Id: I81cf6603887bb981e0c9398a724d3fb56de240f8
[BUGFIX] Accessibility bypass in dt for menu with abstract

The TypoScript path of the accessiblity bypass has changed so the
code that overrides the wrapping <li> with a <dt> element is adapted
to match the new TypoScript patch.

Resolves: #57712
Releases: master, 6.2
Change-Id: Ib0347ddae6091792b85ee77133db8d711982a12b
[BUGFIX] Placeholder attribute without useOrOverridePlaceholder

The placeholder configuration for a TCA field will now be considered
independently from the "mode" beeing set to "useOrOverridePlaceholder".
If a placeholder is set in the TCA it will be rendered. The mode
setting only changes the behavior of the NULL checkbox.

Resolves: #59129
Releases: master, 6.2
Change-Id: Ice7681d644623a5e94cbdd22743ddf5aab8919a9
[WIP][BUGFIX] Language overlay for displayCond / subtype

Before a displayCond field value or the subtype_value_field value is
used a language overlay is performed to make sure that the l10n_mode
configuration is taken into account.

WIP: language overlay for subtypes.

Resolves: #59130
Releases: 6.2
Change-Id: I0fdcdcb86e6201f454f8b6ede3ee519f53da8ff1
[BUGFIX] Redirect on direct access to overlaid mountpoint

When the user directly accesses a page that is a mountpoint that
should be overlaid with the contents of the mounted page, he will
be redirected to the target page within the mounpoint context.

Releases: master, 6.2
Resolves: #59382
Change-Id: I37e20a05d8fcbfd98c36a87f27eb66683ef34dc9
[FEATURE] Allow appending of element browser mounts

A new User TSconfig option is introduced that allows the alternative
element browser page tree mounts to be appended instead of beeing
replaced:

options.pageTree.altElementBrowserMountPointsAppend

Resolves: #50780
Documentation: #63009
Releases: master
Change-Id: I2a0b616b398131684a2c7c71a25b4b51ef6f0c50
[BUGFIX] Language mode for child object / findByUid query

This patch makes all child object queries and the findByUid query
in Extbase ignore the current language mode which prevents invalid
child object references.

Releases: 6.3, 6.2
Resolves: #59971
Change-Id: I0f9e0de9b118fbd3bc49d7b5960285a2a8dce8c8
[TASK] Improve linkvalidator scheduler task usablity

The getAdditionalInformation() method is implemented in the
linkvalidator scheduler task to show more information about
the task in the scheduler Backend module.

Resolves: #61198
Releases: 6.3
Change-Id: Iebb43923b73ff4ecebab4a6747655596be859604
Reviewed-on: http://review.typo3.org/32383
Reviewed-by: Alexander Opitz <opitz.alexander@googlemail.com>
Tested-by: Alexander Opitz <opitz.alexander@googlemail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
[BUGFIX] Relations to the same table in Extbase

This patch introduces a mapping for properties to table aliases in
the Extbase Typo3DbQueryParser. This allows relations between
identical classes / tables.

Releases: master, 6.2
Resolves: #27057
Change-Id: If1e88c994b8a1179f6babf2bdfc1da3e61b2c658
[TASK] Prevent PHP warning in AbstractMenuObject

If the current page can not be retrieved for the language menu
the menu generation will be skipped to prevent a PHP warning
in the array_merge() call.

Change-Id: I16c1cc171a6f9aee13294a6e1ed14ce8ac492a17