[BUGFIX] Supply and use getters for ModuleTemplate in TaskCenter 68/44068/3
authorMathias Schreiber <mathias.schreiber@wmdb.de>
Wed, 14 Oct 2015 21:41:56 +0000 (23:41 +0200)
committerMorton Jonuschat <m.jonuschat@mojocode.de>
Fri, 16 Oct 2015 08:11:55 +0000 (10:11 +0200)
TaskCenter related Modules and Controllers still used DocumentTemplate
methods.
These have now been fixed

Resolves: #70729
Releases: master
Change-Id: I1bfef313f747e896833e0172ec8ead8bc73e380b
Reviewed-on: http://review.typo3.org/44068
Reviewed-by: Michael Oehlhof <typo3@oehlhof.de>
Tested-by: Michael Oehlhof <typo3@oehlhof.de>
Reviewed-by: Daniel Goerz <ervaude@gmail.com>
Tested-by: Daniel Goerz <ervaude@gmail.com>
Reviewed-by: Morton Jonuschat <m.jonuschat@mojocode.de>
Tested-by: Morton Jonuschat <m.jonuschat@mojocode.de>
typo3/sysext/core/Classes/Database/QueryView.php
typo3/sysext/lowlevel/Classes/View/DatabaseIntegrityView.php
typo3/sysext/recordlist/Classes/RecordList.php
typo3/sysext/recordlist/Classes/RecordList/DatabaseRecordList.php
typo3/sysext/sys_action/Classes/ActionTask.php
typo3/sysext/taskcenter/Classes/Controller/TaskModuleController.php

index 38cb6a0..e6d0f37 100644 (file)
@@ -330,11 +330,11 @@ class QueryView
         }
         $msg = $this->procesStoreControl();
         if (!$GLOBALS['BE_USER']->userTS['mod.']['dbint.']['disableStoreControl']) {
-            $output .= $GLOBALS['SOBE']->doc->section('Load/Save Query', $this->makeStoreControl(), 0, 1);
+            $output .= $GLOBALS['SOBE']->getModuleTemplate()->section('Load/Save Query', $this->makeStoreControl(), 0, 1);
             if ($msg) {
                 $output .= '<br />' . $msg;
             }
-            $output .= $GLOBALS['SOBE']->doc->spacer(20);
+            $output .= $GLOBALS['SOBE']->getModuleTemplate()->spacer(20);
         }
         // Query Maker:
         $qGen = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Database\QueryGenerator::class);
@@ -343,7 +343,7 @@ class QueryView
             $qGen->setFormName($this->formName);
         }
         $tmpCode = $qGen->makeSelectorTable($GLOBALS['SOBE']->MOD_SETTINGS);
-        $output .= '<div id="query"></div>' . $GLOBALS['SOBE']->doc->section('Make query', $tmpCode, 0, 1);
+        $output .= '<div id="query"></div>' . $GLOBALS['SOBE']->getModuleTemplate()->section('Make query', $tmpCode, 0, 1);
         $mQ = $GLOBALS['SOBE']->MOD_SETTINGS['search_query_makeQuery'];
         // Make form elements:
         if ($qGen->table && is_array($GLOBALS['TCA'][$qGen->table])) {
@@ -362,16 +362,16 @@ class QueryView
                         }
                 }
                 if (!$GLOBALS['BE_USER']->userTS['mod.']['dbint.']['disableShowSQLQuery']) {
-                    $output .= $GLOBALS['SOBE']->doc->section('SQL query', $this->tableWrap(htmlspecialchars($qExplain)), 0, 1);
+                    $output .= $GLOBALS['SOBE']->getModuleTemplate()->section('SQL query', $this->tableWrap(htmlspecialchars($qExplain)), 0, 1);
                 }
                 $res = @$GLOBALS['TYPO3_DB']->sql_query($qExplain);
                 if ($GLOBALS['TYPO3_DB']->sql_error()) {
                     $out = '<BR><strong>Error:</strong><BR><font color="red"><strong>' . $GLOBALS['TYPO3_DB']->sql_error() . '</strong></font>';
-                    $output .= $GLOBALS['SOBE']->doc->section('SQL error', $out, 0, 1);
+                    $output .= $GLOBALS['SOBE']->getModuleTemplate()->section('SQL error', $out, 0, 1);
                 } else {
                     $cPR = $this->getQueryResultCode($mQ, $res, $qGen->table);
                     $GLOBALS['TYPO3_DB']->sql_free_result($res);
-                    $output .= $GLOBALS['SOBE']->doc->section($cPR['header'], $cPR['content'], 0, 1);
+                    $output .= $GLOBALS['SOBE']->getModuleTemplate()->section($cPR['header'], $cPR['content'], 0, 1);
                 }
             }
         }
