[BUGFIX] Streamline iframe namings for new backend 55/50255/7
authorBenni Mack <benni@typo3.org>
Tue, 18 Oct 2016 08:57:29 +0000 (10:57 +0200)
committerWouter Wolters <typo3@wouterwolters.nl>
Tue, 18 Oct 2016 11:31:12 +0000 (13:31 +0200)
The name of the iframe is now available via top.list_frame
and top.nav_frame instead of top.content.list_frame and
top.content.nav_frame.

All tests are adapted as well.

Resolves: #78323
Releases: master
Change-Id: I6cfdafec410e45bd97cee7849fa47c1ecab814b4
Reviewed-on: https://review.typo3.org/50255
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
30 files changed:
typo3/sysext/backend/Classes/ClickMenu/ClickMenu.php
typo3/sysext/backend/Classes/Controller/ClickMenuController.php
typo3/sysext/backend/Classes/Utility/BackendUtility.php
typo3/sysext/backend/Resources/Private/Templates/Backend/Main.html
typo3/sysext/backend/Resources/Private/Templates/RecordHistory/Main.html
typo3/sysext/backend/Resources/Public/JavaScript/ClickMenu.js
typo3/sysext/backend/Resources/Public/JavaScript/backend.js
typo3/sysext/core/Tests/Acceptance/Backend/BackendUser/ListUserCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Extensionmanager/InstalledExtensionsCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Formhandler/CategoryTreeCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Formhandler/ElementsBasicCest.php
typo3/sysext/core/Tests/Acceptance/Backend/General/ModuleMenuCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Page/AddPageInPageModuleCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Page/PageModuleCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Scheduler/TasksCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Topbar/BookmarkCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Topbar/FlushCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Topbar/HelpCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Topbar/LogoCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Topbar/SearchCest.php
typo3/sysext/core/Tests/Acceptance/Backend/Topbar/UsernameOnAvatarCest.php
typo3/sysext/filelist/Classes/FileList.php
typo3/sysext/filelist/Resources/Public/JavaScript/FileDelete.js
typo3/sysext/filelist/Resources/Public/JavaScript/FileList.js
typo3/sysext/frontend/Classes/View/AdminPanelView.php
typo3/sysext/opendocs/Classes/Backend/ToolbarItems/OpendocsToolbarItem.php
typo3/sysext/recordlist/Classes/RecordList.php
typo3/sysext/sys_action/Classes/ActionTask.php
typo3/sysext/sys_action/Classes/Backend/ToolbarItems/ActionToolbarItem.php
typo3/sysext/workspaces/Classes/Backend/ToolbarItems/WorkspaceSelectorToolbarItem.php

