raucao
c79c421b89
Fix Devise Turbo Stream responses for flash messages
...
CI / Test (pull_request) Successful in 33s
Release Drafter / Update release notes draft (pull_request) Successful in 2s
Wire Users::DeviseController as Devise parent controller with the
Turbo-aware responder, so failed form submissions (login, password
reset) render correctly as HTML with 422 status instead of
unprocessable turbo-stream content that Turbo silently drops.
Also fixes a NameError in the responder (rendering_options ->
error_rendering_options) and removes the dead TurboController.
2026-08-10 16:37:01 -06:00
raucao
8a8d407bcc
Add missing whitespace between Devise (sign-in) errors and forms
CI / Test (pull_request) Successful in 32s
2026-08-10 15:17:43 -06:00
raucao
045df94c29
Upgrade Devise to 5.0, remove workarounds
CI / Test (pull_request) Successful in 52s
2026-08-10 15:15:27 -06:00
raucao
0c667795a7
0.11.0
CI / Test (push) Successful in 33s
2026-08-10 14:43:42 -06:00
raucao
89184cd851
Redirect to root after password reset
CI / Test (pull_request) Successful in 32s
Release Drafter / Update release notes draft (pull_request) Successful in 2s
2026-08-10 11:22:03 -06:00
raucao
29a9dee1cb
Consume user_return_to on sign-in
2026-08-10 11:21:59 -06:00
raucao
a62d84e20a
Validate rs/oauth redirect_uri before storing return URL
2026-08-10 11:21:33 -06:00
raucao
7a892fad4e
Add AGENTS.md
CI / Test (push) Successful in 32s
2026-08-10 11:01:21 -06:00
raucao
d60d211765
Merge pull request 'Admin users page: filter by username' ( #242 ) from feature/admin_user_search into master
...
CI / Test (push) Successful in 34s
Reviewed-on: #242
2026-08-10 16:40:32 +00:00
raucao
d58c995230
Admin users page: filter by username
...
CI / Test (pull_request) Successful in 33s
Release Drafter / Update release notes draft (pull_request) Successful in 2s
Allow admins to filter the user list/index by username (partial matches
allowed)
2026-08-10 10:36:05 -06:00
raucao
9c143bc8d6
Merge pull request 'Switch from Yarn to Bun; use Ruby 3.3.12' ( #241 ) from dev/yarn_to_bun into master
...
CI / Test (push) Successful in 33s
Reviewed-on: #241
2026-08-10 00:50:19 +00:00
raucao
0d476c8a8b
Re-add Node.js for CI actions
CI / Test (pull_request) Successful in 34s
Release Drafter / Update release notes draft (pull_request) Successful in 3s
2026-08-09 18:24:28 -06:00
raucao
31341fb4ce
Upgrade Ruby to 3.3.12 everywhere
CI / Test (pull_request) Failing after 2s
2026-08-09 18:13:31 -06:00
raucao
39d9f9b312
Migrate everything from Yarn to Bun
...
No node.js or npm necessary anymore
2026-08-09 18:13:26 -06:00
raucao
8a6e733316
Merge pull request 'Show links for log-in, ToS, and Privacy Policy when logged out' ( #240 ) from chore/login_links into master
...
CI / Test (push) Successful in 44s
Reviewed-on: #240
2026-08-09 20:13:39 +00:00
raucao
9f25b23e2e
Show ToS and Privacy Policy links when logged out
CI / Test (pull_request) Successful in 41s
Release Drafter / Update release notes draft (pull_request) Successful in 2s
2026-08-09 14:10:25 -06:00
raucao
6a32dd5ee9
Show log-in link in header when logged out
...
Except on the login page itself
2026-08-09 14:10:00 -06:00
raucao
b93ddd9dbd
Merge pull request 'Add additional styles for rich text' ( #239 ) from feature/rich-text into master
...
CI / Test (push) Successful in 41s
Reviewed-on: #239
2026-08-09 19:05:33 +00:00
raucao
7e7892df7a
Fail CI if CSS wasn't built for any reason
CI / Test (pull_request) Successful in 40s
Release Drafter / Update release notes draft (pull_request) Successful in 2s
2026-08-09 13:03:02 -06:00
raucao
aff9e534c4
Upgrade Tailwind CSS
2026-08-09 13:02:27 -06:00
raucao
5f6269204b
Add auth token config for Release Drafter
2026-08-09 11:54:35 -06:00
raucao
b44b689caf
Additional styles for rich text
...
CI / Test (pull_request) Failing after 40s
Especially for editable content
2026-08-09 11:42:41 -06:00
raucao
da69cb4ad0
Cache gems in CI
CI / Test (pull_request) Successful in 41s
Release Drafter / Update release notes draft (pull_request) Failing after 2s
2026-08-08 08:36:39 -06:00
raucao
139d543e4f
Remove bun from script
CI / Test (pull_request) Successful in 2m11s
2026-08-08 08:15:24 -06:00
raucao
744cc7d7dd
Migrate from Drone CI to Gitea Actions
CI / Test (pull_request) Failing after 2m14s
2026-08-08 08:08:57 -06:00
raucao
8f1fadc74a
Point tailwind command at module executable
continuous-integration/drone/push Build is failing
2026-08-07 12:38:09 -06:00
raucao
e7527a1def
Merge pull request 'Allow anyone to publish NIP-46 events' ( #236 ) from feature/nostr_allow_public_bunker_events into master
...
continuous-integration/drone/push Build is passing
Reviewed-on: #236
2026-08-07 18:29:42 +00:00
raucao
0d248ead04
Allow anyone to publish NIP-46 events
...
Release Drafter / Update release notes draft (pull_request) Failing after 3s
This turns our relay into a public remote-sign-in relay
2026-08-07 11:03:31 -06:00
raucao
3bd07472b2
Fix pages views when signed out
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
2025-06-12 16:09:42 +04:00
raucao
32b1c2748a
Fix wrong variable
continuous-integration/drone/push Build is passing
2025-05-30 20:22:04 +04:00
raucao
fc6cac8368
Remove superfluous link
...
continuous-integration/drone/push Build is passing
Already linked in the same paragraph
2025-05-30 16:53:05 +04:00
raucao
f2e8ca790c
Add Privacy and ToS pages, footer menu
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
2025-05-30 13:27:15 +04:00
raucao
32cd4d896d
Fix link color for Devise links
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-29 17:26:18 +04:00
raucao
67c450860a
Fix tab links
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-29 16:24:33 +04:00
raucao
f1d9cf1e3d
Remove special link class
...
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
This cleans up the code quite a bit, but also allows links in editable
content to be rendered with the default style.
2025-05-29 16:10:34 +04:00
raucao
ab1490f472
Remove Kosmos name from wording
...
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
refs #222
2025-05-29 14:24:43 +04:00
raucao
6014134396
Finish MVP for content editing
2025-05-29 14:18:14 +04:00
raucao
6713665a61
WIP Rename "projects" page, make content editable
continuous-integration/drone/push Build is failing
2025-05-28 18:42:10 +04:00
raucao
315cf4dd9f
Add editable content helpers
2025-05-28 18:41:53 +04:00
raucao
2f86b3c16f
Add admin/editable_contents controller
2025-05-28 18:40:54 +04:00
raucao
55c63be9e2
Memoize instance variable
2025-05-28 18:39:48 +04:00
raucao
5c8ffc2630
Add editable contents table
2025-05-28 18:39:25 +04:00
raucao
c7a21c7a69
Add top margin to h3 within content
2025-05-28 18:37:59 +04:00
raucao
252b0f1792
Revert "Add ActionText configs, update spec helpers/configs"
...
This reverts commit c9d23f829d .
2025-05-28 16:53:31 +04:00
raucao
57246ea76d
Fix navbar current link
2025-05-28 15:35:57 +04:00
raucao
c9d23f829d
Add ActionText configs, update spec helpers/configs
2025-05-28 14:52:31 +04:00
raucao
55111f1b8b
Allow using icons without custom class
continuous-integration/drone/push Build is passing
2025-05-28 14:50:59 +04:00
raucao
4c6e64095f
Fix unused invitations count
continuous-integration/drone/push Build is failing
2025-05-28 14:28:59 +04:00
raucao
450ccff65b
Add custom class to all remaining icons
continuous-integration/drone/push Build is failing
2025-05-28 13:57:01 +04:00
raucao
0dcfefd66c
Merge pull request 'Improve admin pages for invitations' ( #228 ) from feature/admin_invitations into feature/contributor_status
...
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
Reviewed-on: #228
Reviewed-by: Greg <greg@noreply.kosmos.org >
2025-05-28 09:00:11 +00:00
raucao
c6a187b25a
Limit invitees on admin user page, link to invitations for more
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Release Drafter / Update release notes draft (pull_request) Successful in 4s
2025-05-28 12:50:10 +04:00
raucao
c99d8545c1
Add username filter to admin invitations index
continuous-integration/drone/push Build is passing
2025-05-28 12:34:52 +04:00
raucao
e8f912360b
Fix wrong stats number
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-28 12:11:26 +04:00
raucao
c94a0e34d1
Add donations to user details, link to filtered list
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-27 19:04:35 +04:00
raucao
04094efbdb
Add username filter with UI to admin donations page
2025-05-27 18:43:45 +04:00
raucao
71352d13d2
Add pending donations to admin donations index
...
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
And add more info to the details page
2025-05-27 18:08:22 +04:00
raucao
fff7527694
Don't show njump link when no pubkey set
2025-05-27 17:35:48 +04:00
raucao
7a8ca0707a
Add missing dash for no member status
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-27 17:18:47 +04:00
raucao
b657a25d4d
Wording
2025-05-27 17:16:26 +04:00
raucao
e48132cf5f
Set member status to sustainer upon payment
...
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Introduces a state machine for the payment status as well.
refs #213
2025-05-27 16:39:03 +04:00
raucao
463bf34cdf
Add link for icon library to README
continuous-integration/drone/push Build is passing
2025-05-27 15:12:31 +04:00
raucao
f313686b13
Add settings for member statuses
continuous-integration/drone/push Build is passing
2025-05-27 14:59:10 +04:00
raucao
0b4bc4ef5c
Improve color shade of sidebar link icon
...
Was a bit bright
2025-05-27 14:58:45 +04:00
raucao
393f85e45c
WIP Add member/contributor status to users
continuous-integration/drone/push Build is passing
2025-05-27 13:32:58 +04:00
raucao
d737d9f6b8
Refactor ejabberd API integration
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-26 14:10:27 +04:00
raucao
4bf6985b87
Fix wrong matcher for custom LDAP attribute
...
continuous-integration/drone/push Build is passing
389ds doesn't like case-insensitive matches for 7-bit ASCII strings
2025-05-23 14:08:41 +04:00
raucao
7f766473ab
Fix typo
continuous-integration/drone/push Build is passing
2025-05-22 13:21:37 +04:00
raucao
c1bac2625c
Only log exception to stdout
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2025-05-21 16:42:49 +04:00
raucao
c5c6765d67
Log LDAP exceptions
continuous-integration/drone/push Build is passing
2025-05-21 16:29:52 +04:00
raucao
171524fb83
Use production link
continuous-integration/drone/push Build is passing
2025-05-18 14:58:55 +04:00
raucao
3538067da6
Use production link
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-18 14:58:34 +04:00
raucao
c374bcd3bc
Merge branch 'master' into feature/mastodon_api
continuous-integration/drone/push Build is running
2025-05-18 14:56:42 +04:00
raucao
655009ad7a
Add example link for PGP pubkey
continuous-integration/drone/push Build is running
2025-05-18 14:56:29 +04:00
raucao
71c9bd29ab
Merge branch 'master' into feature/mastodon_api
2025-05-18 14:46:28 +04:00
raucao
e66d134550
Log missing l param for WKD requests, return 400
continuous-integration/drone/push Build is passing
2025-05-18 14:46:04 +04:00
raucao
11167e3e43
Merge branch 'master' into feature/mastodon_api
2025-05-18 14:37:47 +04:00
raucao
ebbd87368c
Handle l param missing for WKD request
continuous-integration/drone/push Build is passing
2025-05-18 14:37:22 +04:00
raucao
7b0ebb761f
Allow display name to be removed
...
continuous-integration/drone/push Build is passing
When form field is empty
2025-05-18 14:26:09 +04:00
raucao
fb03427d59
Allow syncing a single Mastodon profile
continuous-integration/drone/push Build is passing
2025-05-17 18:56:34 +04:00
raucao
ad138f715c
Update doc
2025-05-17 18:56:34 +04:00
raucao
6730aae2dc
Only update other avatars in one place
...
Prevent future mistakes
2025-05-17 18:56:33 +04:00
raucao
a71aa3fda2
Don't queue job when service isn't enabled
2025-05-17 18:56:33 +04:00
raucao
92e6b1395a
Add avatar to admin user page
2025-05-17 18:56:33 +04:00
raucao
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
raucao
c291765777
Add mastodon_id to users
2025-05-17 16:44:13 +04:00
raucao
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
raucao
c43e43d89c
Open RS apps in new tab
continuous-integration/drone/push Build is passing
2025-05-16 17:30:11 +04:00
raucao
dbbf116c52
Fix RS storage-first auth work in dev, remove token
...
continuous-integration/drone/push Build is passing
See https://github.com/remotestorage/remotestorage.js/issues/900
2025-05-16 15:59:40 +04:00
raucao
208b1f04ae
Fix web app icon component
continuous-integration/drone/push Build is passing
2025-05-16 15:38:03 +04:00
raucao
8049f81b73
Merge pull request 'Set XMPP avatar when new avatar is uploaded' ( #224 ) from feature/ejabberd_pep into master
...
continuous-integration/drone/push Build is running
Reviewed-on: #224
2025-05-16 11:37:29 +00:00
raucao
5f276ff349
Queue XmppSetAvatarJob when new avatar is uploaded
...
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
raucao
5916969447
Add job for setting avatar via XMPP
2025-05-15 20:05:53 +04:00
raucao
382c5ad10e
Return response for ejabberd API calls
2025-05-15 12:53:58 +04:00
raucao
8b3243af6b
Sort API methods alphabetically
continuous-integration/drone/push Build is passing
2025-05-15 12:19:09 +04:00
raucao
fc36fbf10c
Add get_vcard2 to ejabberd client
continuous-integration/drone/push Build is passing
2025-05-15 12:16:53 +04:00
raucao
06d2705c4c
Add private_get to ejabberd service
continuous-integration/drone/push Build is passing
2025-05-15 12:01:10 +04:00
raucao
03be2e09e6
Merge pull request 'User avatars' ( #223 ) from feature/user_avatars into master
...
continuous-integration/drone/push Build is passing
Reviewed-on: #223
Reviewed-by: Greg <greg@noreply.kosmos.org >
2025-05-14 14:58:15 +00:00
raucao
582d339c0a
Remove feature gate for avatar upload
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
raucao
a098ea43bb
Add avatar URL to Webfinger when available
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-05-14 15:39:50 +04:00
raucao
417e346074
Do not use ActiveStorage variants, process original avatar
...
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