Fix stupid break in adminstuds

This commit is contained in:
Olivier PEREZ 2015-10-28 22:11:00 +01:00
parent 6d8353b652
commit 15640a6788
3 changed files with 19 additions and 1 deletions

View File

@ -91,7 +91,7 @@ if (!empty($_GET['poll'])) {
$admin_poll_id = filter_input(INPUT_GET, 'poll', FILTER_VALIDATE_REGEXP, ['options' => ['regexp' => POLL_REGEX]]);
if (strlen($admin_poll_id) === 24) {
$poll_id = substr($admin_poll_id, 0, 16);
$poll = $pollService->findById($poll_id);
$poll = $pollService->findByAdminId($admin_poll_id);
}
}

View File

@ -29,6 +29,16 @@ class PollRepository extends AbstractRepository {
return $poll;
}
public function findByAdminId($admin_poll_id) {
$prepared = $this->prepare('SELECT * FROM `' . Utils::table('poll') . '` WHERE admin_id = ?');
$prepared->execute(array($admin_poll_id));
$poll = $prepared->fetch();
$prepared->closeCursor();
return $poll;
}
public function existsById($poll_id) {
$prepared = $this->prepare('SELECT 1 FROM `' . Utils::table('poll') . '` WHERE id = ?');

View File

@ -56,6 +56,14 @@ class PollService {
return null;
}
public function findByAdminId($admin_poll_id) {
if (preg_match('/^[\w\d]{24}$/i', $admin_poll_id)) {
return $this->pollRepository->findByAdminId($admin_poll_id);
}
return null;
}
function allCommentsByPollId($poll_id) {
return $this->commentRepository->findAllByPollId($poll_id);
}