PluginProbe
JetBackup – Backup, Restore & Migrate / 1.5.1
JetBackup – Backup, Restore & Migrate v1.5.1
3.1.23.6 3.1.23.5 3.1.23.3 3.1.22.4 3.1.22.3 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.8.1 1.4.9 1.5.0 1.5.1 1.5.1.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.10 All 82 releases
backup / com / core / log / SGFileLogHandler.php

SGFileLogHandler.php in JetBackup – Backup, Restore & Migrate 1.5.1, at com/core/log/SGFileLogHandler.php

72 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 require_once(SG_LOG_PATH.'SGILogHandler.php');
3
4 class SGFileLogHandler implements SGILogHandler
5 {
6 protected $filePath = '';
7
8 public function __construct($filePath)
9 {
10 $this->filePath = $filePath;
11 }
12
13 public function canBeCleared()
14 {
15 return true;
16 }
17
18 public function isWritable()
19 {
20 if (!file_exists($this->filePath))
21 {
22 $fp = fopen($this->filePath, 'wb');
23 if (!$fp)
24 {
25 return false;
26 }
27
28 fclose($fp);
29 }
30
31 return is_writable($this->filePath);
32 }
33
34 public function write($message)
35 {
36 if (!self::isWritable())
37 {
38 return false;
39 }
40
41 $date = backupGuardConvertDateTimezone(@date('Y-m-d H:i'));
42 $content = $date.': '.$message.PHP_EOL;
43 if (file_put_contents($this->filePath, $content, FILE_APPEND))
44 {
45 return true;
46 }
47
48 return false;
49 }
50
51 public function readAll()
52 {
53 if (!is_readable($this->filePath))
54 {
55 return false;
56 }
57
58 $content = file_get_contents($this->filePath);
59 return $content;
60 }
61
62 public function clear()
63 {
64 if (!self::isWritable())
65 {
66 return false;
67 }
68
69 return @unlink($this->filePath);
70 }
71 }
72