enwikipedia-acc / waca

English Wikipedia Account Creation Interface
https://accounts.wmflabs.org/internal.php
The Unlicense
33 stars 30 forks source link

Multiproject preferences updates #594

Closed stwalkerster closed 1 year ago

stwalkerster commented 4 years ago

language and default domain option in preferences, split prefs into new table

domainprefs

This table provides preferences for a domain, and is distinct from userdomain which only holds whether a user is able to access a domain or not. Notably, rows in this table remain even if a user is removed from a domain.

Name Type
id int autoinc
updateversion int
user int not null fk
domain int not null fk
creationmode int not null
welcomesig string
welcometemplate int fk
emailsig string
stwalkerster commented 2 years ago

Based on the idea posted in #675, the approach taken here is:

Domain specific settings get the domain tagged against them. Global settings get the domain column null. There's more complexity here surrounding the global generated column and the constraints to make this behave properly, but I consider that an implementation detail.

I'll leave the language preference out until we sort out internationalisation.