Commit Graph

69 Commits

Author SHA1 Message Date
Stanko K.R. 635dbb90cb Rename the Import controller to Account::Import 2026-02-02 12:36:48 +01:00
Andy Smith 5278b8e5fd Touch up the Download Export page 2026-02-02 12:36:48 +01:00
Andy Smith 60787a00ef Touch up export modals 2026-02-02 12:36:48 +01:00
Andy Smith e892b74cf2 Simplify settings layout and correct h2 levels 2026-02-02 12:36:48 +01:00
Stanko K.R. 19ae555c2e Convert Account::SingleUserExport to User::DataExport 2026-02-02 12:36:48 +01:00
Denis Švara 4f7cec3b71 Rename bride page controller to title controller and remove text size related code. 2026-01-13 09:36:24 +01:00
Adrien Maston 6fab121f51 Merge branch 'main' into mobile/bridge-components
* main:
  Remove explicit queue definition
  Fix attribute name
  Explicitly define incineration priority
  Fix incorrect recurring job config
  Add self-service account deletion (#2246)
  Document DELETE endpoint for removing card header image
  Document goldness endpoints for marking cards as golden
  Document closed and column fields in card API response
2026-01-12 17:33:29 +01:00
Stanko Krtalić eceb6c9b43 Add self-service account deletion (#2246)
* Add self-service account deletion

* Disable access to cancelled accounts & implement Stripe interactions

* Add tests

* Fix failing tests

* Remove cancelled accounts from lists

* Fix incorrect redirect

* Use _path instead of _url for consistency

* Don't track how far the inicieration job got

We still want the step tracking so that the job can be interrupted. But, since the scope is idempotent, we don't need to track how far it got.

* Specify the exact time when the data will be deleted

* Fix crash due to unadvancable cursor

* Rename up_for_incineration to due_for_incineration

* Regenrate the schema

* Fix incorrect path check

* Migrate the SQLite schema

* Only show the cancel button on cancellable accounts

* Check that a subscirption method exists before calling it

* Ignore job failures due to missing records when an account gets deleted

* Skip sending notifications on cancelled accounts

* Use collbacks to integrate

* Add a blank line between queue_as and discard_on

* Break checks into methods

* Inline methods

* Rename Account::IncinerateJob

* Run migrations

* Migrate SQLite
2026-01-12 14:21:05 +01:00
Denis Švara ecf0921af9 Add bridge page targets. 2026-01-06 16:03:28 +01:00
Andy Smith e2f27fe384 Improve a11y for user list 2025-12-17 11:07:17 -06:00
Jorge Manrubia ee80b87c8c Add billing system with Stripe
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Jason Zimdars <jz@37signals.com>
2025-12-16 16:44:20 +01:00
Brian Bailey f193f47376 Fix typo in _entropy.html.erb 2025-12-11 13:50:34 -05:00
Mike Dalessio fa118a7d83 Add validation for the join code usage limit
which is preferred to generating a database error
2025-12-10 10:10:08 -05:00
Kevin McConnell d24726c1d3 Merge pull request #1768 from basecamp/data-exports
Add "data export" feature
2025-12-02 09:56:40 +00:00
Jason Zimdars 20781a6493 Layout 2025-12-01 22:36:20 -06:00
Jason Zimdars abee7a2ec3 Style download screen 2025-12-01 22:33:55 -06:00
Jason Zimdars df2d938b7e Copy and design polish 2025-12-01 22:23:25 -06:00
Jason Zimdars 7644b0e793 ESC is primary back hotkey, use helper in more places 2025-12-01 13:54:08 -06:00
Kevin McConnell e16cc21b0a Add "data export" feature
- Adds a button in Account Settings where you can request a ZIP export of your
  Fizzy data
- Export files are created in the background. When ready, a link to
  download them is sent to the requester.
- Exports expire after 24 hours. And are limited to 10 per day.
2025-12-01 15:23:26 +00:00
Mike Dalessio edf6b53469 Introduce an "owner" role, and prevent it from being administered
to prevent the owner from being demoted or kicked out.

ref: https://app.fizzy.do/5986089/cards/3213
2025-11-29 14:13:29 -05:00
Jason Zimdars 31d3aea3fa More copy edits 2025-11-24 12:03:34 +01:00
Jason Zimdars 86932803e4 Clarify not now move actions copy 2025-11-24 12:03:34 +01:00
Jason Zimdars 0259cb860d Fix awkward wrapping on mobile 2025-11-19 16:16:16 -06:00
Jason Zimdars 7e008864f2 Ensure back buttons collapse to icons on small screens 2025-11-19 16:04:21 -06:00
Jason Zimdars 14d9d317ff Panels now need a specific upperbound in these cases 2025-11-17 17:05:44 -06:00
Stanko K.R. e0693de7c3 Scope jobs and controllers by account 2025-11-17 09:12:41 -05:00
Mike Dalessio f1a53f3088 test: fix join codes view 2025-11-17 09:11:42 -05:00
Jorge Manrubia 9903a37243 Fix tests 2025-11-12 11:37:06 +01:00
Jorge Manrubia dba3b2d65d Remove nil param 2025-11-12 11:25:51 +01:00
Jason Zimdars bdde877de3 Apply the new hotkey and style to all back buttons
Also updates design for email address change screens
2025-11-11 15:13:30 -06:00
Jason Zimdars 7ed4884986 Disable most account and board settings for non-admins 2025-11-07 16:01:50 -06:00
Stanko K.R. fd7a9330e8 Remove email_address & password_digest from User 2025-11-04 07:20:16 +01:00
Jason Zimdars 7d154b682e Rename 'BOXCAR' to 'Fizzy'
Missed files
2025-11-03 16:30:44 -06:00
David Heinemeier Hansson ed6745e163 Style 2025-11-03 14:42:21 +01:00
David Heinemeier Hansson 6336a47732 Style 2025-11-03 14:40:42 +01:00
David Heinemeier Hansson f8b5a64e9c Already included in the layout now 2025-11-03 14:40:12 +01:00
David Heinemeier Hansson 2c9845eb62 No need to hide that the top-level entropy is tied to the Account 2025-11-02 15:24:55 +01:00
David Heinemeier Hansson b3474ec97d Rename Entropy::Configuration to just Entropy 2025-11-02 13:11:41 +01:00
Jason Zimdars e6e6eb1404 Clean up account and collection settings screens 2025-10-31 16:13:12 -05:00
Stanko K.R. ece9008459 Remove dead code 2025-10-31 16:28:08 +01:00
Jason Zimdars 475a87a7cb Style account name block 2025-10-31 16:26:56 +01:00
Stanko K.R. dd583206ee Allow changes to the Account name 2025-10-31 16:26:08 +01:00
Jason Zimdars 1f58cd11b0 Show busy state when submitting forms 2025-10-31 16:26:08 +01:00
Jason Zimdars 8e0efd2f38 Align left
I thought I like these centered by they feel more like back links on the
left (as they are elsewhere in BOXCAR)
2025-10-31 16:26:08 +01:00
Jason Zimdars 21d1942c99 Improve limit field 2025-10-31 16:26:08 +01:00
Stanko Krtalić 98755844a1 Remove the internal API
* Bind sessions to identities
* Remove references to the identity token
* Move email changes to identity
* Move account menu into a turbo-frame
* Create tenants from a tenanted route
2025-10-31 16:26:08 +01:00
Jason Zimdars 5a0ddbad3d Style invite link flow 2025-10-31 16:24:30 +01:00
Jason Zimdars e3f0c2da04 Link to invite from the account screen 2025-10-31 16:24:30 +01:00
Stanko K.R. c8843360fe Clean up and simplify magic links 2025-10-31 16:23:38 +01:00
David Heinemeier Hansson 13113d75c2 Spacing 2025-10-31 15:37:14 +01:00