|
|
@ -9,13 +9,7 @@ const moment = require('moment'); |
|
|
|
|
|
|
|
const logger = require('../logger')(__filename); |
|
|
|
|
|
|
|
function interpolate(item, post, feed) { |
|
|
|
const type = item.type.split('/')[0]; |
|
|
|
|
|
|
|
const pattern = feed.type === 'direct' |
|
|
|
? config.library.direct[type] |
|
|
|
: config.library.feed[type]; |
|
|
|
|
|
|
|
function interpolate(pattern, item, post, feed) { |
|
|
|
const data = {}; |
|
|
|
|
|
|
|
if (feed) { |
|
|
@ -28,6 +22,7 @@ function interpolate(item, post, feed) { |
|
|
|
if (post) { |
|
|
|
data.post = { |
|
|
|
title: post.title, |
|
|
|
date: post.date && moment(post.date).format(config.library.dateFormat), |
|
|
|
}; |
|
|
|
|
|
|
|
data.host = { |
|
|
@ -84,7 +79,13 @@ async function storeItem(item, post, feed) { |
|
|
|
return item; |
|
|
|
} |
|
|
|
|
|
|
|
const destination = interpolate(item, post, feed); |
|
|
|
const type = item.type.split('/')[0]; |
|
|
|
|
|
|
|
const pattern = feed.type === 'direct' |
|
|
|
? config.library.direct[type] |
|
|
|
: config.library.feed[type]; |
|
|
|
|
|
|
|
const destination = interpolate(pattern, item, post, feed); |
|
|
|
|
|
|
|
logger.info(`Storing '${item.title || post.title}' from '${feed.name}' at ${destination}`); |
|
|
|
|
|
|
@ -116,4 +117,5 @@ async function storeContent(post, feed) { |
|
|
|
|
|
|
|
module.exports = { |
|
|
|
storeContent, |
|
|
|
interpolate, |
|
|
|
}; |