feat(signup): require privacy + legal acknowledgement at sign-up #59

Merged
eliott merged 1 commit from audit/legal-compliance into develop 2026-05-16 21:29:57 +02:00
Owner

Summary

  • Add a PrimeNG <p-checkbox> above the Create account button: "I have read and accept the privacy policy and legal notice." The submit button stays disabled until ticked (Validators.requiredTrue).
  • Links open the website pages in a new tab (https://roll-note.com/privacy, /legal) via a new EXTERNAL_LINKS constant.
  • Bump to 7.2.1 to match the v7.2.1 changelog entry seeded by rollnote-api 8.1.2.

Why

Pairs with rollnote-website's new privacy + legal pages and rollnote-api's delete-account fix. Auditing the signup flow found no terms checkbox and no link to any policy - users were creating accounts with zero acknowledgement that any policy existed.

Test plan

  • New signup.spec.ts test: form is invalid until acceptTerms is true.
  • Two existing signup tests updated to set acceptTerms: true.
  • pnpm ng test --no-watch - 703/703 passing (2 pre-existing skipped).
  • pnpm exec tsc --noEmit -p tsconfig.json - clean.
  • pnpm build - clean (pre-existing CommonJS warnings only).
  • pnpm lint - clean.
  • Manual: load /register, confirm checkbox renders below the password-mismatch slot, links open in new tab, submit button gates correctly.
## Summary - Add a PrimeNG `<p-checkbox>` above the Create account button: "I have read and accept the privacy policy and legal notice." The submit button stays disabled until ticked (`Validators.requiredTrue`). - Links open the website pages in a new tab (`https://roll-note.com/privacy`, `/legal`) via a new `EXTERNAL_LINKS` constant. - Bump to 7.2.1 to match the v7.2.1 changelog entry seeded by rollnote-api 8.1.2. ## Why Pairs with rollnote-website's new privacy + legal pages and rollnote-api's delete-account fix. Auditing the signup flow found no terms checkbox and no link to any policy - users were creating accounts with zero acknowledgement that any policy existed. ## Test plan - [x] New `signup.spec.ts` test: form is invalid until `acceptTerms` is true. - [x] Two existing signup tests updated to set `acceptTerms: true`. - [x] `pnpm ng test --no-watch` - 703/703 passing (2 pre-existing skipped). - [x] `pnpm exec tsc --noEmit -p tsconfig.json` - clean. - [x] `pnpm build` - clean (pre-existing CommonJS warnings only). - [x] `pnpm lint` - clean. - [ ] Manual: load `/register`, confirm checkbox renders below the password-mismatch slot, links open in new tab, submit button gates correctly.
feat(signup): require privacy + legal acknowledgement at sign-up
All checks were successful
tests / test (pull_request) Successful in 2m35s
ab619a4d9b
Add a PrimeNG checkbox above the Create account button with
Validators.requiredTrue and labels linking to the website privacy
policy and mentions legales (new EXTERNAL_LINKS constant points at
https://roll-note.com/privacy and /legal). The submit button stays
disabled until the box is ticked. Add a spec for the new requirement
and patch the two existing valid-form tests to set acceptTerms.

Bump to 7.2.1 to match the v7.2.1 changelog entry seeded by
rollnote-api 8.1.2.
eliott merged commit 0880c8e064 into develop 2026-05-16 21:29:57 +02:00
eliott deleted branch audit/legal-compliance 2026-05-16 21:29:58 +02:00
Sign in to join this conversation.
No reviewers
No labels
run-ci
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
RollNote/rollnote-front!59
No description provided.