Commit Graph
100 Commits
Author SHA1 Message Date
Harvey Tindall 40fc5e9604 Fix email editor when plaintext setting enabled 2021-02-22 16:40:37 +00:00
Harvey Tindall 9799665951 fix tag versioning and dockerfile 2021-02-22 01:26:07 +00:00
Harvey Tindall b3fa667db1 version with ldflags instead of script 2021-02-22 01:23:42 +00:00
Harvey Tindall 027cf19d0f delete missing route bind 2021-02-22 01:05:18 +00:00
Harvey Tindall 38119551d7 merge translation 2021-02-22 00:45:07 +00:00
Harvey Tindall 52d9cda61a Move email rendering to browser
the email preview no longer has a delay after each change. This also
avoids a race condition in which the email currently being edited could
be actually sent.
2021-02-22 00:43:36 +00:00
Harvey Tindall d1b1b90de3 Add email list accessible by edit button in settings 2021-02-21 15:51:42 +00:00
Harvey Tindall 058cac2e7b implement email editor w/ live(?) preview
not accessible in the ui currently, but the object is available as
window.ee for testing.
2021-02-20 22:49:59 +00:00
Harvey Tindall 6ffdd4dad7 fix mistype in german email 2021-02-20 01:31:34 +00:00
Harvey Tindall 98d59ba4e0 don't strip text on images 2021-02-20 01:20:43 +00:00
Harvey Tindall 938523c18b fix urls in custom email/announcements
Uses a nasty algorithm found in stripmd.go to change all occurrences
of '[linktext](link)' to just 'link' before passing to a decent markdown
stripper.
2021-02-20 01:03:11 +00:00
Harvey Tindall cc4e12c405 finish backend of custom emails
biggest bodge i've ever done but it works i guess.
2021-02-20 00:22:40 +00:00
Harvey Tindall eb406ef951 Implement email template generation
Variables are surrounded by {}, and initial (default) templates are
generated on demand from the plaintext version of emails. The custom
emails are intended to only be used if the user actually changes them,
as they lose the features of the default ones, such as tables.
2021-02-19 21:38:20 +00:00
Harvey Tindall 5c87d109a3 use descriptive variable names in email translations
in preparation for an email editor.
2021-02-19 17:50:50 +00:00
Harvey Tindall 3e020da66a merge translation 2021-02-19 16:12:27 +00:00
Harvey Tindall 78157f763f use different color library, wrap logger functions with it 2021-02-19 16:12:14 +00:00
Harvey Tindall b25f786018 use bulk email sending on account deletion 2021-02-19 14:51:36 +00:00
Harvey Tindall 76fa171575 cleanup logs and use structs in jf/emby api
Also means times are directly parsed when pulling data from jf/emby,
which was *painful* to get working (something broke the whole program and it
took me an hour to figure out it was this lol). Time parsing should be a
lot stabler too.
2021-02-19 00:47:01 +00:00
Harvey Tindall 93b5b483cc add plaintext email option, use text/template
text/template is used on plaintext emails to avoid escaping of certain
characters.
2021-02-18 18:26:23 +00:00
Harvey Tindall 27ef931670 add possible dark mode fix for Outlook 2021-02-18 17:47:15 +00:00
Harvey Tindall fb727e75ec substitute jellyfin strings on emails, hopefully fix dark mode 2021-02-18 16:09:58 +00:00
Harvey Tindall fa433c88a8 add announcement emails
After selecting users in the accounts tab, you can press 'Announce',
then write a subject and message (with markdown), and an email will be
sent to each selected user.
2021-02-18 14:58:53 +00:00
Harvey Tindall adbb5b9d38 Fix filepath separator and external files on windows
For some reason, '/' is used instead of '\' on windows when loading
lang. FSJoin will now use whatever already exists in the path.
app.GetPath now creates a DirFS from the containing directory instead of
app.systemFS, which fixes loading on windows.
2021-02-18 12:58:30 +00:00
Harvey Tindall cdc837e781 trim '/' from path when using systemFS
should fix #58.
2021-02-17 22:02:26 +00:00
Harvey Tindall a92baa5d18 update urls 2021-02-17 20:52:49 +00:00
Harvey Tindall e913f25a47 update buildrone url 2021-02-17 20:31:52 +00:00
Harvey Tindall 9eb803388e add it-it email back 2021-02-17 16:54:09 +00:00
Harvey Tindall eb81515f46 fix ordering of steps in dockerfile 2021-02-17 16:53:15 +00:00
Harvey Tindall 52461c0356 add it-it email back 2021-02-17 16:36:39 +00:00
Harvey Tindall 6b3800abf6 remove branch trigger 2021-02-17 16:34:04 +00:00
Harvey Tindall 09fc81d7f4 fix tag recognition by drone 2021-02-17 16:26:14 +00:00
Harvey Tindall 82034a2586 use python3 in makefile for embed 2021-02-17 16:11:01 +00:00
Harvey Tindall 5e001bed60 temporarily modify lang for release
Fixed name on Indonesian and removed Italian emails.
2021-02-17 16:04:25 +00:00
Harvey Tindall 5d7972db56 rename embed/noembed to internal-files/external-files 2021-02-17 14:41:44 +00:00
Harvey Tindall 403ad58274 move all scripts to scripts/ 2021-02-17 14:32:03 +00:00
Harvey Tindall a1a233e74f fix sed path in Dockerfile 2021-02-17 11:33:41 +00:00
Harvey Tindall 8dd72c95ab switch image for drone builds 2021-02-17 11:19:51 +00:00
Harvey Tindall f794322392 Merge branch 'go1.16'
merge go1.16 changes

