Passed
Push — master ( 36d94c...6f4de6 )
by Sathish
01:39
created

SecurityExtension   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 11
dl 0
loc 30
rs 10
c 0
b 0
f 0
wmc 4

2 Methods

Rating   Name   Duplication   Size   Complexity  
A login_url() 0 8 2
A lost_password_url() 0 8 2
1
<?php
2
namespace UserManagement\Extension;
3
4
use SilverStripe\Control\Controller;
5
use SilverStripe\Security\Security;
6
use SilverStripe\SiteConfig\SiteConfig;
7
use SilverStripe\Control\Director;
8
9
/**
10
 * Class SecurityExtension
11
 *
12
 * @package user-management
13
 */
14
class SecurityExtension extends Security
15
{
16
    /**
17
     * Allows to set login url through siteconfig
18
     *
19
     * @return string
20
     */
21
    public static function login_url()
22
    {
23
        $config = SiteConfig::current_site_config();
24
        $segment = $config->LoginUrl()->URLSegment;
25
        if ($segment) {
26
            return Controller::join_links(Director::baseURL(), $segment);
27
        }
28
        return Controller::join_links(Director::baseURL(), self::config()->get('login_url'));
29
    }
30
31
    /**
32
     * Allows to set lost password url through siteconfig
33
     *
34
     * @return string
35
     */
36
    public static function lost_password_url()
37
    {
38
        $config = SiteConfig::current_site_config();
39
        $segment = $config->LostPasswordUrl()->URLSegment;
40
        if ($segment) {
41
            return Controller::join_links(Director::baseURL(), $segment);
42
        }
43
        return Controller::join_links(Director::baseURL(), self::config()->get('lost_password_url'));
44
    }
45
}
46