Beispiel #1
0
 public function actionAction()
 {
     $criteria = new CDbCriteria();
     $criteria->condition = '`key`=:key';
     $criteria->params = array(':key' => Globals::SETTING_KEY_MENU);
     $criteria->order = 'created_at desc';
     $criteria->limit = '1';
     //var_dump( $criteria);exit;
     $setting = SettingModel::model()->find($criteria);
     $this->layout = '/layouts/memberList';
     $menu = MenuactionModel::model()->getTree($this->wechatInfo->id);
     $this->render('action', array('menu' => $menu, 'wechatId' => $this->wechatInfo->id, 'setting' => $setting));
 }
Beispiel #2
0
 public static function getJsToken($wechatId)
 {
     $msg = '参数有误';
     $tokenValue = '';
     $tokenModel = SettingModel::model()->find("wechatId = :wechatId and `key`=:key", array(':wechatId' => $wechatId, ':key' => Globals::SETTING_KEY_JS_TOKEN));
     if ($tokenModel) {
         if (time() - $tokenModel->created_at < WechatToken::EXPIRES_IN) {
             $tokenValue = $tokenModel->value;
         }
     }
     if (!$tokenValue) {
         $jsToken = WechatToken::getJsToken($tokenValue);
         if ($jsToken['status'] == WechatToken::OK) {
             $tokenValue = $jsToken['result'];
             //update token
             if (!$tokenModel) {
                 $tokenModel = new SettingModel();
                 $tokenModel->wechatId = $wechatId;
                 $tokenModel->key = Globals::SETTING_KEY_JS_TOKEN;
             }
             $tokenModel->value = $tokenValue;
             $tokenModel->created_at = time();
             $tokenModel->save();
         } else {
             $msg = $jsToken['result'];
         }
     }
     return array('tokenValue' => $tokenValue, 'msg' => $msg);
 }
Beispiel #3
0
 private function _getToken($wechatId)
 {
     $msg = '参数有误';
     $tokenValue = '';
     $tokenModel = SettingModel::model()->find("wechatId = :wechatId and `key`=:key", array(':wechatId' => $wechatId, ':key' => Globals::SETTING_KEY_ACCESS_TOKEN));
     if ($tokenModel) {
         if (time() - $tokenModel->created_at < WechatToken::EXPIRES_IN) {
             $tokenValue = $tokenModel->value;
         }
     }
     if (!$tokenValue) {
         $wechat = WechatModel::model()->findByPk($wechatId);
         $appid = $wechat->appid;
         $secret = $wechat->secret;
         //$tokenObj = new WechatToken($appid, $secret);
         $token = WechatToken::getToken($appid, $secret);
         if ($token['status'] == WechatToken::OK) {
             $tokenValue = $token['result'];
             //update token
             if (!$tokenModel) {
                 $tokenModel = new SettingModel();
                 $tokenModel->wechatId = $wechatId;
                 $tokenModel->key = Globals::SETTING_KEY_ACCESS_TOKEN;
             }
             $tokenModel->value = $tokenValue;
             $tokenModel->created_at = time();
             $tokenModel->save();
         } else {
             $msg = $token['result'];
         }
     }
     return array('tokenValue' => $tokenValue, 'msg' => $msg);
 }