Revert "[FEATURE] Add fluid debug information to admin panel" 94/50094/2
authorAnja Leichsenring <aleichsenring@ab-softlab.de>
Thu, 6 Oct 2016 16:34:49 +0000 (18:34 +0200)
committerAnja Leichsenring <aleichsenring@ab-softlab.de>
Thu, 6 Oct 2016 16:35:03 +0000 (18:35 +0200)
This reverts commit f3df15974576831b119a82f8f3151e0a6cd9c276.

Revert, as the set checkbox will make the debug information available all over the backend. We can not leave it like this.

Change-Id: I3e964a95444f8d6fd0f71644c094616ac7c63755
Reviewed-on: https://review.typo3.org/50094
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
typo3/sysext/core/Documentation/Changelog/master/Feature-76085-AddFluidDebugInformationToAdminPanel.rst [deleted file]
typo3/sysext/fluid/Classes/Core/ViewHelper/ViewHelperResolver.php
typo3/sysext/fluid/Classes/View/TemplatePaths.php
typo3/sysext/fluid/Classes/ViewHelpers/Debug/RenderViewHelper.php [deleted file]
typo3/sysext/frontend/Classes/View/AdminPanelView.php
typo3/sysext/lang/locallang_tsfe.xlf

diff --git a/typo3/sysext/core/Documentation/Changelog/master/Feature-76085-AddFluidDebugInformationToAdminPanel.rst b/typo3/sysext/core/Documentation/Changelog/master/Feature-76085-AddFluidDebugInformationToAdminPanel.rst
deleted file mode 100644 (file)
index a8eeb0e..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-============================================================
-Feature: #76085 - Add fluid debug information to admin panel
-============================================================
-
-Description
-===========
-
-A new setting in the admin panel (Preview > Show fluid debug output) enable fluid debug output.
-If the checkbox is enabled, the path to the template file of a partial and the name of a section will be shown in the
-frontend directly above the markup.
-With this feature an integrator can easily find the correct template and section.
-
-.. note::
-
-      This feature is only available in development context.
-      Set TYPO3_CONTEXT to "Development" to enable the checkbox in the admin panel.
-
-Impact
-======
-
-Activating this option can break the output in frontend or result in unexpected behavior.
index 32e69d5..b2b854e 100644 (file)
@@ -14,7 +14,6 @@ namespace TYPO3\CMS\Fluid\Core\ViewHelper;
  * The TYPO3 project - inspiring people to share!
  */
 
-use TYPO3\CMS\Core\Authentication\BackendUserAuthentication;
 use TYPO3\CMS\Core\Utility\GeneralUtility;
 use TYPO3\CMS\Extbase\Object\ObjectManager;
 use TYPO3\CMS\Extbase\Object\ObjectManagerInterface;
@@ -54,20 +53,6 @@ class ViewHelperResolver extends \TYPO3Fluid\Fluid\Core\ViewHelper\ViewHelperRes
     ];
 
     /**
-     * ViewHelperResolver constructor
-     *
-     * Responsible for adding a third namespace in case this is requested from
-     * the admin panel - causes overlaying of `f:` with `f:debug`.
-     */
-    public function __construct()
-    {
-        $configuration = $this->getBackendUser()->uc['TSFE_adminConfig'];
-        if (isset($configuration['preview_showFluidDebug']) && $configuration['preview_showFluidDebug']) {
-            $this->namespaces['f'][] = 'TYPO3\\CMS\\Fluid\\ViewHelpers\\Debug';
-        }
-    }
-
-    /**
      * @param string $viewHelperClassName
      * @return \TYPO3Fluid\Fluid\Core\ViewHelper\ViewHelperInterface
      */
@@ -83,12 +68,4 @@ class ViewHelperResolver extends \TYPO3Fluid\Fluid\Core\ViewHelper\ViewHelperRes
     {
         return GeneralUtility::makeInstance(ObjectManager::class);
     }
-
-    /**
-     * @return BackendUserAuthentication
-     */
-    protected function getBackendUser()
-    {
-        return $GLOBALS['BE_USER'];
-    }
 }
index f4b2efb..ee0fa28 100644 (file)
@@ -208,16 +208,4 @@ class TemplatePaths extends \TYPO3Fluid\Fluid\View\TemplatePaths
             ArrayUtility::sortArrayWithIntegerKeys($partialRootPaths)
         );
     }
