Commit Graph

543 Commits

Author SHA1 Message Date
Kailash Nadh 9005bb6dad Move internal packages to 'internal' dir 2020-03-08 00:17:54 +05:30
Kailash Nadh 8853809713 Refactor and cleanup initialization.
- Clean up main.go (by moving init to init.go) and improve
  composition comprehension.
- Refactor app context and init struct and field names.
- Update package dependencies in initialisation.
2020-03-08 00:06:48 +05:30
Kailash Nadh 83b49df39d Add missing error logs 2020-03-07 23:00:55 +05:30
Kailash Nadh 0a2d2d66be Refactor forms UI 2020-03-07 22:32:36 +05:30
Kailash Nadh 276942ab91 Replace outdated UUID lib 2020-03-07 20:37:48 +05:30
Kailash Nadh 4faffe0d46 Refactor template name in public pages 2020-03-07 20:24:42 +05:30
Kailash Nadh c08ca14a5b Add subscription forms 2020-03-07 20:22:01 +05:30
Kailash Nadh b205761fb3 Update feature list 2020-02-09 19:43:02 +05:30
Kailash Nadh 62aa31b14c Refactor {{ UnsubURL }} into a global function (breaking change) 2020-02-09 19:15:14 +05:30
Kailash Nadh 2ee2e68230 Inject version during build into the frontend 2020-02-09 18:50:08 +05:30
Kailash Nadh f039f351c1 Link list name to subscribers page on lists UI 2020-02-09 17:27:51 +05:30
Kailash Nadh afdf053288 Add 'send opt-in mail' link to subscriber modal UI 2020-02-09 17:17:58 +05:30
Kailash Nadh 6be3352f52 Refactor/merge optin-list fetch queries 2020-02-09 16:25:19 +05:30
Kailash Nadh 6cb2cd7ea2 Tweak default list and subscriber entries in install 2020-02-09 11:45:01 +05:30
Kailash Nadh 8616aa8028 Remove `status` from example on the import UI 2020-02-09 11:36:15 +05:30
Kailash Nadh ab8bac226f Fix title bug in list modal UI 2020-02-09 11:36:15 +05:30
Kailash Nadh 022b35c4a7 Add support for sending 'opt-in' campaigns.
- Campaigns now have a `type` property (regular, opt-in)
- Opt-in campaigns work for double opt-in lists and e-mail
  subscribers who haven't confirmed their subscriptions.
- Lists UI shows a 'Send opt-in campaign' optin that
  automatically creates an opt-in campaign for the list
  with a default message body that can be tweaked before
  sending the campaign.
- Primary usecase is to send opt-in campaigns to subscribers
  who are added via bulk import.

This is a breaking change. Adds a new Postgres enum type
`campaign_type` and a new column `type` to the campaigns table.
2020-02-09 11:36:15 +05:30
Kailash Nadh 9a890c77ab Add button style to default template 2020-02-09 11:36:15 +05:30
Kailash Nadh af14fff6c2 Refactor campaign content type references 2020-02-09 11:36:15 +05:30
Kailash Nadh ec22170176 Fix list ID parsing in campaign UI 2020-02-09 11:36:15 +05:30
Kailash Nadh a2d21a8bf0 Refactor opt-in subscriber selection queries 2020-02-09 11:36:15 +05:30
Kailash Nadh ea302d11b7 Use default template if there isn't one in campaign creation 2020-02-09 11:36:15 +05:30
Kailash Nadh 871893a9d2 Add double opt-in support.
- Lists can now be marked as single | double optin.
- Insert subscribers to double opt-in lists send out a
  confirmation e-mail to the subscriber with a confirmation link.
- Add `{{ OptinURL }}` to template functions.

This is a breaking change. Adds a new field 'optin' to the lists
table and changes how campaigns behave. Campaigns on double opt-in
lists exclude subscribers who haven't explicitly confirmed subscriptions.

