[BUGFIX] Default size for group-type fields

Missing size property on group-type fields causes various
problems, like missing controls (move to top and move to
bottom) or misbehaving JS. Adding a default size ensures
that a forgotten size property does not break everything.

Additionally the size property is added to the sys_collection
table, since all Core tables should be cleanly defined.

Resolves: #23552
Documentation: #56627
Releases: 6.1, 6.2
Change-Id: Idafb1912f9702fddf85b7c2c222f408419e50ecf
Reviewed-on: https://review.typo3.org/28129
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] RTE on first new IRRE record keeps loading in IE

Problem: IE raises a syntax error when it encounters html comments in
the JavaScript code. The html comments are added by the page renderer.
Solution: There is no need for the page renderer to wrap inline
javascript as html comments.

Resolves: #55457
Releases: 6.2, 6.1
Change-Id: Iae180a73778ca3bb1c9934c887315b969888b10d
Reviewed-on: https://review.typo3.org/28130
Reviewed-by: Stanislas Rolland
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Temporary DB tree mount notice missing in ElementBrowser

If "Stop Page Tree" is set for a page, it is possible to set temporary
DB tree mounts in the element browser/link browser.
If such a tree mount is set, a notice is displayed right above the tree.

This notice is necessary to cancel this temporary mount.
Currently the ElementBrowser misses this notice when used
for e.g. header_link.

Change-Id: I942aad0e54d17ceb793008850f0563bb416503be
Fixes: #43885
Releases: 6.2, 6.1, 6.0
Reviewed-on: https://review.typo3.org/28181
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Allow record insert on rootlevel

The DataHandler function checkRecordInsertAccess() does
now check the configuration for the root level.

Resolves: #52386
Releases: 6.2, 6.1
Change-Id: I1810ea847e631ea6b242346a0271f491fd60fdf9
Reviewed-on: https://review.typo3.org/24164
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Correctly validate New Content Element entries

Each entry in the New Content Element wizard is tested to be valid,
i.e. the tt_content_defValues defined by that entry must be allowed
for the current BE user. Also, an entry may not select values that are
removed via TSconfig.

Setting TCEFORM.tt_content.[column].keepItems acts as a whitelist of
allowed values for *that* column. But the validity checks are done
hardcoded against the *CType* column.

Resolves: #23864
Releases: 6.2, 6.1
Change-Id: I5b6578f35552bd571fc822ac72f8f5fe12fe11f7
Reviewed-on: https://review.typo3.org/28307
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Followup: Ajax handler TYPO3_tcefile::process is broken

Upload action was taken care of, but the ajax handler can be just
for all commands that ExtendedFileUtility->processData can handle.

This change checks the result set and flattens
data only when needed.

Resolves: #56084
Releases: 6.2, 6.1
Change-Id: Ic1a0bd9084b9eb206b9b53960890d22d2a9c56f5
Reviewed-on: https://review.typo3.org/27863
Reviewed-by: Frans Saris
Tested-by: Frans Saris
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Show thumbnails in list module

Add missing checks if type column exists in a row.

Resolves: #56830
Releases: 6.2, 6.1
Change-Id: Ifafdb0c51266c76620696c6d94471b3efddba112
Reviewed-on: https://review.typo3.org/28350
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Alignment of button "add a new element at this place"

In the page module using the "Languages" view, the buttons "add a new
element at this place" are wrongly aligned.

This patch fixes this issue by adding a div which controls this alignment
by CSS

Change-Id: I9de8a47368682ed0b33c2ebfa0a590402c1ca8ef
Resolves: #56720
Releases: 6.1, 6.2
Reviewed-on: https://review.typo3.org/28276
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Extbase tries to overlay pages_language_overlay records

Method doLanguageAndWorkspaceOverlay of
Extbase\Persistence\Generic\Storage\Typo3DbBackend should not attempt
to get a parent record if the overlays are in a separate table (most
probably pages_language_overlay) by checking whether
$GLOBALS['TCA'][$tableName]['ctrl']['transOrigPointerTable'] is set.

Resolves: #56855
Releases: 6.0, 6.1, 6.2
Change-Id: I2cb53bc4733ee626ca0ae92e5dd91073d88ecc9d
Reviewed-on: https://review.typo3.org/28362
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] RootlineUtility does not consider disablefield

Make sure RootlineUtility::enrichWithRelationFields() respects
the setting of $TCA[$table]['ctrl']['enablecolumns']['disabled'] when
fetching foreign data for the rootline.

Otherwise hidden relations from sys_file_reference are added to the
rootline and cause exceptions in the frontend, instead of being ignored.

Resolves: #56150
Releases: 6.2, 6.1
Change-Id: I21917fec1407a10818058da8ea879b0bb39441a4
Reviewed-on: https://review.typo3.org/28400
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
[BUGFIX] Cannot use contain with multivalued static enumeration column

When a column is defined as a multivalued static enumeration:
'somecolumn' => array(
    'exclude' => 0,
    'label' => 'Some label',
    'config' => array(
        'type' => 'select',
        'items' => array(
            array('Option 1', 1),
            array('Option 2', 2),
            array('Option 3', 3),
            array('Option 4', 4),
        ),
        'size' => 4,
        'maxitems' => 4,
        'eval' => ''
    ),
),
it is not possible to query the domain model using operation "contains":
$value = 2;
$query->matching(
    $query->contains('somecolumn', $value)
);