@@ -427,7 +427,7 @@ class QueryView
                     $rowArr[] = $this->csvValues($row, ',', '"', $GLOBALS['TCA'][$table], $table);
                 }
                 if (!empty($rowArr)) {
-                    $out .= '<textarea name="whatever" rows="20" wrap="off"' . $GLOBALS['SOBE']->doc->formWidth($this->formW) . ' class="text-monospace">' . htmlspecialchars(implode(LF, $rowArr)) . '</textarea>';
+                    $out .= '<textarea name="whatever" rows="20" wrap="off"' . $GLOBALS['SOBE']->getModuleTemplate()->formWidth($this->formW) . ' class="text-monospace">' . htmlspecialchars(implode(LF, $rowArr)) . '</textarea>';
                     if (!$this->noDownloadB) {
                         $out .= '<br><input class="btn btn-default" type="submit" name="download_file" value="Click to download file" onClick="window.location.href=\'' . $this->downloadScript . '\';">';
                     }
index 68c2a23..b1ef936 100644 (file)
@@ -480,4 +480,16 @@ class DatabaseIntegrityView extends BaseScriptClass
             'group_db' => $admin->testDBRefs($admin->checkGroupDBRefs)
         ));
     }
+
+    /**
+     * Returns the ModuleTemplate container
+     *
+     * @return ModuleTemplate
+     */
+    public function getModuleTemplate()
+    {
+        return $this->moduleTemplate;
+    }
+
+
 }
index 70c204c..5a19a8d 100644 (file)
@@ -20,6 +20,7 @@ use TYPO3\CMS\Backend\Clipboard\Clipboard;
 use TYPO3\CMS\Backend\Module\AbstractModule;
 use TYPO3\CMS\Backend\Template\Components\ButtonBar;
 use TYPO3\CMS\Backend\Template\DocumentTemplate;
+use TYPO3\CMS\Backend\Template\ModuleTemplate;
 use TYPO3\CMS\Backend\Utility\BackendUtility;
 use TYPO3\CMS\Core\Authentication\BackendUserAuthentication;
 use TYPO3\CMS\Core\DataHandling\DataHandler;
@@ -608,6 +609,14 @@ class RecordList extends AbstractModule
     }
 
     /**
+     * @return ModuleTemplate
+     */
+    public function getModuleTemplate()
+    {
+        return $this->moduleTemplate;
+    }
+
+    /**
      * @return BackendUserAuthentication
      */
     protected function getBackendUserAuthentication()
index 83d5897..0ecff69 100644 (file)
@@ -892,7 +892,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList
         $iconImg = '<span title="' . $altText . '" ' . $additionalStyle . '>'
             . $this->iconFactory->getIconForRecord($table, $row, Icon::SIZE_SMALL)->render()
             . '</span>';
-        $theIcon = $this->clickMenuEnabled ? $this->getModule()->doc->wrapClickMenuOnIcon($iconImg, $table, $row['uid']) : $iconImg;
+        $theIcon = $this->clickMenuEnabled ? $this->getModule()->getModuleTemplate()->wrapClickMenuOnIcon($iconImg, $table, $row['uid']) : $iconImg;
         // Preparing and getting the data-array
         $theData = array();
         $localizationMarkerClass = '';