index 6cd96c2..0134fa6 100644 (file)
@@ -483,8 +483,8 @@ class ClickMenu
      */
     public function urlRefForCM($url, $retUrl = '', $hideCM = true, $overrideLoc = '')
     {
-        $loc = 'top.content.list_frame';
-        return ($overrideLoc ? 'var docRef=' . $overrideLoc : 'var docRef=(top.content.list_frame)?top.content.list_frame:' . $loc)
+        $loc = 'top.list_frame';
+        return ($overrideLoc ? 'var docRef=' . $overrideLoc : 'var docRef=(top.list_frame)?top.list_frame:' . $loc)
             . '; docRef.location.href=' . GeneralUtility::quoteJSvalue($url) . ($retUrl ? '+' . GeneralUtility::quoteJSvalue('&' . $retUrl . '=') . '+top.rawurlencode('
             . $this->frameLocation('docRef.document') . '.pathname+' . $this->frameLocation('docRef.document') . '.search)' : '')
             . ';';
@@ -531,7 +531,7 @@ class ClickMenu
      */
     public function DB_paste($table, $uid, $type, $elInfo)
     {
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $jsCode = $loc . '.location.href='
             . GeneralUtility::quoteJSvalue($this->clipObj->pasteUrl($table, $uid, 0) . '&redirect=')
             . ' + top.rawurlencode(' . $this->frameLocation($loc . '.document') . '.pathname+'
@@ -754,7 +754,7 @@ class ClickMenu
         // If another module was specified, replace the default Page module with the new one
         $newPageModule = trim($this->backendUser->getTSConfigVal('options.overridePageModule'));
         $pageModule = BackendUtility::isModuleSetInTBE_MODULES($newPageModule) ? $newPageModule : 'web_layout';
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $iconName = 'actions-open';
         if ($table === 'pages') {
             $iconName = 'actions-page-open';
@@ -782,7 +782,7 @@ class ClickMenu
      */
     public function DB_new($table, $uid)
     {
-        $frame = 'top.content.list_frame';
+        $frame = 'top.list_frame';
         $location = $this->frameLocation($frame . '.document');
         $module = $this->listFrame
             ? GeneralUtility::quoteJSvalue(BackendUtility::getModuleUrl('record_edit', ['edit[' . $table . '][-' . $uid . ']' => 'new']) . '&returnUrl=') . '+top.rawurlencode(' . $location . '.pathname+' . $location . '.search)'
@@ -803,7 +803,7 @@ class ClickMenu
      */
     public function DB_delete($table, $uid, $elInfo)
     {
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $jsCode = $loc . '.location.href='
             . GeneralUtility::quoteJSvalue(BackendUtility::getModuleUrl('tce_db') . '&redirect=')
             . '+top.rawurlencode(' . $this->frameLocation($loc . '.document') . '.pathname+'
@@ -872,7 +872,7 @@ class ClickMenu
         return $this->linkItem(
             $this->label('tempMountPoint'),
             $this->iconFactory->getIcon('actions-pagetree-mountroot', Icon::SIZE_SMALL)->render(),
-            'if (top.content.nav_frame) {
+            'if (top.nav_frame) {
                                var node = top.TYPO3.Backend.NavigationContainer.PageTree.getSelected();
                                if (node === null) {
                                        return false;
@@ -917,7 +917,7 @@ class ClickMenu
     public function DB_changeFlag($table, $rec, $flagField, $title)
     {
         $uid = $rec['_ORIG_uid'] ?: $rec['uid'];
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $editOnClick = 'if(' . $loc . '){' . $loc . '.location.href=' .
             GeneralUtility::quoteJSvalue(BackendUtility::getModuleUrl('tce_db') . '&redirect=') . '+top.rawurlencode(' .
             $this->frameLocation($loc . '.document') . '.pathname+' . $this->frameLocation(($loc . '.document')) . '.search)+' .
@@ -1086,7 +1086,7 @@ class ClickMenu
      */
     public function FILE_launch($path, $moduleName, $type, $iconName, $noReturnUrl = false)
     {
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $scriptUrl = BackendUtility::getModuleUrl($moduleName);
 
         $editOnClick = 'if(' . $loc . '){' . $loc . '.location.href=' . GeneralUtility::quoteJSvalue($scriptUrl . '&target=' . rawurlencode($path)) . ($noReturnUrl ? '' : '+\'&returnUrl=\'+top.rawurlencode(' . $this->frameLocation($loc . '.document') . '.pathname+' . $this->frameLocation($loc . '.document') . '.search)') . ';}';
@@ -1134,7 +1134,7 @@ class ClickMenu
      */
     public function FILE_delete($path)
     {
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $jsCode = $loc . '.location.href='
             . GeneralUtility::quoteJSvalue(BackendUtility::getModuleUrl('tce_file') . '&redirect=')
             . '+top.rawurlencode(' . $this->frameLocation(($loc . '.document'))
@@ -1179,7 +1179,7 @@ class ClickMenu
      */
     public function FILE_paste($path, $target, $elInfo)
     {
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
 
         $jsCode = $loc . '.location.href='
             . GeneralUtility::quoteJSvalue($this->clipObj->pasteUrl('_FILE', $path, 0) . '&redirect=')
@@ -1288,7 +1288,7 @@ class ClickMenu
     public function dragDrop_copymovepage($srcUid, $dstUid, $action, $into)
     {
         $negativeSign = $into === 'into' ? '' : '-';
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $editOnClick = 'if(' . $loc . '){' . $loc . '.document.location=' .
             GeneralUtility::quoteJSvalue(BackendUtility::getModuleUrl('tce_db') . '&redirect=') . '+top.rawurlencode(' .
             $this->frameLocation(($loc . '.document')) . '.pathname+' . $this->frameLocation(($loc . '.document')) . '.search)+' .
@@ -1314,7 +1314,7 @@ class ClickMenu
      */
     public function dragDrop_copymovefolder($srcPath, $dstPath, $action)
     {
-        $loc = 'top.content.list_frame';
+        $loc = 'top.list_frame';
         $editOnClick = 'if(' . $loc . '){' . $loc . '.document.location=' .
             GeneralUtility::quoteJSvalue(BackendUtility::getModuleUrl('tce_file') . '&redirect=') . '+top.rawurlencode(' .
             $this->frameLocation(($loc . '.document')) . '.pathname+' . $this->frameLocation(($loc . '.document')) . '.search)+' .
index 24428af..6e2ec02 100644 (file)
@@ -64,9 +64,10 @@ class ClickMenuController
         $clickMenu->extClassArray = $GLOBALS['TBE_MODULES_EXT']['xMOD_alt_clickmenu']['extendCMclasses'];
 
         $content = $clickMenu->init();
-        if (is_array($content)) {
-            $response->getBody()->write(json_encode($content));
+        if (!is_array($content)) {
+            $content = [];
         }
+        $response->getBody()->write(json_encode($content));
         return $response;
     }
 
index 2babb48..035955a 100644 (file)
@@ -3477,8 +3477,8 @@ class BackendUtility
                         break;
                     case 'updateFolderTree':
                         $signals[] = '
-                                                               if (top && top.TYPO3.Backend && top.TYPO3.Backend.NavigationIframe) {
-                                                                       top.TYPO3.Backend.NavigationIframe.refresh();
+                                                               if (top && top.nav_frame && top.nav_frame.location) {
+                                                                       top.nav_frame.location.reload(true);
                                                                }';
                         break;
                     case 'updateModuleMenu':
index a24ff78..d60fde8 100644 (file)
        <div class="scaffold-content t3js-scaffold-content">
                <div class="scaffold-content-navigation t3js-scaffold-content-navigation">
                        <div class="scaffold-content-navigation-component" data-component="typo3-navigationIframe">
-                               <iframe src="about:blank" id="typo3-navigationContainerIframe" class="scaffold-content-navigation-iframe t3js-scaffold-content-navigation-iframe"></iframe>
+                               <iframe name="nav_frame" src="about:blank" id="typo3-navigationContainerIframe" class="scaffold-content-navigation-iframe t3js-scaffold-content-navigation-iframe"></iframe>
                        </div>
                </div>
                <div class="scaffold-content-module t3js-scaffold-content-module">
-                       <iframe name="contentIframe" id="typo3-contentIframe" class="scaffold-content-module-iframe t3js-scaffold-content-module-iframe"></iframe>
+                       <iframe name="list_frame" id="typo3-contentIframe" class="scaffold-content-module-iframe t3js-scaffold-content-module-iframe"></iframe>
                </div>
                <div class="scaffold-content-overlay t3js-scaffold-content-overlay"></div>
        </div>
index bb77d4e..dbf24bd 100644 (file)
@@ -1,8 +1,8 @@
 <f:if condition="{reloadPageFrame}">
     <script type="text/javascript">
         /*<![CDATA[*/
-        if (top.content && top.content.nav_frame && top.content.nav_frame.refresh_nav) {
-            top.content.nav_frame.refresh_nav();
+        if (top.nav_frame && top.nav_frame.refresh_nav) {
+            top.nav_frame.refresh_nav();
         }
         /*]]>*/
     </script>
@@ -11,4 +11,4 @@
 <f:if condition="{lastSyslogId}">
     <f:render partial="RecordHistory/MultipleDiff" arguments="{_all}" />
 </f:if>
-<f:render partial="RecordHistory/History" arguments="{_all}" />
\ No newline at end of file
+<f:render partial="RecordHistory/History" arguments="{_all}" />
index b24ac4b..176f5f0 100644 (file)
@@ -103,7 +103,7 @@ define(['jquery'], function($) {
                        if (typeof response.items === "undefined") {
                                var res = parameters.match(/&reloadListFrame=(0|1|2)(&|$)/);
                                if (parseInt(res[1], 0)) {
-                                       top.content.list_frame.location.reload(true);
+                                       top.list_frame.location.reload(true);
                                }
                        } else {
                                ClickMenu.populateData(response.items, response.level);
index afbc5ca..333cbb0 100644 (file)
@@ -131,8 +131,8 @@ function loadEditId(id,addGetVars)  {       //
        top.fsMod.recentIds.web = id;
        top.fsMod.navFrameHighlightedID.web = "pages" + id + "_0";              // For highlighting
 
-       if (top.content && top.content.nav_frame && top.content.nav_frame.refresh_nav) {
-               top.content.nav_frame.refresh_nav();
+       if (top.nav_frame && top.nav_frame.refresh_nav) {
+               top.nav_frame.refresh_nav();
        }
        if (TYPO3.configuration.pageModule) {
                top.goToModule(TYPO3.configuration.pageModule, 0, addGetVars?addGetVars:"");
@@ -157,6 +157,26 @@ function getModuleUrl(inUrl)       {       //
 
 
 
+// Backwards-compatible layer for "old" ExtJS-based code
+// which was in use (top.content) before TYPO3 8.4. Now, the direct "top.nav_frame" and "top.list_frame"
+// calls do work directly.
+// @deprecated since TYPO3 v8, will be removed in TYPO3 v9, this functionality will be removed in TYPO3 v9.
+TYPO3.jQuery(document).on('ready', function() {
+       top.content = {
+               list_frame: top.list_frame,
+               nav_frame: top.nav_frame
+       };
+       // top.nav.refresh() is currently used by the clickmenu inline JS code, and can be removed afterwards
+       top.nav = {
+               refresh: function() {
+                       if (top.nav_frame && top.nav_frame.refresh_nav) {
+                               top.nav_frame.refresh_nav();
+                       } else if (top.TYPO3.Backend && top.TYPO3.Backend.NavigationContainer.PageTree) {
+                               top.TYPO3.Backend.NavigationContainer.PageTree.refreshTree();
+                       }
+               }
+       };
+});
 
        // Used by Frameset Modules
-var currentSubScript = "";
\ No newline at end of file
+var currentSubScript = "";
index 6100afd..2794d7d 100644 (file)
@@ -29,7 +29,7 @@ class ListUserCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
 
@@ -37,7 +37,7 @@ class ListUserCest
         $I->click('Backend users');
 
         // switch to content iframe
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
     }
 
     /**
index e89075a..97fad09 100644 (file)
@@ -28,12 +28,12 @@ class InstalledExtensionsCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
 
         $I->click('Extensions', '#menu');
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForElementVisible('#typo3-extension-list');
     }
 
@@ -80,7 +80,7 @@ class InstalledExtensionsCest
         $I->canSeeElement('.modulemenu-item-link');
         $I->cantSeeElement('#web_RecyclerRecycler');
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->fillField('Tx_Extensionmanager_extensionkey', 'recycler');
         $I->waitForElementVisible('//*[@id="typo3-extension-list"]/tbody/tr[@id="recycler"]');
         $I->click('a[data-original-title="Activate"]', '//*[@id="typo3-extension-list"]/tbody/tr[@id="recycler"]');
@@ -103,7 +103,7 @@ class InstalledExtensionsCest
         $I->switchToIFrame();
         $I->canSeeElement('#web_RecyclerRecycler');
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->fillField('Tx_Extensionmanager_extensionkey', 'recycler');
         $I->waitForElementVisible('//*[@id="typo3-extension-list"]/tbody/tr[@id="recycler"]');
         $I->click('a[data-original-title="Deactivate"]', '//*[@id="typo3-extension-list"]/tbody/tr[@id="recycler"]');
index 2c3e716..a096409 100644 (file)
@@ -28,7 +28,7 @@ class CategoryTreeCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
@@ -41,7 +41,7 @@ class CategoryTreeCest
         // A sub-element of web module is show
         $I->waitForElementVisible('#web .modulemenu-group-container .modulemenu-item');
         $I->click('#web_list');
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForElement('#recordlist-sys_category');
         $I->seeNumberOfElements('#recordlist-sys_category table > tbody > tr', [5, 100]);
     }
@@ -54,7 +54,7 @@ class CategoryTreeCest
         // A sub-element of web module is show
         $I->waitForElementVisible('#web .modulemenu-group-container .modulemenu-item');
         $I->click('#web_list');
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         // Select category with id 7
         $I->click('#recordlist-sys_category tr[data-uid="7"] a[data-original-title="Edit record"]');
         // Change title and level to root
index fc5752c..a47ccde 100644 (file)
@@ -33,13 +33,13 @@ class ElementsBasicCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
 
         $I->click('List');
         $pageTree->openPath(['styleguide TCA demo', 'elements basic']);
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
     }
 
     /**
index 63787e0..e64fc16 100644 (file)
@@ -28,7 +28,7 @@ class ModuleMenuCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
index 3f9edf2..823d18b 100644 (file)
@@ -25,7 +25,7 @@ class AddPageInPageModuleCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
@@ -54,7 +54,7 @@ class AddPageInPageModuleCest
         $I->click($contextMenuNew);
 
         // Switch to content frame
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
 
         // New page select position wizard
         $I->click('i[title="Insert the new page here"]');
index ddac382..2773b03 100644 (file)
@@ -26,7 +26,7 @@ class PageModuleCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
@@ -37,7 +37,7 @@ class PageModuleCest
     public function checkThatPageModuleHasAHeadline(Admin $I)
     {
         $I->click('Page');
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->canSee('Web>Page module', 'h4');
     }
 }
index 42104b6..bfb1434 100644 (file)
@@ -29,7 +29,7 @@ class TasksCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
 
@@ -37,7 +37,7 @@ class TasksCest
         $I->click('Scheduler', '#system_txschedulerM1');
 
         // switch to content iframe
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
     }
 
     /**
@@ -93,13 +93,13 @@ class TasksCest
         $I->click('//a[contains(@title, "Delete")]');
         $I->wantTo('Cancel the delete dialog');
         $modalDialog->clickButtonInDialog('Cancel');
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
 
         $I->wantTo('Still see and can click the Delete button as the deletion has been canceled');
         $I->click('//a[contains(@title, "Delete")]');
         $modalDialog->clickButtonInDialog('OK');
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->see('The task was successfully deleted.');
         $I->see('No tasks defined yet');
     }
index 518596d..57f51a1 100644 (file)
@@ -45,7 +45,7 @@ class BookmarkCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
@@ -73,7 +73,7 @@ class BookmarkCest
         // open the scheduler module as we would like to put it into the bookmark liste
         $I->click('Scheduler', '.scaffold-modulemenu');
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
 
         $I->click(self::$docHeaderBookmarkButtonSelector);
         // cancel the action to test the functionality
@@ -82,7 +82,7 @@ class BookmarkCest
         // check if the list is still empty
         $this->checkThatBookmarkListIsInitiallyEmpty($I);
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->click(self::$docHeaderBookmarkButtonSelector);
 
         $dialog->clickButtonInDialog('OK');
@@ -107,7 +107,7 @@ class BookmarkCest
     {
         $this->clickBookmarkDropdownToggleInTopbar($I);
         $I->click('Scheduled tasks', self::$topBarModuleSelector);
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->canSee('Scheduled tasks', 'h1');
     }
 
index b341994..a14106a 100644 (file)
@@ -36,7 +36,7 @@ class FlushCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
index f7709dd..1b8609a 100644 (file)
@@ -36,7 +36,7 @@ class HelpCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
@@ -61,7 +61,7 @@ class HelpCest
         $I->click(Topbar::$dropdownToggleSelector, self::$topBarModuleSelector);
         $I->canSee('Styleguide', self::$topBarModuleSelector);
         $I->click('Styleguide', self::$topBarModuleSelector);
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->see('TYPO3 CMS Backend Styleguide', 'h1');
     }
 }
index 7c55bc9..a393ee0 100644 (file)
@@ -28,7 +28,7 @@ class LogoCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
index d16cade..e89afa6 100644 (file)
@@ -36,7 +36,7 @@ class SearchCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
@@ -53,7 +53,7 @@ class SearchCest
         $I->canSee('Backend user', self::$topBarModuleSelector);
         $I->click('admin', self::$topBarModuleSelector);
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForElementVisible('#EditDocumentController');
         $I->canSee('Edit Backend user "admin" on root level');
     }
@@ -85,7 +85,7 @@ class SearchCest
         $I->canSee('fileadmin/ (auto-created)', self::$topBarModuleSelector);
         $I->click('.t3js-live-search-show-all', self::$topBarModuleSelector);
 
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForElementVisible('form[name="dblistForm"]');
         $I->canSee('fileadmin/ (auto-created)');
     }
index 21d64cf..7a106f1 100644 (file)
@@ -25,7 +25,7 @@ class UsernameOnAvatarCest
     {
         $I->useExistingSession();
         // Ensure main content frame is fully loaded, otherwise there are load-race-conditions
-        $I->switchToIFrame('contentIframe');
+        $I->switchToIFrame('list_frame');
         $I->waitForText('Web Content Management System');
         $I->switchToIFrame();
     }
index e5a49f9..0e6838c 100644 (file)
@@ -932,7 +932,7 @@ class FileList extends AbstractRecordList
         // Edit file content (if editable)
         if ($fileOrFolderObject instanceof File && $fileOrFolderObject->checkActionPermission('write') && GeneralUtility::inList($GLOBALS['TYPO3_CONF_VARS']['SYS']['textfile_ext'], $fileOrFolderObject->getExtension())) {
             $url = BackendUtility::getModuleUrl('file_edit', ['target' => $fullIdentifier]);
-            $editOnClick = 'top.content.list_frame.location.href=' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);return false;';
+            $editOnClick = 'top.list_frame.location.href=' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.list_frame.document.location.pathname+top.list_frame.document.location.search);return false;';
             $cells['edit'] = '<a href="#" class="btn btn-default" onclick="' . htmlspecialchars($editOnClick) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:cm.editcontent') . '">'
                 . $this->iconFactory->getIcon('actions-page-open', Icon::SIZE_SMALL)->render()
                 . '</a>';
@@ -954,14 +954,14 @@ class FileList extends AbstractRecordList
         // replace file
         if ($fileOrFolderObject instanceof File && $fileOrFolderObject->checkActionPermission('replace')) {
             $url = BackendUtility::getModuleUrl('file_replace', ['target' => $fullIdentifier, 'uid' => $fileOrFolderObject->getUid()]);
-            $replaceOnClick = 'top.content.list_frame.location.href = ' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);return false;';
+            $replaceOnClick = 'top.list_frame.location.href = ' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.list_frame.document.location.pathname+top.list_frame.document.location.search);return false;';
             $cells['replace'] = '<a href="#" class="btn btn-default" onclick="' . $replaceOnClick . '"  title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:cm.replace') . '">' . $this->iconFactory->getIcon('actions-edit-replace', Icon::SIZE_SMALL)->render() . '</a>';
         }
 
         // rename the file
         if ($fileOrFolderObject->checkActionPermission('rename')) {
             $url = BackendUtility::getModuleUrl('file_rename', ['target' => $fullIdentifier]);
-            $renameOnClick = 'top.content.list_frame.location.href = ' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);return false;';
+            $renameOnClick = 'top.list_frame.location.href = ' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.list_frame.document.location.pathname+top.list_frame.document.location.search);return false;';
             $cells['rename'] = '<a href="#" class="btn btn-default" onclick="' . htmlspecialchars($renameOnClick) . '"  title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:cm.rename') . '">' . $this->iconFactory->getIcon('actions-edit-rename', Icon::SIZE_SMALL)->render() . '</a>';
         } else {
             $cells['rename'] = $this->spaceIcon;
index 760bac5..c5139b4 100644 (file)
@@ -24,7 +24,7 @@ define(['jquery', 'TYPO3/CMS/Backend/Modal', 'TYPO3/CMS/Backend/Severity'], func
                if (redirectUrl) {
                        redirectUrl = top.rawurlencode(redirectUrl);
                } else {
-                       redirectUrl = top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);
+                       redirectUrl = top.rawurlencode(top.list_frame.document.location.pathname+top.list_frame.document.location.search);
                }
                var identifier = $anchorElement.data('identifier');
                var veriCode = $anchorElement.data('veriCode');
@@ -49,11 +49,11 @@ define(['jquery', 'TYPO3/CMS/Backend/Modal', 'TYPO3/CMS/Backend/Severity'], func
                                        Modal.dismiss();
                                } else if (e.target.name === 'yes') {
                                        Modal.dismiss();
-                                       top.content.list_frame.location.href = deleteUrl + '&redirect=' + redirectUrl;
+                                       top.list_frame.location.href = deleteUrl + '&redirect=' + redirectUrl;
                                }
                        });
                } else {
-                       top.content.list_frame.location.href = deleteUrl + '&redirect=' + redirectUrl;
+                       top.list_frame.location.href = deleteUrl + '&redirect=' + redirectUrl;
                }
        });
 
index 9bbc831..10eeaf8 100644 (file)
@@ -28,7 +28,7 @@ define(['jquery'], function($) {
                event.preventDefault();
 
                var url = $(this).attr('data-url');
-               top.content.list_frame.location.href=url;
+               top.list_frame.location.href=url;
        });
 
        $('a.btn.filelist-file-view').click(function(event) {
@@ -42,14 +42,14 @@ define(['jquery'], function($) {
                event.preventDefault();
 
                var url = $(this).attr('data-url');
-               top.content.list_frame.location.href=url;
+               top.list_frame.location.href=url;
        });
 
        $('a.btn.filelist-file-rename').click(function(event) {
                event.preventDefault();
 
                var url = $(this).attr('data-url');
-               top.content.list_frame.location.href=url;
+               top.list_frame.location.href=url;
        });
 
        $('a.btn.filelist-file-info').click(function(event) {
index f2383aa..e4812a3 100644 (file)
@@ -492,8 +492,8 @@ class AdminPanelView
                 $out .= $this->extGetItem('', '<a class="btn btn-default" href="#" onclick="' . htmlspecialchars(('
                                                if (parent.opener && parent.opener.top && parent.opener.top.TS) {
                                                        parent.opener.top.fsMod.recentIds["web"]=' . (int)$this->getTypoScriptFrontendController()->page['uid'] . ';
-                                                       if (parent.opener.top.content && parent.opener.top.content.nav_frame && parent.opener.top.content.nav_frame.refresh_nav) {
-                                                               parent.opener.top.content.nav_frame.refresh_nav();
+                                                       if (parent.opener.top && parent.opener.top.nav_frame && parent.opener.top.nav_frame.refresh_nav) {
+                                                               parent.opener.top.nav_frame.refresh_nav();
                                                        }
                                                        parent.opener.top.goToModule("' . $pageModule . '");
                                                        parent.opener.top.focus();
index 4a0e854..738cdb0 100644 (file)
@@ -180,7 +180,7 @@ class OpendocsToolbarItem implements ToolbarItemInterface
             $entry .= $icon;
             $entry .= '</div>';
             $entry .= '<div class="dropdown-table-column dropdown-table-title">';
-            $entry .= '<a class="dropdown-table-title-ellipsis" href="#" onclick="' . htmlspecialchars($onClickCode) . '" target="contentIframe">';
+            $entry .= '<a class="dropdown-table-title-ellipsis" href="#" onclick="' . htmlspecialchars($onClickCode) . '" target="list_frame">';
             $entry .= $label;
             $entry .= '</a>';
             $entry .= '</div>';
@@ -197,7 +197,7 @@ class OpendocsToolbarItem implements ToolbarItemInterface
             $entry .= $icon;
             $entry .= '</div>';
             $entry .= '<div class="dropdown-table-column dropdown-table-title">';
-            $entry .= '<a class="dropdown-table-title-ellipsis" href="#" onclick="' . htmlspecialchars($onClickCode) . '" target="contentIframe">';
+            $entry .= '<a class="dropdown-table-title-ellipsis" href="#" onclick="' . htmlspecialchars($onClickCode) . '" target="list_frame">';
             $entry .= $label;
             $entry .= '</a>';
             $entry .= '</div>';
index 31d2373..bba0d62 100644 (file)
@@ -426,8 +426,8 @@ class RecordList extends AbstractModule
                                        top.fsMod.recentIds["web"]=id;
                                        top.fsMod.navFrameHighlightedID["web"]="pages"+id+"_"+top.fsMod.currentBank;    // For highlighting
 
-                                       if (top.content && top.content.nav_frame && top.content.nav_frame.refresh_nav) {
-                                               top.content.nav_frame.refresh_nav();
+                                       if (top.nav_frame && top.nav_frame.refresh_nav) {
+                                               top.nav_frame.refresh_nav();
                                        }
                                }
                                ' . $this->moduleTemplate->redirectUrls($listUrl) . '
index fe2cbda..f6b3218 100644 (file)
@@ -952,8 +952,8 @@ class ActionTask implements \TYPO3\CMS\Taskcenter\TaskInterface
                                        top.fsMod.recentIds["web"]=id;
                                        top.fsMod.navFrameHighlightedID["web"]="pages"+id+"_"+top.fsMod.currentBank;    // For highlighting
 
-                                       if (top.content && top.content.nav_frame && top.content.nav_frame.refresh_nav) {
-                                               top.content.nav_frame.refresh_nav();
+                                       if (top.nav_frame && top.nav_frame.refresh_nav) {
+                                               top.nav_frame.refresh_nav();
                                        }
                                }
 
index b934fdf..7c96627 100644 (file)
@@ -81,7 +81,7 @@ class ActionToolbarItem implements ToolbarItemInterface
             $actionMenu[] = $linkConf[2];
             $actionMenu[] = '</div>';
             $actionMenu[] = '<div class="dropdown-table-column dropdown-table-title">';
-            $actionMenu[] = '<a class="t3js-topbar-link" href="' . htmlspecialchars($linkConf[1]) . '" target="contentIframe">';
+            $actionMenu[] = '<a class="t3js-topbar-link" href="' . htmlspecialchars($linkConf[1]) . '" target="list_frame">';
             $actionMenu[] = htmlspecialchars($linkConf[0]);
             $actionMenu[] = '</a>';
             $actionMenu[] = '</div>';
index 1e909a5..d41a5c4 100644 (file)
@@ -127,7 +127,7 @@ class WorkspaceSelectorToolbarItem implements ToolbarItemInterface
                             ' . $stateUncheckedIcon . '
                         </div>
                         <div class="dropdown-table-column">
-                            <a href="#" target="contentIframe" data-module="web_WorkspacesWorkspaces" class="t3js-workspaces-modulelink">
+                            <a href="#" target="list_frame" data-module="web_WorkspacesWorkspaces" class="t3js-workspaces-modulelink">
                                 ' . htmlspecialchars($languageService->getLL('bookmark_workspace')) . '
                             </a>
                         </div>