/** * Displays homepage. * * @return mixed */ public function actionIndex() { $info = ZCommonSessionFun::get_user_session(); ZCommonFun::print_r_debug($info); exit; return $this->render('index'); }
/** * qq回调地址 */ public function actionCallbackQq() { $qq = new QQ(); $access_token = $qq->qq_callback(); $zhao_uid = ZCommonSessionFun::get_user_id(); $zhao_uid = $zhao_uid > 0 ? $zhao_uid : ''; // ZCommonSessionFun::set_user_session($access_token); // exit; $openid = $qq->get_openid(); $qq = new QQ($access_token, $openid); $user_info = $qq->get_user_info(); $openid = $openid; $bind_info['openid'] = $openid; $bind_info['nickname'] = $user_info['nickname']; $bind_info['headimgurl'] = $user_info['figureurl']; ZCommonSessionFun::set_session('bind_info', $bind_info); ZCommonSessionFun::set_session('bind', OauthBind::typeQQ); //微信登陆类型 if (intval($zhao_uid) > 0) { return $this->redirect($this->bind_url); } else { ZCommonSessionFun::set_login_type(OauthBind::typeQQ); } return $this->redirect($this->bind_url); /* $model_User = new User(); $return = $model_User->userBind('', '', $zhao_uid, $openid, OauthBind::typeQQ, $user_info['nickname'], $user_info['figureurl'],true); //绑定成功或者已经绑定 if($return===0 || $return===1){ $user = $model_User->operationData['user']->attributes; $user['nickname'] = $model_User->operationData['user_profile']->nickname; $user['head_image'] = $model_User->operationData['user_profile']->head_image; $user['openid'] = $openid; ZCommonSessionFun::set_user_session($user); //qq登录类型 if(intval($zhao_uid)>0){ $bind_url = ['user-profile/bind-list']; return $this->redirect($bind_url); }else{ ZCommonSessionFun::set_login_type(OauthBind::typeQQ); } return $this->redirect([ZCommonSessionFun::urlMyStr]); } */ ZCommonFun::print_r_debug($model_User->operationData); exit; }
/** * 指定用户关注的人 * * @param integer $uid */ public function actionUidConcern($uid) { $login_uid = ZCommonSessionFun::get_user_id(); $this->layout = false; $uid = intval($uid); $this->view->title = User::getUidShowName($uid) . '关注的人'; $model = new UsersFriends(); $condition['uid'] = $uid; $data = $model->getList($condition, null, $this->pageSize); if (isset($_GET['ajax'])) { $status = 0; $html = ''; if (isset($_GET[$data['pagination']->pageParam]) && $data['pagination']->pageCount < $_GET[$data['pagination']->pageParam]) { $data['models'] = []; } $my_fans_uids = ZCommonFun::listData($data['models'], 'fuid', 'fuid'); $concer_data = []; if (count($my_fans_uids) > 0) { $my_fans_uids_str = implode(',', $my_fans_uids); $sql = <<<str select uf.uid uf_uid,uf.fuid fans /*我关注的人*/,( select count(id) from users_friends where uid=uf_uid and fuid={$login_uid} ) fans_is_concern_ta /*uf.uid关注了他 */ ,( select count(id) from users_friends where uid={$login_uid} and fuid=uf_uid )ta_is_concern_fans /* 他关注了uf.uid */ ,up.* from users_friends uf left join user_profile up on up.uid=uf.uid where uf.uid in({$my_fans_uids_str} ) group by uf.uid str; $query = new Query(); $concer_data = $query->createCommand()->setSql($sql)->queryAll(); } // ZCommonFun::print_r_debug($concer_data); // exit; // ZCommonFun::print_r_debug($data); foreach ($data['models'] as $key => $row) { $ta_url = Yii::$app->urlManager->createUrl(['my/personal-page', 'uid' => $row->fuid]); $ta_nickname = User::getDefaultTaNickname(); $ta_image = User::getDefaultHead_image(); $ta_intro = User::getDefaultTaIntro(); $concer_text = '关注'; $is_find = false; foreach ($concer_data as $key2 => $row2) { if ($row->fuid == $row2['uf_uid']) { !empty($row2['nickname']) ? $ta_nickname = $row2['nickname'] : null; !empty($row2['head_image']) ? $ta_image = $row2['head_image'] : null; !empty($row2['intro']) ? $ta_intro = $row2['intro'] : null; if ($row2['fans_is_concern_ta'] && $row2['ta_is_concern_fans']) { $url = ''; $concer_text = '相互关注'; } else { if ($row2['ta_is_concern_fans']) { $url = ''; $concer_text = '已关注'; } else { $url = Yii::$app->urlManager->createUrl(['my/concern', 'fuid' => $row->fuid]); } } $is_find = true; break; } } if (!$is_find) { $url = Yii::$app->urlManager->createUrl(['my/concern', 'fuid' => $row->fuid]); } $html .= <<<str <ul class="list" id="answer-view" style="margin:0;"> <li class="diy-item"><a \t\t\t\t\thref="{$ta_url}" \t\t\t\t\ttarget="_blank"> \t\t\t\t\t\t<figure class="cover"> \t\t\t\t\t\t\t<img src="{$ta_image}" \t\t\t\t\t\t\t\tclass="tuijian-img"> \t\t\t\t\t\t</figure> \t\t\t\t\t\t<div class="diy-meta"> \t\t\t\t<div class="title mui-ellipsis">{$ta_nickname}</div> \t\t\t\t<span class="iconfont icon-start-filled5"></span> \t\t\t\t<div class="desc mui-ellipsis">{$ta_intro}</div> \t\t\t</div> \t\t\t\t</a> \t<a url="{$url}" class="play concern" onclick="concern(this)" data-ui="danger small icon-right">{$concer_text}<i class="iconfont icon-right"></i> \t</a> \t\t\t\t </li> </ul> str; } echo $html; exit; } return $this->render('fans', ['uid' => $uid, 'ajax_url' => Yii::$app->urlManager->createUrl(['my/uid-concern', 'uid' => $uid, 'page' => '#page#', 'ajax' => '1'])]); }
public function actionTest2() { $params = ['blank/test2', 'id' => 2]; echo Yii::$app->urlManager->createUrl($params); ZCommonFun::print_r_debug($_SERVER); }
/** * 推荐 * * @return \yii\web\Response */ public function actionRecommend($id, $op) { $this->layout = false; $model = Survey::findOne($id); if (ZCommonSessionFun::get_user_id() < 1) { ZCommonFun::output_json(null, -1, '请登录'); } if (ZCommonSessionFun::get_role() != 1) { ZCommonFun::output_json(null, 2, '管理员才能操作'); } // 没有找到 if (!$model) { ZCommonFun::output_json(null, 1, '测试不存在'); $model = new Survey(); } // 推荐 $model->is_top = $op == 1 ? $_SERVER['REQUEST_TIME'] : 0; if ($model->save()) { ZCommonFun::output_json(null, 0, '操作成功'); } ZCommonFun::output_json(null, -2, '操作失败'); }
/** * 发布评论 */ public function actionAdd() { $id = Yii::$app->request->get('id', 0); $id = $id ? (int) $id : 0; $to_uid = Yii::$app->request->get('tid', 0); $to_uid = $to_uid ? (int) $to_uid : 0; $uid = ZCommonSessionFun::get_user_id(); $content = Yii::$app->request->get('content', ''); // if ($id < 1) // ZCommonFun::output_json(null, 1, '页面不存在'); /* * if($to_uid < 1 ) * ZCommonFun::output_json(null, 1, '页面不存在3'); */ if (empty($content)) { ZCommonFun::output_json(null, 2, '评论内容不能为空'); } if ($uid < 1) { ZCommonFun::output_json(null, -1, '请登录'); } if ($to_uid == $uid) { ZCommonFun::output_json(null, 3, '私信不能发给自己'); } $model_Message = new Message(); $model_Message->from_uid = $uid; $model_Message->to_uid = $to_uid; $model_Message->table = self::$messageTable; $model_Message->table_id = $id; $model_Message->add_time = NOW_TIME_YmdHis; $model_Message->content = $content; $model_Message->is_read = 0; $model_Message->parent_id = 0; $model_Message->title = ''; $model_Message->group_id = $uid . $to_uid; $model_Message->status = 0; // save success if ($model_Message->save()) { // $model_AnswerSurveyResulte = new AnswerSurveyResulte(); // $model_AnswerSurveyResulte->setcomment_count($model_Message->table_id); ZCommonFun::output_json(null, 0, '评论成功'); } else { ZCommonFun::output_json($model_Message->errors, -2, '评论失败'); } }
/** * 分数型问题回答2 */ public function actionStep2Answer2($id) { $this->layout = false; $model = Survey::findOne($id); if (!$model) { //没找到 $model = new Survey(); } if ($model->is_publish < 1) { $this->popupMessage($model->title . '未发布,不能测试'); exit; } $data = $model->FindAllQuestionsOptions($id); // ZCommonFun::print_r_debug($_POST); // exit; $posts = Yii::$app->request->post(); $error = ''; if (isset($posts['name'])) { is_array($posts['options']) ?: ($posts['options'] = array()); $op = count($posts['options']) > 0 ? true : false; $res = isset($posts['res']) ? intval($posts['res']) : 0; $res_model_SurveyResulte = $res > 0 ? SurveyResulte::findOne($res) : null; if ($res_model_SurveyResulte && $res_model_SurveyResulte->s_id == $id) { } else { $res_model_SurveyResulte = null; } $total_score = 0; $save = 0; $result = null; //保存结果 $transaction = Yii::$app->db->beginTransaction(); try { $name = isset($posts['name']) ? $posts['name'] : ''; $year = isset($posts['birth']['year']) ? $posts['birth']['year'] : 2015; $month = isset($posts['birth']['month']) ? $posts['birth']['month'] : '01'; $day = isset($posts['birth']['day']) ? $posts['birth']['day'] : '01'; $constellation = isset($posts['constellation']) ? intval($posts['constellation']) : 0; $constellation = $constellation > 0 && $constellation < 13 ? $constellation : 0; $birth = $year . '-' . $month . '-' . $day; $birth = date('Y-m-d', strtotime($birth)); $model_AnswerUser = new AnswerUser(); $model_AnswerUser->sid = $id; $model_AnswerUser->table = 'survey_resulte'; $res_model_SurveyResulte ? $model_AnswerUser->table_id = $res_model_SurveyResulte->sr_id : null; $model_AnswerUser->answer_name = $name; $model_AnswerUser->answer_age = $birth; $model_AnswerUser->constellation = $constellation; $model_AnswerUser->ip = self::getUserIP(); if (!$model_AnswerUser->save()) { $error = '用户操作失败'; $transaction->rollBack(); } else { foreach ($data['options'] as $key => $value) { foreach ($value as $option) { foreach ($posts['options'] as $question_id => $row) { //找到选项 if ($option->qo_id = $row[0]) { $model_Answer = new Answer(); $model_Answer->table_id = $id; $model_Answer->question_id = $option->question_id; $model_Answer->qo_id = $row[0]; $model_Answer->answer_score += $option->option_score; $model_Answer->au_id = $model_AnswerUser->au_id; $total_score += $model_Answer->answer_score; $model_Answer->save() ? $save++ : null; } } } } if ($save > 0) { $model_SurveyResulte = new SurveyResulte(); //如果直接选择了答案 if ($model_AnswerUser->table == 'survey_resulte' && $model_AnswerUser->table_id > 0) { $result = $res_model_SurveyResulte; // } else { $result = $model_SurveyResulte->getStep2Result($id, $model_AnswerUser->answer_score); } if ($result && !$res_model_SurveyResulte) { //保存回答者结果,防止用户更改数据导致结果丢失 $mode_AnswerSurveyResulte = new AnswerSurveyResulte(); $mode_AnswerSurveyResulte->attributes = $result->attributes; $mode_AnswerSurveyResulte->save(); $model_AnswerUser->table == 'answer_survey_resulte'; $model_AnswerUser->table_id = $mode_AnswerSurveyResulte->answer_sr_id; } $model_AnswerUser->save(); $transaction->commit(); //设置测试数量 $model->setAnswerCount($id); $model_UserProfile = new UserProfile(); $model_UserProfile->setTestCount($model_AnswerUser->uid); return $this->redirect(['resulte', 'au_id' => $model_AnswerUser->au_id]); } else { $error = '没有选项'; $transaction->rollBack(); } } } catch (\Exception $e) { $error = '事物异常'; ZCommonFun::print_r_debug($e); $transaction->rollBack(); } } $model_Users = null; $model_UsersProfile = null; if ($model->uid) { $zhao_condition['uid'] = $model->uid; $model_Users = User::findOne($zhao_condition); $model_UsersProfile = UserProfile::findOne($zhao_condition); } !$model_Users ? $model_Users = new User() : ''; !$model_UsersProfile ? $model_UsersProfile = new UserProfile() : ''; $model_UsersProfile->uid = $model->uid; // echo $error; // exit; // ZCommonFun::print_r_debug($result); $model_SurveyOperation = new SurveyOperation(); $models_SurveyOperation = $model_SurveyOperation->getIsTop(); return $this->render('step2answer3', ['models_SurveyOperation' => $models_SurveyOperation, 'data' => $data, 'model' => $model, 'error' => $error, 'posts' => $posts, 'image' => Survey::getImageUrl($model), 'model_Users' => $model_Users, 'model_UsersProfile' => $model_UsersProfile, 'randSurvey' => $this->getRandSurvey()]); // return $this->render('step2answer',[ // 'data'=>$data, // 'model'=>$model, // 'error'=>$error, // 'posts'=>$posts, // 'image'=>Survey::getImageUrl($model), // 'model_Users'=>$model_Users, // 'model_UsersProfile'=>$model_UsersProfile, // ]); }
/** * 注册 */ public function register() { $this->created = NOW_TIME_YmdHis; $this->flag = NOW_TIME_STAMP; if ($this->validate()) { $post_pass = $this->pass; $this->is_bind_user = 1; if ($this->save()) { $this->pass = ZCommonFun::getPass($post_pass); $this->save(); $userInfo = $this->attributes; isset($userInfo['role']) ? null : ($userInfo['role'] = 0); //角色 $userInfo['openidInfo'] = null; //第三方登录信息 ZCommonSessionFun::set_user_session($userInfo); // ZCommonFun::print_r_debug($this); // exit; return true; } return false; } return false; }
use yii\helpers\Html; use yii\widgets\ActiveForm; use common\models\User; use common\z\ZCommonFun; /* @var $model common\models\User */ ?> <div class="survey-form"> <?php $form = ActiveForm::begin(); ?> <?php echo $form->field($model, 'user')->textInput(['maxlength' => true]); ?> <?php echo $form->field($model, 'pass')->textInput(['maxlength' => true]); ?> <div class="form-group"> <button type="submit" class="btn btn-success">注册</button> </div> <div class="form-group"> <?php ZCommonFun::print_r_debug($model->errors); ?> </div> <?php ActiveForm::end(); ?> </div>
/** * 分数型测试结果保存 * @param unknown $post * @param unknown $condition * @param unknown $id */ public function step4_2SaveResulteCondition2($post, $condition, $id) { $post_data = []; $url = $error = ''; if (isset($post['name'][0])) { foreach ($post['name'] as $key => $name) { $value = isset($post['value'][$key]) ? $post['value'][$key] : ''; $intro = isset($post['intro'][$key]) ? $post['intro'][$key] : ''; $min = isset($post['score-min'][$key]) ? $post['score-min'][$key] : 1; $max = isset($post['score-max'][$key]) ? $post['score-max'][$key] : 1; $temp = $min > $max ? $min : $max; if ($min > $max) { $temp = $min; $min = $max; $max = $temp; } if ($max > 0 && $min > 0 && !empty($value) && isset($name[0])) { $post_data[$key]['name'] = $value; $post_data[$key]['value'] = $value; $post_data[$key]['intro'] = $intro; $post_data[$key]['sr-id'] = isset($post['sr-id'][$key]) ? $post['sr-id'][$key] : null; $post_data[$key]['min'] = $min; $post_data[$key]['max'] = $max; } } // ZCommonFun::print_r_debug($post_data); // ZCommonFun::print_r_debug($post); // exit(); //有结果 if ($post_data) { //保存结果 $transaction = Yii::$app->db->beginTransaction(); //删除结果 $deleteSurveyResulte = new SurveyResulte(); $deleteAll = $deleteSurveyResulte->getAll($id); isset($deleteAll[0]) ? null : ($deleteAll = []); $sr_ids = ZCommonFun::listData($deleteAll, 'sr_id', 'sr_id'); $save = 0; try { foreach ($post_data as $key => $row) { if (isset($row['sr-id']) && $row['sr-id'] > 0) { $row_SurveyResulte = SurveyResulte::findOne($row['sr-id']); if ($row_SurveyResulte) { //结果存在,就不删除 unset($sr_ids[$row['sr-id']]); if ($row_SurveyResulte->s_id != $id) { continue; } $save++; } else { $row_SurveyResulte = new SurveyResulte(); } } else { $row_SurveyResulte = new SurveyResulte(); } $row_SurveyResulte->score_max = $row['max']; $row_SurveyResulte->score_min = $row['min']; $row_SurveyResulte->name = $row['name']; $row_SurveyResulte->value = $row['value']; $row_SurveyResulte->intro = $row['intro']; $row_SurveyResulte->value = $row['value']; $row_SurveyResulte->value = $row['value']; $row_SurveyResulte->uid = ZCommonSessionFun::get_user_id(); $row_SurveyResulte->s_id = $id; $row_SurveyResulte->save() ? $save++ : null; } if ($save > 0) { $condition = null; if (count($sr_ids) > 0) { $condition['sr_id'] = $sr_ids; $condition['s_id'] = $id; //删除所有结果 SurveyResulte::deleteAll($condition); } $transaction->commit(); $url = ['my']; } // ZCommonFun::print_r_debug($sr_ids); // ZCommonFun::print_r_debug($post_data); // exit; $url = ['my']; } catch (\Exception $e) { // ZCommonFun::print_r_debug($e); $transaction->rollBack(); } } } return $url; }
/** * 绑定账号 */ public function actionBindAccount() { $this->layout = false; $old_login_uid = ZCommonSessionFun::get_user_id(); if (ZCommonSessionFun::get_user_id() < 1) { $url = Yii::$app->urlManager->createUrl([ZCommonSessionFun::urlLoginUserStr]); return $this->redirect($url); } $model = new User(); if (isset($_POST['User']['user']) && isset($_POST['op'])) { $post = $_POST['User']; $user = isset($post['user']) ? $post['user'] : ''; $pass = isset($post['pass']) ? $post['pass'] : ''; $post = $_POST['User']; //已有账户绑定 if ($_POST['op'] == 1) { $condition['user'] = $user; $model_find = new User(); $model_find = $model_find->find()->where($condition)->one(); if (!$model_find) { $model->addError('user', '用户没有找到'); } else { if ($model_find->pass != ZCommonFun::getPass($pass)) { $model->addError('pass', '密码错误'); } else { if ($model_find->is_bind_user == 1) { $model->addError('user', '账户已被绑定过'); } else { $connection = Yii::$app->db; $transaction = $connection->beginTransaction(); try { $model_find->is_bind_user = 1; $model_find->save(); $model_Oauth = new OauthBind(); $model_Oauth_condition['uid'] = $old_login_uid; $model_Oauth_attributes['uid'] = $model_find->uid; $model_Oauth->updateAll($model_Oauth_attributes, $model_Oauth_condition); $transaction->commit(); ZCommonSessionFun::set_user_session($model_find->attributes); $url = Yii::$app->urlManager->createUrl(['user-profile/bind-list']); return $this->redirect($url); } catch (\Exception $e) { $transaction->rollBack(); $model->addError('user', '绑定失败'); } } } } } else { $model->pass = ZCommonFun::getPass($model->pass); $model = $model->findOne(ZCommonSessionFun::get_user_id()); if ($model) { $model->user = $user; $model->pass = ZCommonFun::getPass($pass); $model->is_bind_user = 1; if ($model->save()) { ZCommonSessionFun::set_user_session($model->attributes); $url = Yii::$app->urlManager->createUrl(['user-profile/bind-list']); return $this->redirect($url); } } else { $model = new User(); $model->user = $user; $model->pass = $pass; $model->addError('user', '用户已被删除'); } } } return $this->render('bind-account', ['model' => $model]); }
<?php } ?> <?php $index = 0; foreach ($result_all as $key => $result) { $index++; $row_change_result_url = Yii::$app->urlManager->createUrl(['survey/step4_2', 'id' => $model->id, 'page' => $index]); $name = $result->name; $name = ZCommonFun::replace_filter_words($name, $replace_prefix, $replace_self, $replace_suffix, $replace, $replace_count); $error_name = !empty($name) ? '' : '姓名之前不能为空'; $value = $result->value; $value = ZCommonFun::replace_filter_words($value, $replace_prefix, $replace_self, $replace_suffix, $replace, $replace_count); $error_value = !empty($value) ? '' : '姓名之后不能为空'; $intro = $result->intro; $intro = ZCommonFun::replace_filter_words($intro, $replace_prefix, $replace_self, $replace_suffix, $replace, $replace_count); $error_intro = !empty($intro) ? '' : '结果详情不能为空'; $image = $result->image; $error_image = !empty($image) ? '' : '图片不能为空'; $image = SurveyResulte::getImageUrl($result); $score_text = ''; if ($model->tax == 2) { $score_text = '' . $result->score_min . '分~~' . $result->score_max . '分'; } ?> <section class="layout"> <section data-bcless="lighten"> <h2><?php echo '结果', $index; ?> </h2>