Commit graph

21 commits

Author SHA1 Message Date
Kailash Nadh 481d6ef0a2 Move bundled fonts to a better location. 2022-02-12 13:24:18 +05:30
Kailash Nadh fabe06e339 Add support for custom CSS/JS in settings for admin and public pages.
This feature was originally authored by @sweetppro in PR #438.
However, since the PR ended up in an unclean state with
multiple master merges (instead of rebase) from the upstream, there are
several commits that are out of order and can can no longer be be
squashed for a clean feature merge.

This commit aggregates the changes from the original PR and applies the
following fixes on top of it.

- Add custom admin JS box to appearance UI.
- Refactor i18n language strings.
- Add handlers and migrations for the new `appearance.admin.custom_js`
  field.
- Fix migration version to `v2.1.0`
- Load custom appearance CSS/JS bytes into global constants during boot
  instead of making a DB call on every request.
- Fix and canonicalize URIs from `/api/custom*` to `/public/*.css`
  and `/admin/*.css`. Add proxy paths to yarn proxy config.
- Remove redundant HTTP handlers for different custom appearance files
  and refactor into a single handler `serveCustomApperance()`
- Fix content-type and UTF8 encoding headers for different file types.
- Fix incorrect registration of public facing custom CSS/JS handlers
  in the authenticated admin URI group.
- Fix merge conflicts in `Settings.vue`.
- Minor HTML and style fixes.
- Remove the `AppearanceEditor` component and use the existing
  `HTMLEditor` component instead.
- Add `language` prop to the `HTMLEditor` component.

Co-authored-by: SweetPPro <sweetppro@users.noreply.github.com>
2021-12-18 15:38:42 +05:30
MickGe ebf6af2f81
Clear placeholder on focus
Because it could be disturbing for people who are not confident with forms not being able to delete words before writing.
2021-11-09 00:20:30 +01:00
Kailash Nadh 1ece738613 Fix incorrect container width on public page responsive view. 2021-10-31 11:57:00 +05:30
Kailash Nadh 1054c019ce Hide 'Back' button when it is superfluous on public pages. 2021-10-30 12:46:10 +05:30
Kailash Nadh b163b1305b Add a "Back" button the public subscription/message page.
On a successful form submission, error message etc., check if there's
browser history and render a button that takes the user back to
a meaningful origin from the dead-end message page.

Closes #527.
2021-10-23 11:39:39 +05:30
Kailash Nadh f0b033b889 Add missing home template. 2021-09-27 21:17:23 +05:30
Kailash Nadh 98ed4fb384 Add a landing login page and a logout option.
BasicAuth without an explicit landing page or a logout option has
sometimes been confusing to users. This commit adds a static
landing page on / with a login link and a logout option in the admin
that "logs out" BasicAuth session by posting invalid credentials to
the server to obtain a 401.
2021-09-26 23:42:57 +05:30
Kailash Nadh 956e990fe6 Improve codeflask HTML syntax highlighting colours. 2021-09-19 17:11:48 +05:30
Kailash Nadh 3135bfc12a Upgrade and refactor global theme.
- Change public and admin frontend primary colours.
- Change images.
- Refactor and fix styling on public pages.
- Remove CSS grid lib from public pages.
- Update Buefy and fix broken component styles (modal, toast).
2021-09-16 17:46:39 +05:30
Kailash Nadh fe61e898a3 Add hidden nonce (honeypot) field to filter bot autofills on subs page 2021-04-21 14:01:32 +05:30
Kailash Nadh ad0a0e0841 Add preconfirm_subscriptions=true/falsenew subs API.
Sending th optional flag as `trunue` in the POST /api/subscrirs
body will skip sending opt-iconfirmation e-mails to subscribers
and mark list subscriptions in the request a`confirmed`.
2021-04-17 13:34:37 +05:30
Kailash Nadh 2235d30063 Add a new public page for end users to subscribe to public lists.
In addition to generating HTML forms for selected public lists,
the form page now shows a URL (/subscription/form) that can be
publicly shared to solicit subscriptions. The page lists all
public lists in the database. This page can be disabled on the
Settings UI.
2021-01-31 16:19:39 +05:30
Kailash Nadh ee4fb7182f Refactor i18n name and fix the L() function in public HTML templates 2021-01-23 19:34:30 +05:30
Kailash Nadh 3498a727f5 WIP: Add i18n support 2021-01-17 20:59:01 +05:30
Kailash Nadh 8c56407031 Add rebranded design elements.
- New logo and favicon and new splash image + intro text in the
  README.
2020-08-09 19:15:44 +05:30
Kailash Nadh ec097909db Add support for List-Unsubscribe header.
- Added as a setting in the settings UI.
- Refactor Messenger.Push() method to accept messenger.Message{}
  instead of a growing number of positional arguments.
2020-08-01 17:54:51 +05:30
Kailash Nadh 8c0804ba9f Refactor blacklist to blocklist 2020-08-01 16:45:29 +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 442dec9341 Fix broken subscriber data export 2020-03-08 14:36:50 +05:30
Kailash Nadh 709668d811 Move static assets to 'static' dir 2020-03-08 00:25:53 +05:30