Merge branch '6.0'
[GitHub/WoltLab/WCF.git] / com.woltlab.wcf / templates / commentResponseList.tpl
... / ...
CommitLineData
1{foreach from=$responseList item=response}
2 {if $response->isDisabled && !$commentCanModerate}
3 <div class="commentResponseList__item">
4 <p class="info commentModerationDisabledComment">{lang}wcf.comment.moderation.disabledComment{/lang}</p>
5 </div>
6 {else}
7 <div class="commentResponseList__item jsCommentResponse{if $__wcf->getUserProfileHandler()->isIgnoredUser($response->userID, 2)} ignoredUserContent{/if}"
8 data-response-id="{@$response->responseID}"
9 {@$__wcf->getReactionHandler()->getDataAttributes('com.woltlab.wcf.comment.response', $response->responseID)}
10 data-can-edit="{if $response->isEditable()}true{else}false{/if}"
11 data-can-delete="{if $response->isDeletable()}true{else}false{/if}"
12 data-user-id="{@$response->userID}"
13 >
14 <woltlab-core-comment-response class="commentResponse" response-id="{@$response->responseID}" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
15 <div class="commentResponse__header">
16 <div class="commentResponse__avatar">
17 {user object=$response->getUserProfile() type='avatar32' ariaHidden='true' tabindex='-1'}
18 </div>
19 <div class="commentResponse__author" itemprop="author" itemscope itemtype="http://schema.org/Person">
20 {if $response->userID}
21 <a href="{$response->getUserProfile()->getLink()}" class="commentResponse__author__link userLink" data-object-id="{@$response->userID}" itemprop="url">
22 <span itemprop="name">{@$response->getUserProfile()->getFormattedUsername()}</span>
23 </a>
24 {else}
25 <span itemprop="name">{$response->username}</span>
26 {/if}
27 </div>
28 <div class="commentResponse__date">
29 <meta itemprop="datePublished" content="{@$response->time|date:'c'}">
30 <a href="{$response->getLink()}" class="commentResponse__permalink">{@$response->time|time}</a>
31 </div>
32 <div class="commentResponse__status">
33 {if $response->isDisabled}
34 <span class="badge label green commentResponse__status--disabled">{lang}wcf.message.status.disabled{/lang}</span>
35 {/if}
36
37 {if $commentManager->isContentAuthor($response)}
38 <span class="badge label">{lang}wcf.comment.objectAuthor{/lang}</span>
39 {/if}
40
41 {event name='commentResponseStatus'}
42 </div>
43
44 {hascontent}
45 <div class="commentResponse__menu dropdown" id="commentResponseOptions{@$response->responseID}">
46 <button type="button" class="dropdownToggle" aria-label="{lang}wcf.global.button.more{/lang}">{icon name='ellipsis-vertical'}</button>
47
48 <ul class="dropdownMenu">
49 {content}
50 {if $response->isDisabled && $commentCanModerate}
51 <li>
52 <a href="#" class="commentResponse__option commentResponse__option--enable">
53 {lang}wcf.comment.approve{/lang}
54 </a>
55 </li>
56 {/if}
57 {if $commentManager->supportsReport() && $__wcf->session->getPermission('user.profile.canReportContent')}
58 <li>
59 <a
60 href="#"
61 data-report-content="com.woltlab.wcf.comment.response"
62 data-object-id="{$response->responseID}"
63 class="commentResponse__option commentResponse__option--report"
64 >
65 {lang}wcf.moderation.report.reportContent{/lang}
66 </a>
67 </li>
68 {/if}
69 {if $response->isEditable()}
70 <li>
71 <a href="#" class="commentResponse__option commentResponse__option--edit">
72 {lang}wcf.global.button.edit{/lang}
73 </a>
74 </li>
75 {/if}
76 {if $response->isDeletable()}
77 <li>
78 <a href="#" class="commentResponse__option commentResponse__option--delete">
79 {lang}wcf.global.button.delete{/lang}
80 </a>
81 </li>
82 {/if}
83
84 {event name='commentResponseMenuOptions'}
85 {/content}
86 </ul>
87 </div>
88 {/hascontent}
89
90 {event name='commentResponseHeader'}
91 </div>
92
93 {event name='commentBeforeMessage'}
94
95 <div class="commentResponse__message">
96 <div class="htmlContent userMessage" itemprop="text">{@$response->getFormattedMessage()}</div>
97 </div>
98
99 {event name='commentAfterMessage'}
100
101 <div class="commentResponse__footer">
102 <div class="commentResponse__reactions">
103 {if MODULE_LIKE && $commentManager->supportsLike() && $likeData|isset}
104 {include file="reactionSummaryList" isTiny=true reactionData=$likeData[response] objectType="com.woltlab.wcf.comment.response" objectID=$response->responseID}
105 {else}
106 <a href="#" class="reactionSummaryList reactionSummaryListTiny jsOnly" data-object-type="com.woltlab.wcf.comment.response" data-object-id="{$response->responseID}" title="{lang}wcf.reactions.summary.listReactions{/lang}" style="display: none;"></a>
107 {/if}
108 </div>
109
110 <div class="commentResponse__buttons">
111 {if MODULE_LIKE && $commentManager->supportsLike() && $__wcf->session->getPermission('user.like.canLike') && $response->userID != $__wcf->user->userID}
112 <button
113 type="button"
114 class="commentResponse__button commentResponse__button--react jsTooltip button small {if $likeData[response][$response->responseID]|isset && $likeData[response][$response->responseID]->reactionTypeID} active{/if}"
115 title="{lang}wcf.reactions.react{/lang}"
116 data-reaction-type-id="{if $likeData[response][$response->responseID]|isset && $likeData[response][$response->responseID]->reactionTypeID}{$likeData[response][$response->responseID]->reactionTypeID}{else}0{/if}"
117 >
118 {icon name='face-smile'}
119 <span class="invisible">{lang}wcf.reactions.react{/lang}</span>
120 </button>
121 {/if}
122
123 {event name='commentResponseButtons'}
124 </div>
125
126 {event name='commentResponseFooter'}
127 </div>
128 </woltlab-core-comment-response>
129 </div>
130 {/if}
131{/foreach}