[BUGFIX] t3skin calls addIconSprite for each lang

The t3skin extension adds icon sprites for each language. And that's
great, but not so great that it calls addIconSprite for each language.

Instead the iconArray can be built up and submitted once to
addIconSprite.

This saves 248 calls to addIconSprite which calls array_merge etc.

This saves ~ 22 ms for each request.

Change-Id: I0fdc09de46899e4160f907aefd8b3b3b596a2df3
Resolves: #53918
Releases: 6.0, 6.1, 6.2
Reviewed-on: https://review.typo3.org/25670
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[TASK] Remove disableDocModuleInAB TSconfig option in ModuleMenuView

The option disableDocModuleInAB has already been removed in the
documentation since TYPO3 4.2 according to
http://wiki.typo3.org/Documentation_changes_in_4.2

Current documentation also lacks information about this option.

Change-Id: I0ae2ddd88956c8936ae24091f64d95f4195ebf12
Resolves: #53991
Releases: 6.2
Reviewed-on: https://review.typo3.org/25703
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Georg Ringer
Tested-by: Georg Ringer
[TASK] Replace URLs of bugs.typo3.org with forge.typo3.org

The old issue tracker on http://bugs.typo3.org will be shut down
by the end of 2013.

Therefore replace *all* occurrences of such URLs with the new
location on http://forge.typo3.org.

Change-Id: Ia44742efeab22837dd5be7076f21eb286aaf5a82
Resolves: #54020
Releases: 6.2
Reviewed-on: https://review.typo3.org/25716
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[BUGFIX] Redundant compare: GeneralUtility::inList()

GeneralUtility::inList() does a comparison resulting in a boolean value.
Then based on this value it will return TRUE or FALSE.

It suffices to return the result of the comparison.

Change-Id: I12f9dd699a643a187f871940175e32ab2bcca7de
Resolves: #54017
Releases: 6.2
Reviewed-on: https://review.typo3.org/25713
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] Superfluous comparison in InlineElement

Fix superfluous comparison against boolean in
InlineElement::renderForeignRecord().

Change-Id: I75bb1625ad7ead08e8e38fe46daa03071bc76113
Resolves: #54018
Releases: 6.2
Reviewed-on: https://review.typo3.org/25714
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
[TASK] ExtJS-upgrade 3.4.0 to 3.4.1.1

From 3.4.0, released June 9, 2011
To 3.4.1.1, released March 29, 2013

Change-Id: I009c472975262f1813711b8b204518c9f1c8f463
Resolves: #52933
Releases: 6.2
Reviewed-on: https://review.typo3.org/24883
Reviewed-by: Tomita Militaru
Tested-by: Tomita Militaru
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] Use array access instead of traversing hook array

Instead of making a slow array traversal simply check if there is
a hook object for the cObject being rendered by using an array access.
And check if the object exists before.

Change-Id: I6b16703b1194eca4d1ed5c3d5543076e2cae495d
Resolves: #51283
Releases: 6.2
Reviewed-on: https://review.typo3.org/23267
Reviewed-by: Oliver Klee
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Helmut Hummel
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[TASK] ext:adodb Remove obsolete diffs from doc/

Remove some ancient and obsolete patch files from ext:adodb/doc.

Change-Id: Ib2183abb3358de8b4d7e1dad71731b1df96a9a80
Fixes: #54078
Releases: 6.2
Reviewed-on: https://review.typo3.org/25758
Reviewed-by: Oliver Klee
Tested-by: Oliver Klee
Reviewed-by: Steffen Ritter
Tested-by: Steffen Ritter
Reviewed-by: Franz G. Jahn
Tested-by: Franz G. Jahn
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
[TASK] ext:adodb Remove connection wizard

Extension adodb can be used together with TER extension "datasource".
ext:adodb delivers a wizard and flexform code to connect to this
third party extension. Last release of ext:datasource was in 2005,
the extension in unmaintained and always had an experimental
character. Since core extension functionality should not depend on
third party code, the datasource related code of ext:adodb is fully
removed with this patch in 6.2.

Change-Id: Ib7de137599d9bb55d6b9dd98667cbbe3dd70c986
Resolves: #42651
Releases: 6.2
Reviewed-on: https://review.typo3.org/25759
Reviewed-by: Oliver Klee
Tested-by: Oliver Klee
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Franz G. Jahn
Tested-by: Franz G. Jahn
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Simplify returns in ConfigurationManager

writeLocalConfiguration() and writeAdditionalConfiguration()
have return statements like:
return $result === FALSE ? FALSE : TRUE;

This can be reduced to:
return $result;

Moreover the return value of canWriteConfiguration()
can be optimized as well.

Change-Id: I8e571459179e4bfeca3bba0a4969fb76d18058e2
Resolves: #54019
Releases: 6.2
Reviewed-on: https://review.typo3.org/25715
Reviewed-by: Markus Klein
Reviewed-by: Michiel Roos
Tested-by: Michiel Roos
Tested-by: Markus Klein
Reviewed-by: Oliver Klee
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[BUGFIX] Missing phpinfo() module in install tool

