Changeset 4885eab in Klonkt for src/views/pages/account.ejs
- Timestamp:
- 06/21/2026 03:05:14 PM (3 months ago)
- Branches:
- main
- Children:
- 5e61b17
- Parents:
- bbf9d1a
- File:
-
- 1 edited
-
src/views/pages/account.ejs (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/views/pages/account.ejs
rbbf9d1a r4885eab 2 2 3 3 <header class="ax-header"> 4 <a href="/" class="ax-back" aria-label=" Terug naar home">←</a>4 <a href="/" class="ax-back" aria-label="<%= t('acct.back_home') %>">←</a> 5 5 <div> 6 <h1> Account</h1>7 <p class="ax-tagline"> Profiel en avatar.</p>6 <h1><%= t('acct.title') %></h1> 7 <p class="ax-tagline"><%= t('acct.subtitle') %></p> 8 8 </div> 9 9 </header> … … 16 16 <span class="ax-viewer-ico" aria-hidden="true">👁️</span> 17 17 <div> 18 <strong> Kijker-modus</strong>19 <span> Dit is een demo-account. Je kunt alles bekijken, maar niets wijzigen — ook geen foto of bio.</span>18 <strong><%= t('acct.viewer_mode') %></strong> 19 <span><%= t('acct.viewer_note') %></span> 20 20 </div> 21 21 </div> … … 24 24 <%# ── PROFILE ────────────────────────────────────────────── %> 25 25 <section class="ax-card"> 26 <div class="ax-card-title"> Profiel</div>26 <div class="ax-card-title"><%= t('acct.profile') %></div> 27 27 28 28 <div class="ax-profile-id"> 29 29 <% if (canMutate) { %> 30 30 <form action="/account/avatar" method="post" enctype="multipart/form-data" class="ax-avatar-form"> 31 <label class="ax-avatar-wrap" title=" Klik om je foto te wijzigen">31 <label class="ax-avatar-wrap" title="<%= t('acct.avatar_change') %>"> 32 32 <span class="ax-profile-avatar"> 33 33 <% if (account.avatar_url) { %> … … 56 56 <div class="ax-profile-role"><%= account.role %> · <%= account.email %></div> 57 57 <% if (account.created_at) { %> 58 <div class="ax-profile-joined"> Lid sinds<%= formatDate(account.created_at) %></div>58 <div class="ax-profile-joined"><%= t('acct.member_since') %> <%= formatDate(account.created_at) %></div> 59 59 <% } %> 60 60 <% if (account.avatar_url && canMutate) { %> 61 61 <form action="/account/avatar/remove" method="post" class="ax-avatar-remove"> 62 <button type="submit" class="ax-linkbtn"> Foto verwijderen</button>62 <button type="submit" class="ax-linkbtn"><%= t('acct.avatar_remove') %></button> 63 63 </form> 64 64 <% } %> … … 69 69 <form action="/account/profile" method="post" class="ax-form ax-form-bio"> 70 70 <label class="ax-field"> 71 <span> E-mailadres</span>72 <input type="email" name="email" value="<%= account.email || '' %>" maxlength="254" autocomplete="email" placeholder=" jij@email.nl">73 </label> 74 <label class="ax-field"> 75 <span> Bio</span>76 <textarea name="bio" rows="3" maxlength="500" placeholder=" Een korte regel over jezelf"><%= account.bio || '' %></textarea>71 <span><%= t('acct.email') %></span> 72 <input type="email" name="email" value="<%= account.email || '' %>" maxlength="254" autocomplete="email" placeholder="<%= t('acct.email_ph') %>"> 73 </label> 74 <label class="ax-field"> 75 <span><%= t('acct.bio') %></span> 76 <textarea name="bio" rows="3" maxlength="500" placeholder="<%= t('acct.bio_ph') %>"><%= account.bio || '' %></textarea> 77 77 </label> 78 78 <div class="ax-form-actions"> 79 <button type="submit" class="ax-btn ax-btn-primary"> Opslaan</button>79 <button type="submit" class="ax-btn ax-btn-primary"><%= t('acct.save') %></button> 80 80 </div> 81 81 </form> … … 83 83 <div class="ax-form ax-form-bio"> 84 84 <label class="ax-field"> 85 <span> Bio</span>86 <textarea rows="3" disabled placeholder=" Geen bio"><%= account.bio || '' %></textarea>85 <span><%= t('acct.bio') %></span> 86 <textarea rows="3" disabled placeholder="<%= t('acct.bio_empty') %>"><%= account.bio || '' %></textarea> 87 87 </label> 88 88 </div> … … 93 93 <% if (typeof editableSite !== 'undefined' && editableSite && canMutate) { %> 94 94 <section class="ax-card"> 95 <div class="ax-card-title"> Site</div>95 <div class="ax-card-title"><%= t('acct.site') %></div> 96 96 <form action="/account/site" method="post" class="ax-form"> 97 97 <label class="ax-field"> 98 <span> Site-naam <small>— getoond in de kop van je site</small></span>98 <span><%= t('acct.site_name') %> <small><%= t('acct.site_name_hint') %></small></span> 99 99 <input type="text" name="site_title" value="<%= editableSite.title || '' %>" maxlength="200" required> 100 100 </label> 101 101 <label class="ax-field"> 102 <span> Tagline <small>— korte oneliner (optioneel)</small></span>102 <span><%= t('acct.tagline') %> <small><%= t('acct.tagline_hint') %></small></span> 103 103 <input type="text" name="site_tagline" value="<%= editableSite.tagline || '' %>" maxlength="200"> 104 104 </label> 105 105 <div class="ax-form-actions"> 106 <button type="submit" class="ax-btn ax-btn-primary"> Site opslaan</button>106 <button type="submit" class="ax-btn ax-btn-primary"><%= t('acct.site_save') %></button> 107 107 </div> 108 108 </form> … … 115 115 <% if (hasPassword) { %> 116 116 <section class="ax-card"> 117 <div class="ax-card-title"> Wachtwoord wijzigen</div>117 <div class="ax-card-title"><%= t('acct.password_change') %></div> 118 118 <form action="/account/password" method="post" class="ax-form"> 119 119 <label class="ax-field"> 120 <span> Huidig wachtwoord</span>120 <span><%= t('acct.password_current') %></span> 121 121 <input type="password" name="current" required autocomplete="current-password"> 122 122 </label> 123 123 <div class="ax-row ax-row-2"> 124 124 <label class="ax-field"> 125 <span> Nieuw wachtwoord <small>(min 8 tekens)</small></span>125 <span><%= t('acct.password_new') %> <small><%= t('acct.password_min') %></small></span> 126 126 <input type="password" name="new_password" required minlength="8" autocomplete="new-password"> 127 127 </label> 128 128 <label class="ax-field"> 129 <span> Bevestig nieuw wachtwoord</span>129 <span><%= t('acct.password_confirm') %></span> 130 130 <input type="password" name="confirm" required minlength="8" autocomplete="new-password"> 131 131 </label> 132 132 </div> 133 133 <div class="ax-form-actions"> 134 <button type="submit" class="ax-btn ax-btn-primary"> Wachtwoord wijzigen</button>134 <button type="submit" class="ax-btn ax-btn-primary"><%= t('acct.password_change') %></button> 135 135 </div> 136 136 </form> … … 139 139 <% if (typeof googleAvailable !== 'undefined' && googleAvailable) { %> 140 140 <section class="ax-card"> 141 <div class="ax-card-title"> Inloggen met Google</div>141 <div class="ax-card-title"><%= t('acct.google_login') %></div> 142 142 <% if (typeof googleLinked !== 'undefined' && googleLinked) { %> 143 <p class="ax-tagline" style="margin:0 0 1rem"> ✓ Je Google-account is gekoppeld — je kunt ook met Google inloggen.</p>143 <p class="ax-tagline" style="margin:0 0 1rem"><%= t('acct.google_linked') %></p> 144 144 <form action="/account/google/unlink" method="post"> 145 <button type="submit" class="ax-btn"> Google ontkoppelen</button>145 <button type="submit" class="ax-btn"><%= t('acct.google_unlink') %></button> 146 146 </form> 147 147 <% } else { %> 148 <p class="ax-tagline" style="margin:0 0 1rem"> Koppel je Google-account zodat je voortaan ook met één klik via Google kunt inloggen (naast je wachtwoord).</p>149 <a href="/auth/google/link" class="ax-btn ax-btn-primary" data-full-load> Koppel Google-account</a>148 <p class="ax-tagline" style="margin:0 0 1rem"><%= t('acct.google_link_hint') %></p> 149 <a href="/auth/google/link" class="ax-btn ax-btn-primary" data-full-load><%= t('acct.google_link') %></a> 150 150 <% } %> 151 151 </section> … … 153 153 <% } else { %> 154 154 <section class="ax-card"> 155 <div class="ax-card-title"> Inloggen</div>156 <p class="ax-tagline" style="margin:0"> Je bent ingelogd via Google (<%= account.email %>). Er is geen apart wachtwoord.</p>155 <div class="ax-card-title"><%= t('acct.login') %></div> 156 <p class="ax-tagline" style="margin:0"><%= t('acct.login_google_only', { email: account.email }) %></p> 157 157 </section> 158 158 <% } %>
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)