Commit Graph

413 Commits

Author SHA1 Message Date
Kailash Nadh 9dcd716f91 Add support for SMTP 'LOGIN' auth 2020-04-01 19:56:40 +05:30
Kailash Nadh 71803ab1af Add support for loading custom static files with `--static-dir`
- Removed duplicate copies of static files in `static/public/`
2020-03-14 21:07:14 +05:30
Kailash Nadh bbe239ba29
Added link to Docker env configuration wiki 2020-03-13 18:55:37 +05:30
Kailash Nadh faf8a7ae63 Add fix for BOM in CSV importers 2020-03-09 19:47:20 +05:30
Kailash Nadh ad9ee7528d Update build script to reflect new static paths 2020-03-08 16:10:34 +05:30
Kailash Nadh 83d888a30b Update and cleanup deps 2020-03-08 16:03:57 +05:30
Kailash Nadh 901c456aa9 Fix issues with responsive UI on the campaign page 2020-03-08 15:55:22 +05:30
Kailash Nadh 8771dc28cb Refactor init functions for clearer dependency visibility 2020-03-08 15:38:47 +05:30
Kailash Nadh 07856d34a2 Fix bug in e-mail scheduling 2020-03-08 15:29:53 +05:30
Kailash Nadh 68c4ccdefc Fix campaign UI to update start/schedule button automatically 2020-03-08 15:23:57 +05:30
Kailash Nadh ba87801930 Fix template preview sending invalid view requests 2020-03-08 15:10:51 +05:30
Kailash Nadh ca032c89d6 Refactor manager.CampaignMessage's exposed fields 2020-03-08 15:02:20 +05:30
Kailash Nadh a0d9a4771a Fix incorrect send_at time in installer's sample campaign 2020-03-08 15:01:42 +05:30
Kailash Nadh 442dec9341 Fix broken subscriber data export 2020-03-08 14:36:50 +05:30
Kailash Nadh 892d5d2a20 Remove 'govalidator' package dependecy 2020-03-08 13:03:38 +05:30
Kailash Nadh d4aea0a436 Add support for pushing non-campaign message with workers.
- Refactor campaign.Message into campaign.Message and
  campaign.CampaignMessage
- Remove ad-hoc goroutines (flawed approach) that were used to push
  admin and optin notifications.
- Provision for largscale pushing of ad-hoc, non-campaign messages
  such as transactional messages (in the future).
2020-03-08 12:27:41 +05:30
Kailash Nadh 5f6a4af6b4 Cleanup unnecessary pointers 2020-03-08 11:07:24 +05:30
Kailash Nadh ac2145de89 Fix default template path in installer 2020-03-08 11:04:34 +05:30
Kailash Nadh 40ae9cdb31 Minor formatting fixes 2020-03-08 10:54:10 +05:30
Kailash Nadh 709668d811 Move static assets to 'static' dir 2020-03-08 00:25:53 +05:30
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