2011-07-13 08:00:06 +00:00
|
|
|
<?
|
|
|
|
authorize();
|
2013-05-05 08:00:31 +00:00
|
|
|
if (!check_perms('site_moderate_forums')) {
|
2011-07-13 08:00:06 +00:00
|
|
|
error(404);
|
|
|
|
}
|
|
|
|
|
|
|
|
$ThreadID = $_GET['threadid'];
|
|
|
|
$PollOption = $_GET['vote'];
|
|
|
|
|
2013-05-05 08:00:31 +00:00
|
|
|
if (is_number($ThreadID) && is_number($PollOption)) {
|
2013-07-10 00:08:53 +00:00
|
|
|
$DB->query("
|
|
|
|
SELECT ForumID
|
|
|
|
FROM forums_topics
|
|
|
|
WHERE ID = $ThreadID");
|
2011-07-13 08:00:06 +00:00
|
|
|
list($ForumID) = $DB->next_record();
|
2013-05-05 08:00:31 +00:00
|
|
|
if (!in_array($ForumID, $ForumsRevealVoters)) {
|
2011-07-13 08:00:06 +00:00
|
|
|
error(403);
|
|
|
|
}
|
|
|
|
|
2013-07-10 00:08:53 +00:00
|
|
|
$DB->query("
|
|
|
|
SELECT Answers
|
|
|
|
FROM forums_polls
|
|
|
|
WHERE TopicID = $ThreadID");
|
|
|
|
if (!$DB->has_results()) {
|
2011-07-13 08:00:06 +00:00
|
|
|
error(404);
|
|
|
|
}
|
|
|
|
|
|
|
|
list($Answers) = $DB->next_record(MYSQLI_NUM, false);
|
|
|
|
$Answers = unserialize($Answers);
|
|
|
|
unset($Answers[$PollOption]);
|
|
|
|
$Answers = serialize($Answers);
|
|
|
|
|
2013-05-05 08:00:31 +00:00
|
|
|
$DB->query("
|
|
|
|
UPDATE forums_polls
|
|
|
|
SET Answers = '".db_string($Answers)."'
|
|
|
|
WHERE TopicID = $ThreadID");
|
|
|
|
$DB->query("
|
|
|
|
DELETE FROM forums_polls_votes
|
|
|
|
WHERE Vote = $PollOption
|
|
|
|
AND TopicID = $ThreadID");
|
2011-07-13 08:00:06 +00:00
|
|
|
|
2013-07-10 00:08:53 +00:00
|
|
|
$Cache->delete_value("polls_$ThreadID");
|
|
|
|
header("Location: forums.php?action=viewthread&threadid=$ThreadID");
|
2011-07-13 08:00:06 +00:00
|
|
|
} else {
|
|
|
|
error(404);
|
|
|
|
}
|