<%# Een object van een andere server: hoe het eruit ziet, en wat je ermee kunt. EEN PLEK, TWEE INGANGEN (de zoekbalk en /authorize_interaction). Dit stond alleen op die tweede pagina, en toen de zoekfunctie een URL leerde herkennen zou het een tweede render worden -- en daarmee een tweede plek waar een poort, een sanitizer of een knop vergeten kan worden. De formulieren posten dus ook vanaf de zoekpagina naar /authorize_interaction/..., want daar zit het werk en daar zit de rechtencontrole. Verwacht: target (uit resolveRemoteNote), uri, reacted {liked,boosted}. Optioneel: mayReply (false = alleen lezen en reageren, geen antwoordvenster), cancelUrl (waar Annuleren heen gaat, standaard het origineel), siteTitle. %> <% const _cancel = (typeof cancelUrl !== 'undefined' && cancelUrl) ? cancelUrl : uri; %>

<%= t('fedi.remote_replying_to') %> <%= target.actor_name %> <%= target.actor_handle %>

<% if (target.content) { %>
<%- target.content %>
<% } else if (target.preview) { %><%= target.preview %><% } %> <% (target.images || []).forEach(function(im){ %> <% }); %>
<% if (target.url || uri) { %> <%= t('fedi.remote_view_original') %> <% } %> <% if (target.poll) { var _pl = target.poll; var _tot = _pl.options.reduce(function(s,o){return s+(o.count||0);},0); var _vn = (_pl.voters!=null?_pl.voters:_tot); %> <% if (!_pl.closed) { %>
<% _pl.options.forEach(function(o){ %> <% }); %>

<%= _vn %> <%= _vn === 1 ? t('poll.voter_one') : t('poll.voter_many') %> · <%= t('poll.open') %><% if (_pl.endTime) { %> · <%= t('poll.closes') %> <%= new Date(_pl.endTime).toLocaleString() %><% } %><% if (_pl.multiple) { %> · <%= t('poll.multiple') %><% } %>

<% } else { %>
<% _pl.options.forEach(function(o){ var _pct = _tot ? Math.round((o.count||0)*100/_tot) : 0; %>
<%= o.name %><%= _pct %>%
<% }); %>

<%= _vn %> <%= _vn === 1 ? t('poll.voter_one') : t('poll.voter_many') %> · <%= t('poll.closed') %><% if (_pl.multiple) { %> · <%= t('poll.multiple') %><% } %>

<% } %> <% } %> <% var _liked = (typeof reacted !== 'undefined' && reacted.liked); var _boosted = (typeof reacted !== 'undefined' && reacted.boosted); %>
<% if (locals.mayReply !== false) { %>

<%= t('fedi.or_reply') %>

💬 <%= t('fedi.reply_where') %>

<%- include('./reply-editor', { action: '/authorize_interaction', hiddenFields: [{ name: 'uri', value: uri }], placeholder: t('fedi.reply_ph'), submitLabel: t('fedi.send'), rows: 4, participants: (target && target.actor_uri) ? [{ uri: target.actor_uri, url: target.actor_url || target.actor_uri, handle: target.actor_handle || '', }] : [], }) %>
<%= t('comments.cancel') %>
<% } %>

<%= t('fedi.remote_as', { site: siteTitle }) %>

🚩 <%= t('fedi.report_open') %>

<%= t('fedi.report_where') %>