Ejemplo n.º 1
0
 /**
  * 修改问题
  * @date: 2016-1-12 
  * @author: futao
  */
 public function editAction()
 {
     $this->setLeftNav('edit');
     $req = $this->request;
     if (!$req->isPost()) {
         $id = intval($req->getQuery('id', null, 0));
         if ($id != '') {
             $info = Question::findFirst('question_id = ' . $id . ' and question_state = 1');
         }
         if (!$info) {
             echo "无效!";
             exit;
         }
         $user = UserBase::findFirst('user_id =' . $info->user_id);
         if (unserialize(base64_decode($info->question_content))) {
             $info->question_content = unserialize(base64_decode($info->question_content));
         }
         if (json_decode($info->question_pics)) {
             $info->question_pics = json_decode($info->question_pics);
         }
         //全部标签
         $allTag = BeautyParlorTagInfo::find("parent_id != 0");
         //已选择标签
         $questionTag = QuestionTag::find('question_id = ' . $info->question_id);
         //选择的标签转换成字符串
         foreach ($questionTag as $k => $v) {
             if ($k == 0) {
                 $tagIds = $v->tag_id;
             } else {
                 $tagIds = $tagIds . "," . $v->tag_id;
             }
         }
         $this->view->setVar('question_tag', $questionTag);
         $this->view->setVar('alltag', $allTag);
         $this->view->setVar('user', $user);
         $this->view->setVar('info', $info);
         $this->view->setVar('tagids', $tagIds);
         return;
     }
     $this->view->disable();
     $echo = function ($msg, $state = false) {
         echo '<script type="text/javascript">';
         echo 'parent.formResult("' . $msg . '", ' . ($state ? 1 : 0) . ')';
         echo '</script>';
     };
     $question_id = $req->getPost('question_id', null, 0);
     $question_browsers = $req->getPost('question_browsers', null, 0);
     $questionTag = $req->getPost('question_tag', null, '');
     //修改标签
     if ($questionTag != '' && is_array($questionTag)) {
         QuestionTag::find("question_id = {$question_id}")->delete();
         foreach ($questionTag as $val) {
             unset($tagId);
             unset($tagName);
             $tagArr = explode(',', $val);
             $tagId = $tagArr[0];
             $tagName = $tagArr[1];
             $tagNameArr[] = $tagName;
             $questionTagModel = new QuestionTag();
             $questionTagModel->question_id = $question_id;
             $questionTagModel->tag_id = $tagId;
             $questionTagModel->tag_name = $tagName;
             $questionTagModel->save();
         }
     }
     $allTag = BeautyParlorTagInfo::find("parent_id != 0")->toArray();
     if ($question_id > 0 && $question_browsers >= 0) {
         $questionModel = Question::findFirst("question_id = {$question_id} and question_state = 1");
         //////////////////////////question_tag字段重新赋值
         if (json_decode($questionModel->question_tag)) {
             $questionTagArr = json_decode($questionModel->question_tag);
             foreach ($allTag as $k => $v) {
                 foreach ($questionTagArr as $key => $val) {
                     if ($questionTagArr[$key] == $allTag[$k]['tag_title']) {
                         unset($questionTagArr[$key]);
                     }
                 }
             }
         }
         $questionTagArr = array_values($questionTagArr);
         foreach ($tagNameArr as $v) {
             $questionTagArr[] = $v;
         }
         ////////////////////////////////////////////////////////////
         $questionModel->question_tag = json_encode(array_unique($questionTagArr));
         $questionModel->question_browsers = $question_browsers;
         if ($questionModel->save()) {
             $echo("修改成功!", true);
         } else {
             $echo("修改失败!");
         }
     } else {
         $echo("参数错误!");
     }
 }
Ejemplo n.º 2
0
 public function listAction()
 {
     $this->view->setVar('data', QuestionTag::find());
 }