[BUGFIX] Fix JS errors in page module

Due to the introduction of the fontawesome
icons drag&drop was not possible anymore
with ExtJS throwing errors in the page module
when starting to drag.

The intermediate fix is to make sure that
no errors are thrown in page module.

The correct fix is to define proper CSS
classes to address the elements,
but not via icon classes.

Releases: master
Resolves: #62969
Change-Id: I67b86f2b38054093b8755d6f9f65d868b3ccff76
Reviewed-on: http://review.typo3.org/34194
Reviewed-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Tested-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
[BUGFIX] Avoid warning caused by missing array key noScale

This fix avoids the warning which can occur, because the array key
noScale is missing during the rendering of an image.

Resolves: #62961
Releases: master, 6.2
Change-Id: I1ed5c97570173ad29992eb2fdcbf04f8c094ec9d
Reviewed-on: http://review.typo3.org/34178
Reviewed-by: Frans Saris <franssaris@gmail.com>
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>
[TASK] Remove old prototype.js utilities

One of the initial JS files with prototype
called common.js (which was moved from
typo3/js/common.js into EXT:backend
with the file structure change) was previously
used for calls using Prototype AJAX
calls.

The file was now used in two areas:
- backend.php - containing an instance of
the mother object "TYPO3" used for the
backend scaffolding via ExtJS.
- old Prototype trees (loaded in DocumentTemplate)
introducing an API when using prototype as AJAX handler
when errors from AJAX requests occurred (was piped
to the ExtJS debug bar).

Removing the common.js file leads to
a) moving the "mother object" TYPO3 into backend.js
where all other ExtJS initialization for the TYPO3 Backend
is done.
b) "old" Trees using AJAX without the hook
for show error messages.

The toolbarmanager.js file was a base
helper function to open/hide toolbar items
which is now completely provided with
Bootstrap's dropdown functionality.

As a result, the prototype/scriptaculous
component is not needed in backend.php
anymore, and is removed by default.

Any extension that needs prototype in the
backend.php namespace can of course
re-enable scriptaculous.

Resolves: #62926
Releases: master
Change-Id: Icbbc048944360c3ac469c816ad07c4a2a112836b
Reviewed-on: http://review.typo3.org/34098
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Felix Kopp <felix-source@phorax.com>
Tested-by: Felix Kopp <felix-source@phorax.com>
[CLEANUP] Rewrite JS/HTML part of Flexform sections

* Adds a jQuery version of the JavaScript features
   for TCEform FlexForms, and include them in
   the TYPO3 rendering call when accessing
   TCEforms FlexForms.
 * Adds clean "t3-flex" prefixed CSS classes for all
   components of FlexForms sections. Added styling
   for the components with the new classes
 * Removes all existing inline JS code for FlexForms
 * Adds minor bug fixes (no title output for section
   elements, preview text will be rendered on load on
   hidden section elements)
 * Reviewed existing ACTION code in TCEmain
   for flexform elements

One minor side note is that sorting is not working, which
will immediately be replaced with jquery ui in a followup
patch.

Resolves: #38736
Releases: master
Change-Id: I9fadf06d3271dd771489fcdd182cddf9542b59fd
Reviewed-on: http://review.typo3.org/12698
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
[BUGFIX] Hide empty tabs in DynTabMenu

Due to a previous tab patch, empty
tabs in e.g. FormEngine are always
shown but disabled (= unstyled).

The patch sets the default tab
behaviour to hide tabs that are
empty.

Releases: master
Resolves: #62972
Change-Id: I1d9c99269204cfdefa67b74085118def22b1ff9f
Reviewed-on: http://review.typo3.org/34198
Reviewed-by: Felix Kopp <felix-source@phorax.com>
Tested-by: Felix Kopp <felix-source@phorax.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
[!!!][CLEANUP] Remove CSH glossary functionality

Resolves: #62987
Releases: master
Change-Id: I530f21d9e11e3a996350f812b16529a5f080d4cd
Reviewed-on: http://review.typo3.org/33702
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Helmut Hummel <helmut.hummel@typo3.org>
Tested-by: Helmut Hummel <helmut.hummel@typo3.org>
Tested-by: Benjamin Mack <benni@typo3.org>
[TASK] FlexForms: Replace scripactulous with jQuery UI

Sorting of flexforms (e.g. media element)
is done with scriptaculous. The jQuery UI
sortable functionality is a drop-in replacement
already in use for IRRE sorting.

The patch replaces the scriptaculous code
with jQuery UI sortable.

Releases: master
Resolves: #62985
Change-Id: I8655cd2cc0004dc366ebb77b31f5e686dedaf74a
Reviewed-on: http://review.typo3.org/34206
Reviewed-by: Sebastian Fischer <typo3@evoweb.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
[BUGFIX] WorkspaceMenu still depends on prototype

A small regression was found when switching
from prototype to jQuery.
The String.startWith method which was
added by prototype.js does not exist anymore.

This does not allow to reload module+pagetree
anymore.

Releases: master
Resolves: #62989
Change-Id: I74fdfc8b648f2bf7912ff4ea58b0a158836e3d9e
Reviewed-on: http://review.typo3.org/34211
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
[BUGFIX] Page-Tree context menu uses prototype.js functionality

Replace Array.last() call with native JavaScript.