-
-    /**
-     * Public API for currently protected method. Can be dropped when switching to
-     * Fluid 1.1.0 or above.
-     *
-     * @param string $partialName
-     * @return string
-     */
-    public function getPartialPathAndFilename($partialName)
-    {
-        return parent::getPartialPathAndFilename($partialName);
-    }
 }
diff --git a/typo3/sysext/fluid/Classes/ViewHelpers/Debug/RenderViewHelper.php b/typo3/sysext/fluid/Classes/ViewHelpers/Debug/RenderViewHelper.php
deleted file mode 100644 (file)
index 035f37e..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-<?php
-namespace TYPO3\CMS\Fluid\ViewHelpers\Debug;
-
-/*
- * This file is part of the TYPO3 CMS project.
- *
- * It is free software; you can redistribute it and/or modify it under
- * the terms of the GNU General Public License, either version 2
- * of the License, or any later version.
- *
- * For the full copyright and license information, please read the
- * LICENSE.txt file that was distributed with this source code.
- *
- * The TYPO3 project - inspiring people to share!
- */
-
-use TYPO3\CMS\Core\Utility\PathUtility;
-use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper;
-
-/**
- * Debuggable version of f:render - performs the same
- * rendering operation but wraps the output with HTML
- * that can be inspected with the admin panel in FE.
- *
- * Replaces `f:render` when the admin panel decides
- * (see ViewHelperResolver class). Also possible to use
- * explicitly by using `f:debug.render` instead of the
- * normal `f:render` statement.
- *
- * @api
- */
-class RenderViewHelper extends AbstractViewHelper
-{
-
-    /**
-     * @var bool
-     */
-    protected $escapeOutput = false;
-
-    /**
-     * @return void
-     */
-    public function initializeArguments()
-    {
-        parent::initializeArguments();
-        $this->registerArgument('section', 'string', 'Section to render - combine with partial to render section in partial', false, null);
-        $this->registerArgument('partial', 'string', 'Partial to render, with or without section', false, null);
-        $this->registerArgument('arguments', 'array', 'Array of variables to be transferred. Use {_all} for all variables', false, []);
-        $this->registerArgument('optional', 'boolean', 'If TRUE, considers the *section* optional. Partial never is.', false, false);
-        $this->registerArgument('default', 'mixed', 'Value (usually string) to be displayed if the section or partial does not exist', false, null);
-        $this->registerArgument('contentAs', 'string', 'If used, renders the child content and adds it as a template variable with this name for use in the partial/section', false, null);
-    }
-
-    /**
-     * Renders the content.
-     *
-     * @return string
-     * @api
-     */
-    public function render()
-    {
-        $section = $this->arguments['section'];
-        $partial = $this->arguments['partial'];
-        $arguments = (array) $this->arguments['arguments'];
-        $optional = (boolean) $this->arguments['optional'];
-        $contentAs = $this->arguments['contentAs'];
-        $tagContent = $this->renderChildren();
-
-        if ($contentAs !== null) {
-            $arguments[$contentAs] = $tagContent;
-        }
-
-        $content = '';
-        if ($partial !== null) {
-            $content = $this->viewHelperVariableContainer->getView()->renderPartial($partial, $section, $arguments, $optional);
-        } elseif ($section !== null) {
-            $content = $this->viewHelperVariableContainer->getView()->renderSection($section, $arguments, $optional);
-        }
-        // Replace empty content with default value. If default is
-        // not set, NULL is returned and cast to a new, empty string
-        // outside of this ViewHelper.
-        if ($content === '') {
-            $content = isset($this->arguments['default']) ? $this->arguments['default'] : $tagContent;
-        }
-
-        $cssRules = [];
-        $cssRules[] = 'display: block';
-        $cssRules[] = 'background-color: #fff';
-        $cssRules[] = 'padding: 5px';
-        $cssRules[] = 'border: 1px solid #f00';
-        $cssRules[] = 'color: #000';
-        $cssRules[] = 'overflow: hidden';
-        $cssWrapper = implode(';', $cssRules);
-        $cssRules[] = 'font-size: 11px';
-        $cssRules[] = 'font-family: Monospace';
-        $cssTitle = implode(';', $cssRules);
-
-        $debugInfo = [];
-        if (isset($this->arguments['partial'])) {
-            $path = $this->renderingContext->getTemplatePaths()->getPartialPathAndFilename($partial);
-            $path = PathUtility::stripPathSitePrefix($path);
-            $path = str_replace('typo3conf/ext/', 'EXT:', $path);
-            $path = str_replace('typo3/sysext/', 'EXT:', $path);
-            $debugInfo['Partial'] = 'Partial: ' . $path;
-        }
-        if (isset($this->arguments['section'])) {
-            $debugInfo['Section'] = 'Section: ' . htmlspecialchars($section);
-        }
-
-        $debugContent = sprintf(
-            '<strong>%s</strong>',
-            implode('<br />', $debugInfo)
-        );
-
-        return sprintf(
-            '<div class="t3js-debug-template" title="%s" style="%s"><span style="%s">%s</span>%s</div>',
-            htmlspecialchars(implode('/', array_keys($debugInfo))),
-            $cssTitle,
-            $cssWrapper,
-            $debugContent,
-            $content
-        );
-    }
-}
index 9eec4af..be925b6 100644 (file)
@@ -15,7 +15,6 @@ namespace TYPO3\CMS\Frontend\View;
  */
 
 use TYPO3\CMS\Backend\Utility\BackendUtility;
