| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- namespace app\cmgadm\controller\general;
- use app\cmgadm\model\Admin;
- use app\common\controller\Backend;
- use app\common\model\Config;
- /**
- * 谷歌验证码
- *
- * @icon fa fa-user
- */
- class Googlecode extends Backend
- {
- /**
- * @return string|\think\response\Json
- * @throws \think\Exception
- * @throws \think\db\exception\DataNotFoundException
- * @throws \think\db\exception\ModelNotFoundException
- * @throws \think\exception\DbException
- */
- public function index(){
- $google = new \PHPGangsta_GoogleAuthenticator();
- $admin = Admin::where(['id'=> $this->auth->id])->field('id,username,nickname,google_key')->find();
- $googleKey = isset($admin['google_key'])? $admin['google_key'] : '';
- if(empty($googleKey)){
- $secret = $google->createSecret();
- Admin::where(['id'=> $this->auth->id])->update(['google_key'=> $secret]);
- }
- $config = Config::getConfigByGroup('basic');
- $siteName = isset($config['name'])? $config['name']['value'] : '茶马古道';
- $qrcode = $google->getQRCodeGoogleUrl($admin['username'],$googleKey,$siteName);
- $this->view->assign('admin', $admin);
- $this->view->assign('qrcode', $qrcode);
- return $this->view->fetch();
- }
- /**
- * 绑定
- * @throws \think\db\exception\DataNotFoundException
- * @throws \think\db\exception\ModelNotFoundException
- * @throws \think\exception\DbException
- */
- public function bind()
- {
- $admin = Admin::where(['id'=> $this->auth->id])->field('id,username,nickname,google_key')->find();
- }
- }
|