Merge branch 'master' of ssb://%MeCTQrz9uszf9EZoTnKCeFeIedhnKWuB3JHW2l1g9NA=.sha256 into render_rss
This commit is contained in:
@@ -184,13 +184,13 @@ exports.init = function (sbot, config) {
|
|||||||
|
|
||||||
function serveFeeds(req, res, following, channelSubscriptions, feedId, name) {
|
function serveFeeds(req, res, following, channelSubscriptions, feedId, name) {
|
||||||
pull(
|
pull(
|
||||||
sbot.createLogStream({ reverse: true, limit: 2500 }),
|
sbot.createLogStream({ reverse: true, limit: 5000 }),
|
||||||
pull.filter((msg) => {
|
pull.filter((msg) => {
|
||||||
return !msg.value ||
|
return !msg.value ||
|
||||||
(msg.value.author in following ||
|
(msg.value.author in following ||
|
||||||
msg.value.content.channel in channelSubscriptions)
|
msg.value.content.channel in channelSubscriptions)
|
||||||
}),
|
}),
|
||||||
pull.take(100),
|
pull.take(150),
|
||||||
pull.collect(function (err, logs) {
|
pull.collect(function (err, logs) {
|
||||||
if (err) return respond(res, 500, err.stack || err)
|
if (err) return respond(res, 500, err.stack || err)
|
||||||
res.writeHead(200, {
|
res.writeHead(200, {
|
||||||
@@ -273,7 +273,7 @@ exports.init = function (sbot, config) {
|
|||||||
if (format === null) return respond(res, 415, 'Invalid format')
|
if (format === null) return respond(res, 415, 'Invalid format')
|
||||||
|
|
||||||
pull(
|
pull(
|
||||||
sbot.links({dest: id, values: true, rel: 'root'}),
|
sbot.links({dest: id, values: true }),
|
||||||
includeRoot && prepend(getMsg, id),
|
includeRoot && prepend(getMsg, id),
|
||||||
pull.unique('key'),
|
pull.unique('key'),
|
||||||
pull.collect(function (err, links) {
|
pull.collect(function (err, links) {
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ MdRenderer.prototype.urltransform = function(href) {
|
|||||||
case "%":
|
case "%":
|
||||||
return this.opts.msg_base + encodeURIComponent(href);
|
return this.opts.msg_base + encodeURIComponent(href);
|
||||||
case "@":
|
case "@":
|
||||||
|
href = this.opts.mentions[href.substr(1)] || href;
|
||||||
return this.opts.feed_base + encodeURIComponent(href);
|
return this.opts.feed_base + encodeURIComponent(href);
|
||||||
case "&":
|
case "&":
|
||||||
return this.opts.blob_base + encodeURIComponent(href);
|
return this.opts.blob_base + encodeURIComponent(href);
|
||||||
@@ -56,11 +57,14 @@ MdRenderer.prototype.image = function(href, title, text) {
|
|||||||
|
|
||||||
function renderEmoji(emoji) {
|
function renderEmoji(emoji) {
|
||||||
var opts = this.renderer.opts;
|
var opts = this.renderer.opts;
|
||||||
return emoji in emojis
|
var mentions = opts.mentions;
|
||||||
|
var url = mentions[emoji]
|
||||||
|
? opts.blob_base + encodeURIComponent(mentions[emoji])
|
||||||
|
: emoji in emojis && opts.emoji_base + escape(emoji) + '.png';
|
||||||
|
return url
|
||||||
? '<img src="' +
|
? '<img src="' +
|
||||||
opts.emoji_base +
|
url +
|
||||||
escape(emoji) +
|
'"' +
|
||||||
'.png"' +
|
|
||||||
' alt=":' +
|
' alt=":' +
|
||||||
escape(emoji) +
|
escape(emoji) +
|
||||||
':"' +
|
':"' +
|
||||||
@@ -354,7 +358,7 @@ function renderMsg(opts, msg) {
|
|||||||
escape(msg.value.author) +
|
escape(msg.value.author) +
|
||||||
'"' +
|
'"' +
|
||||||
">" + msg.author.name + "</a>" +
|
">" + msg.author.name + "</a>" +
|
||||||
msgTimestamp(msg, name) +
|
msgTimestamp(msg, opts.base + name) +
|
||||||
'</figcaption>' +
|
'</figcaption>' +
|
||||||
'</figure>' +
|
'</figure>' +
|
||||||
'</header>' +
|
'</header>' +
|
||||||
@@ -446,13 +450,13 @@ function renderRss(opts, msg) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function msgTimestamp(msg, name) {
|
function msgTimestamp(msg, link) {
|
||||||
var date = new Date(msg.value.timestamp);
|
var date = new Date(msg.value.timestamp);
|
||||||
var isoStr = date.toISOString();
|
var isoStr = date.toISOString();
|
||||||
return (
|
return (
|
||||||
'<time class="ssb-timestamp" datetime="' + isoStr + '">' +
|
'<time class="ssb-timestamp" datetime="' + isoStr + '">' +
|
||||||
'<a ' +
|
'<a ' +
|
||||||
'href="#' + name + '" ' +
|
'href="' + link + '" ' +
|
||||||
'title="' + isoStr + '" ' +
|
'title="' + isoStr + '" ' +
|
||||||
'>' + formatDate(date) + '</a>' +
|
'>' + formatDate(date) + '</a>' +
|
||||||
'</time>'
|
'</time>'
|
||||||
@@ -561,6 +565,10 @@ function render(opts, c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function renderPost(opts, c) {
|
function renderPost(opts, c) {
|
||||||
|
opts.mentions = {};
|
||||||
|
if (Array.isArray(c.mentions)) c.mentions.forEach(function (link) {
|
||||||
|
if (link && link.name && link.link) opts.mentions[link.name] = link.link;
|
||||||
|
});
|
||||||
return '<section>' + marked(String(c.text), opts.marked) + "</section>";
|
return '<section>' + marked(String(c.text), opts.marked) + "</section>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user