Пример #1
0
/**
 * 卸载插件
 * 如果存在,系统会调用 插件名_callback.php 的 callback_remove()
 */
function uninstallPlugin($plugin)
{
    global $m;
    inactivePlugin($plugin);
    $callback_file = SYSTEM_ROOT . '/plugins/' . $plugin . '/' . $plugin . '_callback.php';
    if (file_exists($callback_file)) {
        require_once $callback_file;
        if (function_exists('callback_remove')) {
            callback_remove();
        }
    }
    $m->query("DELETE FROM `" . DB_PREFIX . "plugins` WHERE `name` = '{$plugin}';");
    $isapp = option::get('isapp');
    if (empty($isapp)) {
        DeleteFile(SYSTEM_ROOT . '/plugins/' . $plugin);
    }
}
Пример #2
0
 * 设置保存页面
 */
require dirname(__FILE__) . '/init.php';
if (ROLE != 'user' && ROLE != 'admin' && ROLE != 'vip') {
    msg('权限不足');
}
if (ROLE != 'admin' && stristr(strip_tags($_GET['mod']), 'admin:')) {
    msg('权限不足');
}
global $i;
global $m;
switch (SYSTEM_PAGE) {
    case 'admin:plugins':
        doAction('plugin_setting_1');
        if (isset($_GET['dis'])) {
            inactivePlugin($_GET['dis']);
        } elseif (isset($_GET['act'])) {
            activePlugin($_GET['act']);
        } elseif (isset($_GET['upd'])) {
            if (updatePlugin($_GET['upd']) == false) {
                Redirect('index.php?mod=admin:plugins&error_msg=' . urlencode("插件更新失败"));
            }
        } elseif (isset($_GET['uninst'])) {
            uninstallPlugin($_GET['uninst']);
        } elseif (isset($_GET['install'])) {
            if (!empty($_REQUEST['ver'])) {
                msg('该插件仅适用于 V' . $_REQUEST['ver'] . ' 及以上的版本,您的云签到版本低于插件所需最低版本,是否强制安装(强制安装可能造成云签到损坏)<br/><br/><a href="setting.php?mod=admin:plugins&install=' . $_GET['install'] . '">强制安装</a>  <a href="setting.php?mod=admin:plugins">取消安装</a><br/>', false, true);
            }
            installPlugin($_GET['install']);
        } elseif (isset($_GET['xorder'])) {
            global $m;