Changes the structure and behaviour of how notification e-mail routines,
including notif email template compilation,  notification callbacks for
campaign and bulk import completions.
2020-02-09 11:36:15 +05:30
Kailash Nadh bdd42b66c5 Refactor notificatin data structure 2020-02-09 11:36:15 +05:30
Kailash Nadh e9685b2ce5 Refactor HTML views with new data structures 2020-02-09 11:36:15 +05:30
Kailash Nadh f8a204408f Add default values to sample config URLs 2020-02-09 11:36:15 +05:30
Kailash Nadh f71493e183 Add PNG logo for e-mails 2020-02-09 11:36:15 +05:30
Kailash Nadh 4abcb2852c Refactor template functions.
- Better template function shorthand substitution.
- Make `UnsubscribeURL` a function consitent with TrackLink.
  This is a breaking change that makes the old `.UnsubscrbeURL`
  obsolete.
2020-02-09 11:36:15 +05:30
Kailash Nadh 9a88c2ed7b Add support for custom SMTP HELO hostname (for FQDNS) 2020-02-06 15:39:43 +05:30
Kailash Nadh 047de69770 Add support for no-auth SMTPs 2020-02-05 18:09:13 +05:30
Kailash Nadh 1064f1e4d8 Merge branch 'master' of github.com:knadh/listmonk 2020-01-19 20:49:01 +05:30
Kailash Nadh 6681f189fc Fix 'send_at' option on the UI and bug in starting scheduled campaigns 2020-01-19 20:46:25 +05:30
Kailash Nadh e230baca3b
Merge pull request #51 from josejibin/fix/per-page-logic
Fix: perPage logic in `getPagination`
2020-01-17 23:54:58 +05:30
j f6878130a5 Fix: perPage logic in `getPagination` 2020-01-17 22:17:14 +05:30
Kailash Nadh 3cba2fea51
Amend feature text 2019-12-24 14:59:15 +05:30
Kailash Nadh 32a543bf4f Fix incorrect campaign API response when there are no campaigns 2019-12-06 21:39:18 +05:30
Kailash Nadh 6747a95b3d Fix unclosed DB transactions in subscriber search 2019-12-05 21:27:31 +05:30
Kailash Nadh 6b6dc59067 Add max idle/open params to DB connect 2019-12-05 17:28:22 +05:30
Kailash Nadh 0d8abf9435 Fix subscriber export button 2019-12-01 17:57:13 +05:30
Kailash Nadh 427dd93d3b Add --yes flag to skip prompts 2019-11-30 16:55:14 +05:30
Kailash Nadh 1dc26e2cb7 Fix logo (SVG) font by changing text to path 2019-11-30 11:17:39 +05:30
Kailash Nadh c7fc1aa506 Validate the `status` field in create subscriber API 2019-11-30 09:54:46 +05:30
Kailash Nadh ccd354df3f
Merge pull request #31 from mr-karan/s3
feat: Add media package that allows pluggable backends (filesystem / s3) for media file uploads.
2019-10-31 12:01:13 +05:30
Karan Sharma e5c3196b31 feat: Add blobstore package
This commit introduces a `blobstore` package and refactors the existing
upload mechanism. Upload is now handled by `providers` and the two
bundled providers are `S3` and `Filesystem`. `app.Blobstore` initialises
the correct provider based on the configuration and handles `Put`,
`Delete` and `Get` operations.
2019-10-31 11:25:31 +05:30
Kailash Nadh 7ee71166fb
Merge pull request #29 from rhnvrm/master
chore: minor refactors based on static checks
2019-10-30 17:55:14 +05:30
Rohan Verma 712ad2d517 chore: minor refactors based on static checks
- unchecked returns fixed (most)
- remove unused constants
- remove unsed structs
- function parameters unused or incorrectly used
- removed if else chains for error checks
- use regex MustCompile instead of compile
- spell checks
- preallocate slice cap when size known
- scope issues inside range
2019-10-29 11:03:51 +05:30
Kailash Nadh 2c18d6356b
Merge pull request #24 from shailysangwan/master
update instructions for local installation
2019-10-23 17:17:31 +05:30
shailysangwan d13c33590d update instructions for local installation 2019-10-23 17:06:03 +05:30
Kailash Nadh ff4060102f
Merge pull request #18 from mr-karan/kubernetes
feat: read config from env
2019-10-01 18:04:37 +05:30
Karan Sharma 65ef23b79b feat: read config from env 2019-10-01 16:54:50 +05:30