[FEATURE] Enable allWrap.splitChar on all includeJS/includeCSS properties 69/23669/5
authorChristoph Dörfel <christoph.doerfel@gmail.com>
Thu, 5 Sep 2013 16:06:47 +0000 (18:06 +0200)
committerMarkus Klein <klein.t3@mfc-linz.at>
Wed, 11 Sep 2013 14:00:45 +0000 (16:00 +0200)
The includeJS/includeCSS properties of the PAGE object feature an
allWrap property which replaces all pipe symbols with the generated
tag. This behaviour differs from how wraps are handled in TYPO3.
A splitChar can now be defined for the allWrap property and the wrap
works like the standard wrap method from the ContentObject class.

Resolves: #51782
Releases: 6.2
Change-Id: Ic2687394c209b0f58185f37a64b14dff30efd2a1
Reviewed-on: https://review.typo3.org/23669
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind
Reviewed-by: Markus Klein
Tested-by: Markus Klein
typo3/sysext/core/Classes/Page/PageRenderer.php
typo3/sysext/core/Tests/Unit/Page/PageRendererTest.php
typo3/sysext/frontend/Classes/Page/PageGenerator.php

index fcbb213..6d94b93 100644 (file)
@@ -1195,9 +1195,10 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
         * @param boolean $forceOnTop Flag if added library should be inserted at begin of this block
         * @param string $allWrap
         * @param boolean $excludeFromConcatenation
+        * @param string $splitChar The char used to split the allWrap value, default is "|"
         * @return void
         */
-       public function addJsLibrary($name, $file, $type = 'text/javascript', $compress = FALSE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE) {
+       public function addJsLibrary($name, $file, $type = 'text/javascript', $compress = FALSE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE, $splitChar = '|') {
                if (!$type) {
                        $type = 'text/javascript';
                }
@@ -1209,7 +1210,8 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                'compress' => $compress,
                                'forceOnTop' => $forceOnTop,
                                'allWrap' => $allWrap,
-                               'excludeFromConcatenation' => $excludeFromConcatenation
+                               'excludeFromConcatenation' => $excludeFromConcatenation,
+                               'splitChar' => $splitChar
                        );
                }
        }
@@ -1224,9 +1226,10 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
         * @param boolean $forceOnTop Flag if added library should be inserted at begin of this block
         * @param string $allWrap
         * @param boolean $excludeFromConcatenation
+        * @param string $splitChar The char used to split the allWrap value, default is "|"
         * @return void
         */
-       public function addJsFooterLibrary($name, $file, $type = 'text/javascript', $compress = FALSE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE) {
+       public function addJsFooterLibrary($name, $file, $type = 'text/javascript', $compress = FALSE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE, $splitChar = '|') {
                if (!$type) {
                        $type = 'text/javascript';
                }
@@ -1238,7 +1241,8 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                'compress' => $compress,
                                'forceOnTop' => $forceOnTop,
                                'allWrap' => $allWrap,
-                               'excludeFromConcatenation' => $excludeFromConcatenation
+                               'excludeFromConcatenation' => $excludeFromConcatenation,
+                               'splitChar' => $splitChar
                        );
                }
        }
@@ -1252,9 +1256,10 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
         * @param boolean $forceOnTop
         * @param string $allWrap
         * @param boolean $excludeFromConcatenation
+        * @param string $splitChar The char used to split the allWrap value, default is "|"
         * @return void
         */
-       public function addJsFile($file, $type = 'text/javascript', $compress = TRUE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE) {
+       public function addJsFile($file, $type = 'text/javascript', $compress = TRUE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE, $splitChar = '|') {
                if (!$type) {
                        $type = 'text/javascript';
                }
@@ -1269,7 +1274,8 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                'compress' => $compress,
                                'forceOnTop' => $forceOnTop,
                                'allWrap' => $allWrap,
-                               'excludeFromConcatenation' => $excludeFromConcatenation
+                               'excludeFromConcatenation' => $excludeFromConcatenation,
+                               'splitChar' => $splitChar
                        );
                }
        }