Resolves: #62994
Releases: master
Change-Id: I15a5c9021bde59511bb9ac3fc43cee26c7c36b3e
Reviewed-on: http://review.typo3.org/34214
Reviewed-by: Benjamin Mack <benni@typo3.org>
Tested-by: Benjamin Mack <benni@typo3.org>
Reviewed-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Tested-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
[CLEANUP] Remove supersuperold JS file

There is a file in typo3/js/jsfunc.updateform.js
which was used before all fe_admin was
removed from core, but missed from removal
with fe_admin completely.

Same goes for the call in ContentObjectRenderer
which is not used in the core for several versions.

As this can not work, and is superfluous, the file
and the method (note: @access private) can
be safely removed.

Releases: master
Resolves: #62996
Change-Id: I8f30d6d6ca317c616e05aa6ee88efb73adc15033
Reviewed-on: http://review.typo3.org/34219
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
[TASK] Migrate constant editor JavaScript to jQuery

In our efforts to migrate all old-school JS to jQuery
RequireJS modules, there are a few small JS functions
related to the TypoScript constant editor which are
replaced by a proper RequireJS Module.

Resolves: #62624
Releases: master
Change-Id: Id0d5e4a986f0b94ef399da84ff20c0a026c7d795
Reviewed-on: http://review.typo3.org/33671
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Benjamin Mack <benni@typo3.org>
Tested-by: Benjamin Mack <benni@typo3.org>
[TASK] Add XLF file checker for TRAVIS CI

The script checks for the presence of a t3:id in the XLF files.
Moreover the uniqueness is verified.

Resolves: #62965
Releases: master, 6.2
Change-Id: I8a2514b31c1484988ef7add937502424f64ed1e4
Reviewed-on: http://review.typo3.org/34184
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
[TASK] Remove leftover modulemenu JS

Prior to the module menu restructuring
based on jQuery, the module menu
was a ExtJS viewport to be fit in the
backend scaffolding dynamically built.

When adding the new code, the old
wasn't completely removed. A ExtJS
panel named modulepanel was still
included but is not in use anymore.

Resolves: #62998
Releases: master
Change-Id: I367bbce1a7dc35b62e0ecaa8c5f16765210e0974
Reviewed-on: http://review.typo3.org/34221
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
[FEATURE] New list module styling

Provide new styling to list module and base styling for
clipboard based on bootstrap.

Also works for the file list.

Resolves: #62963
Releases: master
Change-Id: Ie12df83b6c488bcf6499ebdf881569ba62ebf818
Reviewed-on: http://review.typo3.org/34179
Reviewed-by: Frank Nägler <typo3@naegler.net>
Tested-by: Frank Nägler <typo3@naegler.net>
Reviewed-by: Benjamin Mack <benni@typo3.org>
Tested-by: Benjamin Mack <benni@typo3.org>
[TASK] Migrate ext:perm JavaScript to jQuery

In the main effort to remove prototype.js in
favor of RequireJS and jQuery, the JS structure
is adapted.

Resolves: #62936
Releases: master
Change-Id: I41cf626ff93c48efb7230876cae4a48dbc6ef8c0
Reviewed-on: http://review.typo3.org/32147
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
[TASK] Move FormEngine SelectboxFilter to jQuery

One of the last bits and pieces with PrototypeJS
is a relatively new feature introduced with 6.2
for filtering records in a multi-select (two boxes mode).

The JS functionality was completely written,
styling is optimized to fit bootstrap needs.

Through using deferred event handlers, the
PHP code is reduced.

Releases: master
Resolves: #62991
Change-Id: Idb189a871b8499fd5129773641f6ac5e8fb373d2
Reviewed-on: http://review.typo3.org/34212
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Frank Nägler <typo3@naegler.net>
Tested-by: Frank Nägler <typo3@naegler.net>
[TASK] ToolbarItem interface improvements

Change new interface splitting item and drop down.
Refactor all toolbar items accordingly.
Styling changes will be done with second patch.

Change-Id: I6bfa87dbc85eb0312f4748283de788e27dda590e
Resolves: #62997
Releases: master
Reviewed-on: http://review.typo3.org/34205
Reviewed-by: Felix Kopp <felix-source@phorax.com>
Tested-by: Felix Kopp <felix-source@phorax.com>
Reviewed-by: Benjamin Mack <benni@typo3.org>
Tested-by: Benjamin Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
[FOLLOWUP][BUGFIX] Fix failing unit tests

A sprite icon utility was changed a bit with patch
for #62963, but the unit tests were not adapted.
Do that now.

Change-Id: I63e0c233d9a63c452f5c70e53ccef5c1b280639a
Resolves: #62963
Releases: master
Reviewed-on: http://review.typo3.org/34231
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Frank Nägler <typo3@naegler.net>
Tested-by: Frank Nägler <typo3@naegler.net>
[TASK] Remove leftover jsfunc JS inclusions

There are some inclusions of the removed
jsfunc.formupdate.js file which was unused
for the last years.

Resolves: #63002
Releases: master
Change-Id: If748b584f4ef84d8010def47a4868445d44470f5
Reviewed-on: http://review.typo3.org/34234
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
[FEATURE] Module menu restyling

Restyle the module menu and prepare appicon support.

Resolves: #62995
Releases: master
Change-Id: Ic6a55c434b3cf13320c6b0417050d2cd273b531b
Reviewed-on: http://review.typo3.org/34216
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Frank Nägler <typo3@naegler.net>
Tested-by: Frank Nägler <typo3@naegler.net>
Reviewed-by: Felix Kopp <felix-source@phorax.com>
Tested-by: Felix Kopp <felix-source@phorax.com>