Ignore:
Timestamp:
06/21/2026 02:32:39 PM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
4885eab
Parents:
929d98d
Message:

feat(i18n phase 5): all admin sub-pages translated (NL/EN/DE)

settings, site-edit, seo, google, audio, stats, playlists, users, sites,
comments, circle, shows, newsletter, updates, epk, help. ~520 new keys
per language. Loop-shadowing of t() resolved by fetching before the loop. 709
view-keys cross-checked against the dictionary (0 missing).

Co-Authored-By: Claude <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/views/pages/admin-comments.ejs

    r929d98d rbbf9d1a  
    11<div class="container admin-comments-page">
    2   <p><a href="/admin" class="btn">&larr; Beheer</a></p>
    3   <h1>Comment moderation</h1>
     2  <p><a href="/admin" class="btn">&larr; <%= t('acom.back') %></a></p>
     3  <h1><%= t('acom.title') %></h1>
    44
    55  <p class="muted">
    6     Mode for this site: <strong><%= moderationMode %></strong>
     6    <%= t('acom.mode_for_site') %> <strong><%= moderationMode %></strong>
    77    <% if (moderationMode === 'trust') { %>
    8       &mdash; comments are auto-approved. Switch to <em>moderate</em> in
    9       <a href="/admin/sites/<%= site.slug %>/edit">site settings</a> to queue them.
     8      &mdash; <%= t('acom.mode_trust_a') %> <em><%= t('acom.mode_moderate_word') %></em>
     9      <a href="/admin/sites/<%= site.slug %>/edit"><%= t('acom.site_settings') %></a> <%= t('acom.mode_trust_b') %>
    1010    <% } else { %>
    11       &mdash; new comments require approval before showing up on posts.
     11      &mdash; <%= t('acom.mode_moderate_hint') %>
    1212    <% } %>
    1313  </p>
     
    1616  <% if (error)   { %><div class="audio-flash audio-flash--err"><%= error %></div><% } %>
    1717
    18   <h2>Pending (<%= pending.length %>)</h2>
     18  <h2><%= t('acom.pending', { n: pending.length }) %></h2>
    1919  <% if (!pending.length) { %>
    20     <p class="muted">Nothing waiting.</p>
     20    <p class="muted"><%= t('acom.nothing_waiting') %></p>
    2121  <% } else { %>
     22    <%
     23      var _c_reply    = t('acom.reply');
     24      var _c_on       = t('acom.on');
     25      var _c_approve  = t('acom.approve');
     26      var _c_reject   = t('acom.reject');
     27    %>
    2228    <ol class="moderation-list">
    2329      <% pending.forEach(function(c) { %>
     
    2531          <div class="moderation-meta">
    2632            <strong><%= c.author_username %></strong>
    27             <% if (c.parent_comment_id) { %><span class="muted">(reply)</span><% } %>
    28             on <a href="<%= siteUrlBase %>/<%= c.post_slug %>"><%= c.post_title || c.post_slug %></a>
     33            <% if (c.parent_comment_id) { %><span class="muted">(<%= _c_reply %>)</span><% } %>
     34            <%= _c_on %> <a href="<%= siteUrlBase %>/<%= c.post_slug %>"><%= c.post_title || c.post_slug %></a>
    2935            <span class="muted">&middot; <%= formatDateTime(c.created_at) %></span>
    3036          </div>
     
    3238          <div class="moderation-actions">
    3339            <form method="post" action="<%= siteUrlBase %>/admin/comments/<%= c.id %>/approve" style="display:inline">
    34               <button type="submit" class="btn btn-primary">Approve</button>
     40              <button type="submit" class="btn btn-primary"><%= _c_approve %></button>
    3541            </form>
    3642            <form method="post" action="<%= siteUrlBase %>/admin/comments/<%= c.id %>/reject" style="display:inline">
    37               <button type="submit" class="btn btn-danger">Reject</button>
     43              <button type="submit" class="btn btn-danger"><%= _c_reject %></button>
    3844            </form>
    3945          </div>
     
    4349  <% } %>
    4450
    45   <h2>Recent decisions</h2>
     51  <h2><%= t('acom.recent') %></h2>
    4652  <% if (!recent.length) { %>
    47     <p class="muted">Nothing yet.</p>
     53    <p class="muted"><%= t('acom.nothing_yet') %></p>
    4854  <% } else { %>
    4955    <ul class="decision-list">
Note: See TracChangeset for help on using the changeset viewer.