Commit Graph

612 Commits

Author SHA1 Message Date
c374bcd3bc Merge branch 'master' into feature/mastodon_api
Some checks are pending
continuous-integration/drone/push Build is running
2025-05-18 14:56:42 +04:00
655009ad7a Add example link for PGP pubkey
Some checks are pending
continuous-integration/drone/push Build is running
2025-05-18 14:56:29 +04:00
71c9bd29ab Merge branch 'master' into feature/mastodon_api 2025-05-18 14:46:28 +04:00
e66d134550 Log missing l param for WKD requests, return 400
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-18 14:46:04 +04:00
11167e3e43 Merge branch 'master' into feature/mastodon_api 2025-05-18 14:37:47 +04:00
ebbd87368c Handle l param missing for WKD request
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-18 14:37:22 +04:00
7b0ebb761f Allow display name to be removed
All checks were successful
continuous-integration/drone/push Build is passing
When form field is empty
2025-05-18 14:26:09 +04:00
fb03427d59 Allow syncing a single Mastodon profile
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-17 18:56:34 +04:00
6730aae2dc Only update other avatars in one place
Prevent future mistakes
2025-05-17 18:56:33 +04:00
a71aa3fda2 Don't queue job when service isn't enabled 2025-05-17 18:56:33 +04:00
92e6b1395a Add avatar to admin user page 2025-05-17 18:56:33 +04:00
37c59b7b0c Sync Mastodon IDs/profiles to local accounts
Add a new service to import some data from Mastodon accounts:

* Find users by username, store Mastodon account ID in local db when
  found
* Import display name (don't overwrite existing)
* Import avatar (don't overwrite existing)
2025-05-17 18:56:30 +04:00
f0cfde560b Add Mastodon API service class, auth token config
Add a new REST API service class to keep things DRY
2025-05-17 14:18:16 +04:00
c43e43d89c Open RS apps in new tab
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-16 17:30:11 +04:00
dbbf116c52 Fix RS storage-first auth work in dev, remove token
All checks were successful
continuous-integration/drone/push Build is passing
See https://github.com/remotestorage/remotestorage.js/issues/900
2025-05-16 15:59:40 +04:00
208b1f04ae Fix web app icon component
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-16 15:38:03 +04:00
5f276ff349 Queue XmppSetAvatarJob when new avatar is uploaded
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Failing after 10m9s
And let job do nothing in development for now
2025-05-15 22:04:25 +04:00
5916969447 Add job for setting avatar via XMPP 2025-05-15 20:05:53 +04:00
382c5ad10e Return response for ejabberd API calls 2025-05-15 12:53:58 +04:00
8b3243af6b Sort API methods alphabetically
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-15 12:19:09 +04:00
fc36fbf10c Add get_vcard2 to ejabberd client
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-15 12:16:53 +04:00
06d2705c4c Add private_get to ejabberd service
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-15 12:01:10 +04:00
582d339c0a Remove feature gate for avatar upload
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 2s
2025-05-14 18:55:26 +04:00
a098ea43bb Add avatar URL to Webfinger when available
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-14 15:39:50 +04:00
417e346074 Do not use ActiveStorage variants, process original avatar
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Variants are currently broken. So we process the original file with the
most common avatar dimensions and stripping metadata, then hash and
upload only that version.
2025-05-14 14:42:03 +04:00
1884f082ee Add note about variants not working when not generated ad-hoc
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-12 18:07:10 +04:00
51a3652fc8 Fix S3 keys/paths for user avatars
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Also fixes the avatars controller to work with all back-ends
2025-05-12 16:39:53 +04:00
46b908839d Add avatar URL to Discourse Connect
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Discourse should download and set the avatar if the user doesn't have
one set yet.
2025-05-12 15:04:56 +04:00
512f0ccca1 Add controller for rendering avatars on simple URL 2025-05-12 15:04:01 +04:00
17ffbde03a WIP Store avatars as ActiveStorage attachments
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Also push to LDAP as jpegPhoto
2025-05-11 18:43:21 +04:00
9e2210c45b Store avatars as binary instead of base64
All checks were successful
continuous-integration/drone/push Build is passing
2025-05-10 20:58:36 +04:00
6d7d722c5d Add inetOrgPerson objectclass to user entries
refs #174
2025-05-08 16:52:54 +04:00
93aa26f430 Remove lockbox column
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 2s
2025-05-06 20:14:25 +04:00
eae370b737 Migrate from lockbox to ActiveRecord encryption (1/2)
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-05-06 18:09:27 +04:00
a97bbf61a8 Fix postgresql query for deleting auth expiry job
All checks were successful
continuous-integration/drone/push Build is passing
Solid Queue uses a text column, instead of a jsonb, so we need to cast
it as jsonb on the fly.
2025-05-05 17:37:58 +04:00
906468d156 Allow to immediately expire auth via job
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 3s
When running the job before its schedule
2025-05-05 12:46:46 +04:00
ee5c6d86d0 Port RS auth job removal to Solid Queue
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-05 11:07:30 +04:00
aef779a59c Switch from Sprockets to Propshaft
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 1s
2025-04-29 17:11:21 +04:00
74b4bc3875 Upgrade Rails to 7.2
All checks were successful
continuous-integration/drone/push Build is passing
2025-04-28 00:17:25 +04:00
646c95ecc2 Fix local/development RS auth URL
All checks were successful
continuous-integration/drone/push Build is passing
2025-04-27 16:09:32 +04:00
7df56479a4 Fix 500 when pubkey is nil 2025-01-02 08:30:58 -05:00
339462f320 Refactor mailer options usage
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 5s
2024-10-08 14:06:10 +02:00
c4c2d16342 Encrypt outgoing emails when possible 2024-10-08 14:05:50 +02:00
3ee76e26ab Re-import user's pubkey on access
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Sometimes, the pubkey might not be imported in the local keychain
(anymore), but at this point in the code it had been successfully
imported at least once before. So we just (re-)import every time for it
to never fail.
2024-10-08 11:34:18 +02:00
729e4fd566 Add WKD policy endpoint
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2024-09-26 23:11:21 +02:00
534e5a9d3c Gracefully handle wrong capitalization of username
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2024-09-25 00:20:30 +02:00
1b72c97f42 Remove obsolete code 2024-09-25 00:17:30 +02:00
bfd8ca16a9 Merge branch 'master' into feature/191-gpg_keys_wkd 2024-09-25 00:16:39 +02:00
64de4deddd Fix serviceEnabled indicator on admin page
All checks were successful
continuous-integration/drone/push Build is passing
2024-09-24 21:38:01 +02:00
9f6fa6deba Remove example link
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Until we have a live example on kosmos.org
2024-09-23 20:36:05 +02:00