Commit Graph

2216 Commits

Author SHA1 Message Date
Harvey Tindall 41334e9051 api-users: add individual user summary route
GET /users/:id, skips the usercache.
2025-12-21 19:19:46 +00:00
Harvey Tindall e2c34e574d jf_activity: ui changes
just committing so I can pull on another device.
2025-12-21 19:07:03 +00:00
Harvey Tindall b6459b665d jf_activity: paginated list in ui
added POST route for pagination to activity route, a count route, and
modified Search and PaginatedList a bit to support lists without search
fields (essentially just running an empty search). Visible by clicking
on a user's name in the accounts tab.
2025-12-20 18:27:39 +00:00
Harvey Tindall d72a5c91cf jf_activity_test: reduce time to run
values were reasonable when testing with a size limit of 20 or
something, now it's ~6000.
2025-12-20 11:58:56 +00:00
Harvey Tindall cacd992aad jf_activity: remove debug line
also bump mediabrowser again to do the same.
2025-12-20 11:49:55 +00:00
Harvey Tindall 23ad016476 mediabrowser: bump to v0.3.34
forgot to switch back from my local copy in the previous commit.
2025-12-20 11:41:35 +00:00
Harvey Tindall cc571409b9 Merge branch 'jf-log'
accidentally did a fix on the wrong branch, so i'm merging it
prematurely.
2025-12-20 11:23:18 +00:00
Harvey Tindall d7bad69d40 jf-actvitity: functioning route, ombi fixes
forgot to switch branches before doing a fix for #455, so it's in here
too. OmbiUserByJfID/getOmbiUser takes an optional email *string, to
optionally pass an override email address to search with, used when
changing it.
2025-12-20 11:21:13 +00:00
Harvey Tindall 63bb678a72 Merge branch 'main' of github.com:hrfee/jfa-go 2025-12-19 13:12:27 +00:00
Harvey Tindall 2a41c5a393 admin: scroll current tab in nav to center
for #456, ensures you can see and press both the next and previous tabs
    even if you can't scroll for some reason.
