Notifiable   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
eloc 7
dl 0
loc 14
ccs 0
cts 5
cp 0
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A notifications() 0 8 2
1
<?php
2
/**
3
 * Created by PhpStorm.
4
 * User: arthur
5
 * Date: 14.10.18
6
 * Time: 18:36.
7
 */
8
9
namespace Foundation\Traits;
10
11
use Foundation\Models\MongoDatabaseNotification;
0 ignored issues
show
Bug introduced by
The type Foundation\Models\MongoDatabaseNotification was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
12
13
trait Notifiable
14
{
15
    use \Illuminate\Notifications\Notifiable {
16
        \Illuminate\Notifications\Notifiable::notifications as baseNotificationsMethod;
17
    }
18
19
    public function notifications()
20
    {
21
        if (config('database.default') === 'mongodb') {
22
            return $this->morphMany(MongoDatabaseNotification::class, 'notifiable')
0 ignored issues
show
Bug introduced by
It seems like morphMany() must be provided by classes using this trait. How about adding it as abstract method to this trait? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

22
            return $this->/** @scrutinizer ignore-call */ morphMany(MongoDatabaseNotification::class, 'notifiable')
Loading history...
23
                ->orderBy('created_at', 'desc');
24
        }
25
26
        return $this->baseNotificationsMethod();
27
    }
28
}
29