@@ -1283,9 +1289,10 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
         * @param boolean $forceOnTop
         * @param string $allWrap
         * @param boolean $excludeFromConcatenation
+        * @param string $splitChar The char used to split the allWrap value, default is "|"
         * @return void
         */
-       public function addJsFooterFile($file, $type = 'text/javascript', $compress = TRUE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE) {
+       public function addJsFooterFile($file, $type = 'text/javascript', $compress = TRUE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE, $splitChar = '|') {
                if (!$type) {
                        $type = 'text/javascript';
                }
@@ -1300,7 +1307,8 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                'compress' => $compress,
                                'forceOnTop' => $forceOnTop,
                                'allWrap' => $allWrap,
-                               'excludeFromConcatenation' => $excludeFromConcatenation
+                               'excludeFromConcatenation' => $excludeFromConcatenation,
+                               'splitChar' => $splitChar
                        );
                }
        }
@@ -1500,9 +1508,10 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
         * @param boolean $forceOnTop
         * @param string $allWrap
         * @param boolean $excludeFromConcatenation
+        * @param string $splitChar The char used to split the allWrap value, default is "|"
         * @return void
         */
-       public function addCssFile($file, $rel = 'stylesheet', $media = 'all', $title = '', $compress = TRUE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE) {
+       public function addCssFile($file, $rel = 'stylesheet', $media = 'all', $title = '', $compress = TRUE, $forceOnTop = FALSE, $allWrap = '', $excludeFromConcatenation = FALSE, $splitChar = '|') {
                if (!isset($this->cssFiles[$file])) {
                        $this->cssFiles[$file] = array(
                                'file' => $file,
@@ -1512,7 +1521,8 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                'compress' => $compress,
                                'forceOnTop' => $forceOnTop,
                                'allWrap' => $allWrap,
-                               'excludeFromConcatenation' => $excludeFromConcatenation
+                               'excludeFromConcatenation' => $excludeFromConcatenation,
+                               'splitChar' => $splitChar
                        );
                }
        }
@@ -2270,9 +2280,14 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                        foreach ($this->cssFiles as $file => $properties) {
                                $file = GeneralUtility::resolveBackPath($file);
                                $file = GeneralUtility::createVersionNumberedFilename($file);
-                               $tag = '<link rel="' . htmlspecialchars($properties['rel']) . '" type="text/css" href="' . htmlspecialchars($file) . '" media="' . htmlspecialchars($properties['media']) . '"' . ($properties['title'] ? ' title="' . htmlspecialchars($properties['title']) . '"' : '') . $this->endingSlash . '>';
-                               if ($properties['allWrap'] && strpos($properties['allWrap'], '|') !== FALSE) {
-                                       $tag = str_replace('|', $tag, $properties['allWrap']);
+                               $tag = '<link rel="' . htmlspecialchars($properties['rel'])
+                                       . '" type="text/css" href="' . htmlspecialchars($file)
+                                       . '" media="' . htmlspecialchars($properties['media']) . '"'
+                                       . ($properties['title'] ? ' title="' . htmlspecialchars($properties['title']) . '"' : '')
+                                       . $this->endingSlash . '>';
+                               if ($properties['allWrap']) {
+                                       $wrapArr = explode($properties['splitChar'] ?: '|', $properties['allWrap'], 2);
+                                       $tag = $wrapArr[0] . $tag . $wrapArr[1];
                                }
                                if ($properties['forceOnTop']) {
                                        $cssFiles = $tag . LF . $cssFiles;
@@ -2317,8 +2332,9 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                $properties['file'] = GeneralUtility::resolveBackPath($properties['file']);
                                $properties['file'] = GeneralUtility::createVersionNumberedFilename($properties['file']);
                                $tag = '<script src="' . htmlspecialchars($properties['file']) . '" type="' . htmlspecialchars($properties['type']) . '"></script>';
-                               if ($properties['allWrap'] && strpos($properties['allWrap'], '|') !== FALSE) {
-                                       $tag = str_replace('|', $tag, $properties['allWrap']);
+                               if ($properties['allWrap']) {
+                                       $wrapArr = explode($properties['splitChar'] ?: '|', $properties['allWrap'], 2);
+                                       $tag = $wrapArr[0] . $tag . $wrapArr[1];
                                }
                                if ($properties['forceOnTop']) {
                                        if ($properties['section'] === self::PART_HEADER) {
@@ -2355,8 +2371,9 @@ class PageRenderer implements \TYPO3\CMS\Core\SingletonInterface {
                                $file = GeneralUtility::resolveBackPath($file);
                                $file = GeneralUtility::createVersionNumberedFilename($file);
                                $tag = '<script src="' . htmlspecialchars($file) . '" type="' . htmlspecialchars($properties['type']) . '"></script>';
-                               if ($properties['allWrap'] && strpos($properties['allWrap'], '|') !== FALSE) {
-                                       $tag = str_replace('|', $tag, $properties['allWrap']);
+                               if ($properties['allWrap']) {
+                                       $wrapArr = explode($properties['splitChar'] ?: '|', $properties['allWrap'], 2);
+                                       $tag = $wrapArr[0] . $tag . $wrapArr[1];
                                }
                                if ($properties['forceOnTop']) {
                                        if ($properties['section'] === self::PART_HEADER) {
index 3b38ac8..feef460 100644 (file)
@@ -153,8 +153,8 @@ class PageRendererTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
         * test add JS library file
         */
        public function testAddJsLibrary() {
-               $expectedRegExp = '#<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>#';
-               $this->fixture->addJsLibrary('test', 'fileadmin/test.js');
+               $expectedRegExp = '#wrapBefore<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>wrapAfter#';
+               $this->fixture->addJsLibrary('test', 'fileadmin/test.js', 'text/javascript', FALSE, FALSE, 'wrapBeforeXwrapAfter', FALSE, 'X');
                $out = $this->fixture->render();
                $this->assertRegExp($expectedRegExp, $out);
        }
@@ -163,8 +163,8 @@ class PageRendererTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
         * test add JS footer library file
         */
        public function testAddJsFooterLibrary() {
-               $expectedRegExp = '#<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>#';
-               $this->fixture->addJsFooterLibrary('test', 'fileadmin/test.js');
+               $expectedRegExp = '#wrapBefore<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>wrapAfter#';
+               $this->fixture->addJsFooterLibrary('test', 'fileadmin/test.js', 'text/javascript', FALSE, FALSE, 'wrapBeforeXwrapAfter', FALSE, 'X');
                $out = $this->fixture->render(\TYPO3\CMS\Core\Page\PageRenderer::PART_FOOTER);
                $this->assertRegExp($expectedRegExp, $out);
        }
@@ -173,8 +173,8 @@ class PageRendererTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
         * test add JS file
         */
        public function testAddJsFile() {
-               $expectedRegExp = '#<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>#';
-               $this->fixture->addJsFile('fileadmin/test.js');
+               $expectedRegExp = '#wrapBefore<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>wrapAfter#';
+               $this->fixture->addJsFile('fileadmin/test.js', 'text/javascript', FALSE, FALSE, 'wrapBeforeXwrapAfter', FALSE, 'X');
                $out = $this->fixture->render();
                $this->assertRegExp($expectedRegExp, $out);
        }
@@ -183,8 +183,8 @@ class PageRendererTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
         * test add JS file for footer
         */
        public function testAddJsFooterFile() {
-               $expectedRegExp = '#<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>#';
-               $this->fixture->addJsFooterFile('fileadmin/test.js');
+               $expectedRegExp = '#wrapBefore<script src="fileadmin/test\\.(js|\\d+\\.js|js\\?\\d+)" type="text/javascript"></script>wrapAfter#';
+               $this->fixture->addJsFooterFile('fileadmin/test.js', 'text/javascript', FALSE, FALSE, 'wrapBeforeXwrapAfter', FALSE, 'X');
                $out = $this->fixture->render(\TYPO3\CMS\Core\Page\PageRenderer::PART_FOOTER);
                $this->assertRegExp($expectedRegExp, $out);
        }
@@ -226,8 +226,8 @@ class PageRendererTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
         * test add CSS file
         */
        public function testAddCssFile() {
-               $expectedReturnValue = '<link rel="stylesheet" type="text/css" href="fileadmin/test.css" media="all" />';
-               $this->fixture->addCssFile('fileadmin/test.css');
+               $expectedReturnValue = 'wrapBefore<link rel="stylesheet" type="text/css" href="fileadmin/test.css" media="print" />wrapAfter';
+               $this->fixture->addCssFile('fileadmin/test.css', 'stylesheet', 'print', '', TRUE, FALSE, 'wrapBeforeXwrapAfter', FALSE, 'X');
                $out = $this->fixture->render();
                $this->assertContains($expectedReturnValue, $out);
        }
index 1d922ca..0fcf7e9 100644 (file)
@@ -467,7 +467,19 @@ class PageGenerator {
                                                        }
                                                        $pageRenderer->addCssInlineBlock('import_' . $key, '@import url("' . htmlspecialchars($ss) . '") ' . htmlspecialchars($GLOBALS['TSFE']->pSetup['includeCSS.'][($key . '.')]['media']) . ';', empty($GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['disableCompression']), $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['forceOnTop'] ? TRUE : FALSE, '');
                                                } else {
-                                                       $pageRenderer->addCssFile($ss, $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['alternate'] ? 'alternate stylesheet' : 'stylesheet', $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['media'] ? $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['media'] : 'all', $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['title'] ? $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['title'] : '', empty($GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['disableCompression']), $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['forceOnTop'] ? TRUE : FALSE, $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['allWrap'], $GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.']['excludeFromConcatenation'] ? TRUE : FALSE);
+                                                       $cssFileConfig = &$GLOBALS['TSFE']->pSetup['includeCSS.'][$key . '.'];
+                                                       $pageRenderer->addCssFile(
+                                                               $ss,
+                                                               $cssFileConfig['alternate'] ? 'alternate stylesheet' : 'stylesheet',
+                                                               $cssFileConfig['media'] ? $cssFileConfig['media'] : 'all',
+                                                               $cssFileConfig['title'] ? $cssFileConfig['title'] : '',
+                                                               empty($cssFileConfig['disableCompression']),
+                                                               $cssFileConfig['forceOnTop'] ? TRUE : FALSE,
+                                                               $cssFileConfig['allWrap'],
+                                                               $cssFileConfig['excludeFromConcatenation'] ? TRUE : FALSE,
+                                                               $cssFileConfig['allWrap.']['splitChar']
+                                                       );
+                                                       unset($cssFileConfig);
                                                }
                                        }
                                }
@@ -591,11 +603,23 @@ class PageGenerator {
                                        }
                                        $ss = $GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.']['external'] ? $JSfile : $GLOBALS['TSFE']->tmpl->getFileName($JSfile);
                                        if ($ss) {
-                                               $type = $GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.']['type'];
+                                               $jsFileConfig = &$GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.'];
+                                               $type = $jsFileConfig['type'];
                                                if (!$type) {
                                                        $type = 'text/javascript';
                                                }
-                                               $pageRenderer->addJsLibrary($key, $ss, $type, empty($GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.']['disableCompression']), $GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.']['forceOnTop'] ? TRUE : FALSE, $GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.']['allWrap'], $GLOBALS['TSFE']->pSetup['includeJSlibs.'][$key . '.']['excludeFromConcatenation'] ? TRUE : FALSE);
+
+                                               $pageRenderer->addJsLibrary(
+                                                       $key,
+                                                       $ss,
+                                                       $type,
+                                                       empty($jsFileConfig['disableCompression']),
+                                                       $jsFileConfig['forceOnTop'] ? TRUE : FALSE,
+                                                       $jsFileConfig['allWrap'],
+                                                       $jsFileConfig['excludeFromConcatenation'] ? TRUE : FALSE,
+                                                       $jsFileConfig['allWrap.']['splitChar']
+                                               );
+                                               unset($jsFileConfig);
                                        }
                                }
                        }
@@ -608,11 +632,22 @@ class PageGenerator {
                                        }
                                        $ss = $GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.']['external'] ? $JSfile : $GLOBALS['TSFE']->tmpl->getFileName($JSfile);
                                        if ($ss) {
-                                               $type = $GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.']['type'];
+                                               $jsFileConfig = &$GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.'];
+                                               $type = $jsFileConfig['type'];
                                                if (!$type) {
                                                        $type = 'text/javascript';
                                                }
-                                               $pageRenderer->addJsFooterLibrary($key, $ss, $type, empty($GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.']['disableCompression']), $GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.']['forceOnTop'] ? TRUE : FALSE, $GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.']['allWrap'], $GLOBALS['TSFE']->pSetup['includeJSFooterlibs.'][$key . '.']['excludeFromConcatenation'] ? TRUE : FALSE);
+                                               $pageRenderer->addJsFooterLibrary(
+                                                       $key,
+                                                       $ss,
+                                                       $type,
+                                                       empty($jsFileConfig['disableCompression']),
+                                                       $jsFileConfig['forceOnTop'] ? TRUE : FALSE,
+                                                       $jsFileConfig['allWrap'],
+                                                       $jsFileConfig['excludeFromConcatenation'] ? TRUE : FALSE,
+                                                       $jsFileConfig['allWrap.']['splitChar']
+                                               );
+                                               unset($jsFileConfig);
                                        }
                                }
                        }
@@ -626,11 +661,21 @@ class PageGenerator {
                                        }
                                        $ss = $GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.']['external'] ? $JSfile : $GLOBALS['TSFE']->tmpl->getFileName($JSfile);
                                        if ($ss) {
-                                               $type = $GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.']['type'];
+                                               $jsConfig = &$GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.'];
+                                               $type = $jsConfig['type'];
                                                if (!$type) {
                                                        $type = 'text/javascript';
                                                }
-                                               $pageRenderer->addJsFile($ss, $type, empty($GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.']['disableCompression']), $GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.']['forceOnTop'] ? TRUE : FALSE, $GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.']['allWrap'], $GLOBALS['TSFE']->pSetup['includeJS.'][$key . '.']['excludeFromConcatenation'] ? TRUE : FALSE);
+                                               $pageRenderer->addJsFile(
+                                                       $ss,
+                                                       $type,
+                                                       empty($jsConfig['disableCompression']),
+                                                       $jsConfig['forceOnTop'] ? TRUE : FALSE,
+                                                       $jsConfig['allWrap'],
+                                                       $jsConfig['excludeFromConcatenation'] ? TRUE : FALSE,
+                                                       $jsConfig['allWrap.']['splitChar']
+                                               );
+                                               unset($jsConfig);
                                        }
                                }
                        }
@@ -643,11 +688,21 @@ class PageGenerator {
                                        }
                                        $ss = $GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.']['external'] ? $JSfile : $GLOBALS['TSFE']->tmpl->getFileName($JSfile);
                                        if ($ss) {
-                                               $type = $GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.']['type'];
+                                               $jsConfig = &$GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.'];
+                                               $type = $jsConfig['type'];
                                                if (!$type) {
                                                        $type = 'text/javascript';
                                                }
-                                               $pageRenderer->addJsFooterFile($ss, $type, empty($GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.']['disableCompression']), $GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.']['forceOnTop'] ? TRUE : FALSE, $GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.']['allWrap'], $GLOBALS['TSFE']->pSetup['includeJSFooter.'][$key . '.']['excludeFromConcatenation'] ? TRUE : FALSE);
+                                               $pageRenderer->addJsFooterFile(
+                                                       $ss,
+                                                       $type,
+                                                       empty($jsConfig['disableCompression']),
+                                                       $jsConfig['forceOnTop'] ? TRUE : FALSE,
+                                                       $jsConfig['allWrap'],
+                                                       $jsConfig['excludeFromConcatenation'] ? TRUE : FALSE,
+                                                       $jsConfig['allWrap.']['splitChar']
+                                               );
+                                               unset($jsConfig);
                                        }
                                }
                        }