[TASK] Deprecate several methods in DocumentTemplate 89/44489/7
authorWouter Wolters <typo3@wouterwolters.nl>
Mon, 2 Nov 2015 21:44:05 +0000 (22:44 +0100)
committerBenni Mack <benni@typo3.org>
Thu, 7 Jan 2016 19:42:35 +0000 (20:42 +0100)
Deprecated functions:

section
divider
sectionHeader
sectionBegin
sectionEnd

Resolves: #71260
Releases: master
Change-Id: I76bc5c56ce495e39423eb62d1367601665f5a2fe
Reviewed-on: https://review.typo3.org/44489
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Tested-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
typo3/sysext/backend/Classes/Template/DocumentTemplate.php
typo3/sysext/backend/Classes/Template/ModuleTemplate.php
typo3/sysext/core/Documentation/Changelog/master/Deprecation-71260-DocumentTemplateMethods.rst [new file with mode: 0644]

index edc7e90..fb90c06 100644 (file)
@@ -733,9 +733,11 @@ function jumpToUrl(URL) {
      * @param bool $allowHTMLinHeader If set, HTML tags are allowed in $label (otherwise this value is by default htmlspecialchars()'ed)
      * @return string HTML content
      * @see icons(), sectionHeader()
+     * @deprecated since TYPO3 CMS 8, will be removed in TYPO3 CMS 9.
      */
     public function section($label, $text, $nostrtoupper = false, $sH = false, $type = 0, $allowHTMLinHeader = false)
     {
+        GeneralUtility::logDeprecatedFunction();
         $str = '';
         // Setting header
         if ($label) {
@@ -758,9 +760,11 @@ function jumpToUrl(URL) {
      *
      * @param int $dist The margin-top/-bottom of the <hr> ruler.
      * @return string HTML content
+     * @deprecated since TYPO3 CMS 8, will be removed in TYPO3 CMS 9.
      */
     public function divider($dist)
     {
+        GeneralUtility::logDeprecatedFunction();
         $dist = (int)$dist;
         $str = '
 
@@ -778,9 +782,11 @@ function jumpToUrl(URL) {
      * @param bool $sH If set, <h3> is used, otherwise <h4>
      * @param string $addAttrib Additional attributes to h-tag, eg. ' class=""'
      * @return string HTML content
+     * @deprecated since TYPO3 CMS 8, will be removed in TYPO3 CMS 9.
      */
     public function sectionHeader($label, $sH = false, $addAttrib = '')
     {
+        GeneralUtility::logDeprecatedFunction();
         $tag = $sH ? 'h2' : 'h3';
         if ($addAttrib && $addAttrib[0] !== ' ') {
             $addAttrib = ' ' . $addAttrib;
@@ -799,9 +805,11 @@ function jumpToUrl(URL) {
      * You can call this function even if a section is already begun since the function will only return something if the sectionFlag is not already set!
      *
      * @return string HTML content
+     * @deprecated since TYPO3 CMS 8, will be removed in TYPO3 CMS 9.
      */
     public function sectionBegin()
     {
+        GeneralUtility::logDeprecatedFunction();
         if (!$this->sectionFlag) {
             $this->sectionFlag = 1;
             $str = '
@@ -823,9 +831,11 @@ function jumpToUrl(URL) {
      * See sectionBegin() also.
      *
      * @return string HTML content
+     * @deprecated since TYPO3 CMS 8, will be removed in TYPO3 CMS 9.
      */
     public function sectionEnd()
     {
+        GeneralUtility::logDeprecatedFunction();
         if ($this->sectionFlag) {
             $this->sectionFlag = 0;
             return '
index ffa1122..10c4c6b 100644 (file)
@@ -130,13 +130,6 @@ class ModuleTemplate
     protected $content = '';
 
     /**
-     * Defines whether a section has been opened before
-     *
-     * @var int
-     */
-    protected $sectionFlag = 0;
-
-    /**
      * IconFactory Member
      *
      * @var IconFactory
@@ -608,136 +601,6 @@ class ModuleTemplate
     }
 
     /**
-     * Begins an output section and sets header and content
-     *
-     * @param string $label The header
-     * @param string $text The HTML-content
-     * @param bool $noStrToUpper A flag that will prevent the header from
-     * being converted to uppercase
-     * @param bool $sH Defines the type of header (if set, "<h3>" rather
-     * than the default "h4")
-     * @param int $type The number of an icon to show with the header
-     * (see the icon-function). -1,1,2,3
-     * @param bool $allowHtmlInHeader If set, HTML tags are allowed in
-     * $label (otherwise this value is by default htmlspecialchars()'ed)
-     *
-     * @return string HTML content
-     * @internal
-     */
-    public function section($label, $text, $noStrToUpper = false, $sH = false, $type = 0, $allowHtmlInHeader = false)
-    {
-        $str = '';
-        // Setting header
-        if ($label) {
-            if (!$allowHtmlInHeader) {
-                $label = htmlspecialchars($label);
-            }
-            $str .= $this->sectionHeader($this->icons($type) . $label, $sH, $noStrToUpper ? '' : ' class="uppercase"');
-        }
-        // Setting content
-        $str .= '
-
-       <!-- Section content -->
-' . $text;
-        return $this->sectionBegin() . $str;
-    }
-
-    /**
-     * Inserts a divider image
-     * Ends a section (if open) before inserting the image
-     *
-     * @param int $dist The margin-top/-bottom of the <hr> ruler.
-     *
-     * @return string HTML content
-     * @internal
-     */
-    public function divider($dist)
-    {
-        $dist = (int)$dist;
-        $str = '
-
-       <!-- DIVIDER -->
-       <hr style="margin-top: ' . $dist . 'px; margin-bottom: ' . $dist . 'px;" />
-';
-        return $this->sectionEnd() . $str;
-    }
-
-    /**
-     * Make a section header.
-     * Begins a section if not already open.
-     *
-     * @param string $label The label between the <h3> or <h4> tags. (Allows HTML)
-     * @param bool $sH If set, <h3> is used, otherwise <h4>
-     * @param string $addAttribute Additional attributes to h-tag, eg. ' class=""'
-     *
-     * @return string HTML content
-     * @internal
-     */
-    public function sectionHeader($label, $sH = false, $addAttribute = '')
-    {
-        $tag = $sH ? 'h2' : 'h3';
-        if ($addAttribute && $addAttribute[0] !== ' ') {
-            $addAttribute = ' ' . $addAttribute;
-        }
-        $str = '
-
-       <!-- Section header -->
-       <' . $tag . $addAttribute . '>' . $label . '</' . $tag . '>
-';
-        return $this->sectionBegin() . $str;
-    }
-
-    /**
-     * Begins an output section.
-     * Returns the <div>-begin tag AND sets the ->sectionFlag TRUE
-     * (if the ->sectionFlag is not already set!)
-     * You can call this function even if a section is already begun
-     * since the function will only return something if the sectionFlag
-     * is not already set!
-     *
-     * @return string HTML content
-     * @internal
-     */
-    public function sectionBegin()
-    {
-        if (!$this->sectionFlag) {
-            $this->sectionFlag = 1;
-            $str = '
-
-       <!-- ***********************
-             Begin output section.
-            *********************** -->
-       <div>
-';
-            return $str;
-        }
-        return '';
-    }
-
-    /**
-     * Ends and output section
-     * Returns the </div>-end tag AND clears the ->sectionFlag
-     * (but does so only IF the sectionFlag is set - that is a section is 'open')
-     * See sectionBegin() also.
-     *
-     * @return string HTML content
-     * @internal
-     */
-    public function sectionEnd()
-    {
-        if ($this->sectionFlag) {
-            $this->sectionFlag = 0;
-            return '
-       </div>
-       <!-- *********************
-             End output section.
-            ********************* -->
-';
-        }
-        return '';
-    }
-
-    /**
      * Returns the BE USER Object
      *
      * @return BackendUserAuthentication
@@ -830,12 +693,11 @@ class ModuleTemplate
      */
     public function header($text)
     {
-        $str = '
+        return '
 
        <!-- MAIN Header in page top -->
        <h1 class="t3js-title-inlineedit">' . htmlspecialchars($text) . '</h1>
 ';
-        return $this->sectionEnd() . $str;
     }
 
     /**
diff --git a/typo3/sysext/core/Documentation/Changelog/master/Deprecation-71260-DocumentTemplateMethods.rst b/typo3/sysext/core/Documentation/Changelog/master/Deprecation-71260-DocumentTemplateMethods.rst
new file mode 100644 (file)
index 0000000..908522e
--- /dev/null
@@ -0,0 +1,26 @@
+=================================================================
+Deprecation: #71153 - Several DocumentTemplate methods deprecated
+=================================================================
+
+Description
+===========
+
+The following methods from ``TYPO3\CMS\Backend\Template\DocumentTemplate`` has been deprecated.
+
+``section``
+``divider``
+``sectionHeader``
+``sectionBegin``
+``sectionEnd``
+
+
+Affected Installations
+======================
+
+Instances with custom backend modules that use one of the aforementioned methods.
+
+
+Migration
+=========
+
+Use plain HTML instead.