@@ -1477,7 +1477,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList
                     // Up
                     $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . $this->currentTable['prev'][$row['uid']];
                     $moveUpAction = '<a class="btn btn-default" href="#" onclick="'
-                        . htmlspecialchars('return jumpToUrl(' . $module->doc->issueCommand($params, -1) . ');')
+                        . htmlspecialchars('return jumpToUrl(' . $module->getModuleTemplate()->issueCommand($params, -1) . ');')
                         . '" title="' . $this->getLanguageService()->getLL('moveUp', true) . '">'
                         . $this->iconFactory->getIcon('actions-move-up', Icon::SIZE_SMALL)->render() . '</a>';
                 } else {
@@ -1489,7 +1489,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList
                     // Down
                     $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . $this->currentTable['next'][$row['uid']];
                     $moveDownAction = '<a class="btn btn-default" href="#" onclick="'
-                        . htmlspecialchars('return jumpToUrl(' . $module->doc->issueCommand($params, -1) . ');')
+                        . htmlspecialchars('return jumpToUrl(' . $module->getModuleTemplate()->issueCommand($params, -1) . ');')
                         . '" title="' . $this->getLanguageService()->getLL('moveDown', true) . '">'
                         . $this->iconFactory->getIcon('actions-move-down', Icon::SIZE_SMALL)->render() . '</a>';
                 } else {
@@ -1571,7 +1571,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList
                 if ($this->calcPerms & Permission::PAGE_NEW) {
                     $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . -$this->id;
                     $moveLeftAction = '<a class="btn btn-default" href="#" onclick="'
-                        . htmlspecialchars('return jumpToUrl(' . $module->doc->issueCommand($params, -1) . ');')
+                        . htmlspecialchars('return jumpToUrl(' . $module->getModuleTemplate()->issueCommand($params, -1) . ');')
                         . '" title="' . $this->getLanguageService()->getLL('prevLevel', true) . '">'
                         . $this->iconFactory->getIcon('actions-move-left', Icon::SIZE_SMALL)->render() . '</a>';
                     $this->addActionToCellGroup($cells, $moveLeftAction, 'moveLeft');
@@ -1582,7 +1582,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList
                     if ($localCalcPerms & Permission::PAGE_NEW) {
                         $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . $this->currentTable['prevUid'][$row['uid']];
                         $moveRightAction = '<a class="btn btn-default" href="#" onclick="'
-                            . htmlspecialchars('return jumpToUrl(' . $module->doc->issueCommand($params, -1) . ');')
+                            . htmlspecialchars('return jumpToUrl(' . $module->getModuleTemplate()->issueCommand($params, -1) . ');')
                             . '" title="' . $this->getLanguageService()->getLL('nextLevel', true) . '">'
                             . $this->iconFactory->getIcon('actions-move-right', Icon::SIZE_SMALL)->render() . '</a>';
                     } else {
@@ -1814,7 +1814,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList
             foreach ($this->pageOverlays as $lUid_OnPage => $lsysRec) {
                 if ($this->isEditable($table) && !isset($translations['translations'][$lUid_OnPage]) && $this->getBackendUserAuthentication()->checkLanguageAccess($lUid_OnPage)) {
                     $url = $this->listURL();
-                    $href = $this->getModule()->doc->issueCommand(
+                    $href = $this->getModule()->getModuleTemplate()->issueCommand(
                         '&cmd[' . $table . '][' . $row['uid'] . '][localize]=' . $lUid_OnPage,
                         $url . '&justLocalized=' . rawurlencode($table . ':' . $row['uid'] . ':' . $lUid_OnPage)
                     );
index 187c618..031cc41 100644 (file)
@@ -402,7 +402,7 @@ class ActionTask implements \TYPO3\CMS\Taskcenter\TaskInterface
         $this->getDatabaseConnection()->sql_free_result($res);
         // If any records found
         if (!empty($userList)) {
-            $content .= '<br />' . $this->taskObject->doc->section($this->getLanguageService()->getLL('action_t1_listOfUsers'), implode('<br />', $userList));
+            $content .= '<br />' . $this->taskObject->getModuleTemplate()->section($this->getLanguageService()->getLL('action_t1_listOfUsers'), implode('<br />', $userList));
         }
         return $content;
     }
@@ -771,7 +771,7 @@ class ActionTask implements \TYPO3\CMS\Taskcenter\TaskInterface
                         . $this->getLanguageService()->getLL(($queryIsEmpty ? 'action_createQuery'
                         : 'action_editQuery')) . '</a><br /><br />';
                 }
-                $content .= $this->taskObject->doc->section($this->getLanguageService()->getLL('action_t2_result'), $actionContent, 0, 1);
+                $content .= $this->taskObject->getModuleTemplate()->section($this->getLanguageService()->getLL('action_t2_result'), $actionContent, 0, 1);
             } else {
                 // Query is not configured
                 $flashMessage = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Messaging\FlashMessage::class, $this->getLanguageService()->getLL('action_notReady', true), $this->getLanguageService()->getLL('action_error'), \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
@@ -829,7 +829,9 @@ class ActionTask implements \TYPO3\CMS\Taskcenter\TaskInterface
             // Render the list of tables:
             $dblist->generateList();
             // Add JavaScript functions to the page:
-            $this->taskObject->doc->JScode = $this->taskObject->doc->wrapScriptTags('
+            $this->taskObject->getModuleTemplate()->addJavaScriptCode(
+                'ActionTaskInlineJavascript',
+                '
 
                                function jumpExt(URL,anchor) {
                                        var anc = anchor?anchor:"";
@@ -876,9 +878,10 @@ class ActionTask implements \TYPO3\CMS\Taskcenter\TaskInterface
                                T3_THIS_LOCATION = ' . GeneralUtility::quoteJSvalue(rawurlencode(GeneralUtility::getIndpEnv('REQUEST_URI'))) . ';
 
                                if (top.fsMod) top.fsMod.recentIds["web"] = ' . (int)$this->id . ';
-                       ');
+                       '
+            );
             // Setting up the context sensitive menu:
-            $this->taskObject->doc->getContextMenuCode();
+            $this->taskObject->getModuleTemplate()->getPageRenderer()->loadRequireJsModule('TYPO3/CMS/Backend/ClickMenu');
             // Begin to compile the whole page
             $content .= '<form action="' . htmlspecialchars($dblist->listURL()) . '" method="post" name="dblistForm">' . $dblist->HTMLcode . '<input type="hidden" name="cmd_table" /><input type="hidden" name="cmd" />
                                                </form>';
index e7edbb3..d3aa608 100644 (file)
@@ -18,6 +18,7 @@ use Psr\Http\Message\ResponseInterface;
 use Psr\Http\Message\ServerRequestInterface;
 use TYPO3\CMS\Backend\Module\BaseScriptClass;
 use TYPO3\CMS\Backend\Template\Components\ButtonBar;
+use TYPO3\CMS\Backend\Template\DocumentTemplate;
 use TYPO3\CMS\Backend\Template\ModuleTemplate;
 use TYPO3\CMS\Backend\Utility\BackendUtility;
 use TYPO3\CMS\Core\Imaging\Icon;
@@ -532,4 +533,14 @@ class TaskModuleController extends BaseScriptClass
     {
         return $GLOBALS['LANG'];
     }
+
+    /**
+     * @return ModuleTemplate
+     */
+    public function getModuleTemplate()
+    {
+        return $this->moduleTemplate;
+    }
+
+
 }