Jorge Manrubia
723e6d94f5
Rename bubbles => cards
2025-04-09 14:50:58 +02:00
Jorge Manrubia
9b4169c7ca
Scope data by account
...
With a single database this problem is not as bad, but it feels
safer to do things right. Also, not everyone in an account has access
to all the bubbles.
2025-04-07 13:09:49 +02:00
David Heinemeier Hansson
f063116df4
Group related associations together
2025-04-05 13:19:30 +02:00
David Heinemeier Hansson
aefbac9c14
Get rid of single-use and slight awkward model scope
...
Really dont like that raw Arel.sql wrapping that is required.
2025-04-05 13:17:42 +02:00
David Heinemeier Hansson
821f4c43d8
Excess CR
2025-04-05 12:49:19 +02:00
David Heinemeier Hansson
1463fa68f4
Sessions only depend on user and have no callback, so use the faster delete_all
2025-04-05 12:48:52 +02:00
David Heinemeier Hansson
8ff017fc5b
Only one invocation of this, not carrying the worth of its indirection
...
Generally I am wary of including global state checks in the belly of
models. It is one thing to do it as a default parameter, but I think it
is too far to do it inside an actual method.
2025-04-05 12:40:08 +02:00
David Heinemeier Hansson
d237885bd4
Extract User::Assignee role
...
Keep slimming down that User
2025-04-05 12:37:18 +02:00
David Heinemeier Hansson
17bdfb5df5
Already included in the Avatar concern
2025-04-05 12:35:41 +02:00
David Heinemeier Hansson
92ce80cc32
Extract User::Accessor concern
...
Our User model is getting overloaded
2025-04-05 12:34:39 +02:00
Jorge Manrubia
05fc73e2ae
Merge pull request #334 from basecamp/user-admins
...
Add admin role and animate admin toggle
2025-04-04 08:29:03 +02:00
Jorge Manrubia
cfe91c25c9
Add admin role, make sure only admins can remove and promote other users
2025-04-03 17:43:29 +02:00
Kevin McConnell
0820badcc3
Add involvement types to accesses
...
This provides a way to set the level of involvement that a user has with
a collection, and from which we determine the level of notifications to
send. Users can be access-only, watching, or being notified about
everything.
If you're access-only, you won't get an notifications. If you're
watching, you'll only get notifications for the items you're watching
(which includes the items you've been assigned, have commented on, etc).
If you're set to everything you'll get notifications about all activity
in that collection.
This change replaces our previous concept of subscriptions. Where
previously you'd subscribe to a collection to get notifications in it,
now you'll simply set the notification level on your access.
2025-04-03 16:35:13 +01:00
Kevin McConnell
bc5e32e737
Only "published" notifies collection subscribers
...
The other notifications are only sent to the watchers of the bubble.
2025-03-18 17:46:57 +00:00
Jason Zimdars
28a569c49b
Tickets
2025-03-17 21:24:08 -05:00
Kevin McConnell
49fa8b21a6
Move current user check to controller
...
This is necessary to a) ensure people can't edit/delete comments they
don't own, and b) make the comment partial cacheable.
2025-03-03 17:04:16 +00:00
Kevin McConnell
ab27371115
Include self in watcher list
2025-02-27 10:51:59 +00:00
Kevin McConnell
d29e999552
Make Buckets subscribable
2025-02-26 10:53:03 +00:00
Kevin McConnell
485a056ba2
Add a "system" role & specific user
2025-02-12 13:19:53 +00:00
Jason Zimdars
8ee1e670f9
Remove Hotwire Combobox, adjust related styles
2025-02-10 17:01:42 -06:00
Kevin McConnell
d0ae5b4bdc
Add notification model
2025-01-13 14:21:47 +00:00
Jason Zimdars
295d8ce088
Upload user avatar
2024-12-18 14:44:05 -06:00
Jason Zimdars
592c88e639
Add session transfer feature
2024-12-18 12:38:53 -06:00
Jose Farias
688f812336
Unnecessary parens
2024-12-10 19:52:42 -06:00
Jose Farias
59c66923f0
Implement all_access buckets
2024-12-10 19:46:40 -06:00
Jose Farias
acac683b3e
Do combobox filtering client-side
2024-11-25 16:25:42 -06:00
Jose Farias
f266e46b57
Wire up comboboxes
2024-11-21 19:58:21 -06:00
Jose Farias
f2706d0f74
Unnest bubble filters
2024-11-05 13:04:05 -06:00
Jose Farias
f4b5210ca1
Spike persisted filters
2024-10-16 16:41:11 -06:00
Jose Farias
dd1752de2a
Implement bucket access form
2024-10-09 11:53:05 -04:00
Jason Zimdars
9e28359587
Add proper avatars for users
2024-10-04 10:54:11 -05:00
Kevin McConnell
e50144d97f
Add modelling for "popped" bubbles
2024-10-03 12:54:13 +01:00
Jeffrey Hardy
da21a071b8
Introduce scopes for finding bubbles assigned to or by someone
2024-10-02 15:49:36 -04:00
Jeffrey Hardy
497906010b
Track assignment assignees
2024-10-02 12:45:34 -04:00
Jeffrey Hardy
ee67d485c4
Forbid account self-removal
2024-09-24 15:48:29 -04:00
Jeffrey Hardy
4e579e5a34
Rename Project to Bucket
2024-09-24 15:32:44 -04:00
Jeffrey Hardy
5516bd024a
Match non-ASCII characters when extracting initials
2024-09-20 14:53:02 -04:00
Jeffrey Hardy
36ee7a8e75
Reorder associations and validations
2024-09-20 14:53:02 -04:00
Jeffrey Hardy
2c32c3c536
Use checkboxes to toggle accesses in bulk
2024-09-18 13:06:30 -04:00
Jeffrey Hardy
995f937eef
Stub project access control for users
2024-09-18 13:06:30 -04:00
Jeffrey Hardy
c09a02fa98
Introduce projects and accesses
2024-09-18 13:06:30 -04:00
Jason Zimdars
56c7fe4abb
Add assignees to a bubble WIP
...
- Still needs UI to display multiple assignees
- Still needs UI for changing/removing assignees
2024-09-17 17:10:23 -05:00
Jeffrey Hardy
6dc2c2ba73
Tidy model 'dependent: destroy' options
2024-09-04 14:03:19 -04:00
Jeffrey Hardy
e3983d5bbe
Use Rails' new sessions generator to replace the existing setup
...
Ref: https://github.com/rails/rails/pull/52328
2024-08-20 14:17:05 -04:00
Jeffrey Hardy
683338fb02
Go with Account instead of Organization as the top-level tenant entity
2024-08-16 17:06:49 -04:00
Jason Zimdars
09cc76c4f7
Render comments on splats
2024-08-14 17:36:13 -05:00
Jason Zimdars
2ff9dbab51
Track creator
2024-08-14 16:41:59 -05:00
Kevin McConnell
c4fb1bdc76
Add minimal authentication flow to get started
2024-06-21 16:45:29 +01:00