22 lines
698 B
JavaScript
22 lines
698 B
JavaScript
'use strict';
|
|
|
|
const config = require('config');
|
|
|
|
const logger = require('../logger')(__filename);
|
|
const archives = require('./archives');
|
|
|
|
function getArchivePostIds(username, exclude) {
|
|
logger.info(`Finding archived posts for '${username}'...`);
|
|
|
|
return Promise.all(config.fetch.archives.reddit.map(source => archives[source](username)))
|
|
.then(postIds => postIds.flatten())
|
|
.then(postIds => (exclude ? postIds.filter(postId => !exclude.includes(postId)) : postIds))
|
|
.then((postIds) => {
|
|
logger.info(`Found ${postIds.length} unique archived posts for user '${username}'`);
|
|
|
|
return postIds;
|
|
});
|
|
}
|
|
|
|
module.exports = getArchivePostIds;
|