Files
sure/app/views/invitations/accept_choice.html.erb
MkDev11 87117445fe Fix OIDC household invitation (issue #900) (#904)
* Fix OIDC household invitation (issue #900)

- Auto-add existing user when inviting by email (no invite email sent)
- Accept page: choose 'Create account' or 'Sign in' (supports OIDC)
- Store invitation token in session on sign-in; accept after login (password,
  OIDC, OIDC link, OIDC JIT, MFA)
- Invitation#accept_for!(user): add user to household and mark accepted
- Defensive guards: nil/blank user, token normalization, accept_for! return check

* Address PR review: rename accept_for! to accept_for, i18n OIDC notice, test fixes, stub Rails.application.config

* Fix flaky system test: assert only configure step, not flash message

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
Co-authored-by: mkdev11 <jaysmth689+github@users.noreply.github.com>
Co-authored-by: Juan José Mata <juanjo.mata@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 16:14:42 +01:00

24 lines
880 B
Plaintext

<%
header_title t(".title", family: @invitation.family.name)
%>
<div class="space-y-1 mb-6 text-center">
<p class="text-secondary">
<%= t(".message",
inviter: @invitation.inviter.display_name,
role: t("invitations.new.role_#{@invitation.role}")) %>
</p>
</div>
<div class="space-y-4">
<%= link_to new_registration_path(invitation: @invitation.token),
class: "block w-full rounded-md border border-secondary bg-container px-4 py-3 text-center text-sm font-medium text-primary hover:bg-secondary transition" do %>
<%= t(".create_account") %>
<% end %>
<%= link_to new_session_path(invitation: @invitation.token),
class: "block w-full rounded-md border border-secondary bg-container px-4 py-3 text-center text-sm font-medium text-primary hover:bg-secondary transition" do %>
<%= t(".sign_in_existing") %>
<% end %>
</div>