2018-05-05 00:27:15 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
const config = require('config');
|
|
|
|
|
2021-12-17 01:04:25 +00:00
|
|
|
const logger = require('../logger')(__filename);
|
|
|
|
const archives = require('./archives');
|
2018-05-05 00:27:15 +00:00
|
|
|
|
|
|
|
function getArchivePostIds(username, exclude) {
|
2021-12-17 01:04:25 +00:00
|
|
|
logger.info(`Finding archived posts for '${username}'...`);
|
2018-05-05 00:27:15 +00:00
|
|
|
|
2021-12-17 01:04:25 +00:00
|
|
|
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}'`);
|
2018-05-05 00:27:15 +00:00
|
|
|
|
2021-12-17 01:04:25 +00:00
|
|
|
return postIds;
|
|
|
|
});
|
|
|
|
}
|
2018-05-05 00:27:15 +00:00
|
|
|
|
|
|
|
module.exports = getArchivePostIds;
|