Releases: 6.2, 6.1
Fixes: #56205
Change-Id: If898db7f355ad931d1c8b55febc2f59f19b0f38b
Reviewed-on: https://review.typo3.org/27787
Reviewed-by: Alexander Opitz
Reviewed-by: Wouter Wolters
Reviewed-by: Stefan Froemken
Tested-by: Stefan Froemken
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-on: https://review.typo3.org/28471
Reviewed-by: Xavier Perseguers
Tested-by: Xavier Perseguers
[BUGFIX] Several typos in Page Browsing ViewHelper

Fixing several typos and slips of the pen in the
PageBrowsing ViewHelper.

Without fixing all of them the page browsing ViewHelper
is not functional properly, that´s why i want to submit
them at once and also supply the fix for it.

That are these errors:
* Undefined but used class property prefixId
* Overwriting instead of appending content to already defined variable
* Not using UpperCamelCase for extensionName in Localization Utilty
* Accidentally using wrong variables
* Defining variable in for-loop which could be defined outside also
* Using undefined variable freeIndexUid

Resolves: #55340
Releases: 6.2, 6.1
Change-Id: I708a7af4876eba0e69fa666694315e0babcf6800
Reviewed-on: https://review.typo3.org/28539
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Parsetime: config.debug should override LocalConfiguration

Parsetime is output either if config.debug is set or if FE-debug
is activated in LocalConfiguration. Allow to explicitly override
(set to 0) the debugging in TS for cases where you want to output
page-objects like a JSON-page or so where Parsetime leads to
problems.

Change-Id: Ie5588218694219c13f136b5ac928e697ca472cfb
Resolves: #57202
Releases: 6.2, 6.1
Reviewed-on: https://review.typo3.org/28667
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Module Menu throws PHP warning for top level menu items

When rendering the module menu icons, the menu items
on the top level (Web, File, User, Admin) don't have an icon,
however the getModuleIcon functionality processes them,
and checks for getimagesize() even though no image is added.

To overcome this, the function needs to be modified slightly to
only call getimagesize if there is actually an icon.

Releases: 6.2, 6.1
Resolves: #57179
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Stefan Neufeind
Reviewed-by: Xavier Perseguers
Tested-by: Xavier Perseguers
Change-Id: I1fdede253c00df9c36bb7063edf0b5bf320bb20e
Reviewed-on: https://review.typo3.org/28668
Reviewed-by: Benjamin Mack
Tested-by: Benjamin Mack
[BUGFIX] Typo in Extbase localization file

Fixes: #57238
Releases: 6.2, 6.1, 6.0
Change-Id: Icca7e1637387e2ad31a1368abcd59b1bd443255f
Reviewed-on: https://review.typo3.org/28706
Reviewed-by: Xavier Perseguers
Tested-by: Xavier Perseguers
[BUGFIX] Exception if thumbnail does not exist

BackendUtility::thumbCode() tries to retrieve the extension
of a file object that might be NULL.

Add a check for having a valid file object.

Resolves: #54394
Releases: 6.1
Change-Id: Ia97fbb5fd3d9bd53c0d776a93969f9d059eebc4a
Reviewed-on: https://review.typo3.org/26446
Reviewed-by: Oliver Klee
Reviewed-by: Stefan Neufeind
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Test typeof TBE_EDITOR for object not function

As TBE_EDITOR is defined as object in jsfunc.tbe_editors.js we should
change the check here. Otherwise no eval user functions will be called.

Resolves: #57296
Releases: 6.2, 6.1
Change-Id: Ie1b701dcbf465827bc336233c2523f4df1dde9ba
Reviewed-on: https://review.typo3.org/28810
Reviewed-by: Alexander Opitz
Tested-by: Alexander Opitz
Reviewed-by: Nicole Cordes
Tested-by: Nicole Cordes
[BUGFIX] Make Extbase EnvironmentService a Singleton

EnvironmentService is a service and gets injected in different
classes, thus it has to be a Singleton.

Resolves: #57518
Releases: 6.2, 6.1
Change-Id: Ia8a3b8882be27c0f45569af818964036f0a9b16d
Reviewed-on: https://review.typo3.org/29043
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
[SECURITY] Prevent XSS in scheduler form

The class name is submitted in a hidden form and is susceptible to XSS.
The patch introduced htmlspecialchars to prevent XSS possibility.

Resolves: #57603
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Change-Id: I4979e66f28a581e168c56d91327a1bbe2672448d
Reviewed-on: https://review.typo3.org/29150
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
[TASK] Integrate default README.txt

This file is a modified and updated version like it has been
releases with every package in the past. Since these files have
been taken from git.typo3.org/TYPO3CMS/Distributions/Base.git,
which is target to be cleaned up, the file is explicitely put
to old branches as well.

Resolves: #57656
Releases: 6.1, 6.0, 4.7, 4.6, 4.5
Change-Id: I3b696895deaf03b2f630e12f1bd7b17b649b985c
Reviewed-on: https://review.typo3.org/29168
Reviewed-by: Stefan Neufeind
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader