| <?php |
|
|
| |
| |
| |
| |
| |
| |
|
|
| namespace Piwik\Plugins\Diagnostics\Diagnostic; |
|
|
| use Piwik\Development; |
| use Piwik\FileIntegrity; |
| use Piwik\Translation\Translator; |
|
|
| |
| |
| |
| class FileIntegrityCheck implements Diagnostic |
| { |
| |
| |
| |
| private $translator; |
|
|
| public function __construct(Translator $translator) |
| { |
| $this->translator = $translator; |
| } |
|
|
| public function execute() |
| { |
| $label = $this->translator->translate('Installation_SystemCheckFileIntegrity'); |
|
|
| if (Development::isEnabled()) { |
| return array(DiagnosticResult::singleResult($label, DiagnosticResult::STATUS_WARNING, '(Disabled in development mode)')); |
| } |
|
|
| list($ok, $messages) = FileIntegrity::getFileIntegrityInformation(); |
|
|
| if ($ok) { |
| return array(DiagnosticResult::singleResult($label, DiagnosticResult::STATUS_OK, implode('<br/>', $messages))); |
| } |
|
|
| $comment = $this->translator->translate('General_FileIntegrityWarning'); |
|
|
| |
| if (count($messages) > 20) { |
| $messages = array_slice($messages, 0, 20); |
| $messages[] = '...'; |
| } |
| $comment .= '<br/><br/><pre style="overflow-x: scroll;max-width: 600px;">' |
| . implode("\n", $messages) . '</pre>'; |
|
|
| return array(DiagnosticResult::singleResult($label, DiagnosticResult::STATUS_WARNING, $comment)); |
| } |
| } |
|
|