LogoutControllerTrait   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 7
c 1
b 0
f 0
dl 0
loc 25
ccs 0
cts 10
cp 0
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A getGenericRedirectURL() 0 4 1
A generateModelName() 0 3 1
A index() 0 4 1
1
<?php
2
3
namespace ByTIC\Hello\Modules\AbstractModule\Controllers\Traits;
4
5
use Nip\Controllers\Traits\AbstractControllerTrait;
6
7
/**
8
 * Trait LogoutControllerTrait
9
 * @package ByTIC\Hello\Modules\AbstractModule\Controllers\Traits
10
 */
11
trait LogoutControllerTrait
12
{
13
    use AbstractControllerTrait;
14
15
    public function index()
16
    {
17
        $this->_getUser()->deauthenticate();
0 ignored issues
show
Bug introduced by
It seems like _getUser() 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

17
        $this->/** @scrutinizer ignore-call */ 
18
               _getUser()->deauthenticate();
Loading history...
18
        $this->doSuccessRedirect();
0 ignored issues
show
Bug introduced by
It seems like doSuccessRedirect() 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

18
        $this->/** @scrutinizer ignore-call */ 
19
               doSuccessRedirect();
Loading history...
19
    }
20
21
    /**
22
     * @return string|null
23
     */
24
    protected function getGenericRedirectURL()
25
    {
26
        $module = $this->getRequest()->getModuleName();
27
        return $this->Url()->assemble($module . '.logged_in');
0 ignored issues
show
Bug introduced by
It seems like Url() 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

27
        return $this->/** @scrutinizer ignore-call */ Url()->assemble($module . '.logged_in');
Loading history...
28
    }
29
30
    /**
31
     * @inheritdoc
32
     */
33
    protected function generateModelName()
34
    {
35
        return get_class($this->_getUser()->getManager());
36
    }
37
}
38