90 lines
4.7 KiB
Smarty
90 lines
4.7 KiB
Smarty
{foreach from=$subcomments item=c}
|
||
|
||
{* Контейнер комментария: Используем .card для блока, и ms-4 для вложенности *}
|
||
<div class="card mb-3 mod_comment_comment{if $c.parent_id} ms-4{/if}">
|
||
|
||
{* Подсветка (Highlight) *}
|
||
{if isset($smarty.request.subaction) && $smarty.request.subaction=='showonly' && isset($smarty.request.comment_id) && $smarty.request.comment_id==$c.Id}
|
||
<div class="border border-warning border-3 rounded p-0">
|
||
{/if}
|
||
|
||
<div id="{$c.Id}" class="mod_comment_box">
|
||
|
||
{* Заголовок комментария: Используем card-header и d-flex для выравнивания метаданных и иконок *}
|
||
<div class="card-header mod_comment_header d-flex justify-content-between align-items-center bg-light clearfix">
|
||
|
||
{* Информация об авторе и дате *}
|
||
<div class="mod_comment_author text-muted small me-2">
|
||
{* Автор (Иконка fa-user) *}
|
||
<i class="fa fa-user me-1"></i> {#COMMENT_USER_ADD#} <a title="{#COMMENT_INFO#}" href="javascript:void(0);" onclick="popup('{$ABS_PATH}index.php?module=comment&action=postinfo&pop=1&Id={$c.Id}&theme={$theme}','comment','500','300','1');" class="fw-bold link-dark">{$c.comment_author_name|stripslashes|escape}</a>
|
||
|
||
{* Дата публикации (Иконка fa-clock) *}
|
||
<span class="ms-2"><i class="fa fa-clock-o me-1"></i> {$c.comment_published}</span>
|
||
|
||
{* IP-адрес (для Админа) *}
|
||
{if $smarty.const.UGROUP==1}
|
||
<span class="ms-2 text-secondary">• IP:{$c.comment_author_ip}</span>
|
||
{/if}
|
||
|
||
{* Метка "Изменено" *}
|
||
<span class="mod_comment_changed">{if isset($c.comment_changed) && $c.comment_changed > 1} (<span class="text-secondary">{#COMMENT_TEXT_CHANGED#} {$c.comment_changed}</span>){/if}</span>
|
||
</div>
|
||
|
||
{* Иконки действий - Используем p-2 me-3 для интервала и кликабельности *}
|
||
<div class="mod_comment_icons d-flex align-items-center flex-shrink-0">
|
||
|
||
{* Ссылка "Ответить" (fa-reply) *}
|
||
{if $c.comment_author_id!=$smarty.session.user_id|default:'*' && (($cancomment==1 && $closed!=1) || $smarty.const.UGROUP==1)}
|
||
<a class="mod_comment_answer p-2 me-3 text-primary" href="javascript:void(0);" rel="{$c.Id}" title="{#COMMENT_ANSWER_LINK#}">
|
||
<i class="fa fa-reply"></i>
|
||
</a>
|
||
{/if}
|
||
|
||
{* ИКОНКА РЕДАКТИРОВАНИЯ (fa-pencil) *}
|
||
{if $smarty.const.UGROUP==1 || $c.comment_author_id==$smarty.session.user_id|default:'*'}
|
||
<a class="mod_comment_edit p-2 me-3 text-secondary" href="javascript:void(0);" title="{#COMMENT_EDIT_LINK#}">
|
||
<i class="fa fa-pencil"></i>
|
||
</a>
|
||
{/if}
|
||
|
||
{if $smarty.const.UGROUP==1}
|
||
{* Замок (Разблокировать/Заблокировать) *}
|
||
{if $c.comment_status!=1}
|
||
<a class="mod_comment_unlock p-2 me-3 text-success" href="javascript:void(0);" title="{#COMMENT_UNLOCK_LINK#}">
|
||
<i class="fa fa-unlock"></i>
|
||
</a>
|
||
{else}
|
||
<a class="mod_comment_lock p-2 me-3 text-dark" href="javascript:void(0);" title="{#COMMENT_LOCK_LINK#}">
|
||
<i class="fa fa-lock"></i>
|
||
</a>
|
||
{/if}
|
||
|
||
{* Корзина (Удалить) *}
|
||
<a class="mod_comment_delete p-2 text-danger" href="javascript:void(0);" title="{#COMMENT_DELETE_LINK#}">
|
||
<i class="fa fa-trash-o"></i>
|
||
</a>
|
||
{/if}
|
||
</div>
|
||
</div>
|
||
|
||
{* Тело комментария: Используем card-body *}
|
||
<div class="card-body mod_comment_text{if $smarty.const.UGROUP==1 || $c.comment_author_id==$smarty.session.user_id|default:'*'} editable_text{/if}">{$c.comment_text|escape}</div>
|
||
</div>
|
||
|
||
{* Закрываем подсветку *}
|
||
{if isset($smarty.request.subaction) && $smarty.request.subaction=='showonly' && isset($smarty.request.comment_id) && $smarty.request.comment_id==$c.Id}
|
||
</div>
|
||
{/if}
|
||
|
||
{* Точка вставки формы ответа *}
|
||
<span id="end{$c.Id}"></span>
|
||
|
||
{* Рекурсивный вызов дочерних комментариев *}
|
||
{if isset($comments) && isset($comments[$c.Id])}
|
||
<div class="mt-3">
|
||
{include file="$subtpl" subcomments=$comments[$c.Id] sub=1}
|
||
</div>
|
||
{/if}
|
||
|
||
</div> {* Закрывает mod_comment_comment *}
|
||
{/foreach} |