mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-02-08 15:47:40 +01:00
@@ -89,12 +89,19 @@ Digest.send = async function (data) {
|
|||||||
}
|
}
|
||||||
let errorLogged = false;
|
let errorLogged = false;
|
||||||
await batch.processArray(data.subscribers, async (uids) => {
|
await batch.processArray(data.subscribers, async (uids) => {
|
||||||
let userData = await user.getUsersFields(uids, ['uid', 'email', 'email:confirmed', 'username', 'userslug', 'lastonline']);
|
let userData = await user.getUsersFields(uids, [
|
||||||
userData = userData.filter(u => u && u.email && (meta.config.includeUnverifiedEmails || u['email:confirmed']));
|
'uid', 'email', 'email:confirmed', 'username', 'userslug', 'lastonline',
|
||||||
|
]);
|
||||||
|
userData = userData.filter(
|
||||||
|
u => u && u.email && (meta.config.includeUnverifiedEmails || u['email:confirmed'])
|
||||||
|
);
|
||||||
if (!userData.length) {
|
if (!userData.length) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await Promise.all(userData.map(async (userObj) => {
|
const userSettings = await user.getMultipleUserSettings(userData.map(u => u.uid));
|
||||||
|
const date = new Date();
|
||||||
|
await Promise.all(userData.map(async (userObj, index) => {
|
||||||
|
const userSetting = userSettings[index];
|
||||||
const [publicRooms, notifications, topics] = await Promise.all([
|
const [publicRooms, notifications, topics] = await Promise.all([
|
||||||
getUnreadPublicRooms(userObj.uid),
|
getUnreadPublicRooms(userObj.uid),
|
||||||
user.notifications.getUnreadInterval(userObj.uid, data.interval),
|
user.notifications.getUnreadInterval(userObj.uid, data.interval),
|
||||||
@@ -118,9 +125,8 @@ Digest.send = async function (data) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
emailsSent += 1;
|
emailsSent += 1;
|
||||||
const now = new Date();
|
|
||||||
await emailer.send('digest', userObj.uid, {
|
await emailer.send('digest', userObj.uid, {
|
||||||
subject: `[[email:digest.subject, ${now.getFullYear()}/${now.getMonth() + 1}/${now.getDate()}]]`,
|
subject: `[[email:digest.subject, ${date.toLocaleDateString(userSetting.userLang)}]]`,
|
||||||
username: userObj.username,
|
username: userObj.username,
|
||||||
userslug: userObj.userslug,
|
userslug: userObj.userslug,
|
||||||
notifications: unreadNotifs,
|
notifications: unreadNotifs,
|
||||||
|
|||||||
Reference in New Issue
Block a user