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; } }
|