public static function ajaxVoterTweet($request, $context) { try { // On cherche le tweet $tweet = tweetTable::getTweetById($request["id"]); if (is_null($tweet)) { throw new Exception("Erreur pour voter un tweet. Le tweet n'existe pas."); } // On ajoute la relation avant de continuer $dataVote = array("message" => $tweet->id, "utilisateur" => context::getSessionAttribute("utilisateur")->id); $vote = new vote($dataVote); if (is_null($vote->save())) { throw new Exception("Il y a eu une erreur pour enregistrer le vote."); } // S'il ny a pas de soucis, on actualise le tweet $tweet->nbvotes++; if (is_null($tweet->save())) { throw new Exception("Il y a eu une erreur pour actualiser le nombre de votes."); } // On affiche la nouvelle quantité de votes context::setSessionAttribute("tweetTemplate", $tweet); context::setSessionAttribute("succes", "On a bien enregistré ton vote"); return context::SUCCESS; } catch (Exception $e) { context::setSessionAttribute("erreur", $e); return context::ERROR; } }
public static function vote($request, $context) { //print_r($request); if (!empty($request['idtweet']) && $context->getSessionAttribute('is_logged') == 1) { $voteInfo['message'] = $request['idtweet']; $voteInfo['utilisateur'] = $_SESSION['id']; $vote = new vote($voteInfo); $vote->save(); $tweetInfo['id'] = $request['idtweet']; $nbVotes = vote::getVote($request['idtweet']); //print_r($nbVotes); $tweetInfo['nbVotes'] = $nbVotes[0]['count']; $tweet = new tweet($tweetInfo); $tweet->save(); context::redirect(history . back()); return context::SUCCESS; } return context::ERROR; }