-
Notifications
You must be signed in to change notification settings - Fork 0
/
PluginGc.class.php
119 lines (98 loc) · 3.73 KB
/
PluginGc.class.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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<?php
/* ---------------------------------------------------------------------------
* @Plugin Name: Guest Comments
* @Plugin Id: gc
* @Plugin URI:
* @Description:
* @Author: andreyv
* @Author URI: http://gladcode.ru
* ----------------------------------------------------------------------------
*/
/* Запрещаем напрямую через браузер обращение к этому файлу */
if (!class_exists('Plugin')) {
die('Hacking attempt!');
}
/**
* PluginGc.class.php
* Файл основного класса плагина Gc
*
* @author Андрей Г. Воронов <[email protected]>
* @copyrights Copyright © 2014, Андрей Г. Воронов
* Является частью плагина Gc
*
*/
class PluginGc extends Plugin {
/** @var array $aDelegates Объявление делегирований */
protected $aDelegates = array(
'template' => array(
// Комментарий к топику
'comments/comment.tree.tpl' => '_comments/comment.tree.tpl',
'comments/comment.single.tpl' => '_comments/comment.single.tpl',
'comment_tree.tpl' => '_comments/comment.tree.tpl',
'comment.tpl' => '_comments/comment.single.tpl',
// Активность
'actions/stream/action.stream.events.tpl' => '_actions/stream/action.stream.events.tpl',
// Виджет последних комментариев
'widgets/widget.stream_comment.tpl' => '_widgets/widget.stream_comment.tpl',
'widgets/widget.toolbar_comment.tpl' => '_widgets/widget.toolbar_comment.tpl',
// Письма
'emails/ru/email.comment_new.tpl' ,
'emails/ru/email.comment_reply.tpl',
'emails/en/email.comment_new.tpl' ,
'emails/en/email.comment_reply.tpl',
// Админка
'actions/admin/action.admin.content/comments.tpl',
'actions/admin/action.admin.content/comments_list.tpl',
),
);
/** @var array $aInherits Объявление переопределений (модули, мапперы и сущности) */
protected $aInherits = array(
'actions' => array(
'ActionBlog',
'ActionAdmin',
),
'modules' => array(
'ModuleVote',
'ModuleNotify',
'ModuleUser',
'ModuleUploader',
),
'entity' => array(
'ModuleComment_EntityComment',
),
'mapper' => array(
'ModuleComment_MapperComment',
'ModuleVote_MapperVote',
),
);
/**
* Активация плагина
* @return bool
*/
public function Activate() {
if (!$this->isFieldExists('prefix_comment', 'comment_guest_login')) {
$this->ExportSQL(__DIR__ . '/install/db/init.sql');
}
if (!$this->isFieldExists('prefix_comment', 'comment_image')) {
$this->ExportSQL(__DIR__ . '/install/db/update-to-1.1.sql');
}
return TRUE;
}
/**
* Деактивация плагина
* @return bool
*/
public function Deactivate() {
return TRUE;
}
/**
* Инициализация плагина
*/
public function Init() {
E::Module('Viewer')->Assign('sTemplatePathGc', Plugin::GetTemplateDir(__CLASS__));
E::Module('Viewer')->AppendStyle(Plugin::GetTemplateDir(__CLASS__) . 'assets/css/plugin.gc.css'); // Добавление своего CSS
E::Module('Viewer')->AppendScript(Plugin::GetTemplateDir(__CLASS__) . 'assets/js/plugin.gc.js'); // Добавление своего JS
return TRUE;
}
}
// EOF