redirectAfterSuccessfulLogin()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 10
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 12

Importance

Changes 0
Metric Value
cc 3
eloc 6
nc 3
nop 0
dl 0
loc 10
ccs 0
cts 7
cp 0
crap 12
rs 10
c 0
b 0
f 0
1
<?php
2
namespace UserManagement\Extension;
3
4
use SilverStripe\Security\Security;
5
use SilverStripe\Security\MemberAuthenticator\LoginHandler;
6
use SilverStripe\SiteConfig\SiteConfig;
7
8
/**
9
 * Class LoginHandlerExtension
10
 *
11
 * @package user-management
12
 */
13
class LoginHandlerExtension extends LoginHandler
14
{
15
   
16
    /**
17
     * Login in the user and figure out where to redirect the browser.
18
     * It redirect general group user to profile page. Otherwise it refers parent method.
19
     * @return \SilverStripe\Control\HTTPResponse
20
     */
21
    protected function redirectAfterSuccessfulLogin()
22
    {
23
        $config = SiteConfig::current_site_config();
24
        $groupID = $config->getCustomerGroupID();
25
        if (Security::getCurrentUser()->inGroup($groupID)) {
26
            if ($config->LoginCallBackUrl()->URLSegment) {
27
                return $this->redirect($config->LoginCallBackUrl()->URLSegment);
28
            }
29
        }
30
        return parent::redirectAfterSuccessfulLogin();
31
    }
32
}
33