Changeset ad6f62a in Klonkt for src/views/partials


Ignore:
Timestamp:
07/25/2026 08:09:19 AM (7 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
c66cbb4
Parents:
e62f65d
Message:

Guardian 2: zwaai-badge in Berichten + snelle antwoorden (item 3 af)

De ontvangende ward ziet een zwaai nu als zodanig: in Berichten staat "X 👋
zwaaide naar je" met snelle-antwoord-knoppen (Wat leuk! / Bel me even / 👋 Terug).
Zo kan het kind terugreageren zonder ooit te publiceren: het antwoord is een prive
direct-note terug naar de guardian (zelfde shaer:wave-leg, cross-instance met
retry). Alleen zichtbaar op een echte zwaai (ap_mentions.wave) en alleen als je
mag schrijven (canMutate).

Changed files:
src/services/ActivityPubService.js

  • getNotifications: mention draagt nu wave + actorUri mee

src/views/partials/msg-item.ejs

  • zwaai-label + quick-reply-formulier (3 voorgebakken knoppen)

src/routes/posts.js

  • POST /messages/quick-reply: canned prive-note terug naar de zwaaier

src/views/pages/messages.ejs

  • success-melding wave_sent

src/services/i18n.js

  • msg.waved_at_you / wave_r1 / wave_r2 / wave_back / wave_sent (nl/en/de)

remarks: npm test 167/167; quick-reply auth-gated (requireSiteManager). Hiermee is
item 3 (DM/zwaai) rond: guardian zwaait, ward ziet het en antwoordt met een tik,
niemand publiceert.

-robo
Co-Authored-By: Claude Opus 4.8 <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/views/partials/msg-item.ejs

    re62f65d rad6f62a  
    5555              <% } else if (_t === 'boost') { %><%= t('notif.boosted') %>
    5656              <% } else if (_t === 'report') { %><%= t('notif.reported') %>
     57              <% } else if (_t === 'mention' && n.wave) { %>👋 <%= t('msg.waved_at_you') %>
    5758              <% } else if (_t === 'mention') { %><%= t('notif.mentioned') %>
    5859              <% } else if (_t === 'sent') { %><%= t('msg.sent_reply') %>
     
    6768            <% if (_t === 'report' && n.content) { %><div class="msg-content"><%= n.content %></div>
    6869            <% } else if ((_t === 'reply' || _t === 'mention' || _t === 'sent') && n.content) { %><div class="msg-content"><%- n.content %></div>
     70              <% if (_t === 'mention' && n.wave && n.actorUri && canMutate) { %>
     71                <form class="msg-quickreply" method="post" action="<%= (typeof siteUrlBase !== 'undefined' ? siteUrlBase : '') %>/messages/quick-reply" style="display:flex;gap:6px;flex-wrap:wrap;margin-top:6px">
     72                  <input type="hidden" name="to" value="<%= n.actorUri %>">
     73                  <button class="btn small" name="text" value="<%= t('msg.wave_r1') %>"><%= t('msg.wave_r1') %></button>
     74                  <button class="btn small" name="text" value="<%= t('msg.wave_r2') %>"><%= t('msg.wave_r2') %></button>
     75                  <button class="btn small" name="text" value="👋"><%= t('msg.wave_back') %></button>
     76                </form>
     77              <% } %>
    6978            <% } else if (_t === 'poll_done' && n.poll) { %>
    7079              <div class="msg-poll" role="group">
Note: See TracChangeset for help on using the changeset viewer.