Completed
Push — develop ( 4d833c...555977 )
by Abdelrahman
03:47
created

HasSlug   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
dl 0
loc 19
rs 10
c 0
b 0
f 0
wmc 5
lcom 0
cbo 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B bootHasSlug() 0 11 5
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Rinvex\Support\Traits;
6
7
use Spatie\Sluggable\HasSlug as BaseHasSlug;
8
9
trait HasSlug
10
{
11
    use BaseHasSlug;
12
13
    /**
14
     * Boot the trait.
15
     */
16
    protected static function bootHasSlug()
17
    {
18
        // Auto generate slugs early before validation
19
        static::validating(function (self $model) {
20
            if ($model->exists && $model->getSlugOptions()->generateSlugsOnUpdate) {
21
                $model->generateSlugOnUpdate();
22
            } elseif (! $model->exists && $model->getSlugOptions()->generateSlugsOnCreate) {
23
                $model->generateSlugOnCreate();
24
            }
25
        });
26
    }
27
}
28