Passed
Push — master ( 27aff5...90c7ff )
by Alexander
11:49 queued 05:54
created

ErrorHandler   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 5
lcom 0
cbo 2
dl 0
loc 24
ccs 0
cts 19
cp 0
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B renderException() 0 21 5
1
<?php
2
3
namespace Horat1us\Yii\Console;
4
5
use Horat1us\Yii\Interfaces\ModelExceptionInterface;
6
7
use yii\helpers\Console;
8
9
class ErrorHandler extends \yii\console\ErrorHandler
10
{
11
    protected function renderException($exception)
12
    {
13
        parent::renderException($exception);
14
15
        $message = '';
16
        if ($exception instanceof ModelExceptionInterface) {
17
            $message .= $this->formatMessage("Errors: ");
18
            foreach ($exception->getModel()->errors as $attribute => $errors) {
19
                $message .= "\t.$attribute\n";
20
                foreach ($errors as $error) {
21
                    $message .= "\t\t" . $this->formatMessage($error) . "\n";
22
                }
23
            }
24
        }
25
26
        if (PHP_SAPI === 'cli') {
27
            Console::stderr($message . "\n");
28
        } else {
29
            echo $message . "\n";
30
        }
31
    }
32
}
33