Beispiel #1
0
 /**
  * Displays homepage.
  *
  * @return mixed
  */
 public function actionIndex()
 {
     $info = ZCommonSessionFun::get_user_session();
     ZCommonFun::print_r_debug($info);
     exit;
     return $this->render('index');
 }
Beispiel #2
0
 /**
  * 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;
 }
Beispiel #3
0
    /**
     * 指定用户关注的人
     *
     * @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'])]);
    }
Beispiel #4
0
 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,
     //         ]);
 }
Beispiel #8
0
 /**
  * 注册
  */
 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;
 }
Beispiel #9
0
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>    
Beispiel #10
0
 /**
  * 分数型测试结果保存
  * @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]);
 }
Beispiel #12
0
                 <?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>