forked from typecho-fans/plugins
-
Notifications
You must be signed in to change notification settings - Fork 26
/
Plugin.php
70 lines (65 loc) · 2.1 KB
/
Plugin.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
<?php
/**
* 上传、删除插件和模板
*
* @category system
* @package Upload Plugin
* @author DEFE
* @version 1.1.2
* @dependence 10.6.24-*
* @link http://defe.me
*/
class UploadPlugin_Plugin implements Typecho_Plugin_Interface
{
/**
* 激活插件方法,如果激活失败,直接抛出异常
*
* @access public
* @return void
* @throws Typecho_Plugin_Exception
*/
public static function activate()
{
if (!class_exists('ZipArchive')) {
throw new Typecho_Plugin_Exception(_t('对不起, 您的服务器不支持 ZipArchive 类, 无法正常使用此插件'));
}
if(!is_writable(__TYPECHO_ROOT_DIR__.__TYPECHO_PLUGIN_DIR__)){
throw new Typecho_Plugin_Exception(_t('插件目录无写入权限, 无法正常使用此插件'));
}
if(!function_exists('file_put_contents') && !function_exists('fopen')){
throw new Typecho_Plugin_Exception(_t('file_put_contents、fopen函数被禁用, 无法正常使用此插件'));
throw new Typecho_Plugin_Exception(_t('插件目录无写入权限, 无法正常使用此插件'));
}
Helper::addPanel(1, 'UploadPlugin/panel.php', _t('上传'), _t('在线插件管理'), 'administrator');
Helper::addAction('upload-plugin', 'UploadPlugin_Action');
}
/**
* 禁用插件方法,如果禁用失败,直接抛出异常
*
* @static
* @access public
* @return void
* @throws Typecho_Plugin_Exception
*/
public static function deactivate()
{
Helper::removeAction('upload-plugin');
Helper::removePanel(1, 'UploadPlugin/panel.php');
}
/**
* 获取插件配置面板
*
* @access public
* @param Typecho_Widget_Helper_Form $form 配置面板
* @return void
*/
public static function config(Typecho_Widget_Helper_Form $form){}
/**
* 个人用户的配置面板
*
* @access public
* @param Typecho_Widget_Helper_Form $form
* @return void
*/
public static function personalConfig(Typecho_Widget_Helper_Form $form){}
}