Backend: migration 007 adds a case-insensitive unique index on user names per event. join endpoint returns 409 conflict when the name is taken. find_by_event_and_name uses LOWER() for case-insensitive recovery. Frontend: join page handles 409 with a name-taken view — amber warning, name-choice tips, inline PIN recovery form, and "Anderen Namen wählen" button. Test guide updated with Steps 8 and 9. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
5 lines
118 B
SQL
5 lines
118 B
SQL
DROP INDEX IF EXISTS idx_user_event_name_ci;
|
|
|
|
CREATE INDEX idx_user_event_name
|
|
ON "user"(event_id, display_name);
|