82 lines
1.9 KiB
PHP
82 lines
1.9 KiB
PHP
<?php
|
|
/**
|
|
* @package akeebabackup
|
|
* @copyright Copyright (c)2006-2022 Nicholas K. Dionysopoulos / Akeeba Ltd
|
|
* @license GNU General Public License version 3, or later
|
|
*/
|
|
|
|
defined('_JEXEC') || die();
|
|
|
|
use Akeeba\Engine\Factory;
|
|
use Joomla\CMS\Language\Text;
|
|
|
|
/** @var \Akeeba\Component\AkeebaBackup\Administrator\View\Log\RawView $this */
|
|
|
|
// -- Get the log's file name
|
|
$tag = $this->tag;
|
|
$logFile = Factory::getLog()->getLogFilename($tag);
|
|
|
|
if (!@is_file($logFile) && @file_exists(substr($logFile, 0, -4)))
|
|
{
|
|
/**
|
|
* Transitional period: the log file akeeba.tag.log.php may not exist but the akeeba.tag.log does. This
|
|
* addresses this transition.
|
|
*/
|
|
$logFile = substr($logFile, 0, -4);
|
|
}
|
|
|
|
@ob_end_clean();
|
|
|
|
if (!@file_exists($logFile))
|
|
{
|
|
// Oops! The log doesn't exist!
|
|
echo '<p>' . Text::_('COM_AKEEBABACKUP_LOG_ERROR_LOGFILENOTEXISTS') . '</p>';
|
|
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
// Allright, let's load and render it
|
|
$fp = fopen($logFile, "r");
|
|
if ($fp === FALSE)
|
|
{
|
|
// Oops! The log isn't readable?!
|
|
echo '<p>' . Text::_('COM_AKEEBABACKUP_LOG_ERROR_UNREADABLE') . '</p>';
|
|
|
|
return;
|
|
}
|
|
|
|
while (!feof($fp))
|
|
{
|
|
$line = fgets($fp);
|
|
if (!$line) return;
|
|
$exploded = explode("|", $line, 3);
|
|
unset($line);
|
|
if (count($exploded) < 3) continue;
|
|
switch (trim($exploded[0]))
|
|
{
|
|
case "ERROR":
|
|
$fmtString = "<span style=\"color: red; font-weight: bold;\">[";
|
|
break;
|
|
case "WARNING":
|
|
$fmtString = "<span style=\"color: #D8AD00; font-weight: bold;\">[";
|
|
break;
|
|
case "INFO":
|
|
$fmtString = "<span style=\"color: black;\">[";
|
|
break;
|
|
case "DEBUG":
|
|
$fmtString = "<span style=\"color: #666666; font-size: small;\">[";
|
|
break;
|
|
default:
|
|
$fmtString = "<span style=\"font-size: small;\">[";
|
|
break;
|
|
}
|
|
$fmtString .= $exploded[1] . "] " . htmlspecialchars($exploded[2]) . "</span><br/>\n";
|
|
unset($exploded);
|
|
echo $fmtString;
|
|
unset($fmtString);
|
|
}
|
|
}
|
|
|
|
@ob_start();
|