微信账号绑定
+当前账号:=$name?>
+ +已绑微信: echo $nickName;?>
+尚未绑定微信账号
+ + +
diff --git a/QuickAuthLogin/Action.php b/QuickAuthLogin/Action.php index 75ab11c..3535d5c 100644 --- a/QuickAuthLogin/Action.php +++ b/QuickAuthLogin/Action.php @@ -17,9 +17,7 @@ class QuickAuthLogin_Action extends Typecho_Widget if ($user->haslogin()) { // 获取当前用户名 $name = $user->__get('name'); - $options = QuickAuthLogin_Plugin::getoptions(); - $db = Typecho_Db::get(); $db->query($db->update('table.users')->rows(['qa_openid' => null, 'qa_nickname' => null, 'qa_avatar' => null])->where('name = ?', $name)); @@ -33,13 +31,6 @@ class QuickAuthLogin_Action extends Typecho_Widget $res->throwJson($ret); } - /* 二维码授权绑定 */ - public function authbind() - { - $path = QuickAuthLogin_Plugin::PLUGIN_PATH . 'views/authbind.php'; - require_once $path; - } - /* 微信Callback跳转登录逻辑 */ public function wechatlogin() { @@ -72,12 +63,12 @@ class QuickAuthLogin_Action extends Typecho_Widget $user = $db->fetchRow($db->select()->from('table.users')->where( 'qa_openid' . ' = ?', $openId[1])->limit(1)); if($user){ $this->widget('Widget_Notice')->set('此微信账号已被绑定!', 'error'); - $res->redirect(QuickAuthLogin_Plugin::tourl('QuickAuthLogin/auth-bind')); + $res->redirect("/admin/extending.php?panel=QuickAuthLogin/views/authbind.php"); } //更新基础信息 $db->query($db->update('table.users')->rows(['qa_openid' => $openId[1], 'qa_nickname' => $nickName[1], 'qa_avatar' => $avatarUrl[1]])->where('name = ?', $name)); $this->widget('Widget_Notice')->set(_t('用户 %s 成功绑定微信账号 %s', $name, $nickName[1]), 'success'); - $res->redirect(QuickAuthLogin_Plugin::tourl('QuickAuthLogin/auth-bind')); + $res->redirect("/admin/extending.php?panel=QuickAuthLogin/views/authbind.php"); } else{ $ret['login']['msg'] = 'Fail'; diff --git a/QuickAuthLogin/Plugin.php b/QuickAuthLogin/Plugin.php index 5597f4a..02843e5 100644 --- a/QuickAuthLogin/Plugin.php +++ b/QuickAuthLogin/Plugin.php @@ -4,7 +4,7 @@ * * @package QuickAuthLogin * @author wixy - * @version 0.9.0 + * @version 0.9.1 * @link https://blog.wixy.cn/archives/quickauthlogin.html */ @@ -13,7 +13,6 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { const PLUGIN_NAME = 'QuickAuthLogin'; const PLUGIN_PATH = __TYPECHO_ROOT_DIR__.__TYPECHO_PLUGIN_DIR__.'/QuickAuthLogin/'; - /** * 启用插件方法,如果启用失败,直接抛出异常 * @@ -24,20 +23,10 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { */ public static function activate(){ $info = self::updateDb(); - - Typecho_Plugin::factory('admin/menu.php')-> navBar = array(__class__, 'render'); - Typecho_Plugin::factory('Widget_User')-> loginSucceed = array(__class__,'afterlogin'); Typecho_Plugin::factory('admin/footer.php')->end = array(__class__, 'render_footer'); - - Helper::addPanel(1, 'QuickAuthLogin/views/authbind.php', '微信账号绑定', '微信账号绑定', 'subscriber'); - - Helper::addRoute('bind',__TYPECHO_ADMIN_DIR__.'QuickAuthLogin/bind','QuickAuthLogin_Action','bind'); - Helper::addRoute('login',__TYPECHO_ADMIN_DIR__.'QuickAuthLogin/login','QuickAuthLogin_Action','login'); Helper::addRoute('wechatlogin',__TYPECHO_ADMIN_DIR__.'QuickAuthLogin/wechatlogin','QuickAuthLogin_Action','wechatlogin'); Helper::addRoute('reset',__TYPECHO_ADMIN_DIR__.'QuickAuthLogin/reset','QuickAuthLogin_Action','reset'); - Helper::addRoute('auth-bind',__TYPECHO_ADMIN_DIR__.'QuickAuthLogin/auth-bind','QuickAuthLogin_Action','authbind'); - } public static function updateDb() @@ -47,8 +36,7 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { if ("Pdo_Mysql" === $db->getAdapterName() || "Mysql" === $db->getAdapterName()) { $sql = "ALTER TABLE `{$prefix}users` ADD COLUMN `qa_openid` varchar(64); ALTER TABLE `{$prefix}users` ADD COLUMN `qa_nickname` varchar(64); - ALTER TABLE `{$prefix}users` ADD COLUMN `qa_avatar` varchar(255); - "; + ALTER TABLE `{$prefix}users` ADD COLUMN `qa_avatar` varchar(255);"; $db->query($sql); } else { throw new Typecho_Plugin_Exception(_t('对不起, 本插件仅支持MySQL数据库。')); @@ -67,7 +55,6 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { */ public static function deactivate(){ $info = self::uninstallDb(); - } @@ -77,15 +64,11 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { $prefix = $db->getPrefix(); $sql = "ALTER TABLE `{$prefix}users` DROP COLUMN `qa_openid`; ALTER TABLE `{$prefix}users` DROP COLUMN `qa_nickname`; - ALTER TABLE `{$prefix}users` DROP COLUMN `qa_avatar`; - "; + ALTER TABLE `{$prefix}users` DROP COLUMN `qa_avatar`;"; $db->query($sql); - Helper::removePanel(1, 'QuickAuthLogin/views/authbind.php'); - - - return "数据表删除字段成功!"; + return "插件卸载成功!"; } /** @@ -97,8 +80,7 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { * @return void */ public static function config(Typecho_Widget_Helper_Form $form){ - - + $user = Typecho_Widget::widget('Widget_User'); //var_dump($user); @@ -108,18 +90,13 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface { $appkey = new Typecho_Widget_Helper_Form_Element_Text('qauth_app_key',null,'',_t('AppKey:'),_t('QuickAuth后台创建应用时的AppKey 获取AppKey')); //var_dump($appkey); $form->addInput($appkey); + $encryptscrypt = new Typecho_Widget_Helper_Form_Element_Text('qauth_user_secret',null,'',_t('UserSecret:'),_t('QuickAuth用户的数据加密密钥 获取UserSecret')); $form->addInput($encryptscrypt); - $off = new Typecho_Widget_Helper_Form_Element_Radio('off',array('0'=>'开启','1'=>'关闭'),0,_t('账户密码登录:',''),'默认开启,如需关闭,请确保账号已经绑定微信,否则将无法正常登录后台;如果出现这种情况,请重装插件解决!'); - $form->addInput($off); - $allowRegister = new Typecho_Widget_Helper_Form_Element_Radio('allow_register',array('0'=>'否','1'=>'是'),0,_t('允许未绑定微信账号扫码登录:',''),'开启后使用没有绑定账号的微信扫码后自动注册新账号登录!'); $form->addInput($allowRegister); - $users = new Typecho_Widget_Helper_Form_Element_Radio('users',array('0'=>'否','1'=>'是'),0,_t('非管理员启用:',''),'启用后在导航栏增加微信账号绑定入口'); - $form->addInput($users); - $username = $user->__get('name'); $openid = $user->__get('qa_openid'); $nickname = $user->__get('qa_nickname'); @@ -132,7 +109,7 @@ class QuickAuthLogin_Plugin implements Typecho_Plugin_Interface {
在此页面中配置 AppKey和UserSecret
已绑微信: echo $nickName;?>
-尚未绑定微信账号
已绑微信: echo $nickName;?>
+尚未绑定微信账号