Commit Graph

108 Commits

Author SHA1 Message Date
Kailash Nadh ab8dbd8314 Fix advanced subscriber query exp not propagating to search 2020-07-09 12:17:21 +05:30
raghavsood ceac96b662
frontend: Enable vue filenameHash
This enables clean updates when listmonk is behind a caching proxy such as cloudflare
2020-07-06 23:54:08 +08:00
Kailash Nadh 3e755596c7 Fix incorrect WYSIWYG image insertion position 2020-07-06 19:46:18 +05:30
Kailash Nadh 1b346b1c2b Fix 'cancelled' tag colour 2020-07-06 19:37:46 +05:30
Kailash Nadh b45d49f5e0 Fix HTML editor's line bar colour 2020-07-06 00:50:43 +05:30
Kailash Nadh dc4020679f Add syntax highlighted HTML code editor 2020-07-06 00:46:08 +05:30
Kailash Nadh 2651820e29 Fix campaign message rate display 2020-07-05 21:55:52 +05:30
Kailash Nadh 61f8fae50d Add 'overwrite?' option to bulk import.
- Fix minor UI inconsitency on import states.
- Minor refactor to importer initialisation.
2020-07-05 21:35:17 +05:30
Kailash Nadh b45a2a0f89 Fix incorrect record count in the importer 2020-07-05 19:39:42 +05:30
Kailash Nadh 24192a327f Refactor and fix media uploads.
- Fix path related issues in filesystem and S3.
- Add checks for S3 "/" path prefix.
- Add support for custom S3 domain names.
- Remove obsolete `width` and `height` columns from media table (breaking)
- Add `provider` field to media table (breaking)
2020-07-05 17:35:05 +05:30
Kailash Nadh 217adf185d Add frontend README 2020-07-05 14:33:17 +05:30
Kailash Nadh 412e016614 Add missing save icon 2020-07-05 14:17:18 +05:30
Kailash Nadh f2030a1768 Fix redirect after new campaign creation 2020-07-05 14:08:30 +05:30
Kailash Nadh 1bcd350b20 Integrate config.js on the frontend 2020-07-04 23:37:23 +05:30
Kailash Nadh 92cb70f1a4 Refactor empty/placeholder states with new component 2020-07-04 23:08:34 +05:30
Kailash Nadh feb5ba09be Add new dashboard (with new metrics) 2020-07-04 22:25:02 +05:30
Kailash Nadh 97583fe4b4 Rewrite frontend with Vue+Buevy and ditch React+Ant Design.
- antd+react was resulting in extremely clunky and unreadable
  spaghetti frontend code (primarily due to how antd is).
- Buefy is lighter by an order of magnitude, has excellent
  responsive views (especially tables) and usability.
- Vue's templating produces far more readable template code.
2020-07-04 00:12:14 +05:30
Karan Sharma 23faa9f127 fix: Remove root URI on frontend
Removes appending root URI in `img src` from frontend which broke the rendering
of S3 URLs in campaign templates.

Closes https://github.com/knadh/listmonk/issues/101
2020-05-16 19:39:21 +05:30
Kailash Nadh 901c456aa9 Fix issues with responsive UI on the campaign page 2020-03-08 15:55:22 +05:30
Kailash Nadh 68c4ccdefc Fix campaign UI to update start/schedule button automatically 2020-03-08 15:23:57 +05:30
Kailash Nadh 0a2d2d66be Refactor forms UI 2020-03-07 22:32:36 +05:30
Kailash Nadh c08ca14a5b Add subscription forms 2020-03-07 20:22:01 +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 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 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 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 6681f189fc Fix 'send_at' option on the UI and bug in starting scheduled campaigns 2020-01-19 20:46:25 +05:30
Kailash Nadh 0d8abf9435 Fix subscriber export button 2019-12-01 17:57:13 +05:30
Vivek R 3e5a6468e7 fix: responsive layour fixes for table, modal and form fields 2019-09-09 00:14:16 +05:30
Vivek R a7034bb3ad WIP: responsive design 2019-09-09 00:10:19 +05:30
Kailash Nadh 649d1b11f0 Fix 'send later' switch + date not updating on campaign edit 2019-08-26 23:45:18 +05:30
Kailash Nadh d0a7c3baf7 Add Prettier conf 2019-08-26 23:42:47 +05:30
Kailash Nadh 3b7902802e Add data privacy export / wipe features (aimed at GDPR compliance).
- Toggle options to enable self-service data export and wipe
  options on the public unsubscription page. Subscribers can get
  a copy of all data on them e-mailed to them as JSON, or
  instantly wipe all their data.
- Refactor "unsubscribe" pages and URIs to "subscription".
- Add export icon to subscriber admin view.
2019-07-21 19:21:23 +05:30
Kailash Nadh 6409c9a23b Add missing help link to subscriber modal 2019-07-12 15:09:58 +05:30
Kailash Nadh f457605707 Remove unimplemented features from nav 2019-07-12 13:53:56 +05:30
Kailash Nadh e89a54b957 Refactor and add new build routines
- Fix version injection in build
- Refactor Makefile
- Add --new-config flag to generate sample config
- Add license
- Remove autogenerated frontend README
- Refactor make dist to do end-to-end build
- Refactor build and add goreleaser conf
2019-07-09 15:57:04 +05:30
Kailash Nadh be20014524 Add doc links to UI 2019-07-04 18:41:30 +05:30
Kailash Nadh 348e65f1ec Fix lists not showing on the subscriber form 2019-07-04 13:39:05 +05:30
Vivek R 11ca4beddb chore: fix frontend directory structure 2019-05-27 17:17:26 +05:30
Kailash Nadh 8701cb445a Fix import and campaign page and integrate new paginated lists API 2019-05-14 22:06:14 +05:30
Kailash Nadh d9585a7365 Add pagination to the lists page 2019-05-14 16:41:05 +05:30
Kailash Nadh b078c0006c Fix missing lists fetch in query-campaigns 2019-04-23 22:36:20 +05:30
Kailash Nadh 3bf405fc1c Refactor and fix importer state bugs
- Fixed invalid file uploads leaving the importer in a hanging
  state without exiting
- Make the import UI always show the upload status page so that
  error logs are visible
2019-04-03 14:08:31 +05:30
Kailash Nadh cfec13c589 Optimize campaign and subscriber queries
- Simplify campaigns querying to separate statistics gather into
  a separate query for lazy loading.
- Simplify subscribers query to separate list fetching into
  a separate query for lazy loading.
2019-04-01 17:07:24 +05:30
Kailash Nadh baa618475b Add 'send campaign' shortcut link to lists view 2019-03-28 18:18:26 +05:30