-use TYPO3\CMS\Core\Cache\CacheManager;
 use TYPO3\CMS\Core\Database\ConnectionPool;
 use TYPO3\CMS\Core\Database\Query\Restriction\DeletedRestriction;
 use TYPO3\CMS\Core\Database\Query\Restriction\FrontendRestrictionContainer;
@@ -171,10 +170,6 @@ class AdminPanelView
             }
             // Saving
             $beUser->writeUC();
-            // Flush fluid template cache
-            $cacheManager = new CacheManager();
-            $cacheManager->setCacheConfigurations($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']);
-            $cacheManager->getCache('fluid_template')->flush();
         }
         $this->getTimeTracker()->LR = $this->extGetFeAdminValue('tsdebug', 'LR');
         if ($this->extGetFeAdminValue('cache', 'noCache')) {
@@ -395,9 +390,6 @@ class AdminPanelView
             $this->extNeedUpdate = true;
             $out .= $this->extGetItem('preview_showHiddenPages', '', '<input type="hidden" name="TSFE_ADMIN_PANEL[preview_showHiddenPages]" value="0" /><input type="checkbox" id="preview_showHiddenPages" name="TSFE_ADMIN_PANEL[preview_showHiddenPages]" value="1"' . ($this->getBackendUser()->uc['TSFE_adminConfig']['preview_showHiddenPages'] ? ' checked="checked"' : '') . ' />');
             $out .= $this->extGetItem('preview_showHiddenRecords', '', '<input type="hidden" name="TSFE_ADMIN_PANEL[preview_showHiddenRecords]" value="0" /><input type="checkbox" id="preview_showHiddenRecords" name="TSFE_ADMIN_PANEL[preview_showHiddenRecords]" value="1"' . ($this->getBackendUser()->uc['TSFE_adminConfig']['preview_showHiddenRecords'] ? ' checked="checked"' : '') . ' />');
-            if (\TYPO3\CMS\Core\Utility\GeneralUtility::getApplicationContext()->isDevelopment()) {
-                $out .= $this->extGetItem('preview_showFluidDebug', '', '<input type="hidden" name="TSFE_ADMIN_PANEL[preview_showFluidDebug]" value="0" /><input type="checkbox" id="preview_showFluidDebug" name="TSFE_ADMIN_PANEL[preview_showFluidDebug]" value="1"' . (!empty($this->getBackendUser()->uc['TSFE_adminConfig']['preview_showFluidDebug']) ? ' checked="checked"' : '') . ' />');
-            }
             // Simulate date
             $out .= $this->extGetItem('preview_simulateDate', '<input type="text" id="preview_simulateDate" name="TSFE_ADMIN_PANEL[preview_simulateDate]_hr" onchange="TSFEtypo3FormFieldGet(\'TSFE_ADMIN_PANEL[preview_simulateDate]\', \'datetime\', \'\', 1,0);" /><input type="hidden" name="TSFE_ADMIN_PANEL[preview_simulateDate]" value="' . $this->getBackendUser()->uc['TSFE_adminConfig']['preview_simulateDate'] . '" />');
             $this->extJSCODE .= 'TSFEtypo3FormFieldSet("TSFE_ADMIN_PANEL[preview_simulateDate]", "datetime", "", 0, 0);';
index b2f5820..bcd8d5c 100644 (file)
@@ -18,9 +18,6 @@
                        <trans-unit id="preview_showHiddenRecords">
                                <source>Show hidden records</source>
                        </trans-unit>
-                       <trans-unit id="preview_showFluidDebug">
-                               <source>Show fluid debug output</source>
-                       </trans-unit>
                        <trans-unit id="preview_simulateDate">
                                <source>Simulate time</source>
                        </trans-unit>