Mike Dalessio
d111fb50c3
Default collection permissions to "all access"
...
ref: https://37s.fizzy.37signals.com/buckets/693169853/bubbles/999008744
2025-04-07 12:48:43 -04:00
David Heinemeier Hansson
23892296da
Move readings under bubbles and out of double nesting
2025-04-07 14:06:56 +02:00
Jorge Manrubia
fea5463642
Merge pull request #372 from basecamp/scope-accesses
...
Scope data by account
2025-04-07 13:35:44 +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
Jorge Manrubia
40df93eed7
Max max age for your own avatar
...
So that you don't get confused when you don't see it update
after changing it.
2025-04-07 06:59:36 +02:00
David Heinemeier Hansson
565ee0f548
Dont have to spell this out when there are no other formats
2025-04-06 21:09:49 +02:00
David Heinemeier Hansson
c06802856e
Move boosts under bubbles
...
But also remove the need for a bucket nesting
2025-04-06 21:04:28 +02:00
David Heinemeier Hansson
4fd1472fae
Move bubble watch out from the needless bucket nesting
2025-04-06 19:22:40 +02:00
David Heinemeier Hansson
eb0614c44f
Use a more ergonomic API for watching
...
Passing a boolean vs using explicit on/off methods feel too low level
and doesnt read right in most of these cases.
2025-04-06 19:17:26 +02:00
David Heinemeier Hansson
95cd60b919
Style
2025-04-06 18:49:19 +02:00
David Heinemeier Hansson
b8bcfdee40
This is not just param extraction, we sanitize too
2025-04-06 13:29:43 +02:00
David Heinemeier Hansson
5e78a1dab1
Make it clearer that this takes a title string not a tag object
2025-04-06 13:28:52 +02:00
David Heinemeier Hansson
ee22e69e6e
Move taggings to bubbles
2025-04-05 22:19:12 +02:00
David Heinemeier Hansson
540316e639
Move taggings under bubbles
2025-04-05 21:54:48 +02:00
David Heinemeier Hansson
5134985418
Simplify the assignments flow
...
We now submit on every selection, so we dont need a whole form and
checkboxes to do it.
This needs some design tune-up after the change, though. cc @jzimdars
2025-04-05 17:14:57 +02:00
David Heinemeier Hansson
e825f1d33f
No need for the partial indirection
2025-04-05 16:06:44 +02:00
David Heinemeier Hansson
3b5f8c2e6a
Note the security oddity of finding straight off root
2025-04-05 15:56:12 +02:00
David Heinemeier Hansson
851be126ab
Emphasize where this pin is showing up
2025-04-05 15:55:11 +02:00
David Heinemeier Hansson
b4c0fec7a6
Move Assignments under Bubble
...
Since that what we are assigning
2025-04-05 15:51:53 +02:00
David Heinemeier Hansson
e69c1bd0a1
Break pins out of the double nesting
...
Its cumbersome and needless
2025-04-05 15:45:16 +02:00
David Heinemeier Hansson
f725a69dee
Let BubbleScoped find its own bucket
...
Then it will be easier to break things that are double nested out of
that nesting.
2025-04-05 15:44:47 +02:00
David Heinemeier Hansson
e4c6fe4b55
Shape up pinning API and broadcast in the controller
2025-04-05 15:15:48 +02:00
David Heinemeier Hansson
bfb7ed1216
Move pins to my space
...
We used the my/ space in HEY to reflect anything that was primarily
hinged off Current.user. Good to use here too.
2025-04-05 14:57:24 +02:00
David Heinemeier Hansson
7494dad91e
Drop the toggles scope for taggings as well
2025-04-05 14:20:06 +02:00
David Heinemeier Hansson
384de24132
Get rid of odd toggles concept
...
This is just assignments.
2025-04-05 14:16:04 +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
Jorge Manrubia
77e9e4b05f
Merge pull request #353 from basecamp/sort-completed
...
Sort completed bubbles by most recently completed first
2025-04-04 17:12:05 +02:00
Jorge Manrubia
a7fc325184
Format
2025-04-04 17:01:30 +02:00
Jorge Manrubia
4ac2511771
Remove turbo frame for editing stages
2025-04-04 16:59:51 +02:00
Jorge Manrubia
6eb9240993
Move card preview templates to its own folder
2025-04-04 16:26:51 +02:00
Jorge Manrubia
f437aecf00
Sort completed bubbles by most recently completed first
2025-04-04 15:39:00 +02:00
Jorge Manrubia
0e3f756a27
Merge pull request #351 from basecamp/close-with-label
...
Close as...
2025-04-04 15:09:47 +02:00
Jorge Manrubia
977199e189
Sort by newest first by default
...
https://37s.fizzy.37signals.com/buckets/693169850/bubbles/999008839
2025-04-04 14:21:06 +02:00
Jorge Manrubia
77d0cd5e7f
Close as working with default fallback label
2025-04-04 10:59:53 +02:00
Jorge Manrubia
dbae700554
Merge pull request #346 from basecamp/two-columns-refactor
...
Refactor collections perma + support for doing/considering
2025-04-04 08:29:17 +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
Jason Zimdars
1ea70d7d3b
Merge branch 'main' into two-columns-refactor
...
* main:
Fix image icons
Revert "Merge pull request #345 from basecamp/cascade-layers"
Fine tune notifications states
Remove empty helper
Use an icon for the button
Show button on collection page and notif settings
Add involvement types to accesses
Extract a couple components
Add cascade layers to all CSS files
2025-04-03 19:30:37 -05: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
Jorge Manrubia
41b6f437b0
Update workflow stages with streams
2025-04-03 14:14:28 +02:00
Jorge Manrubia
17c1b2051f
Add toggles to switch between doing/considering
2025-04-03 13:46:29 +02:00
Jorge Manrubia
49ef811d25
Load queries asynchronously to leverage concurrency
2025-04-03 13:28:14 +02:00
Jorge Manrubia
5a2b7c5abd
Rework buckets index using proper queries and tidy up
2025-04-03 13:26:16 +02:00
Jason Zimdars
f7e2d04808
Rework the flow for closing and moving between columns
2025-04-02 17:27:34 -05:00
Mike Dalessio
b7c2369988
Fix setting the workflow on a collection
...
The previous implementation would delete all accesses if the bucket
was not all_access.
I think it's simpler to move the bucket workflow into a separate
Buckets::WorkflowsController, rather than deal with different sets of
params from different forms in the existing BucketsController.
2025-03-30 09:24:56 -04:00
Jason Zimdars
1cf2e24bcc
Set buckets at the workflow level
...
- All bubbles inherit the bucket's set workflow
2025-03-27 14:35:07 -05:00
Mike Dalessio
91de604815
Move event activity loading into Events::DaysController
2025-03-26 07:46:56 -04:00
Mike Dalessio
b7e5ca780c
Extract the EventsTimeline controller concern
2025-03-26 07:37:42 -04:00
Mike Dalessio
23e4fd9b1c
Remove the buckets#index action and view
...
and have bucket#destroy redirect to root_path
2025-03-25 13:40:36 -04:00
Mike Dalessio
a66dc2a789
Move tags and assignments partials out of "bubbles/sidebar"
...
They're part of the card now, let's name them that way.
Also, rename the "tag" partial to "tagging", following the naming
convention established by the controller.
2025-03-24 17:11:58 -04:00