HorizonServiceProvider::gate()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 8
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace Tracking\Providers;
4
5
use Laravel\Horizon\Horizon;
6
use Illuminate\Support\Facades\Gate;
7
use Laravel\Horizon\HorizonApplicationServiceProvider;
8
9
class HorizonServiceProvider extends HorizonApplicationServiceProvider
10
{
11
    /**
12
     * Bootstrap any application services.
13
     *
14
     * @return void
15
     */
16
    public function boot()
17
    {
18
        parent::boot();
19
20
        // Notificando o slack em caso de Filas Longas
21
        $slackUrl = env('LOG_SLACK_WEBHOOK_URL');
22
        if (!empty($slackUrl)) {
23
            Horizon::routeSlackNotificationsTo($slackUrl, '#qualidade');
24
        }
25
    }
26
27
    /**
28
     * Register the Horizon gate.
29
     *
30
     * This gate determines who can access Horizon in non-local environments.
31
     *
32
     * @return void
33
     */
34
    protected function gate()
35
    {
36
        Gate::define(
37
            'viewHorizon', function ($user) {
38
                return $user->isAdmin();
39
            }
40
        );
41
    }
42
43
    /**
44
     * Register any application services.
45
     *
46
     * @return void
47
     */
48
    public function register()
49
    {
50
        //
51
    }
52
}
53