PluginProbe
Moloni / 3.0.41
Moloni v3.0.41
5.0.10 5.0.09 5.0.08 5.0.07 5.0.06 trunk 0.4.0.00 0.4.8.1 3.0.10 3.0.11 3.0.35 3.0.36 3.0.37 3.0.38 3.0.40 3.0.41 3.0.42 3.0.43 3.0.44 3.0.45 3.0.46 3.0.47 3.0.48 3.0.49 3.0.50 All 98 releases
moloni / src / Log.php

Log.php in Moloni 3.0.41, at src/Log.php

61 lines 1.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Moloni;
4
5 use RuntimeException;
6
7 class Log
8 {
9
10 private static $fileName = false;
11
12 public static function write($message)
13 {
14 try {
15 if (!is_dir(MOLONI_DIR . '/logs') && !mkdir($concurrentDirectory = MOLONI_DIR . '/logs') && !is_dir($concurrentDirectory)) {
16 throw new RuntimeException(sprintf('Directory "%s" was not created', $concurrentDirectory));
17 }
18
19 $fileName = (defined('MOLONI_COMPANY_ID') ? MOLONI_COMPANY_ID : '000')
20 . (self::$fileName ? self::$fileName . '.log' : date('Ymd'))
21 . '.log';
22
23 $logFile = fopen(MOLONI_DIR . '/logs/' . $fileName, 'ab');
24 fwrite($logFile, '[' . date('Y-m-d H:i:s') . '] ' . $message . PHP_EOL);
25 } catch (RuntimeException $exception) {
26
27 }
28 }
29
30 public static function getFileUrl()
31 {
32 $fileName = (defined('MOLONI_COMPANY_ID') ? MOLONI_COMPANY_ID : '000')
33 . (self::$fileName ? self::$fileName . '.log' : date('Ymd'))
34 . '.log';
35
36 return MOLONI_PLUGIN_URL . '/logs/' . $fileName;
37 }
38
39 public static function removeLogs()
40 {
41 $logFiles = glob(MOLONI_DIR . '/logs/*.log');
42 if (!empty($logFiles) && is_array($logFiles)) {
43 $deleteSince = strtotime(date('Y-m-d'));
44 foreach ($logFiles as $file) {
45 if (filemtime($file) < $deleteSince) {
46 unlink($file);
47 }
48 }
49 }
50
51 }
52
53 public static function setFileName($name)
54 {
55 if (!empty($name)) {
56 self::$fileName = $name;
57 }
58 }
59
60 }
61