Passed
Pull Request — master (#53)
by yasin
05:03
created

Single   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 29
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 12
c 2
b 0
f 0
dl 0
loc 29
rs 10
wmc 4

3 Methods

Rating   Name   Duplication   Size   Complexity  
A mount() 0 3 1
A render() 0 4 1
A delete() 0 13 2
1
<?php
2
3
namespace EasyPanel\Http\Livewire\Admins;
4
5
use EasyPanel\Support\Contract\UserProviderFacade;
6
use Livewire\Component;
7
8
class Single extends Component
9
{
10
11
    public $admin;
12
13
    public function mount($admin)
14
    {
15
        $this->admin = $admin;
16
    }
17
18
    public function delete()
19
    {
20
        if (auth()->id() == $this->admin->id) {
21
            $this->dispatchBrowserEvent('show-message', ['type' => 'error', 'message' => __('CannotDeleteMessage', ['name' => __('Admin')])]);
22
            return;
23
        }
24
25
        $this->admin->roles()->sync([]);
26
27
        UserProviderFacade::deleteAdmin($this->admin->id);
28
29
        $this->dispatchBrowserEvent('show-message', ['type' => 'error', 'message' => __('DeletedMessage', ['name' => __('Admin') ] )]);
30
        $this->emit('adminsUpdated');
31
    }
32
33
    public function render()
34
    {
35
        return view('admin::livewire.admins.single')
36
            ->layout('admin::layouts.app');
37
    }
38
}
39