Harvey Tindall
3143d32b45
log: include caller in debug storage logging
...
includes the location where Set*Key/Delete*Key was called.
2023-10-12 18:21:47 +01:00
Harvey Tindall
742f5c095a
log: add basic database write debug logging
...
A series of settings can be found in Settings > Advanced for logging
writes to the database, for each main storage object. "All" logs all
writes, "Deletion" logs Delete* Calls and Write* calls where the
principal data in the object (e.g. address in an EmailAddress object) is
set to "".
2023-10-12 18:12:18 +01:00
Harvey Tindall and GitHub
7b2a6cdf74
discord: merge /inv from @VioletLeporid
...
Adds the /inv command to send an invite directly to a Discord user.
2023-10-12 09:25:33 +01:00
Harvey Tindall
2f3d5e4e3a
discord: update profile list when changes occur
2023-10-11 12:00:38 +01:00
Harvey Tindall
2fb2f3ee74
discord: send error message when inv construction fails
2023-10-11 11:38:55 +01:00
Harvey Tindall
7813c8c68b
discord: Use GenerateInviteCode in /inv
2023-10-11 11:35:08 +01:00
Harvey Tindall
e528f7c348
Merge latest changes
2023-10-11 11:33:51 +01:00
Harvey Tindall
77f6b1042e
invites: move code gen to function
...
code to generate an invite code w/ a non-integer first character was
reused a bunch, so it's now function GenerateInviteCode().
2023-10-11 11:30:28 +01:00
Harvey Tindall
7db94dcebf
Merge /inv command additions
...
Merge branch 'main' of github.com:VioletLeporid/jfa-go
2023-10-11 11:25:00 +01:00
Harvey Tindall
62923d5e45
discord: register available profiles for /inv
...
profiles are registered as options for /inv as startup. Note in
description added to restart jfa-go to reload them.
2023-10-10 15:15:25 +01:00
Harvey Tindall
10a32ad1ae
discord: re-add optional args
2023-10-10 14:52:54 +01:00
Harvey Tindall
e52e21a54b
discord: fix up /inv basic functionality
...
sending now succeeds, and a reponse of "Invite sent." is given to the
requester. Also some formatting changes.
2023-10-10 13:45:29 +01:00
Harvey Tindall
7c861e5763
lang: fix the usual mistakes
...
someone directly translating "English (US)", and lowercasing lang files.
2023-10-10 10:36:57 +01:00
Harvey Tindall
9c771e193e
lang: fix typo in french
...
`{n]` instead of `{n}` meant expiry times on the user page weren't being
rendered.
2023-10-10 10:22:22 +01:00
Harvey Tindall
cf94fdb2f0
ombi: fix password reset on default route
...
the ombi password wasn't being changed w/ password resets initiated
through the admin page (and probably by other routes, too), as the code
was considering a HTTP 204 from Jellyfin as a failure, causing it to
skip anything with Ombi. Also added a little check for Ombi-imported
accounts that probably won't help with anything, but whatever.
2023-10-09 10:40:40 +01:00
Harvey Tindall
4864c6c53c
ombi: implement getOmbiImportedUser
2023-10-06 14:41:33 +01:00
Harvey Tindall
5702e8012c
proxy: use for updater & SMTP
...
imports a new package to create a HTTP proxy dialer for the SMTP client.
2023-10-05 12:32:25 +01:00
Harvey Tindall
523902f951
proxy: add http/socks5 support, use for Jellyfin
...
can be found in advanced. Currently only used for the main Jellyfin
client.
2023-10-05 11:25:58 +01:00
Harvey Tindall
543f23c8ef
userpage: make refresh token work w/ reverse proxy
...
potentially for #290 .
2023-10-03 09:44:05 +01:00
Harvey Tindall
f6fdd41b35
jellyfin: retry initial connection (configurable)
...
retries initial connection to Jellyfin 6 times, with a 10s gap between,
before failing. SHould help with issues of jfa-go starting before
Jellyfin.
Configurable in Settings > Advanced > "Initial auth retry count/gap".
2023-10-03 09:33:56 +01:00
Harvey Tindall
4f78b7c33b
admin: option link to my account page on login screen
2023-10-02 10:56:50 +01:00
Harvey Tindall
9956bbd974
admin: add setting to hide background on login
...
for #288 .
2023-10-02 10:34:14 +01:00
Harvey Tindall
ff1ea8549a
userpage: register routes on reverse proxy subfolder
...
fixes #289 .
2023-10-02 09:45:42 +01:00
Harvey Tindall
5a2d3d2ee2
admin: My Account button respects URL Base
2023-10-02 09:40:19 +01:00
Harvey Tindall
084f8aa658
settings: link to new PWR wiki article in note
2023-09-09 16:02:39 +01:00
Harvey Tindall
084a62e60f
updater: account for build/publish time diff
2023-09-08 19:00:19 +01:00
Harvey Tindall
655dc88c62
node: update deps
2023-09-08 18:21:09 +01:00
Harvey Tindall
46109d1ea3
images: one more try
2023-09-08 17:46:58 +01:00
Harvey Tindall
f7d931be0c
images: use non-svgo-ed banner
2023-09-08 17:45:00 +01:00
Harvey Tindall
8d6af53e54
images: fix main banner
2023-09-08 17:43:36 +01:00
Harvey Tindall
8d3bd52fc5
images: use hanken grotesk in banners
2023-09-08 17:41:27 +01:00
Harvey Tindall
8da95ed824
accounts: make sort-by card height = filter card height
2023-09-08 17:00:37 +01:00
Harvey Tindall
8207a75820
accounts: sort by referrals
2023-09-08 16:54:07 +01:00
Harvey Tindall
2c48ce0152
settings: rename "User Page"
2023-09-08 16:50:33 +01:00
Harvey Tindall
dae0ad1de5
invites: "User Label" 2/2
...
applies label to users. Also hide the user label element on the invite
dropdown when not set.
2023-09-08 14:37:07 +01:00
Harvey Tindall
7c76b58ab8
invites: add "User Label" 1/2
...
Adds a "User Label" invite field, which is a label applied to users
created with it. This commit contains everything apart from the code to
apply it on account creation.
2023-09-08 14:29:25 +01:00
Harvey Tindall
4ea2dfdfb7
accounts: fix announcements preview window
...
since the "Announcement" template doesn't actually exist, finding it in
the DB would fail, which is now ignored.
2023-09-08 13:54:01 +01:00
Harvey Tindall
d8d478a95e
form: move referral info message to aside, change wording
2023-09-08 13:31:05 +01:00
Harvey Tindall
4c20250888
userpage: actually sub {username}
2023-09-07 23:40:15 +01:00
Harvey Tindall
f5a15905e4
userpage: fix email change modal show/hide
2023-09-07 23:35:41 +01:00
Harvey Tindall
53742e5ec2
setup: encourage user to browse settings for new features
...
Lots of things aren't present in setup, including the my account page
and referrals, so a nudge in the right direction is warranted.
2023-09-07 23:11:49 +01:00
Harvey Tindall
504c75566a
README: Mention referrals
2023-09-07 23:07:52 +01:00
Harvey Tindall
ed4dcbac3b
README: new images, remove GIF
...
don't really think it's necessary. also, they're annoying to make.
2023-09-07 23:01:12 +01:00
Harvey Tindall
a0f1cd5814
captcha: fix missing images
...
The captcha library's data struct wasn't being serialized/deserialized
fully, meaning the image was never stored. I never really wanted it to
be stored anyway, but as a compromise, the invite daemon now deletes
captcha images from the DB 20 minutes after generation.
2023-09-07 22:38:23 +01:00
Harvey Tindall
4607a30e6a
accounts: fix filter card overlap
2023-09-07 21:59:35 +01:00
Harvey Tindall
fca370b9d9
discord: hide "Join Server" text when invite not provided
2023-09-07 21:40:44 +01:00
Harvey Tindall
dc3f1661e8
accounts: fix filter button appearing over lang dropdown
2023-09-07 21:37:25 +01:00
Harvey Tindall and GitHub
463fe97b29
Merge Referrals
...
Add Referrals
2023-09-07 21:31:32 +01:00
Harvey Tindall
b08527bce2
userpage: cleanup referral code
...
moved to its own class, like the expiry card.
2023-09-07 20:42:40 +01:00
Harvey Tindall
41c092f578
referrals: show referrer username on form
2023-09-07 20:19:25 +01:00
Harvey Tindall
311ecb7030
userpage: generate & display referral links
...
shown on a new card, with an explanation, the number of remaining uses,
and expiry of the current referral.
2023-09-07 16:25:47 +01:00
Harvey Tindall
4a28ea7003
daemon: fix bug wiping out contact details
...
records were being left alonge if "... err != nil", instead of "... err
== nil". Sorry to anyone affected.
2023-09-07 14:50:26 +01:00
Harvey Tindall
0a82f889f3
daemon: fix bug wiping out contact details
...
records were being left alone if "status == 200 && err != nil", instead
of "... && err == nil". Sorry.
2023-09-07 14:48:12 +01:00
Harvey Tindall
00e6da520d
userpage: cope with disabled contact methods
2023-09-07 14:40:24 +01:00
Harvey Tindall
0b830e9b5e
referrals: enable for new users from profile
2023-09-07 14:31:42 +01:00
Harvey Tindall
468b2f3284
accounts: descriptive error when no template found
2023-09-07 14:04:32 +01:00
Harvey Tindall
db21131185
accounts: allow disabling of referrals for users
2023-09-07 14:00:30 +01:00
Harvey Tindall
7d9555fdf7
accounts: add referrals to search queries
2023-09-07 13:30:21 +01:00
Harvey Tindall
729552a827
referrals: Show enabled status on account list
2023-09-06 22:46:16 +01:00
Harvey Tindall
cdc8f9af4b
referrals: unlink/disable referrals for profile
2023-09-06 22:12:36 +01:00
Harvey Tindall
9e5034ebab
referrals: enable referral for users & profiles
...
Enabling for individual users works, as does adding a template to a
profile. Removing/Disabling for both needs to be completed.
2023-09-06 22:00:44 +01:00
Harvey Tindall
c2f835c897
referrals: show data on enable referral for user modal
...
profiles and invites are properly shown.
2023-06-30 16:47:35 +01:00
Harvey Tindall
9c2f27bcdb
referrals: 1/2 generation routes, display route, partial frontend
...
route for generation/enabling of referral for user(s) done? the frontend
is mostly done, but functionality is not there yet. Route for finding
and displaying referral to user is done. Also the config option for
referral is there, in user page settings.
2023-06-28 16:05:24 +01:00
Harvey Tindall
423fc4ac80
accounts: non-case sensitive search
2023-06-27 07:35:28 +01:00
Harvey Tindall
e1292a0780
build: dont install swag if already present
2023-06-27 07:23:25 +01:00
Harvey Tindall
f72960635d
build: include debug symbols & sourcemaps in unstable builds
...
should help with debugging.
2023-06-26 23:48:16 +01:00
Harvey Tindall
b5c80e9d27
config: make sure recaptcha is hidden when disabled
2023-06-26 23:24:58 +01:00
Harvey Tindall
3fa4b01115
setup: add user page
...
also sprinkled mentions of it throughout other relevant pages.
2023-06-26 21:29:49 +01:00
Harvey Tindall
65f402fd35
admin: hide my account button when disabled
2023-06-26 20:48:57 +01:00
Harvey Tindall
46f1bc20c8
css: fix font error
...
comment wasn't ended, so some font weights/styles weren't loading and
esbuild was complaining.
2023-06-26 20:29:59 +01:00
Harvey Tindall
a13a72c626
admin: fix logout when url base is used
...
two tries are made, with and without the url base.
2023-06-26 20:28:20 +01:00
Harvey Tindall
5a80145607
css: add notification animation
...
simple slide animation, plus a little scale effect when a duplicate
notification gets sent to make the notification more obvious.
2023-06-26 20:13:02 +01:00
Harvey Tindall
baf5e6a593
accounts: add dropdown arrow on "Announce" button
2023-06-26 13:08:34 +01:00
Harvey Tindall
850bb8f44e
accounts: fix modify user card layout
2023-06-26 13:04:01 +01:00
Harvey Tindall
b17d8424e9
profiles: fix application
...
moving to a DB meant empty slices in the Configuration & Policy structs
were being stored as null, and striking a nerve with Jellyfin.
Mediabrowser library change fixed that by de-nulling them itself, and a
new bool field called "Homescreen" is now used to decide if a profile
has a homescreen layout stored or not. This field is hopefully correctly
filled in during migration.
2023-06-26 13:01:17 +01:00
Harvey Tindall
d2253ff069
accounts: fix filter card height
...
string filter cards were too tall, so bool cards now expand to the same
height. y-margins also removed it made the bottom get covered.
2023-06-25 21:28:38 +01:00
Harvey Tindall and GitHub
0946b3a1da
Merge Database Migration
...
Database Migration
2023-06-25 20:32:33 +01:00
Harvey Tindall
e1c215b72e
db: remove remaining storage.loadX calls
2023-06-25 20:18:40 +01:00
Harvey Tindall
ea0598e507
db: move legacy data loading out of main/config
...
put it in loadLegacyData in migrations, which is only called by
migrateToBadger.
2023-06-25 20:17:10 +01:00
Harvey Tindall
28c3d9d2e4
db: use db key to store migration status
...
the planned config key "migrated_to_db" is not used, instead it is
stored in the database since that's a bit cleaner.
2023-06-25 19:59:11 +01:00
Harvey Tindall
e9f9d9dc98
db: mark migration as completed when it's done
...
migrated_to_db config key is used. Might also add an extra check to see
if anything is in the DB.
2023-06-25 19:47:31 +01:00
Harvey Tindall
bb75bfd15d
db: deprecate customEmails/userPage
2023-06-25 19:40:54 +01:00
Harvey Tindall
9c84fb5887
profiles: fully deprecate old system
...
ombi_template, configuration, displayprefs, and policy still stuck
around for the admin new user feature. They are now sourced from the
default profile, and eventually a feature to select the source (or no
source) will be added.
this was still used when creating a new user as admin for some reason.
template is now sourced from the default profile.
2023-06-25 18:59:55 +01:00
Harvey Tindall
3bb9272f06
db: mark profile store as deprecated
2023-06-24 21:32:25 +01:00
Harvey Tindall
a735e4ff29
db: migrate user profiles
2023-06-24 21:29:54 +01:00
Harvey Tindall
63948a6de0
db: migrate invites, user expiry
...
some fixes to stuff in there too, probably
2023-06-24 19:13:05 +01:00
Harvey Tindall
a470d77938
db: fix contact method cleaning daemons
...
don't think there's a way to negate a query with badgerhold, so i can't
do "delete(not (where JellyfinID in <ExistingUsers>))", and the old
method of rebuilding the store is no longer possible.
2023-06-24 18:38:52 +01:00
Harvey Tindall
833be688ac
storage: start db migration (badger(hold))
...
migrating to badger, with the badgerhold frontend. So far, done:
* Announcements (small, for a quick test)
* Discord/Telegram/Matrix/Email
most interaction with badgerhold is done through the standard
Get<x>/Get<x>Key/Set<x>Key/Delete<x>Key. UserExists functions have been
added for email and matrix, and those and the original ones now use a
query against the database rather than sifting through every record.
I've tagged these searched fields as "index" for badgerhold, although this
definitely isn't used yet, and i'm not entirely sure if it'll be useful.
migrateToBadger is now in migrations.go, and a temporary config key
"migrated_to_badger" has been added, although it isn't being used yet,
migration is just running every time during development.
2023-06-24 17:05:04 +01:00
Harvey Tindall
fc7ae0ec4e
userpage: respect 12h/24h choice
2023-06-24 12:32:28 +01:00
Harvey Tindall
753f5fc517
compile_mjml: use multiprocessing instead of thread
2023-06-24 11:36:15 +01:00
Harvey Tindall
f1b7ef303d
Makefile: GOESBUIILD changes
...
doesn't ever install it if it's already present. Also moved it to
optional dependencies in package.json.
2023-06-23 21:31:33 +01:00
Harvey Tindall
e7d4b5051b
build: cleanup reprepro incoming after processing
2023-06-23 14:52:51 +01:00
Harvey Tindall
b7b3aa1eb7
build: fix goreleaser, include optional builder name
...
builder name shows up in about section again, as does the build time.
2023-06-23 14:41:21 +01:00
Harvey Tindall
f083d6b53f
updater: include build date, check against updates
...
build time is included in the binary, so the buildrone release date is
compared to it when deciding if something is an update or not.
2023-06-23 14:16:36 +01:00
Harvey Tindall
7caa5c5d57
lang: fix the usual on slovenian
...
someone directly translated "English (US)" again. Why?
2023-06-23 13:49:19 +01:00
Harvey Tindall
65c2722a20
font: switch to hanken grotesk
...
thought it looked quite nice License included in about section.
2023-06-23 13:45:04 +01:00
Harvey Tindall
6b3fc3d492
lang: correct language names
...
Low German/Saxon (NDS) is empty entirely, which caused discord lang
registration to error, so i've just filled in the name. Somebody
directly translated "English (US)" into italian instead of putting
Italian in italian, corrected that. Use some common sense!
2023-06-23 13:09:26 +01:00
Harvey Tindall
fec9776def
build: fix up goreleaser
...
removed deprecated options, fixed to work with new user page.
2023-06-23 13:00:46 +01:00
Harvey Tindall
bfeab3648c
form: change contact-via radios to checks
2023-06-23 12:30:52 +01:00
Harvey Tindall
c0f2409fcc
readme/site: make project status message less pessimistic
...
I think my current activity on the project justifies the change.
2023-06-23 12:20:18 +01:00