mirror of
https://github.com/openvk/openvk
synced 2024-11-14 11:09:12 +03:00
142 lines
7.7 KiB
XML
142 lines
7.7 KiB
XML
{var author = $post->getOwner()}
|
||
{var comments = $post->getLastComments(3)}
|
||
{var commentsCount = $post->getCommentsCount()}
|
||
|
||
{var commentTextAreaId = $post === null ? rand(1,300) : $post->getId()}
|
||
|
||
<table border="0" style="font-size: 11px;" n:class="post, !$compact ? post-divider, $post->isExplicit() ? post-nsfw">
|
||
<tbody>
|
||
<tr>
|
||
<td width="54" valign="top">
|
||
<a href="{$author->getURL()}">
|
||
<img
|
||
src="{$author->getAvatarURL()}"
|
||
width="{ifset $compact}25{else}50{/ifset}"
|
||
{ifset $compact}class="cCompactAvatars"{/ifset} />
|
||
{if !$post->isPostedOnBehalfOfGroup() && !$compact}
|
||
<span n:if="$author->isOnline()" class="post-online">
|
||
{_online}
|
||
</span>
|
||
{/if}
|
||
</a>
|
||
</td>
|
||
<td width="100%" valign="top">
|
||
<div class="post-author">
|
||
<a href="{$author->getURL()}">
|
||
<b>
|
||
{$author->getCanonicalName()}
|
||
</b>
|
||
</a>
|
||
{if $author->isVerified()}<img class="name-checkmark" src="/assets/packages/static/openvk/img/checkmark.png">{/if}
|
||
{if ($onWallOf ?? false) &&!$post->isPostedOnBehalfOfGroup() && $post->getOwnerPost() !== $post->getTargetWall()}
|
||
{var wallId = $post->getTargetWall()}
|
||
{var wallURL = $wallId > -1 ? "/id$wallId" : "/club" . abs($wallId)}
|
||
на
|
||
<a href="{$wallURL}">
|
||
<b>
|
||
{if isset($thisUser) && $thisUser->getId() === $wallId}
|
||
вашей
|
||
{/if}
|
||
стене
|
||
{if $wallId < 0}
|
||
группы
|
||
{/if}
|
||
</b>
|
||
</a>
|
||
{/if}
|
||
{ifset $compact}<br>
|
||
<a href="/wall{$post->getPrettyId()}" class="date">
|
||
{$post->getPublicationTime()}
|
||
</a>
|
||
|
||
{/ifset}
|
||
{if $post->isPinned()}
|
||
<span class="nobold">{_pinned}</span>
|
||
{/if}
|
||
{if $post->canBeDeletedBy($thisUser) && !($forceNoDeleteLink ?? false) && !isset($compact)}
|
||
<a class="delete" href="/wall{$post->getPrettyId()}/delete"></a>
|
||
{/if}
|
||
|
||
{if $post->canBePinnedBy($thisUser) && !($forceNoPinLink ?? false) && !isset($compact)}
|
||
{if $post->isPinned()}
|
||
<a class="pin" href="/wall{$post->getPrettyId()}/pin?act=unpin&hash={rawurlencode($csrfToken)}"></a>
|
||
{else}
|
||
<a class="pin" href="/wall{$post->getPrettyId()}/pin?act=pin&hash={rawurlencode($csrfToken)}"></a>
|
||
{/if}
|
||
{/if}
|
||
</div>
|
||
<div class="post-content" id="{$post->getPrettyId()}">
|
||
<div class="text" id="text{$post->getPrettyId()}">
|
||
{$post->getText()|noescape}
|
||
|
||
<div n:ifcontent class="attachments_b">
|
||
<div class="attachment" n:foreach="$post->getChildren() as $attachment" data-localized-nsfw-text="{_nsfw_warning}">
|
||
{include "../attachment.xml", attachment => $attachment}
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div n:if="$post->isAd()" style="color:grey;">
|
||
<br/>
|
||
! Этот пост был размещён за взятку.
|
||
</div>
|
||
<div n:if="$post->isSigned()" class="post-signature">
|
||
{var acutalAuthor = $post->getOwner(false)}
|
||
<span>
|
||
Автор:
|
||
<a href="{$acutalAuthor->getURL()}">
|
||
{$acutalAuthor->getCanonicalName()}
|
||
</a>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
<div class="post-menu" n:if="!isset($compact)">
|
||
<a href="/wall{$post->getPrettyId()}" class="date">{$post->getPublicationTime()}</a>
|
||
{if isset($thisUser)}
|
||
|
||
|
||
{if !($forceNoCommentsLink ?? false)}
|
||
<a n:if="$commentsCount == 0" href="javascript:expand_comment_textarea({$commentTextAreaId})">
|
||
{_"comment"}
|
||
</a>
|
||
{/if}
|
||
|
||
<div class="like_wrap">
|
||
{if !($forceNoShareLink ?? false)}
|
||
<a class="post-share-button" href="javascript:repostPost('{$post->getPrettyId()}', '{rawurlencode($csrfToken)}')">
|
||
<div class="repost-icon" style="opacity: 0.4;"></div>
|
||
<span class="likeCnt">{if $post->getRepostCount() > 0}{$post->getRepostCount()}{/if}</span>
|
||
</a>
|
||
{/if}
|
||
|
||
{if !($forceNoLike ?? false)}
|
||
{var liked = $post->hasLikeFrom($thisUser)}
|
||
<a href="/wall{$post->getPrettyId()}/like?hash={rawurlencode($csrfToken)}"
|
||
class="post-like-button"
|
||
data-liked="{(int) $liked}"
|
||
data-likes="{$post->getLikesCount()}">
|
||
<div class="heart" id="{if $liked}liked{/if}"></div>
|
||
<span class="likeCnt">{if $post->getLikesCount() > 0}{$post->getLikesCount()}{/if}</span>
|
||
</a>
|
||
{/if}
|
||
</div>
|
||
{/if}
|
||
</div>
|
||
{if !($forceNoCommentsLink ?? false)}
|
||
<div n:if="$commentSection == true && $compact == false" class="post-menu-s">
|
||
{if $commentsCount > 3}
|
||
<a href="/wall{$post->getPrettyId()}" class="expand_button">{_view_other_comments}</a>
|
||
{/if}
|
||
{foreach $comments as $comment}
|
||
{include "../comment.xml", comment => $comment, $compact => true}
|
||
{/foreach}
|
||
<div n:ifset="$thisUser" id="commentTextArea{$commentTextAreaId}" n:attr="style => ($commentsCount == 0 ? 'display: none;')" class="commentsTextFieldWrap">
|
||
{var commentsURL = "/al_comments/create/posts/" . $post->getId()}
|
||
{var club = is_null($club) ? ($post->getTargetWall() < 0 ? (new openvk\Web\Models\Repositories\Clubs)->get(abs($post->getTargetWall())) : NULL) : $club}
|
||
{include "../textArea.xml", route => $commentsURL, postOpts => false, graffiti => (bool) ovkGetQuirk("comments.allow-graffiti"), post => $post, club => $club}
|
||
</div>
|
||
</div>
|
||
{/if}
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|