| [8b65e67] | 1 | <%
|
|---|
| 2 | // Het lijf van één bericht, IN de stroom.
|
|---|
| 3 | //
|
|---|
| 4 | // De poorten waren tot nu toe hele pagina's: paid-gate of fan-gate in plaats
|
|---|
| 5 | // van het bericht. Dat kan niet meer zodra de tijdlijn hele berichten toont --
|
|---|
| 6 | // dan moet een gesloten bericht zijn PLEK houden en ter plekke zeggen wat er
|
|---|
| 7 | // aan de hand is. Weglaten zou erger zijn dan tonen: dan zien een supporter en
|
|---|
| 8 | // een vreemde een andere tijdlijn, met andere buren, en klopt "vorige/volgende"
|
|---|
| 9 | // voor niemand meer.
|
|---|
| 10 | //
|
|---|
| 11 | // Het BESLUIT staat niet hier maar in PostAccessService, dezelfde die de
|
|---|
| 12 | // postroute gebruikt. Dit sjabloon kiest alleen de vorm. Twee plekken die
|
|---|
| 13 | // allebei zelf bepalen wie een betaalde tekst mag lezen, is een lek dat op een
|
|---|
| 14 | // gelegenheid wacht.
|
|---|
| 15 | //
|
|---|
| 16 | // Verwacht: post, access ('full'|'paid'|'fan'|'forbidden'), teaser, _base.
|
|---|
| 17 | var _acc = (typeof access !== 'undefined' && access) ? access : 'full';
|
|---|
| 18 | var _teaser = (typeof teaser !== 'undefined' && teaser) ? teaser : '';
|
|---|
| 19 | var _b = (typeof _base !== 'undefined' && _base) ? _base : '';
|
|---|
| 20 | var _href = _b + '/' + post.slug;
|
|---|
| [b67edbd] | 21 | // Het lijf komt als eigen waarde binnen en wordt NIET uit `post` gevist. De rij
|
|---|
| 22 | // draagt nog de ruwe `content`; door alleen te tonen wat de aanroeper bewust
|
|---|
| 23 | // meegeeft, kan een gesloten poort hier niets laten ontsnappen.
|
|---|
| 24 | var _html = (typeof content_html !== 'undefined' && content_html) ? content_html : '';
|
|---|
| [8b65e67] | 25 | %>
|
|---|
| 26 |
|
|---|
| 27 | <% if (_acc === 'full') { %>
|
|---|
| [b67edbd] | 28 | <div class="post-content"><%- _html %></div>
|
|---|
| [8b65e67] | 29 |
|
|---|
| 30 | <% } else if (_acc === 'paid') { %>
|
|---|
| 31 | <%# Dezelfde woorden als de hele pagina (pgate.*), want het is dezelfde
|
|---|
| 32 | boodschap -- alleen op een andere plek. Eigen teksten hier zouden na één
|
|---|
| 33 | wijziging uiteen gaan lopen. %>
|
|---|
| 34 | <div class="post-content post-content--gated pb-paid">
|
|---|
| 35 | <% if (_teaser) { %><div class="pg-teaser"><p><%= _teaser %></p></div><% } %>
|
|---|
| 36 | <div class="pb-gate">
|
|---|
| 37 | <h2 class="pg-h2"><%= t('pgate.h') %></h2>
|
|---|
| 38 | <p class="pg-sub">
|
|---|
| 39 | <% if (post.paid_min_cents) { %><%= t('pgate.sub_cents', { eur: (post.paid_min_cents/100).toFixed(2) }) %><% } else { %><%= t('pgate.sub') %><% } %>
|
|---|
| 40 | </p>
|
|---|
| 41 | <%# De ontgrendeling zelf blijft op de eigen pagina: daar staat de
|
|---|
| 42 | passkey-code (pageJs paid-gate) die hier niet geladen is. Eén knop die
|
|---|
| 43 | ernaartoe gaat is eerlijker dan een halve poort in de stroom. %>
|
|---|
| 44 | <p><a class="pg-btn" href="<%= _href %>"><%= t('pgate.unlock') %></a></p>
|
|---|
| 45 | </div>
|
|---|
| 46 | </div>
|
|---|
| 47 |
|
|---|
| 48 | <% } else if (_acc === 'fan') { %>
|
|---|
| 49 | <div class="post-content post-content--gated pb-fan">
|
|---|
| 50 | <% if (_teaser) { %><div class="pg-teaser"><p><%= _teaser %></p></div><% } %>
|
|---|
| 51 | <div class="pb-gate">
|
|---|
| 52 | <h2 class="pg-h2"><%= t('fgate.title') %></h2>
|
|---|
| 53 | <p class="pg-sub"><%= t('fgate.sub') %></p>
|
|---|
| 54 | <p><a class="fg-btn" href="/auth/login?next=<%= encodeURIComponent(_href) %>"><%= t('fgate.login') %></a></p>
|
|---|
| 55 | </div>
|
|---|
| 56 | </div>
|
|---|
| 57 |
|
|---|
| 58 | <% } else { %>
|
|---|
| 59 | <%# 'forbidden' hoort de tijdlijn niet eens te bereiken: die haalt alleen
|
|---|
| 60 | gepubliceerde berichten op. Staat er voor het geval een aanroeper ooit
|
|---|
| 61 | iets anders doorgeeft -- dan liever niets dan een concept. %>
|
|---|
| 62 | <% } %>
|
|---|