Passed
Pull Request — master (#788)
by John
06:12
created

UniversalMessager   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 18
c 3
b 0
f 0
dl 0
loc 26
rs 10
wmc 4

2 Methods

Rating   Name   Duplication   Size   Complexity  
A sendUniversalMessage() 0 16 3
A formatUniversalMessage() 0 6 1
1
<?php
2
3
namespace App\Models\Eloquent\Messager;
4
5
use App\Models\Eloquent\Message;
6
use Auth;
7
8
class UniversalMessager
9
{
10
    public static function sendUniversalMessage($config, $official = true)
11
    {
12
        $message = new Message;
13
        $message->sender = $config['sender'];
14
        $message->receiver = $config['receiver'];
15
        $message->title = $config['title'];
16
        $message->level = $config['level'];
17
        if (isset($config['data']) && isset($config['type'])) {
18
            $message->type = $config['type'] ?? null;
19
            $message->data = json_encode($config['data']);
20
        } else {
21
            $message->content = $config['content'];
22
        }
23
        $message->official = $official;
24
        $message->save();
25
        return true;
26
    }
27
28
    public static function formatUniversalMessage($key = null, $replace = [], $locale = null)
29
    {
30
        $replace['senderName'] = $replace['sender']->name;
31
        $replace['receiverName'] = $replace['receiver']->name;
32
        $replace['siteName'] = config('app.name');
33
        return __($key, $replace, $locale);
34
    }
35
}
36