Adds phpinfo() information in System Environment section from
the Install Tool, after warning / error messages.

Fixes: #53271
Releases: 6.2
Change-Id: I8582a65247de998f373d3143f013fa91cb47bff9
Reviewed-on: https://review.typo3.org/25263
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
[TASK] Remove non-evaluated parameter from _GP function calls

Remove second (no longer evaluated) _GP() function call parameter.

Resolves: #54106
Releases: 6.2
Change-Id: I5b8f6401a07a7291c893a7e82f224c89f0e6404e
Reviewed-on: https://review.typo3.org/25803
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Fix broken references in LegacyClassesForIde

The LegacyClassesForIde.php contains some class definition
which extend non-existing or wrong classes.

Also fix some issues in ClassAliasMaps of ext:frontend

Resolves: #54059
Releases: 6.2
Change-Id: Id0918cfc3b187ea1110ad5e745a2b904ea50502c
Reviewed-on: https://review.typo3.org/25750
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Faulty and superfluous code in import/export module

There is faulty and superfluous code in import/export module:
* ModuleFunctionController does not work at all, this points
  back to issue #22921 during TYPO3 4.4 development
* ImportExportTask fetches thumbnail files from a (faulty)
  storage that are not used at all

Since the required class "mod_user_task" has been removed in
TYPO3 4.4, the module function component was broken since then.
Thus, it will be removed completely with this change.

Fixes: #53555
Releases: 6.2, 6.1, 6.0
Change-Id: I1cbdd967dc47ac2fcd256e7eefc756278822ad84
Reviewed-on: https://review.typo3.org/25302
Reviewed-by: Markus Klein
Tested-by: Markus Klein
Reviewed-by: Oliver Klee
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[TASK] Installer: textarea for [FE][defaultTypoScript_setup]

The defaultTypoScript_setup has a different configuration than
defaultTypoScript_constants.
Make them equal.

Resolves: #53852
Releases: 6.2
Change-Id: Ide8be9b4653ed17e3a0ee7a0222bd384a986b3ce
Reviewed-on: https://review.typo3.org/25634
Reviewed-by: Wouter Wolters
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
[BUGFIX] Cleanly unset cookies on login in cookie-check

Needed to workaround a login-problem with IE11.

ExtJS tries to clear a cookie with different settings than when
setting the cookie. In IE11 this leads to problems with the cookie
being set twice on the next call to set(). The get() however
would return the first (empty) cookie.

Using set() with a date in the past also clears the cookie but
will correctly use the same path-settings.

Change-Id: Ieff22129895cd89ca2e1429703daf1636596ecb6
Resolves: #53818
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Reviewed-on: https://review.typo3.org/25852
Reviewed-by: Henrik Ziegenhain
Tested-by: Henrik Ziegenhain
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Steffen Ritter
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] ClientUtility does not detect Internet Explorer 11

Since the Release of Microsoft IE 11 there is no "MSIE" hint in
its user agent header anymore. Therefore the existing patterns
fail and the browser is detected as unknown browser.

TYPO3 deactivates several features for unknown browser. As a
result f.e. the RTE does not load.

This change adds special treatment for IE11+ by introducing an
additional regular expression matching the new user agent format
and looking for the Trident engine to be present.

In addition unit tests for common IE 9-11 user agents are added.

Change-Id: I389f344a498ac77f3e6445656dd125fd5d236a98
Resolves: #54124
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Reviewed-on: https://review.typo3.org/25848
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
Reviewed-by: Markus Klein
Tested-by: Markus Klein
[BUGFIX] Followup Fluid Template Fallback paths

In the previously merged patch are some glitches and a regression:
- The usage (and test for existence) of deprecated functions has been
  removed.
- The value passed by the old behaviour is now considered last place
  in the array providing the lookup paths
- The typo preventing usage setLayoutPaths() has been removed.

Intended usage:
plugin.tx_a.view.templateRootPaths{
	default = <some default path>
	extendedA = <some additional path>
}
The array gets reversed and the first hit will be used as template.
In case only numeric indizes are used, the entries get ordered.
See unit tests for a more specific description.

Change-Id: If4fa75347614cf9b352c6016430a928833cc62cd
Resolves: #52971
Releases: 6.2
[BUGFIX] Load ext_autoload.php date if required

The class loader will load the ext_autoload.php data of all Extension on
on demand if the requrested class name was not found in the cache.

The generated data is stored in the core cache. Additinally the loaded
data is cached per request in a class variable. This will only happend
if not all classes could be loaded from the cache.

This change is required because otherwise the information from the
ext_autoload.php files is not fetched at all after the cache was warmed
up.

Resolves: #53929
Releases: 6.2
Change-Id: I344888dff2ba673c221c957e4e9c966b9cee801b
[BUGFIX] Create valid sys_file refindex data

This patch prevents the creation of sys_refindex entries that point to no
table and no record.

Additionally it fixes the creation of sys_refindex records for sys_file
relations.

Resolves: #53712
Releases: 6.2, 6.1, 6.0
Change-Id: Ic864ade10e4e97fbd9017b9c779be68d911dd626