[TASK] Deprecate TemplateService->fileContent 80/49380/3
authorBenni Mack <benni@typo3.org>
Thu, 4 Aug 2016 12:49:26 +0000 (14:49 +0200)
committerMorton Jonuschat <m.jonuschat@mojocode.de>
Wed, 10 Aug 2016 19:11:41 +0000 (21:11 +0200)
The fileContent method is not used anymore, and can cleanly
be deprecated. It should not be part of the TemplateService
as it is not related to that very much anymore.

Extension authors should implement this method on their own.

Resolves: #77477
Releases: master
Change-Id: I00cba71d602bfda2a48cf6aa9cee00bb857c7168
Reviewed-on: https://review.typo3.org/49380
Tested-by: Bamboo TYPO3com <info@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Morton Jonuschat <m.jonuschat@mojocode.de>
Tested-by: Morton Jonuschat <m.jonuschat@mojocode.de>
typo3/sysext/core/Classes/TypoScript/TemplateService.php
typo3/sysext/core/Documentation/Changelog/master/Deprecation-77477-TemplateService-fileContent.rst [new file with mode: 0644]
typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php

index 68bf89f..9fe136c 100644 (file)
@@ -1397,10 +1397,11 @@ class TemplateService
      *
      * @param string $fileName Absolute filepath to record
      * @return NULL|string The content returned
-     * @see \TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer::fileResource(), GeneralUtility::getUrl()
+     * @deprecated since TYPO3 v8, will be removed in TYPO3 v9, use $this->getFileName() and file_get_contents directly
      */
     public function fileContent($fileName)
     {
+        GeneralUtility::logDeprecatedFunction();
         $fileName = $this->getFileName($fileName);
         if ($fileName) {
             return GeneralUtility::getUrl($fileName);
diff --git a/typo3/sysext/core/Documentation/Changelog/master/Deprecation-77477-TemplateService-fileContent.rst b/typo3/sysext/core/Documentation/Changelog/master/Deprecation-77477-TemplateService-fileContent.rst
new file mode 100644 (file)
index 0000000..e6e7b9c
--- /dev/null
@@ -0,0 +1,26 @@
+==================================================
+Deprecation: #77477 - TemplateService->fileContent
+==================================================
+
+Description
+===========
+
+The method ``fileContent`` within the class ``TemplateService`` has been marked as deprecated.
+
+
+Impact
+======
+
+Calling the method will trigger a deprecation log entry.
+
+
+Affected Installations
+======================
+
+Any TYPO3 instance with a third-party extension calling the method directly.
+
+
+Migration
+=========
+
+Implement the same logic directly in PHP with ``getFileName()`` and ``file_get_contents()``.
\ No newline at end of file
index 2408e83..2c6517b 100644 (file)
@@ -1501,7 +1501,7 @@ class ContentObjectRenderer
                 $imgInfo = @getimagesize($imgFile);
                 return '<img src="' . htmlspecialchars($tsfe->absRefPrefix . $imgFile) . '" width="' . (int)$imgInfo[0] . '" height="' . (int)$imgInfo[1] . '"' . $this->getBorderAttr(' border="0"') . ' ' . $addParams . ' />';
             } elseif (filesize($incFile) < 1024 * 1024) {
-                return $tsfe->tmpl->fileContent($incFile);
+                return file_get_contents($incFile);
             }
         }
         return '';