AppServiceProvider::boot()   A
last analyzed

Complexity

Conditions 6
Paths 1

Size

Total Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 6
nc 1
nop 0
dl 0
loc 11
rs 9.2222
c 0
b 0
f 0
1
<?php
2
3
namespace App\Providers;
4
5
use App\Http\Controllers\BlogController;
6
use Illuminate\Support\Facades\DB;
7
use Illuminate\Support\ServiceProvider;
8
use Illuminate\Support\Str;
9
10
class AppServiceProvider extends ServiceProvider
11
{
12
    /**
13
     * Register any application services.
14
     *
15
     * @return void
16
     */
17
    public function register()
18
    {
19
        //
20
    }
21
22
    /**
23
     * Bootstrap any application services.
24
     *
25
     * @return void
26
     */
27
    public function boot()
28
    {
29
        DB::listen(function ($query) {
30
            $sql = Str::of($query->sql)->replace('`', '');
31
32
            if ($sql->contains('set slug') || $sql->contains('set excerpt') || $sql->contains('set meta')
33
            || $sql->contains('set published') || $sql->contains('set featured_image')) {
34
                app(BlogController::class)->updateIndexedArticles();
35
            }
36
        });
37
    }
38
}
39