openvk/Web/Presenters/templates/Bugtracker/View.xml

107 lines
5 KiB
XML
Raw Normal View History

2022-08-20 20:30:04 +03:00
{extends "../@layout.xml"}
{block title}Отчёт #{$bug->getId()}{/block}
{block header}
<a href="/bugtracker">Баг-трекер</a>
» Отчёт #{$bug->getId()}
{/block}
{block content}
{if $bug}
<h4>{$bug->getCanonicalName()}</h4>
<div class="avatar-list-item" style="padding: 8px;">
<div class="avatar">
<a href="/bugtracker?act=reporter&id={$reporter->getId()}">
<img class="ava" src="{$reporter->getAvatarURL()}">
</a>
</div>
<div class="info" style="width: 92%">
<a href="/bugtracker?act=reporter&id={$reporter->getId()}" class="title">{$reporter->getCanonicalName()}</a>
<div class="subtitle">создано: {$bug->getCreationDate()}</div>
</div>
</div>
<hr color="#DAE1E8" size="1">
{$bug->getText()}
<hr color="#DAE1E8" size="1">
<table id="basicInfo" class="ugc-table group_info" cellspacing="0" cellpadding="0" border="0" style="width: 100%;">
<tbody>
<tr>
<td class="label"><span class="nobold">Отправил: </span></td>
<td class="data">
<a href="/bugtracker?act=reporter&id={$bug->getReporter()->getId()}">{$bug->getReporter()->getCanonicalName()}</a>
</td>
</tr>
<tr>
<td class="label"><span class="nobold">Воспроизвелось:</span></td>
<td class="data"><a href="#">{tr("participants", $bug->getReproducedCount())}</a></td>
</tr>
<tr>
<td class="label"><span class="nobold">Статус:</span></td>
<td class="data"><a href="#" n:attr='onClick => $canAdminBugTracker ? "showBtStatusChangeDialog({$bug->getId()}, \"{$csrfToken}\");" : false'>{$bug->getStatus()}</a></td>
</tr>
<tr>
<td class="label"><span class="nobold">Приоритет:</span></td>
<td class="data"><a href="#" n:attr='onClick => $canAdminBugTracker ? "showBtPriorityChangeDialog({$bug->getId()}, \"{$csrfToken}\");" : false'>{$bug->getPriority()}</a></td>
</tr>
<tr>
<td class="label"><span class="nobold">Устройство:</span></td>
<td class="data"><a href="#">{$bug->getDevice()}</a></td>
</tr>
</tbody>
</table>
<hr color="#DAE1E8" size="1">
<button n:if="$canAdminBugTracker" class="button" onClick="showBtStatusChangeDialog({$bug->getId()}, {$csrfToken})">Изменить статус</button>
<button n:if="$canAdminBugTracker" class="button" onClick="showBtPriorityChangeDialog({$bug->getId()}, {$csrfToken})">Изменить приоритет</button>
<a n:if="$bug->getReporter()->getId() !== $user->identity->getId()" class="button" href="/bug{$bug->getId()}/reproduce">Воспроизвелось</a>
{if sizeof($comments) > 0}
<hr color="#DAE1E8" size="1">
<div n:foreach="$comments as $comment">
<div n:if="!$comment->isHidden() OR $comment->isHidden() AND $canAdminBugTracker" class="avatar-list-item" style="padding: 8px;">
<div class="avatar">
<a href="/bugtracker?act=reporter&id={$comment->getAuthor()->getId()}">
<img class="ava" src="{$comment->isModer() ? 'https://vk.com/images/support15_specagent.png' : $comment->getAuthor()->getAvatarURL()}">
</a>
</div>
<div class="info" style="width: 90%;">
<a n:attr='href => $comment->isModer() ? false : "/bugtracker?act=reporter&id={$comment->getAuthor()->getId()}"' class="title">
{$comment->isModer() ? "Модератор" : $comment->getAuthor()->getCanonicalName()}
<a n:if="$comment->isModer() AND $canAdminBugTracker" href="{$comment->getAuthor()->getURL()}">
(<b>{$comment->getAuthor()->getCanonicalName()}</b>)
</a>
</a>
<b n:if="$comment->isHidden() AND $canAdminBugTracker">(скрытый комментарий)</b>
<br>
<b n:if="$comment->getLabel()" class="post-author" style="display: inline-block; border-top: 0;">{$comment->getLabel()}</b>
<div>
{$comment->getText()}
</div>
</div>
</div>
<hr color="#DAE1E8" size="1">
</div>
{/if}
<form n:if="$bug->getRawStatus() != 6 OR $bug->getRawStatus() == 6 AND $canAdminBugTracker" method="post" action="/bug{$bug->getId()}/addComment">
<textarea name="text" style="width: 100%;resize: vertical;"></textarea><br />
<div style="float: right;">
<div n:if="$canAdminBugTracker" style="display: inline;">
<input id="is_moder" type="checkbox" name="is_moder">
<label for="is_moder">От лица модератора</label>
<input id="is_hidden" type="checkbox" name="is_hidden">
<label for="is_hidden">Скрытый комментарий</label>
</div>
<input type="hidden" name="hash" value="{$csrfToken}" />
<input type="submit" value="{_write}" class="button" />
</div>
</form>
{else}
<div>
Отчёт не найден. Возможно, он был удалён.
</div>
{/if}
{/block}