2025-12-19 13:11:37 +00:00
Harvey Tindall 9b80492b4f userpage: fix display of email confirmation required message
recent adjustments to modals and CSS in general meant a "content" class
was removed that was being querySelector'ed. For #455.
2025-12-16 18:37:54 +00:00
Harvey Tindall 315d74eb2d userpage: fix redirect on contact method change
root userpage paths ("") would mess up the redirect, wrapper function
returns "/" if thats the case. For #455.
2025-12-16 18:32:37 +00:00
Harvey Tindall c21df253a1 jf-activity: initial changes
functionality mostly there but needs a UI.
2025-12-16 18:15:39 +00:00
Harvey Tindall e4e9369d54 theme: set theme-color for ios devices
colours the search bar, sometimes.
2025-12-11 14:47:22 +00:00
Harvey Tindall 26d05911fd ui: fix hidden overflow on mobile devices
mostly the accounts table was causing an overflow on mobile browsers,
specifically anything on ios and samsung browser. For #450.
2025-12-10 20:37:29 +00:00
Harvey Tindall 85a6d66228 html: fix headers
go's html/template was thinking header.html and other template snippets
were full documents, so inserting their own <html> and other tags,
breaking the head up. Renaming to txt seems to fix things.
2025-12-10 20:31:45 +00:00
Harvey Tindall 1c755306f9 tray: fix broken dependency. 2025-12-10 17:43:00 +00:00
Harvey Tindall 2e97142d9e accounts: reduce initial load time even further
took the referralCache idea further and did it for all db queries. Now
take ~40ms for ~5000 users on arm64 through QEMU, and ~60ms on a
rockpro64.
2025-12-10 17:39:54 +00:00
Harvey Tindall a08a0fd3e6 accounts: reduce initial load time further
When generating the cache and calling userSummary per user, previously
the DB was queried for an invite with the ReferrerJellyfinID set to the
user's ID. This was fast enough on my test system (~5000 users in
~1.5s), while testing cross-compilation, I found it ran extremely slow
on an arm64 build (running through QEMU admittedly), doing ~5000 in
~18s. Instead, a map of IDs to invites/referrals is generated once and
queried instead. Initial load now takes ~80ms on my system, and 0.95s
through QEMU, and 0.68s on a rockpro64 SBC.
2025-12-10 16:44:21 +00:00
Harvey Tindall 420a22970d goreleaser: unset GOOS/GOARCH for precompile step
these should be run natively.
2025-12-10 15:05:30 +00:00
Harvey Tindall d4109c8cf5 matrix: use goolm over libolm, ci: user smaller docker image base
removes one dependency. jfa-go-build-docker has been updated to reflect
this, and in general with a newer debian version and properly included
goreleaser, and a build for amd64. Dockerfiles now use a
"distroless"-style container as their base. Was gonna use
chainguard/glibc-dynamic, but it running as a different user meant it
wouldn't read/write from your /data mount without manual intervention.
2025-12-10 13:25:21 +00:00
Harvey Tindall 945d579f57 config: un-advanced date format, fix dependencies
changed dependency on "method" (from when it was in the email section)
to "enabled". For #453.
2025-12-10 09:51:12 +00:00
Harvey Tindall 6e1f07563d ci: use caches for container build too 2025-12-09 17:53:26 +00:00
Harvey Tindall ce6f8b41dc ci: use npm cache too 2025-12-09 17:43:04 +00:00
Harvey Tindall aa75305da4 scripts/version.sh: downgrade version
use go 1.24 and remove usage of wg.Go().
2025-12-09 17:42:45 +00:00
Harvey Tindall 03cf533c9d ci: use podman volumes for go mod/build cache 2025-12-09 17:38:12 +00:00
Harvey Tindall ccf0584db8 build: use tsgo for type checking
I don't use and fancy typescript features, and apparently this version
is very usable at this point. Removes the typescript dependency, which
should have been in dev-deps anyway.
2025-12-09 17:31:23 +00:00
Harvey Tindall 833fd26091 scripts/variants: add parallel flag
doesn't result in much gain on my machine or my CI server so it's not
the default. On local machine (5800x), went from ~5ms to ~4ms, on my CI
(hetzner ampere altra with 8 vCPUs) went from ~15ms to ~10ms.
2025-12-09 15:44:47 +00:00
Harvey Tindall fd72c838c3 userpage: don't trigger submit on "reset password" press
Fiex #452.
2025-12-09 15:25:54 +00:00
Harvey Tindall 63c770db73 css: fix lists with RTL
changes text-align:left to start, and margin-left: to
margin-inline-start:. Submitted a PR to a17t to change these values as
well. For #450.
2025-12-09 15:06:49 +00:00
Harvey Tindall 6237620390 scripts/variants: add verbose -v flag
disable output by default, enable with -v
2025-12-09 14:38:48 +00:00
Harvey Tindall 4a9bac1027 scripts: replace dark-variant.sh with go scripts/variants
uses regex mostly, resulting in a significantly faster execution (old:
~2s, new: ~31ms). Only matches classList.add/remove and class="..."
(won't touch string literal variables or colours), but these weren't
really used anyway. Supports multi-line classList.add/remove, which was
the reason I wrote this anyway (formatting the codebase introduced some
of these).
2025-12-09 14:28:05 +00:00
Harvey Tindall 817107622a ts: format finally
formatted with biome, a config file is provided.
2025-12-08 20:38:30 +00:00
Harvey Tindall ca7c553147 telegram: add "always use default lang", /lang default
For #451. Setting in integrations > chat bots > telegram makes jfa-go
ignore the telegram users clients lanugage setting and always use
whatever is set as the default language in jfa-go. Also added /lang
default, to un-set a preferred language. the start message also now
shows up on typing /help or !help too.
2025-12-08 18:16:27 +00:00
Harvey Tindall d00507fd20 accounts: fix matrix input
was too small to see what you were typing.
2025-12-08 17:50:50 +00:00
Harvey Tindall 2bbf97be19 accounts/activity: fix clear search button on RTL
use margin-inline-start instead of margin-left. For #450.
2025-12-08 17:46:11 +00:00
Harvey Tindall 4f135220bc lang: display ckb (kurdish) as RTL 2025-12-08 15:36:03 +00:00
Harvey Tindall a2500add5a lang: add lang tag to name of Farsi and Kurdish 2025-12-08 15:35:12 +00:00
Harvey Tindall 26284e89f6 web: add more RTL fixes
For #450.
2025-12-08 15:30:24 +00:00
KSAm3lm 8030a7c896 Translated using Weblate (Arabic)
Currently translated at 100.0% (136 of 136 strings)

Translation: jfa-go/Setup
Translate-URL: https://weblate.jfa-go.com/projects/jfa-go/setup/ar/
2025-12-08 16:13:58 +01:00
KSAm3lm 5010159621 Translated using Weblate (Arabic)
Currently translated at 100.0% (59 of 59 strings)

Translation: jfa-go/Emails
Translate-URL: https://weblate.jfa-go.com/projects/jfa-go/emails/ar/
2025-12-08 16:13:58 +01:00
KSAm3lm 92090bcf99 translation from Weblate (Arabic)
Currently translated at 100.0% (304 of 304 strings)

Translation: jfa-go/Admin Page
Translate-URL: https://weblate.jfa-go.com/projects/jfa-go/admin/ar/
2025-12-08 16:13:58 +01:00
KSAm3lm 655096ea1e Translated using Weblate (Arabic)
Currently translated at 100.0% (56 of 56 strings)

Translation: jfa-go/Common Strings
Translate-URL: https://weblate.jfa-go.com/projects/jfa-go/common-strings/ar/
2025-12-08 16:13:58 +01:00
Harvey Tindall 362984a391 web: remove almost every use of ml/mr
replace with flex and gap mostly. For #450.
2025-12-08 15:12:40 +00:00
Harvey Tindall 9c9e55147d lang: don't show lanugages with empty name fields 2025-12-08 14:38:24 +00:00
Harvey Tindall f7a72133c6 lang: lowercase names 2025-12-08 14:36:01 +00:00
Harvey Tindall 341dd5930e settings: force LTR always
since it's untranslatable for now.
2025-12-07 20:43:14 +00:00
Harvey Tindall 5baa3b98cd tooltip: add .force-ltr class 2025-12-07 20:43:01 +00:00
Harvey Tindall 99c6559a54 ui: set RTL on some languages
checking with a list I found online. need to set some things as forced
ltr, such as settings. For #450.
2025-12-07 20:38:43 +00:00
Harvey Tindall 12827f6c84 admin: remove all non-dynamic ml/mr usage
replaced with flex gaps. For #450.
2025-12-07 20:28:05 +00:00