コード例 #1
0
ファイル: Article.php プロジェクト: alphadevx/alpha
 /**
  * Method to determine if the logged-in user has already voted for this article.
  *
  * @return bool True if they have voted already, false otherwise
  *
  * @since 1.0
  *
  * @throws Alpha\Exception\AlphaException
  */
 public function checkUserVoted()
 {
     $config = ConfigProvider::getInstance();
     $sessionProvider = $config->get('session.provider.name');
     $session = SessionProviderFactory::getInstance($sessionProvider);
     // just going to return true if nobody is logged in
     if ($session->get('currentUser') == null) {
         return true;
     }
     $userID = $session->get('currentUser')->getID();
     $vote = new ArticleVote();
     $sqlQuery = 'SELECT COUNT(*) AS usersVote FROM ' . $vote->getTableName() . " WHERE articleOID='" . $this->OID . "' AND personOID='" . $userID . "';";
     $result = $this->query($sqlQuery);
     if (!isset($result[0])) {
         throw new AlphaException('Failed to check if the current user voted for the article [' . $this->OID . '], query [' . $sqlQuery . ']');
         return false;
     }
     $row = $result[0];
     if ($row['usersVote'] == '0') {
         return false;
     } else {
         return true;
     }
 }