Kailash Nadh
32d5823dfe
Refactor 'super' user type to a pre-defined super admin role.
2024-10-13 16:59:52 +05:30
Kailash Nadh
d4e4c5fa99
Add granular permissions and role management to backend and admin UI.
2024-10-13 16:59:51 +05:30
Kailash Nadh
2000e9fa12
Style and add OIDC logo to the login page.
2024-10-13 16:59:51 +05:30
Kailash Nadh
7bb14de42e
Upgrade simplesessions to v3.
2024-10-13 16:59:51 +05:30
Kailash Nadh
4997c10b97
Add user profile APIs and update UI.
2024-10-13 16:59:51 +05:30
Kailash Nadh
906e0f57b6
Refactor handler groups and add mising auth features like logout.
2024-10-13 16:59:51 +05:30
Kailash Nadh
57ac9dca4b
Add public login page and auth middleware and handlers.
2024-10-13 16:59:51 +05:30
Kailash Nadh
1516bf216f
Add api type user.
2024-10-13 16:59:51 +05:30
Kailash Nadh
bf0b500bb0
Add API token authentication.
2024-10-13 16:59:51 +05:30
Kailash Nadh
0968e58766
Add user/password login handler.
2024-10-13 16:59:51 +05:30
Kailash Nadh
435d6d5169
Add create/add/delete user management UI and database schema.
2024-10-13 16:59:51 +05:30
Kailash Nadh
8ca95f6827
Refactor OIDC middleware handler logic.
2024-10-13 16:59:50 +05:30
Kailash Nadh
e406b2516a
Add a settings UI for OIDC.
2024-10-13 16:59:50 +05:30
Marc Bärtschi
1b7128abf2
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-10-13 16:59:50 +05:30
Kailash Nadh
58b13afa29
Fix tx template not being cached on update. Closes #2061 .
2024-10-05 09:51:56 +05:30
Bowrna
16f4dfd3e9
Fix incorrect bulk blocklisting behaviour ( #2041 ). Fixes #1841
2024-09-19 10:56:56 +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
Kailash Nadh
b2a5e37ccb
Fix incorrect form messages on public re-subscription to double opt-in lists. Closes #1638 .
2023-12-30 21:29:34 +05:30
Kailash Nadh
bce675870c
Fix preconfirm option not working on bulk 'select all' subscriber list management. Closes #1646 .
2023-12-30 20:52:14 +05:30
Kailash Nadh
0d74619cac
Make providing name in subscriber creation optional and assign internally. Closes #1630 .
2023-12-30 15:51:42 +05:30
Kailash Nadh
51af75cfef
Add subscription status filter to subscriber list query and admin UI.
2023-12-23 16:43:28 +05:30
Kailash Nadh
01acd386f6
Add tag/type/optin filter options to lists and campaigns APIs. Closes #1631 .
2023-12-23 14:45:55 +05:30
Kailash Nadh
5d635744c0
Skip non-existent dirs in --static-dir mode to use default stuffed dirs. Closes #1599 .
2023-12-23 10:55:46 +05:30
Kailash Nadh
aba71119c3
Fix default non-stuffed frontend dir path.
2023-12-23 10:30:37 +05:30
Kailash Nadh
53eb71a83b
Add 404 HTTP handlers to prevent those requests going to BasicAuth endpoints.
2023-11-25 11:53:56 +05:30
guangwu
4577868567
chore: remove refs to deprecated io/ioutil ( #1593 )
...
Signed-off-by: guoguangwu <guoguangwu@magic-shield.com>
2023-11-16 13:57:00 +05:30