Лавка ОВК Тестерс: Начало

Теперь модератор может начислять голоса при изменении статуса/приоритета отчета
This commit is contained in:
n1rwana 2022-08-20 21:45:28 +03:00
parent 1edaa06710
commit 08859fadd8
2 changed files with 22 additions and 0 deletions

View file

@ -70,10 +70,15 @@ final class BugtrackerPresenter extends OpenVKPresenter
$status = $this->postParam("status");
$comment = $this->postParam("text");
$points = $this->postParam("points-count");
$list = ["Открыт", "На рассмотрении", "В работе", "Исправлен", "Закрыт", "Требует корректировки", "Заблокирован", "Отклонён"];
$report = (new BugtrackerReports)->get($report_id);
$report->setStatus($status);
if ($points)
DB::i()->getContext()->query("UPDATE `profiles` SET `coins` = `coins` + " . $points . " WHERE `id` = " . $report->getReporter()->getId());
$report->save();
$this->createComment($report, $comment, "Новый статус отчёта — $list[$status]", TRUE);
@ -87,10 +92,15 @@ final class BugtrackerPresenter extends OpenVKPresenter
$priority = $this->postParam("priority");
$comment = $this->postParam("text");
$points = $this->postParam("points-count");
$list = ["Пожелание", "Низкий", "Средний", "Высокий", "Критический", "Уязвимость"];
$report = (new BugtrackerReports)->get($report_id);
$report->setPriority($priority);
if ($points)
DB::i()->getContext()->query("UPDATE `profiles` SET `coins` = `coins` + " . $points . " WHERE `id` = " . $report->getReporter()->getId());
$report->save();
$this->createComment($report, $comment, "Новый приоритет отчёта — $list[$priority]", TRUE);

View file

@ -481,6 +481,12 @@ function showBtStatusChangeDialog(report, hash) {
<br>
<h4>Вы можете прокомментировать изменение статуса</h4>
<textarea name="text" style="width: 100%;resize: vertical;"></textarea>
<br><br>
<div style="display: flex;">
Начислить
<input style="width: 45px; height: 9px;" type="number" name="points-count" value="0">
голосов
</div>
<input type="hidden" name="hash" value="${hash}" />
</form>
`, ["Сохранить", tr("cancel")], [
@ -524,6 +530,12 @@ function showBtPriorityChangeDialog(report, hash) {
<br>
<h4>Вы можете прокомментировать изменение приоритета</h4>
<textarea name="text" style="width: 100%;resize: vertical;"></textarea>
<br><br>
<div style="display: flex;">
Начислить
<input style="width: 45px; height: 9px;" type="number" name="points-count" value="0">
голосов
</div>
<input type="hidden" name="hash" value="${hash}" />
</form>
`, ["Сохранить", tr("cancel")], [