Commit Graph

32 Commits

Author SHA1 Message Date
Jason Zimdars f5384baf63 Boxcar -> BOXCAR 2025-10-23 15:05:36 -07:00
Jason Zimdars 49e87310d7 Rename Fizzy, Boxcar 2025-10-22 13:42:41 -07:00
Mike Dalessio ec119b774a Remove the caching around Identity-related fragments
The Identity table read should be OK given the menu is etagged
and the untenanted page should be a rarity.
2025-10-10 11:53:36 -04:00
Mike Dalessio b7abf33c29 Bump identity cache fragments 2025-10-10 11:08:39 -04:00
Mike Dalessio 3399e45130 Introduce an "Identity" model to ease login
- New untenanted Identity and Membership models
- New `identity_token` cookie with path "/" holds state across tenants

We're not sure whether the untenanted database will be sqlite or
MySQL, and so I've been careful to minimize

- database reads, placing them behind etags and caching
- database writes, only writing when a new Session is created (login)

Note that we track two things in the identity_token cookie: a signed
id, and the updated_at for the underlying Identity object. This allows
us to effectively cache on the Identity without having to hit the
database, by using an Identity::Mock object that is compatible with
etag and cache methods.

The new integration test shows the desired user-facing behavior, which
is to make it easy to login without a tenanted URL and to jump between
tenants.

- the untenanted "login_help" page shows all linked memberships
- the jump menu shows all linked memberships (except the current)

Also introduced a utility script to populate existing employee
Identities, grouping accounts by email address.
2025-10-10 10:12:25 -04:00
Mike Dalessio 2d327e6294 Render a helpful menu of tenants temporarily 2025-10-02 16:33:25 -04:00
Mike Dalessio 2630e4bd74 Extract 37id and QB controllers, models, and tests 2025-09-13 16:03:02 -04:00
Mike Dalessio 57269b1b9c Allow local authentication with LOCAL_AUTHENTICATION=1
You can touch `tmp/local-auth.txt` to persist this setting.
2025-08-06 17:05:35 -04:00
Mike Dalessio fa1c5f7279 Remove session controller actions other than delete
and do some general cleanup around sessions controllers and the
sign_in_as test helper
2025-07-02 15:03:28 -04:00
Mike Dalessio 2c18173f08 Trampoline the Launchpad auth redirect from a GET into a POST
to always route it to the writer.
2025-06-20 15:16:57 -04:00
Jason Zimdars 60890b10ee Remove translations feature 2025-04-09 14:11:32 -05:00
Andy Smith 51d907fca3 Replace stray image_tag instances and remove colorize class 2025-04-02 14:32:21 -05:00
David Heinemeier Hansson de6f782ca3 Extract icon_tag helper to reduce repetition 2025-03-29 17:22:51 +01:00
Mike Dalessio 1a4e2fdea4 Remove unnecessary "turbo: false" from forms
because the turbo responses have been moved from EventsController to
Events::PagesController, we can now redirect to the Events index page
within a turbo session.
2025-03-26 07:47:01 -04:00
Jason Zimdars 28a569c49b Tickets 2025-03-17 21:24:08 -05:00
Jason Zimdars c4bc9242e2 Fix sign-in logo 2025-02-21 10:49:27 -06:00
Jason Zimdars 1d0562f905 Refactor 2025-02-21 10:44:40 -06:00
Jason Zimdars 592c88e639 Add session transfer feature 2024-12-18 12:38:53 -06:00
Jason Zimdars 0d4dc9f474 Use new bubble shape 2024-11-19 09:52:50 -06:00
Jeffrey Hardy 7863bb5862 Prompt for first-run setup when no accounts exist 2024-09-30 13:17:31 -04:00
Jason Zimdars 0c2fb156a7 Polish logo placeholder 2024-09-18 12:55:36 -05:00
Jason Zimdars bcfba64c69 Polish sign-in screen 2024-09-11 16:27:15 -05:00
Jason Zimdars 925247acfc Rework main layout, comments layout, and list layout 2024-09-09 17:53:13 -05:00
Jeffrey Hardy 40863453e0 Recast categories as tags 2024-09-05 17:36:48 -04:00
Jeffrey Hardy 5aae70298b Rename Splat to Bubble 2024-09-04 14:54:11 -04:00
Jeffrey Hardy 84e586ff65 Render the assigned page title 2024-08-20 14:17:08 -04:00
Jeffrey Hardy c36831c0ed Remove default username input value from params until needed 2024-08-20 14:17:08 -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
Jason Zimdars 81abde2849 Some polish and name change stuff 2024-08-08 18:06:19 -05:00
Jason Zimdars 7bb16e0bcc Refine new splat shape 2024-08-05 17:10:38 -05:00
Jason Zimdars ac38edd49e Design sign-in flow 2024-07-24 17:42:43 -05:00
Kevin McConnell c4fb1bdc76 Add minimal authentication flow to get started 2024-06-21 16:45:29 +01:00