- Timestamp:
- 06/27/2026 07:51:44 AM (2 months ago)
- Branches:
- main
- Children:
- 92f6976
- Parents:
- aa45208
- Location:
- src/views
- Files:
-
- 5 edited
-
pages/post-edit.ejs (modified) (1 diff)
-
pages/post.ejs (modified) (1 diff)
-
partials/post-card.ejs (modified) (1 diff)
-
partials/post-tile.ejs (modified) (2 diffs)
-
shell.ejs (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/views/pages/post-edit.ejs
raa45208 r837fc9c 237 237 <input type="checkbox" name="noindex" value="1" <%= post.noindex ? 'checked' : '' %>> 238 238 <span>🚫 <%= t('pedit.noindex_label') %></span> 239 </label> 240 <label class="pe-checkbox"> 241 <input type="checkbox" name="nsfw" value="1" <%= post.nsfw ? 'checked' : '' %>> 242 <span>🔞 <%= t('pedit.nsfw_label') %></span> 239 243 </label> 240 244 <% if (typeof premiumUnlocked === 'undefined' || premiumUnlocked) { %> -
src/views/pages/post.ejs
raa45208 r837fc9c 5 5 const _base = (typeof siteUrlBase !== 'undefined' && siteUrlBase) ? siteUrlBase : ''; 6 6 %> 7 <article class="container post-page ">7 <article class="container post-page<%= post.nsfw ? ' nsfw-gate' : '' %>"> 8 8 9 9 <%# Navigation across ALL posts — ABOVE the post (shared partial). %> 10 10 <%- include('../partials/post-nav', { newerPost: newerPost, olderPost: olderPost }) %> 11 12 <% if (post.nsfw) { %> 13 <div class="nsfw-banner"> 14 <span class="nsfw-banner-icon">🔞</span> 15 <span class="nsfw-banner-text"><%= t('post.nsfw_warning') %></span> 16 <button type="button" class="nsfw-banner-btn nsfw-reveal"><%= t('post.nsfw_show') %></button> 17 </div> 18 <% } %> 11 19 12 20 <% if (post.cover_image_url) { %> -
src/views/partials/post-card.ejs
raa45208 r837fc9c 46 46 47 47 <% if (_hasCover) { %> 48 <a class="post-list-cover " href="<%= _href %>"48 <a class="post-list-cover<%= post.nsfw ? ' nsfw-media' : '' %>" href="<%= _href %>" 49 49 <% if (_ext) { %>target="_blank" rel="noopener"<% } else { %>hx-get="<%= _href %>?partial=1" hx-target="#pcms-main" hx-swap="innerHTML" hx-push-url="<%= _href %>" hx-indicator="#pcms-loading"<% } %> 50 50 aria-label="<%= post.title || '(zonder titel)' %>" tabindex="-1"> 51 51 <img src="<%= post.cover_image_url %>" alt="" loading="lazy" decoding="async"> 52 <% if (post.nsfw) { %><span class="nsfw-veil"><span class="nsfw-veil-label">🔞 <%= t('post.nsfw_warning') %></span><span class="nsfw-veil-btn"><%= t('post.nsfw_show') %></span></span><% } %> 52 53 </a> 53 54 <% } %> -
src/views/partials/post-tile.ejs
raa45208 r837fc9c 14 14 const _ext = !!_external; 15 15 %> 16 <a class="grid-tile<%= _hasCover ? '' : ' grid-tile-gradient' %><%= (_isPinned || _isBoost) ? ' is-pinned' : '' %> "16 <a class="grid-tile<%= _hasCover ? '' : ' grid-tile-gradient' %><%= (_isPinned || _isBoost) ? ' is-pinned' : '' %><%= post.nsfw ? ' nsfw-media' : '' %>" 17 17 href="<%= _href %>" 18 18 <% if (_hasCover) { %>style="background-image: url('<%= post.cover_image_url %>'); --tile-hue: <%= _tileHue %>;"<% } else { %>style="--tile-hue: <%= _tileHue %>;"<% } %> … … 37 37 <% if (_src) { %><span class="grid-tile-gradient-src">van <%= _src %></span><% } %> 38 38 <% } %> 39 <% if (post.nsfw) { %><div class="nsfw-veil"><span class="nsfw-veil-label">🔞 <%= t('post.nsfw_warning') %></span><span class="nsfw-veil-btn"><%= t('post.nsfw_show') %></span></div><% } %> 39 40 </a> -
src/views/shell.ejs
raa45208 r837fc9c 198 198 199 199 <!-- v9 stylesheet (full palette system) --> 200 <link rel="stylesheet" href="/assets/css/style.css?v=5 5">200 <link rel="stylesheet" href="/assets/css/style.css?v=56"> 201 201 <script> 202 202 /* iOS safe-area, built by hand. env(safe-area-inset-top) resolves to 0 on this iOS in … … 725 725 </script> 726 726 727 <!-- NSFW / sensitive content: click a veil/reveal to un-blur. Capture-phase so the 728 click reveals instead of following the card link or firing htmx navigation. --> 729 <script> 730 (function () { 731 if (window.__nsfwWired) return; window.__nsfwWired = true; 732 document.addEventListener('click', function (e) { 733 var hit = e.target.closest && e.target.closest('.nsfw-veil, .nsfw-reveal'); 734 if (!hit) return; 735 e.preventDefault(); e.stopPropagation(); 736 var box = hit.closest('.nsfw-media, .nsfw-gate'); 737 if (box) box.classList.add('is-shown'); 738 }, true); 739 })(); 740 </script> 741 727 742 <!-- Per-site custom footer HTML --> 728 743 <% if (safeSite.custom_foot_html) { %>
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)