/** * 激活插件方法,如果激活失败,直接抛出异常 * * @access public * @return void * @throws Typecho_Plugin_Exception */ public static function activate() { if (!Typecho_Db_Adapter_Mysql::isAvailable() && !Typecho_Db_Adapter_Pdo_Mysql::isAvailable()) { throw new Typecho_Plugin_Exception(_t('没有找到任何可用的 Mysql 适配器')); } Helper::addPanel(1, 'EmlogToTypecho/panel.php', _t('从 Emlog 导入数据'), _t('从 Emlog 导入数据'), 'administrator'); Helper::addAction('emlog-to-typecho', 'EmlogToTypecho_Action'); return _t('请在插件设置里设置 Emlog 所在的数据库参数') . $error; }
/** * 激活插件方法,如果激活失败,直接抛出异常 * * @access public * @return void * @throws Typecho_Plugin_Exception */ public static function activate() { if (!Typecho_Db_Adapter_Mysql::isAvailable() && !Typecho_Db_Adapter_Pdo_Mysql::isAvailable()) { throw new Typecho_Plugin_Exception(_t('没有找到任何可用的 Mysql 适配器')); } $error = NULL; if ((!is_dir(__TYPECHO_ROOT_DIR__ . '/usr/uploads/') || !is_writeable(__TYPECHO_ROOT_DIR__ . '/usr/uploads/')) && !is_writeable(__TYPECHO_ROOT_DIR__ . '/usr/')) { $error = '<br /><strong>' . _t('%s 目录不可写, 可能会导致附件转换不成功', __TYPECHO_ROOT_DIR__ . '/usr/uploads/') . '</strong>'; } Helper::addPanel(1, 'MagikeToTypecho/panel.php', _t('从Magike导入数据'), _t('从Magike导入数据'), 'administrator'); Helper::addAction('magike-to-typecho', 'MagikeToTypecho_Action'); return _t('请在插件设置里设置 Magike 所在的数据库参数') . $error; }
/** * 判断是否兼容某个环境(perform) * * @param string $adapter 适配器 * @return boolean */ function _p($adapter) { switch ($adapter) { case 'Mysql': return Typecho_Db_Adapter_Mysql::isAvailable(); case 'Pdo_Mysql': return Typecho_Db_Adapter_Pdo_Mysql::isAvailable(); case 'SQLite': return Typecho_Db_Adapter_SQLite::isAvailable(); case 'Pdo_SQLite': return Typecho_Db_Adapter_Pdo_SQLite::isAvailable(); case 'Pgsql': return Typecho_Db_Adapter_Pgsql::isAvailable(); case 'Pdo_Pgsql': return Typecho_Db_Adapter_Pdo_Pgsql::isAvailable(); default: return false; } }