This includes embedded files for releases (no extra 'data' directory!)
and support for a custom language file directory, allowing one to
customize the text accross the app.
2021-02-17 11:15:21 +00:00
Harvey Tindall afd52d1d37 Use go cross-compilation in docker build
significantly faster builds now. Every pre-compilation step (typescript,
css, etc.) happens natively, then GOARCH=xxx make compile is also run
natively for each architecture. The output it then copied into each
container.
2021-02-16 16:08:53 +00:00
Harvey Tindall ba7370171a lowercase lang, go mod tidy 2021-02-16 14:31:31 +00:00
Harvey Tindall 33b7876826 build from tag on stable 2021-02-13 22:03:35 +00:00
Harvey Tindall 0fc4b5eb22 switch to buildx with qemu for builds 2021-02-13 21:59:33 +00:00
Harvey Tindall e672f9f14c lowercase lang names 2021-02-13 20:51:35 +00:00
Harvey Tindall 4d2e509950 merge language changes 2021-02-13 20:50:27 +00:00
Harvey Tindall a80e5c2aa9 purge manifest and recreate per build 2021-02-13 20:49:56 +00:00
Harvey Tindall 060f0efc16 pull containers before manifest, run on different host 2021-02-13 14:05:04 +00:00
Harvey Tindall c3fb00a307 wrong go version container 2021-02-12 15:37:19 +00:00
Harvey Tindall 988829a6db dont build docker on go1.16 branch 2021-02-12 15:22:21 +00:00
Harvey Tindall 76935a300a dont build docker on go1.16 branch 2021-02-12 15:21:58 +00:00
Harvey Tindall a6a7710a79 use filepath.Join wrapper for different embed and os path styles
If using internal, "/" is used as a separator always, and with external,
filepath.Join is used.
2021-02-12 14:59:35 +00:00
Harvey Tindall 873afb47cd strip debug symbols in makefile 2021-02-12 14:59:35 +00:00
Harvey Tindall ea99966057 refactor, move route loading to router.go 2021-02-12 14:59:16 +00:00
Harvey Tindall aaed272bf2 use embed.fs wrapper on data 2021-02-12 14:35:16 +00:00
Harvey Tindall e6775cd2d1 use embed.fs wrapper for langFS so lang/ is not needed in paths
[files]lang_files is now the path to the lang directory, not path to a
directory containing it.
2021-02-12 14:35:16 +00:00
Harvey Tindall 98a9e20cc0 Fix docker build, add GOBINARY flag for make
GOBINARY defaults to "go", but if you want to build on a normal system,
you'll likely set it to go1.16rc1 with "make all GOBINARY=go1.16rc1".
2021-02-12 14:35:13 +00:00
Harvey Tindall ee37588959 drone image 2021-02-12 14:32:57 +00:00
Harvey Tindall cb12c6f441 update goreleaser 2021-02-12 14:32:57 +00:00
Harvey Tindall 72cf3e2240 add external/internal data options
"make all" will build with internal data, whereas "make debug"/"make
all-external" will make an external "data/" directory.
2021-02-12 14:32:48 +00:00
Harvey Tindall 815bdc35ac fully self-contained
paths are pretty janky, but it works. Also, [files]/lang_files now must
be the path to a directory CONTAINING a "lang/" directory. I'll work
around this at a later date.
2021-02-12 14:28:09 +00:00
Harvey Tindall 0330540f87 Use fs for language, add lang_files option
The local app translations are loaded, and then if [files]/lang_files
is provided (a directory containing custom translations), any found
inside it are loaded over top. This makes customizing much easier.
2021-02-12 14:28:09 +00:00
Harvey Tindall fefe2d82a4 rebase 12/02, use go1.16rc1 in make, remove ioutil, start switching to io/fs for file i/o
ioutil's contents are now in io and os.
Eventually jfa-go's files will be embedded in the binary with go1.16's
new embed feature. Using io/fs will provide abstraction for accessing
these files, and allow for both embedded and non-embedded versions.
Also, internal paths to things like email templates, etc. will be
prefixed with "jfa-go:" to indicate to use the app's own Filesystem
instead of reading the file normally. This also allows for custom files
to continue to be used as they are currently.
2021-02-12 14:27:01 +00:00
Harvey Tindall 1af8d1f77d fix url in account creation success page 2021-02-12 13:38:34 +00:00
Harvey Tindall 4c653fea36 fix url base on invite and broken getLanguages 2021-02-12 12:52:08 +00:00
Harvey Tindall 2ee0ed55f6 forgot key agh 2021-02-12 00:35:20 +00:00
Harvey Tindall 94981f4891 dont use drone manifest plugin 2021-02-11 23:52:05 +00:00
Harvey Tindall f72def0399 serve on / and URL base for easy proxying 2021-02-11 23:06:51 +00:00
Harvey Tindall 81fb0fc69f fix triggers aarch64 = arm64 2021-02-11 22:25:00 +00:00
Harvey Tindall c3af0f4380 remove tag event from unstable build 2021-02-11 21:48:57 +00:00
Harvey Tindall 3a9e4950d4 run docker amd64 builds on drone, attempt multiarch 2021-02-11 21:18:32 +00:00
Harvey Tindall 06dada297b up command_timeout for slow rpi builds 2021-02-11 18:47:24 +00:00
Harvey Tindall 2b55a1873c fix css, oops 2021-02-11 18:28:25 +00:00
Harvey Tindall c2e68bdc77 add GOESBUILD option for platform without esbuild on npm 2021-02-11 18:21:21 +00:00
Harvey Tindall e1c3b312ff split armhf and arm64, add stable build 2021-02-11 16:24:32 +00:00
Harvey Tindall e235ed9fda fix key again 2021-02-11 16:14:39 +00:00
Harvey Tindall 5cda12dd3b separate into pipelines, add armhf 2021-02-11 16:11:07 +00:00
Harvey Tindall a9d48083fd fix keyfile 2021-02-11 15:48:13 +00:00
Harvey Tindall e28c50401e use key path 2021-02-11 15:37:02 +00:00
Harvey Tindall 4a3b015a40 start adding automated arm builds 2021-02-11 15:29:33 +00:00
Harvey Tindall 1a6727312c dont override header on email confirmation fail 2021-02-11 14:04:15 +00:00
Harvey Tindall 91d3d2596e fix broken invite links 2021-02-11 13:49:06 +00:00
Harvey Tindall 192c9a4764 account for lack of trailing slash in url 2021-02-09 20:45:35 +00:00
Harvey Tindall 173c38563e remove embed, oops 2021-02-08 15:43:20 +00:00
Harvey Tindall d061721f56 explicitly set js mimetype 2021-02-08 15:25:02 +00:00
Harvey Tindall 218882b7c6 remove debug console.log 2021-02-08 11:50:58 +00:00
Harvey Tindall 8eed4b0127 merge language again 2021-02-05 18:25:56 +00:00
Harvey Tindall c09ffb49e7 switch emails to normal text when not editing
fixes padding on small screens.
2021-02-05 18:24:27 +00:00
Harvey Tindall 2c8be42bbc fix invite links with URL base 2021-02-05 13:33:34 +00:00
Harvey Tindall 6691ae27f4 fix navigation with URL base set 2021-02-05 13:31:56 +00:00
Harvey Tindall 23fecb16b2 merge language changes 2021-02-05 13:11:00 +00:00
Harvey Tindall b037b08152 respect URL Base in http preloads and inline html links 2021-02-05 13:10:47 +00:00
Harvey Tindall 95a6b48c3e add go1.16 branch do drone builds
This branch has fully self-contained binaries, so I thought it'd be a
good idea to build it alongside.
2021-02-01 18:43:30 +00:00
Harvey Tindall 90c6cee780 add restart button 2021-01-31 19:01:20 +00:00
Harvey Tindall 456ef556b1 add inter-section dependency for settings
Currently used to hide all email sections when [email]/method is blank
(disabled).
2021-01-31 18:50:04 +00:00
Harvey Tindall ce98b2eb5a add backwards navigation 2021-01-31 17:32:03 +00:00
Harvey Tindall ee026714d4 Add optional email confirmation
If enabled, a confirmation email will be sent before the user can create
their account.
2021-01-30 19:19:12 +00:00
Harvey Tindall 736c39840f fix default jellyfin path for setup in dockerfile 2021-01-29 17:13:15 +00:00
Harvey Tindall e755bc6b61 fix language names 2021-01-29 13:49:58 +00:00
Harvey Tindall 4fc9bdb35b element already existed, oops 2021-01-29 01:32:44 +00:00
Harvey Tindall c0a05be44e add strftime notice on setup
string was already in translations, just forgot to include it.
2021-01-29 01:29:54 +00:00
Harvey Tindall 482c9d5719 update license date 2021-01-29 01:20:05 +00:00