openvk/Web/Presenters/templates/Photos/Photo.xml

81 lines
4.3 KiB
XML
Raw Normal View History

2020-06-07 19:04:43 +03:00
{extends "../@layout.xml"}
2022-08-09 09:37:08 +03:00
{block title}{_photo}{/block}
2020-06-07 19:04:43 +03:00
{block header}
{ifset $album}
<a href="{$album->getOwner()->getURL()}">
{$album->getOwner()->getCanonicalName()}
</a>
{if ($album->getOwner() instanceof openvk\Web\Models\Entities\Club)}
2022-08-09 09:37:08 +03:00
» <a href="/albums{$album->getOwner()->getId() * -1}">{_albums}</a>
2020-06-07 19:04:43 +03:00
{else}
2022-08-09 09:37:08 +03:00
» <a href="/albums{$album->getOwner()->getId()}">{_albums}</a>
2020-06-07 19:04:43 +03:00
{/if}
» <a href="/album{$album->getPrettyId()}">{$album->getName()}</a>
{else}
<a href="{$photo->getOwner()->getURL()}">{$photo->getOwner()->getCanonicalName()}</a>
{/ifset}
2022-08-09 09:37:08 +03:00
» {_photo}
2020-06-07 19:04:43 +03:00
{/block}
{block content}
<center style="margin-bottom: 8pt;">
<img src="{$photo->getURLBySizeId('large')}" style="max-width: 80%; max-height: 60vh;" />
2020-06-07 19:04:43 +03:00
</center>
<hr/>
<div style="width: 100%; min-height: 100px;">
<div style="float: left; min-height: 100px; width: 70%;">
{include "../components/comments.xml", comments => $comments, count => $cCount, page => $cPage, model => "photos", parent => $photo}
</div>
<div style="float: left; min-height: 100px; width: 30%;">
<div>
2022-08-09 09:37:08 +03:00
<h4>{_information}</h4>
<span style="color: grey;">{_info_description}:</span>
{$photo->getDescription() ?? "(" . tr("none") . ")"}<br/>
<span style="color: grey;">{_info_uploaded_by}:</span>
2020-06-07 19:04:43 +03:00
<a href="{$photo->getOwner()->getURL()}">{$photo->getOwner()->getFullName()}</a><br/>
2022-08-09 09:37:08 +03:00
<span style="color: grey;">{_info_upload_date}:</span>
2020-06-07 19:04:43 +03:00
{$photo->getPublicationTime()}
</div>
<br/>
<h4>{_actions}</h4>
{if $thisUser->getId() != $photo->getOwner()->getId()}
{var canReport = true}
{/if}
2020-06-07 19:04:43 +03:00
<div n:if="isset($thisUser) && $thisUser->getId() === $photo->getOwner()->getId()">
2022-08-09 09:37:08 +03:00
<a href="/photo{$photo->getPrettyId()}/edit" class="profile_link" style="display:block;width:96%;">{_edit}</a>
<a id="_photoDelete" href="/photo{$photo->getPrettyId()}/delete" class="profile_link" style="display:block;width:96%;">{_delete}</a>
2020-06-07 19:04:43 +03:00
</div>
<a href="{$photo->getURL()}" class="profile_link" target="_blank" style="display:block;width:96%;">{_"open_original"}</a>
<a n:if="$canReport ?? false" class="profile_link" style="display:block;width:96%;" href="javascript:reportPhoto()">{_report}</a>
<script n:if="$canReport ?? false">
function reportPhoto() {
uReportMsgTxt = "Вы собираетесь пожаловаться на данную фотографию.";
uReportMsgTxt += "<br/>Что именно вам кажется недопустимым в этом материале?";
uReportMsgTxt += "<br/><br/><b>Причина жалобы</b>: <input type='text' id='uReportMsgInput' placeholder='Причина' />"
MessageBox("Пожаловаться?", uReportMsgTxt, ["Подтвердить", "Отмена"], [
(function() {
res = document.querySelector("#uReportMsgInput").value;
xhr = new XMLHttpRequest();
xhr.open("GET", "/report/" + {$photo->getId()} + "?reason=" + res + "&type=photo", true);
xhr.onload = (function() {
if(xhr.responseText.indexOf("reason") === -1)
MessageBox("Ошибка", "Не удалось подать жалобу...", ["OK"], [Function.noop]);
else
MessageBox("Операция успешна", "Скоро её рассмотрят модераторы", ["OK"], [Function.noop]);
});
xhr.send(null);
}),
Function.noop
]);
}
</script>
2022-08-09 09:37:08 +03:00
<a href="{$photo->getURL()}" class="profile_link" target="_blank" style="display:block;width:96%;">{_open_original}</a>
2020-06-07 19:04:43 +03:00
</div>
</div>
{/block}