Changeset f6c414e in Klonkt for src/views/partials/like-button.ejs
- Timestamp:
- 06/24/2026 04:37:32 PM (3 months ago)
- Branches:
- main
- Children:
- 9cc0f9f
- Parents:
- 434c2e9
- File:
-
- 1 edited
-
src/views/partials/like-button.ejs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/views/partials/like-button.ejs
r434c2e9 rf6c414e 1 <%# Like/favourite button for a post. Logged in → htmx toggle (POST /posts/:id/like, 2 swaps outerHTML back with this partial). Not logged in → link to login. 3 Expects: post (with .id), likedByMe, likeCount, loggedIn, loginNext. %> 4 <% 5 var _liked = (typeof likedByMe !== 'undefined' && likedByMe); 6 var _cnt = (typeof likeCount !== 'undefined' && likeCount != null) ? likeCount : 0; 7 var _logged = (typeof loggedIn !== 'undefined' && loggedIn); 8 %> 9 <% if (_logged) { %> 10 <button type="button" class="like-btn<%= _liked ? ' is-liked' : '' %>" 11 hx-post="/posts/<%= post.id %>/like" hx-swap="outerHTML" 12 aria-pressed="<%= _liked ? 'true' : 'false' %>" 13 aria-label="<%= _liked ? 'Uit favorieten verwijderen' : 'Toevoegen aan favorieten' %>" 14 title="<%= _liked ? 'Uit favorieten verwijderen' : 'Toevoegen aan favorieten' %>"> 15 <span class="like-heart" aria-hidden="true"><%= _liked ? '♥' : '♡' %></span> 16 <span class="like-count"><%= _cnt %></span> 17 </button> 18 <% } else { %> 19 <a class="like-btn" href="/auth/login?next=<%= encodeURIComponent((typeof loginNext !== 'undefined' && loginNext) ? loginNext : '/') %>" 20 title="<%= t('like.login_title') %>"> 21 <span class="like-heart" aria-hidden="true">♡</span> 22 <span class="like-count"><%= _cnt %></span> 23 </a> 24 <% } %> 1 <%# Fediverse like — a visitor likes this post out loud from their OWN fediverse 2 account. Click → popover asks only for their server (e.g. mastodon.social) → 3 bounces to that server's /authorize_interaction, where they favourite it. 4 Reuses the .fedi-remote-reply-btn popover wired in post.ejs. The count shows 5 the incoming fediverse likes. 6 Expects: noteUri (post's public URL), fediLikeCount, fediPh (server hint). %> 7 <button type="button" class="like-btn fedi-remote-reply-btn" 8 data-fedi-uri="<%= typeof noteUri !== 'undefined' ? noteUri : '' %>" 9 data-fedi-ph="<%= typeof fediPh !== 'undefined' && fediPh ? fediPh : 'mastodon.social' %>" 10 aria-label="<%= t('like.fedi_title') %>" title="<%= t('like.fedi_title') %>"> 11 <span class="like-heart" aria-hidden="true">★</span> 12 <span class="like-count"><%= (typeof fediLikeCount !== 'undefined' && fediLikeCount) ? fediLikeCount : 0 %></span> 13 </button>
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)