TYPO3 CMS  TYPO3_7-6
FormatDetailsViewHelper.php
Go to the documentation of this file.
1 <?php
3 
4 /*
5  * This file is part of the TYPO3 CMS project.
6  *
7  * It is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU General Public License, either version 2
9  * of the License, or any later version.
10  *
11  * For the full copyright and license information, please read the
12  * LICENSE.txt file that was distributed with this source code.
13  *
14  * The TYPO3 project - inspiring people to share!
15  */
16 
21 
27 {
40  public function render(LogEntry $logEntry)
41  {
42  return static::renderStatic(
43  [
44  'logEntry' => $logEntry
45  ],
47  $this->renderingContext
48  );
49  }
50 
60  {
61  $logEntry = $arguments['logEntry'];
62  $detailString = $logEntry->getDetails();
63  $substitutes = $logEntry->getLogData();
64  // Strip paths from file names if the log was a file action
65  if ($logEntry->getType() === 2) {
66  $substitutes = self::stripPathFromFilenames($substitutes);
67  }
68  // Substitute
69  $detailString = vsprintf($detailString, $substitutes);
70  // Remove possible pending other %s
71  $detailString = str_replace('%s', '', $detailString);
72  return htmlspecialchars($detailString);
73  }
74 
81  protected static function stripPathFromFilenames(array $files = [])
82  {
83  foreach ($files as $key => $file) {
84  $files[$key] = basename($file);
85  }
86  return $files;
87  }
88 }
static renderStatic(array $arguments, \Closure $renderChildrenClosure, RenderingContextInterface $renderingContext)
Definition: LogEntry.php:23