render feed with about description and larger image on top

This commit is contained in:
Anders Rune Jensen
2017-05-12 22:28:57 +02:00
parent dffd43f062
commit c1b5c8d356
2 changed files with 28 additions and 2 deletions
+3 -2
View File
@@ -15,7 +15,8 @@ var {
renderEmoji, renderEmoji,
formatMsgs, formatMsgs,
wrapPage, wrapPage,
renderThread renderThread,
renderAbout
} = require('./render'); } = require('./render');
var appHash = hash([fs.readFileSync(__filename)]) var appHash = hash([fs.readFileSync(__filename)])
@@ -108,7 +109,7 @@ exports.init = function (sbot, config) {
paramap(addFollowAbout, 8), paramap(addFollowAbout, 8),
paramap(addVoteMessage, 8), paramap(addVoteMessage, 8),
paramap(addGitLinks, 8), paramap(addGitLinks, 8),
pull(renderThread(defaultOpts), wrapPage(about.name)), pull(renderAbout(defaultOpts, about), wrapPage(about.name)),
toPull(res, function (err) { toPull(res, function (err) {
if (err) console.error('[viewer]', err) if (err) console.error('[viewer]', err)
}) })
+25
View File
@@ -12,6 +12,7 @@ exports.MdRenderer = MdRenderer;
exports.renderEmoji = renderEmoji; exports.renderEmoji = renderEmoji;
exports.formatMsgs = formatMsgs; exports.formatMsgs = formatMsgs;
exports.renderThread = renderThread; exports.renderThread = renderThread;
exports.renderAbout = renderAbout;
function MdRenderer(opts) { function MdRenderer(opts) {
marked.Renderer.call(this, {}); marked.Renderer.call(this, {});
@@ -94,6 +95,30 @@ function wrap(before, after) {
}; };
} }
function renderAbout(opts, about) {
return pull(
pull.map(renderMsg.bind(this, opts)),
wrap(
'<span class="top-tip">You are reading content from ' +
'<a href="https://www.scuttlebutt.nz">Scuttlebutt</a>' +
'</span>' +
'<main>' +
'<article><header><figure>' +
'<img src="' + opts.img_base + escape(about.image) + '" ' +
'height="200" width="200"><figcaption>' +
'Feed of ' + about.name + '<br/>' +
(about.description != undefined ?
marked(about.description, opts.marked) : '') +
'</figcaption></figure></header></article>',
'</main>' +
'<a class="call-to-action" href="https://www.scuttlebutt.nz">' +
'Join Scuttlebutt now' +
'</a>'
)
);
}
function renderThread(opts) { function renderThread(opts) {
return pull( return pull(
pull.map(renderMsg.bind(this, opts)), pull.map(renderMsg.bind(this, opts)),