Kailash Nadh
55bd98630a
Remove admin user/password from sample config generation.
2024-09-16 23:00:59 +05:30
Kailash Nadh
316d574d80
Add support for setting admin user/password via env on --install
.
2024-09-16 23:00:59 +05:30
Kailash Nadh
e4a7d307b3
Fix update check looping on failed HTTP requests.
2024-09-16 23:00:59 +05:30
Kailash Nadh
862d4240c5
Add legacy TOML user+password to API auth on init with warning.
2024-09-16 23:00:59 +05:30
Kailash Nadh
af63c1628e
Add API user authentication to auth module with caching of creds on user CRUD.
2024-09-16 23:00:59 +05:30
Kailash Nadh
6236c42c12
User legacy (TOML) admin credentials as API creds for backwards compatibility.
2024-09-16 23:00:59 +05:30
Kailash Nadh
a94d7cc8c4
Add OIDC auth hooks (init, callback, session) and finish OIDC support.
2024-09-16 23:00:59 +05:30
Kailash Nadh
874e12ed10
Refactor update check.
...
- Switch away from GitHub releases API to a statically hosted custom
JSON message to include richer data.
- Instead of checking 24 hours post-boot, check 15 mins later post boot
and then every 24 hours.
- Add provision for messages to display on the admin dashboard to
communicate important / urgent announcements.
(Fingers crossed, this never has to be used!)
2024-09-16 23:00:59 +05:30
Kailash Nadh
01c64de7a8
Add warning on admin UI for legacy creds in the TOML file.
2024-09-16 23:00:59 +05:30
Kailash Nadh
f632dfbce1
Add per-list permission management to roles.
2024-09-16 23:00:58 +05:30
Kailash Nadh
728877dbe6
Add new fields to /api/config
to remove /settings
dependency in camapign UI.
2024-09-16 23:00:58 +05:30
Kailash Nadh
217590ea0e
Refactor 'super' user type to a pre-defined super admin role.
2024-09-16 23:00:58 +05:30
Kailash Nadh
f57ac201ff
Add granular permissions and role management to backend and admin UI.
2024-09-16 23:00:58 +05:30
Kailash Nadh
2bb4e19b74
Style and add OIDC logo to the login page.
2024-09-16 23:00:58 +05:30
Kailash Nadh
13ac249afb
Upgrade simplesessions to v3.
2024-09-16 23:00:58 +05:30
Kailash Nadh
938a5c5077
Add user profile APIs and update UI.
2024-09-16 23:00:58 +05:30
Kailash Nadh
31c5358d0e
Refactor handler groups and add mising auth features like logout.
2024-09-16 23:00:58 +05:30
Kailash Nadh
a4e8c1daea
Add public login page and auth middleware and handlers.
2024-09-16 23:00:58 +05:30
Kailash Nadh
c2bd15a641
Add api
type user.
2024-09-16 23:00:58 +05:30
Kailash Nadh
8b2f385708
Add API token authentication.
2024-09-16 23:00:58 +05:30
Kailash Nadh
5832ea5384
Add user/password login handler.
2024-09-16 23:00:58 +05:30
Kailash Nadh
98213ebf24
Add create/add/delete user management UI and database schema.
2024-09-16 23:00:58 +05:30
Kailash Nadh
06264ca13f
Refactor OIDC middleware handler logic.
2024-09-16 23:00:57 +05:30
Kailash Nadh
011d89144d
Add a settings UI for OIDC.
2024-09-16 23:00:57 +05:30
Marc Bärtschi
67a33b40eb
Implement OIDC
...
This is a simple OIDC implementation. It's very basic and just logs the user in. Access control needs to be done on the IDP side.
2024-09-16 23:00:57 +05:30
Vinoth Kumar
d7fe13c4b9
Fix typo and formatting ( #2028 )
2024-08-30 13:24:45 +05:30
Abhinav Raut
679457cb12
Ensure unique upload filenames by adding a suffix ( #1963 )
...
Fixes #1957 .
Co-authored-by: Abhinav Raut <abhinav.raut@zerodha.com>
2024-08-08 15:42:29 +05:30
Bowrna
1e6e97e750
Add validation for filename with non-ASCII chars in media upload ( #1973 )
2024-08-05 20:08:33 +05:30
Keshav Gupta
c334d2e6e1
fix #1950:Export of unsubscribed users exports all users ( #1965 )
...
Co-authored-by: keshav <keshav.gupta@jarvis.consulting>
2024-08-02 00:05:33 +05:30
Kailash Nadh
c2e7c713ca
Increase campaign subject char limit. Closes #1909 .
2024-07-17 19:38:11 +05:30
largemouth
c3f4379b17
chore: fix function name in comment ( #1836 )
...
Signed-off-by: largemouth <largemouth@aliyun.com>
2024-04-22 18:43:23 +05:30
Jonas Sulzer
1d32d4c368
👌 IMPROVE: make RootURL available in email templates ( #1812 )
...
Signed-off-by: Jonas Sulzer <jonas@violoncello.ch>
2024-04-04 22:57:52 +05:30
Kailash Nadh
124af1ee29
Make static e-mail template subjects scriptable. Closes #1727 .
...
This commit introduces optional, custom `<title>` tags that can be
added to `static/email-templates/*.html` so as to make the subjectlines
fully scriptable for system e-mails and notifications.
The tag must look like this.
```
<title data-i18n>Stuff {{ .Subscriber.Name }} here!</title>
```
2024-03-25 15:49:40 +05:30
Muhammed Kadir Tan
2afac2469e
fix: check errors.Is instead of strings.Contains for http: Server closed error ( #1779 )
2024-03-12 11:06:35 +05:30
tgolang
860009b866
chore: remove repetitive words ( #1778 )
...
Signed-off-by: tgolang <seekseat@aliyun.com>
2024-03-11 13:33:50 +05:30
Shivam Mishra
d7b55cd147
fix: trim config before use ( #1756 )
...
* feat: ensure hosts are trimmed before saving
* feat: trim host before saving bounces
2024-02-26 15:12:50 +05:30
Kailash Nadh
d70236c379
Fix incorrect error message in tx template preview.
2024-01-28 11:04:47 +05:30
Kailash Nadh
6cb9982aac
Add .IndividualTracking
to public templates. Closes #1663 .
2024-01-27 22:38:26 +05:30
Kailash Nadh
f14df890a4
Update Go deps.
2024-01-27 20:55:50 +05:30
Kailash Nadh
f0a3cbd563
Remove redundant SMTP test error toast on the admin UI.
2024-01-27 20:41:07 +05:30
Kailash Nadh
5a3664aee2
Add support for caching slow queries on large databases.
...
- Add materialized views for list -> subscriber counts, dashboard chart,
and dashboard aggregate stats that slow down significantly on large
databases (with millions or tens of millions of subscribers). These
slow queries involve full table scan COUNTS().
- Add a toggle to enable caching slow results in Settings -> Performance.
- Add support for setting a cron string that crons and periodically
refreshes aggregated stats in materialized views.
Closes #1019 .
2024-01-27 15:51:12 +05:30
Kailash Nadh
2f487de9f7
Log subscriber id/uuid on failed opt-in message push. Closes #1333 .
2024-01-10 22:10:27 +05:30
Kailash Nadh
86771512ce
Merge branch 'slug'
2024-01-09 23:34:25 +05:30
Kailash Nadh
0d319ad9fd
Add 'slug' (permalink) support for campaign archives. Closes #1394 .
2024-01-09 23:34:08 +05:30
mpilnan
78caa35e42
fix: add copying campaign object before sending test message ( #1659 )
2024-01-09 23:22:01 +05:30
Kailash Nadh
fa2c840ddb
Rename v2.6.0 migration to v3.0.0, the next major release.
2024-01-06 11:56:08 +05:30
Kailash Nadh
772476c0df
Add accurate sent count, last sent subscriber tracking on campaigns.
...
- Sent count is no longer the batch size fetched from the DB but is
the actual count of messages sent.
- Pausing and resuming now accurately tracks the last subscriber that
was processed and resumes from there.
- Fix multiple concurrent campaigns blocking.
Closes #1616 . Closes #905 . Closes #1496 . Closes #1250 . Closes #1010 .
2024-01-02 14:57:04 +05:30
Kailash Nadh
414c5c0c99
Refactor the core concurrent campaign manager logic.
...
This commit fully refactors the core campaign manager logic.
It applies a whole new approach to campaign state and lifecycle management.
- Create a new "pipeline" abstraction on top of campaign
for state management.
- Account for every message processed and end campaigns
based on the actual count.
- Discard in-queue messages in the pipeline of a paused
or cancelled campaign.
2024-01-02 14:57:04 +05:30
Kailash Nadh
0c9dc07479
Add a ?v=hash
cache breaker (that changes on restart) to static assets.
2023-12-31 22:20:37 +05:30
Kailash Nadh
2feb1b0fb8
Make the name part in from
e-mails optional. Closes #1602 .
2023-12-30 21:48:12 +05:30