Ejemplo n.º 1
0
 public function voteReportAction()
 {
     if ($this->_request->isXmlHttpRequest() && $this->_request->isPost()) {
         $typeId = $this->getParam("typeId");
         $voteType = $this->getParam("voteType");
         $gpjSession = new XF_Session("gpj_vote");
         if (!$gpjSession->isEmpty()) {
             if (in_array($typeId, $gpjSession->read())) {
                 die('{"code": "101"}');
             }
         }
         $cookie = new XF_Cookie("gpj_vote");
         $cookieAry = array();
         if (!$cookie->isEmpty()) {
             $cookieAry = explode(",", $cookie->read());
             if (in_array($typeId, $cookieAry)) {
                 die('{"code": "101"}');
             }
         }
         $vote = new Report_Model_Vote();
         $reportVote = $vote->getVoteByTypeId($typeId);
         if ($reportVote) {
             if ($voteType == "right") {
                 $voteAry["right_vote"] = $reportVote->right_vote + 1;
             } elseif ($voteType == "noright") {
                 $voteAry["noright_vote"] = $reportVote->noright_vote + 1;
             }
             $res = $vote->upVoteById($reportVote->id, $voteAry);
         } else {
             if ($voteType == "right") {
                 $voteAry["right_vote"] = 1;
                 $voteAry["noright_vote"] = 0;
             } elseif ($voteType == "noright") {
                 $voteAry["right_vote"] = 0;
                 $voteAry["noright_vote"] = 1;
             }
             $voteAry["car_id"] = $typeId;
             $res = $vote->addVote($voteAry);
         }
         if ($res) {
             $cookieAry[] = $typeId;
             $cookie->write(implode(",", $cookieAry), 86400);
             if (!$gpjSession->isEmpty()) {
                 $gpjAry = $gpjSession->read();
                 $gpjAry[] = $typeId;
             }
             $gpjSession->write($gpjAry);
             die('{"code":"200"}');
         }
     }
 }