/var/www/hkosl.com/aga/wp-content/plugins/smart-slider-3/library/smartslider/models/License.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?php

class N2SmartsliderLicenseModel {

    private 
$key;

    public function 
__construct() {
        if (
defined('SMART_SLIDER_LICENSE')) {
            
$this->key SMART_SLIDER_LICENSE;
        } else {
            
$this->key N2Base::getApplication('smartslider')->storage->get('license''key');
        }
    
    }

    public static function 
getInstance() {
        static 
$ins;
        if (!
$ins) {
            
$ins = new N2SmartsliderLicenseModel();
        }

        return 
$ins;
    }

    public function 
hasKey() {
        return !empty(
$this->key);
    }

    public function 
maybeActive() {
        
$lastActive N2Base::getApplication('smartslider')->storage->get('license''isActive');
        if (
$lastActive && $lastActive strtotime("-1 week")) {
            return 
true;
        }

        return 
false;
    }

    public function 
getKey() {
        return 
$this->key;
    }

    public function 
setKey($licenseKey) {
        
N2Base::getApplication('smartslider')->storage->set('license''key'$licenseKey);
        if (
$licenseKey == '') {
            
N2Base::getApplication('smartslider')->storage->set('license''isActive'0);
        }
        
$this->key $licenseKey;
    
    }

    public function 
checkKey($license$action 'licensecheck') {
        return 
0;
    
    }

    public function 
isActive($cacheAccepted true) {
        if (
$cacheAccepted && $this->maybeActive()) {
            return 
'OK';
        }
        
$status $this->checkKey($this->key);
        if (
$this->hasKey() && $status == 'OK') {
            
N2Base::getApplication('smartslider')->storage->set('license''isActive'time());

            return 
$status;
        }
        
N2Base::getApplication('smartslider')->storage->set('license''isActive'0);

        return 
$status;
    }

    public function 
deAuthorize() {
        if (
$this->hasKey()) {
            
$this->setKey('');
            
N2Message::notice(n2_('Smart Slider deactivated on this site!'));

            return 
'OK';
        }

        return 
false;
    }
}