admin: Add availability to delete comments one by one.
This commit is contained in:
parent
178208380f
commit
1b01bcc6b6
@ -55,6 +55,7 @@ if (!$poll) {
|
|||||||
// -------------------------------
|
// -------------------------------
|
||||||
// Update poll info
|
// Update poll info
|
||||||
// -------------------------------
|
// -------------------------------
|
||||||
|
|
||||||
if (isset($_POST['update_poll_info'])) {
|
if (isset($_POST['update_poll_info'])) {
|
||||||
$updated = false;
|
$updated = false;
|
||||||
$field = $inputService->filterAllowedValues($_POST['update_poll_info'], ['title', 'admin_mail', 'comment', 'rules']);
|
$field = $inputService->filterAllowedValues($_POST['update_poll_info'], ['title', 'admin_mail', 'comment', 'rules']);
|
||||||
@ -107,6 +108,19 @@ if (isset($_POST['update_poll_info'])) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// -------------------------------
|
||||||
|
// Delete a comment
|
||||||
|
// -------------------------------
|
||||||
|
if (!empty($_POST['delete_comment'])) {
|
||||||
|
$comment_id = filter_input(INPUT_POST, 'delete_comment', FILTER_VALIDATE_INT);
|
||||||
|
|
||||||
|
if ($pollService->deleteComment($poll_id, $comment_id)) {
|
||||||
|
$message = new Message('success', _('Comment deleted.'));
|
||||||
|
} else {
|
||||||
|
$message = new Message('danger', _('Failed to delete the comment.'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Retrieve data
|
// Retrieve data
|
||||||
$slots = $pollService->allSlotsByPollId($poll_id);
|
$slots = $pollService->allSlotsByPollId($poll_id);
|
||||||
$votes = $pollService->allUserVotesByPollId($poll_id);
|
$votes = $pollService->allUserVotesByPollId($poll_id);
|
||||||
|
@ -112,4 +112,9 @@ class FramaDB
|
|||||||
return $prepared->execute([$poll_id, $name, $comment]);
|
return $prepared->execute([$poll_id, $name, $comment]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function deleteComment($poll_id, $comment_id) {
|
||||||
|
$prepared = $this->prepare('DELETE FROM comments WHERE id_sondage = ? AND id_comment = ?');
|
||||||
|
return $prepared->execute([$poll_id, $comment_id]);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -64,6 +64,10 @@ class PollService {
|
|||||||
return $this->connect->insertComment($poll_id, $name, $comment);
|
return $this->connect->insertComment($poll_id, $name, $comment);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function deleteComment($poll_id, $comment_id) {
|
||||||
|
return $this->connect->deleteComment($poll_id, $comment_id);
|
||||||
|
}
|
||||||
|
|
||||||
function computeBestMoments($votes) {
|
function computeBestMoments($votes) {
|
||||||
$result = [];
|
$result = [];
|
||||||
foreach ($votes as $vote) {
|
foreach ($votes as $vote) {
|
||||||
|
@ -1,20 +1,24 @@
|
|||||||
<hr role="presentation" id="comments"/>
|
<hr role="presentation" id="comments"/>
|
||||||
|
<form action="#comments" method="POST">
|
||||||
|
|
||||||
{* Comment list *}
|
{* Comment list *}
|
||||||
|
|
||||||
{if $comments|count > 0}
|
{if $comments|count > 0}
|
||||||
|
<h3>{_("Comments of polled people")}</h3>
|
||||||
{foreach $comments as $comment}
|
{foreach $comments as $comment}
|
||||||
<div class="comment">
|
<div class="comment">
|
||||||
|
{if $admin}
|
||||||
|
<button type="submit" name="delete_comment" value="{$comment->id_comment}" class="btn btn-link" title="{_('Remove the comment')}"><span class="glyphicon glyphicon-remove text-danger"></span><span class="sr-only">{_('Remove')}</span></button>
|
||||||
|
{/if}
|
||||||
<b>{$comment->usercomment}</b>
|
<b>{$comment->usercomment}</b>
|
||||||
<span class="comment">{nl2br($comment->comment)}</span>
|
<span class="comment">{nl2br($comment->comment)}</span>
|
||||||
</div>
|
</div>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
{* Add comment form *}
|
{* Add comment form *}
|
||||||
{if $active}
|
{if $active}
|
||||||
<div class="hidden-print alert alert-info">
|
<div class="hidden-print alert alert-info">
|
||||||
<form action="{$poll_id|poll_url}#comments" method="POST">
|
|
||||||
<div class="col-md-6 col-md-offset-3">
|
<div class="col-md-6 col-md-offset-3">
|
||||||
<fieldset id="add-comment"><legend>{_("Add a comment to the poll")}</legend>
|
<fieldset id="add-comment"><legend>{_("Add a comment to the poll")}</legend>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
@ -31,6 +35,6 @@
|
|||||||
</fieldset>
|
</fieldset>
|
||||||
</div>
|
</div>
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
</form>
|
</div>
|
||||||
</div>
|
{/if}
|
||||||
{/if}
|
</form>
|
Loading…
Reference in New Issue
Block a user