Commit Graph

87 Commits

Author SHA1 Message Date
Barış Soner Uşaklı
e231c010f6 refactor: get rid of map, move parallel calls into promise.all 2026-01-22 11:49:16 -05:00
Barış Soner Uşaklı
f29c9f064b fix: closes #13258, dont mark digest as delivered if it fails
show fail count and sent count separately
2026-01-22 11:31:59 -05:00
Barış Soner Uşaklı
6c3e2a8e22 refactor: create date once per digest.send 2025-05-15 09:42:55 -04:00
Barış Soner Uşaklı
3d96afb2d1 feat: use local date string for digest subject
closes #13420
2025-05-15 09:38:43 -04:00
Barış Soner Uşaklı
3aae92341c fix: change digest to use posts sorting first
to use the new popular ranking algo. also fixes empty digests if there are no new topics created in the past 24 hours but there are topics with posts
2024-04-02 11:32:41 -04:00
Barış Soner Uşaklı
eb0fcd3235 feat: closes #11812, add unread public rooms into digest 2023-07-18 13:12:06 -04:00
Barış Soner Uşaklı
a75fd636ad test: add missing tests 2023-05-11 20:21:57 -04:00
Barış Soner Uşaklı
aff6d20f9f test: fix digest test 2023-05-11 19:01:28 -04:00
Barış Soner Uşaklı
0084b563f3 fix: #10631, fix user digest setting display acp 2022-05-19 12:32:52 -04:00
Julian Lam
165a1d8b76 Revert "fix: update usage of emailer.send to not catch (as errors are no longer thrown), email error throttler"
This reverts commit d4e5259fcf.
2022-01-28 15:41:27 -05:00
Julian Lam
d4e5259fcf fix: update usage of emailer.send to not catch (as errors are no longer thrown), email error throttler 2022-01-28 15:16:41 -05:00
Barış Soner Uşaklı
8e319a9b25 refactor: catch errors from digest 2021-10-18 20:17:35 -04:00
Barış Soner Uşaklı
f7967bdf68 feat: #8053, biweekly digest option 2021-10-18 20:10:14 -04:00
Julian Lam
69c96dd23c refactor(emails): more work in update email interstitial, interstitial skipping, email change on confirmation, deprecation of requireEmailConfirmation 2021-07-30 13:29:13 -04:00
Barış Soner Uşaklı
3aa26c4df2 fix: #9339, only log email errors once per digest, notification push
show notice in acp
2021-03-05 19:03:16 -05:00
Barış Soner Uşaklı
c61cc37bba fix: typo 2021-02-10 17:56:46 -05:00
Barış Soner Uşaklı
cf4002bcc9 perf: cache base_url 2021-02-10 17:41:39 -05:00
Barış Soner Uşaklı
5ce2820799 perf: single call to get digest topics, dont send duplicate topics 2021-02-10 17:37:22 -05:00
Barış Soner Uşaklı
90d5c9da44 perf: single db call to add all uids 2021-02-10 00:58:07 -05:00
Barış Soner Uşaklı
0185ea1b4f perf: make digests a little bit faster
and use batch.processArray
dont load data for users who have no email or have not confirmed their emails
2021-02-09 15:27:08 -05:00
Peter Jaszkowiak
23f212a4c0 chore: eslint prefer-destructuring 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
dab3b23575 chore: eslint no-var, vars-on-top 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
b56d9e12b5 chore: eslint prefer-arrow-callback 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
707b55b6a5 chore: eslint prefer-template 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
2be396ff6e fix: email testing and settings change from ACP
- changing email SMTP settings wouldn't apply the first time
- "Send Test Email" now will report emailer errors in most cases
2020-12-18 16:39:09 -05:00
Julian Lam
6e2da9966e refactor: move plugin hook methods to plugin.hooks.* 2020-11-20 16:32:39 -05:00
Barış Soner Uşaklı
e60357d20d feat: #6594, add top/popular sections to digest email (#8709) 2020-10-01 22:07:33 -04:00
Barış Soner Uşaklı
72c60d19c2 fix: tests 2020-07-21 20:08:40 -04:00
Barış Soner Uşaklı
2a5f8ab27e feat: dont load all subscribers at once
increase batch to 500
2020-07-21 18:19:46 -04:00
Barış Soner Uşaklı
e80379dc0e feat: display stack trace on winston.error 2020-06-20 23:32:12 -04:00
Barış Soner Uşaklı
8e23dec84b fix: lint 2020-04-01 21:57:28 -04:00
Barış Soner Uşaklı
1b992d8201 fix: #8058, fix incorrect digest setting display in ACP 2019-12-11 10:25:16 -05:00
Julian Lam
645d647248 feat: wip, better digest handling (+ eventual digest resend logic) (#7995)
* feat: wip, better digest handling (+ eventual digest resend logic)

- await emailer.send call in digest.send method
- save send success to a new sorted set digest:{interval}:byUid

* feat: continuing work on digest tools

- Added ACP page to view digest settings and delivery times per user

* feat: added paginator and stub buttons for resending digest

* feat: wrapping up digest revamp

- New language strings in ACP digest page
- Client-side ACP script for digest ACP page
- Websocket call for ACP page to execute digests
- Broke out logic to retrieve user digest settings to getUsersInterval

* fix: minor cleanup

* fix: #8010 and some style suggestions from baris

* fix: resolve confusing comment
2019-11-02 13:11:02 -04:00
Barış Soner Uşaklı
0037a03886 fix: #8018, allow absolute urls in notification.path 2019-11-01 21:01:46 -04:00
Barış Soner Uşaklı
4652c68ba7 fix: dont show deleted topics in digest 2019-09-09 18:00:05 -04:00
Barış Soner Uşaklı
bc6f22ebdb fix: digest not sending topics 2019-08-06 17:23:50 -04:00
Barış Soner Uşaklı
0b498acdcf fix: #7765 2019-07-22 18:36:29 -04:00
Barış Soner Uşaklı
c610eb1430 feat: #7743, user/digest, user/email, user/follow 2019-07-14 23:11:16 -04:00
Barış Soner Uşaklı
9eb1fcd4e5 fix: #7762, allow array for isBanned
dont filter banned users one by one in digest
2019-07-14 16:25:30 -04:00
Aziz Khoury
3fbb6faf28 feat: update unban logic/invocation and refactor User.bans module
* auto unban when User.getUsersFields is called and the user is banned but has expired

* cleanups and removal of expiry_readable

* expiry_readable make an alias for backward compatibility

* User.bans.func vs User.*ban*Func

* console.log cleanups, plus todo message added

* use code util.deprecate

* fix: remove ununsed winston require
2019-04-05 14:14:48 -04:00
Baris Usakli
23da300958 feat: pass options to digest 2019-02-22 14:39:05 -05:00
Julian Lam
f32a992237 feat: revamp email templates to be more style agnostic (#7375)
* feat: re-designed digest

Updated design, logic no longer shows "no topics", just doesn't
show the list at all, teaser re-retrieved for digest so that it
always grabs a teaser even if there is no reply, changed default
email background to a light grey.

* fix: minor padding issues in digest

* fix: banned template

* fix: invitation.tpl

* fix: removed unused notif_chat and notif_post email templates

* fix: notification template

* fix: registration_accepted template

* fix: reset tpl

* fix: test tpl

* fix: email verify tpl

* fix: reset notify tpl

* fix: welcome tpl

* fix: additional minor font fixes

* fix: removed unused email header image assets

* fix: internationalised 'your daily digest' string

* fix: broken url in digest 🤦

* feat: added RTL support for emailer

/cc @PostMidnight
2019-02-20 16:13:26 -05:00
Julian Lam
aca0556052 fix: #7261, banned users still get digests 2019-02-08 16:26:38 -05:00
Barış Soner Uşaklı
9c022afae1 Parse int (#6853)
* Store config fields as JSON in the db

Fewer parseInts

* Remove unnecessary parseInts

* remove some dupe code add tests

* remove console.log

* remove more parseInts

* WIP: read meta.configs defaults from defaults.json

remove more parseInts

* more work

* add log for failing test

* update admin pwd

* fix tests, dont require posts/cache before configs are initialized

* handle saves

* Test boolean conditions

* remove more parseInts

* Fix boolean values

* remove lots more parseInts

* removed json parsing

* renamed var to number

* categories dont have timestamp
2018-10-21 16:47:51 -04:00
Barış Soner Uşaklı
ccad95cf73 closes #6579 2018-06-18 14:37:37 -04:00
Julian Lam
9e44fc6ae2 fixes #6371 2018-03-20 08:41:49 -04:00
Barış Soner Uşaklı
b9d410d612 closes #6332 2018-02-20 12:53:05 -05:00
Barış Soner Uşaklı
8427601b04 closes #6287 2018-01-29 11:56:06 -05:00
Barış Soner Uşaklı
d70cdf1e28 show real emails sent number 2018-01-23 12:02:43 -05:00
Barış Soner Uşaklı
e3ce817ab9 show settings in digest email closes #6160 2017-12-11 11:00:11 -05:00