-
Notifications
You must be signed in to change notification settings - Fork 1
/
page-lock.php
49 lines (38 loc) · 1.36 KB
/
page-lock.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
<?php
/**
* Kirby Page Lock Plugin
*
* @version 1.0.0-beta.1
* @author Pedro Borges <[email protected]>
* @copyright Pedro Borges <[email protected]>
* @link https://github.com/pedroborges/kirby-page-lock
* @license MIT
*/
load([
'pedroborges\\pagelock\\lock' => __DIR__ . DS . 'src' . DS . 'Lock.php',
'pedroborges\\pagelock\\locktrait' => __DIR__ . DS . 'src' . DS . 'LockTrait.php'
]);
function pageLock($page, $uniqueId = null) {
return PedroBorges\PageLock\Lock::instance($page, $uniqueId);
}
if (site()->user()) {
require __DIR__ . DS . 'src' . DS . 'routes.php';
}
kirby()->set('field', 'lock', __DIR__ . DS . 'fields' . DS . 'lock');
if (c::get('page-lock.title', true)) {
kirby()->set('field', 'title', __DIR__ . DS . 'fields' . DS . 'title');
}
kirby()->set(
'blueprint',
'fields/lock', __DIR__ . DS . 'blueprints' . DS . 'fields' . DS . 'lock.yml'
);
kirby()->set('snippet', 'page-lock', __DIR__ . DS . 'snippets' . DS . 'page-lock.php');
kirby()->set('page::method', 'isLocked', function($page, $uniqueId = null) {
return pageLock($page, $uniqueId)->isLocked();
});
kirby()->set('page::method', 'isNotLocked', function($page, $uniqueId = null) {
return pageLock($page, $uniqueId)->isNotLocked();
});
kirby()->set('page::method', 'pageLock', function($page, $uniqueId = null) {
return pageLock($page, $uniqueId);
});