Skip to content

Commit a8febf2

Browse files
committed
refactor
1 parent 0edf84b commit a8febf2

File tree

3 files changed

+96
-52
lines changed

3 files changed

+96
-52
lines changed

src/Rap2hpoutre/LaravelLogViewer/LaravelLogViewer.php

Lines changed: 24 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
<?php
2+
23
namespace Rap2hpoutre\LaravelLogViewer;
34

45
/**
@@ -17,50 +18,23 @@ class LaravelLogViewer
1718
*/
1819
private $folder;
1920

20-
private $levels_classes = [
21-
'debug' => 'info',
22-
'info' => 'info',
23-
'notice' => 'info',
24-
'warning' => 'warning',
25-
'error' => 'danger',
26-
'critical' => 'danger',
27-
'alert' => 'danger',
28-
'emergency' => 'danger',
29-
'processed' => 'info',
30-
'failed' => 'warning',
31-
];
32-
33-
private $levels_imgs = [
34-
'debug' => 'info-circle',
35-
'info' => 'info-circle',
36-
'notice' => 'info-circle',
37-
'warning' => 'exclamation-triangle',
38-
'error' => 'exclamation-triangle',
39-
'critical' => 'exclamation-triangle',
40-
'alert' => 'exclamation-triangle',
41-
'emergency' => 'exclamation-triangle',
42-
'processed' => 'info-circle',
43-
'failed' => 'exclamation-triangle'
44-
];
21+
/**
22+
* Why? Uh... Sorry
23+
*/
24+
const MAX_FILE_SIZE = 52428800;
4525

4626
/**
47-
* Log levels that are used
48-
* @var array
27+
* @var Level level
4928
*/
50-
private $log_levels = [
51-
'emergency',
52-
'alert',
53-
'critical',
54-
'error',
55-
'warning',
56-
'notice',
57-
'info',
58-
'debug',
59-
'processed',
60-
'failed'
61-
];
62-
63-
const MAX_FILE_SIZE = 52428800; // Why? Uh... Sorry
29+
private $level;
30+
31+
/**
32+
* LaravelLogViewer constructor.
33+
*/
34+
public function __construct()
35+
{
36+
$this->level = new Level();
37+
}
6438

6539
/**
6640
* @param string $folder
@@ -95,8 +69,8 @@ public function setFile($file)
9569
public function pathToLogFile($file)
9670
{
9771
$logsPath = storage_path('logs');
98-
$logsPath .= ($this->folder) ? '/' . $this->folder : '' ;
99-
72+
$logsPath .= ($this->folder) ? '/' . $this->folder : '';
73+
10074
if (app('files')->exists($file)) { // try the absolute path
10175
return $file;
10276
}
@@ -138,7 +112,7 @@ public function all()
138112

139113
if (!$this->file) {
140114
$log_file = (!$this->folder) ? $this->getFiles() : $this->getFolderFiles();
141-
if(!count($log_file)) {
115+
if (!count($log_file)) {
142116
return [];
143117
}
144118
$this->file = $log_file[0];
@@ -161,8 +135,8 @@ public function all()
161135
}
162136

163137
foreach ($headings as $h) {
164-
for ($i=0, $j = count($h); $i < $j; $i++) {
165-
foreach ($this->log_levels as $level) {
138+
for ($i = 0, $j = count($h); $i < $j; $i++) {
139+
foreach ($this->level->all() as $level) {
166140
if (strpos(strtolower($h[$i]), '.' . $level) || strpos(strtolower($h[$i]), $level . ':')) {
167141

168142
preg_match('/^\[(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}([\+-]\d{4})?)\](?:.*?(\w+)\.|.*?)' . $level . ': (.*?)( in .*?:[0-9]+)?$/i', $h[$i], $current);
@@ -171,8 +145,8 @@ public function all()
171145
$log[] = array(
172146
'context' => $current[3],
173147
'level' => $level,
174-
'level_class' => $this->levels_classes[$level],
175-
'level_img' => $this->levels_imgs[$level],
148+
'level_class' => $this->level->cssClass($level),
149+
'level_img' => $this->level->img($level),
176150
'date' => $current[1],
177151
'text' => $current[4],
178152
'in_file' => isset($current[5]) ? $current[5] : null,
@@ -188,13 +162,13 @@ public function all()
188162
$lines = explode(PHP_EOL, $file);
189163
$log = [];
190164

191-
foreach($lines as $key => $line) {
165+
foreach ($lines as $key => $line) {
192166
$log[] = [
193167
'context' => '',
194168
'level' => '',
195169
'level_class' => '',
196170
'level_img' => '',
197-
'date' => $key+1,
171+
'date' => $key + 1,
198172
'text' => $line,
199173
'in_file' => null,
200174
'stack' => '',
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
<?php
2+
3+
namespace Rap2hpoutre\LaravelLogViewer;
4+
5+
/**
6+
* Class Level
7+
* @package Rap2hpoutre\LaravelLogViewer
8+
*/
9+
class Level
10+
{
11+
/**
12+
* @var array
13+
*/
14+
private $levels_classes = [
15+
'debug' => 'info',
16+
'info' => 'info',
17+
'notice' => 'info',
18+
'warning' => 'warning',
19+
'error' => 'danger',
20+
'critical' => 'danger',
21+
'alert' => 'danger',
22+
'emergency' => 'danger',
23+
'processed' => 'info',
24+
'failed' => 'warning',
25+
];
26+
27+
/**
28+
* @var array
29+
*/
30+
private $levels_imgs = [
31+
'debug' => 'info-circle',
32+
'info' => 'info-circle',
33+
'notice' => 'info-circle',
34+
'warning' => 'exclamation-triangle',
35+
'error' => 'exclamation-triangle',
36+
'critical' => 'exclamation-triangle',
37+
'alert' => 'exclamation-triangle',
38+
'emergency' => 'exclamation-triangle',
39+
'processed' => 'info-circle',
40+
'failed' => 'exclamation-triangle'
41+
];
42+
43+
/**
44+
* @return array
45+
*/
46+
public function all()
47+
{
48+
return array_keys($this->levels_imgs);
49+
}
50+
51+
/**
52+
* @param $level
53+
* @return string
54+
*/
55+
public function img($level)
56+
{
57+
return $this->levels_imgs[$level];
58+
}
59+
60+
/**
61+
* @param $level
62+
* @return string
63+
*/
64+
public function cssClass($level)
65+
{
66+
return $this->levels_classes[$level];
67+
}
68+
}

src/controllers/LogViewerController.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<?php
2+
23
namespace Rap2hpoutre\LaravelLogViewer;
4+
35
use Illuminate\Support\Facades\Crypt;
46

57
if (class_exists("\\Illuminate\\Routing\\Controller")) {
@@ -26,7 +28,7 @@ class LogViewerController extends BaseController
2628
/**
2729
* LogViewerController constructor.
2830
*/
29-
public function __construct ()
31+
public function __construct()
3032
{
3133
$this->log_viewer = new LaravelLogViewer();
3234
$this->request = app('request');
@@ -88,7 +90,7 @@ private function earlyReturn()
8890
app('files')->delete($this->pathFromInput('del'));
8991
return $this->redirect($this->request->url());
9092
} elseif ($this->request->has('delall')) {
91-
foreach($this->log_viewer->getFiles(true) as $file){
93+
foreach ($this->log_viewer->getFiles(true) as $file) {
9294
app('files')->delete($this->log_viewer->pathToLogFile($file));
9395
}
9496
return $this->redirect($this->request->url());

0 commit comments

Comments
 (0)