Adds a UserSettings entity that will hold user controllable settings for otr-web going forward. Currently holds two values, Ruleset DefaultRuleset and bool DefaultRulesetIsControlled. The rationale is that by default, users will have their preferred ruleset synced with the ruleset they have selected on their osu! profile. If they wish to have a different preferred ruleset for otr, they can change it, and the value will no longer sync with their osu! profile.
UserSettings are populated with defaults via a migration. By default, all users' rulesets will be set to and synced with the one selected on their osu! profile.
New Endpoints
POST/me/settings/ruleset
Updates the ruleset for the currently logged in user
Adds a
UserSettings
entity that will hold user controllable settings forotr-web
going forward. Currently holds two values,Ruleset DefaultRuleset
andbool DefaultRulesetIsControlled
. The rationale is that by default, users will have their preferred ruleset synced with the ruleset they have selected on their osu! profile. If they wish to have a different preferred ruleset for otr, they can change it, and the value will no longer sync with their osu! profile.UserSettings are populated with defaults via a migration. By default, all users' rulesets will be set to and synced with the one selected on their osu! profile.
New Endpoints
POST
/me/settings/ruleset
Ruleset.Catch
)POST
/me/settings/ruleset:sync
POST
/users/{id}/settings/ruleset
Ruleset.Catch
for user703
(Myssto))POST
/users/{id}/settings/ruleset:sync
703
(Myssto))Schema Changes
UserDTO
(Returns fromGET
/me
andGET
/users/{id}
)ruleset
settings
Closes #286