NodeBB / NodeBB/NodeBB

User preferences should have "system default" value

Open
#5,240 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
JavaScript
Stars
15.2k
Forks
3k
Avg merge
16h 19m
Merged PRs (30d)
167

Description

A bunch of user settings (e.g. notify me on X, email me on Y, user language, etc) do not have an option for "no setting". That is, if the system language is en-GB, then the user language is set to en-GB if the user's settings don't explicitly set userLang at all.

Let's take user language as an example, this causes confusion because:

  1. If the system language changes, then the user language changes as well. However, this isn't indicated in user settings, as the option reads en-GB, and the user expectation is that even if the system language changes, it should stay as en-GB.
  2. If the user wants to "remove" their setting and go back to system default, there is no way to do so.

Suggestion:

  1. Add a "system default" option to any user settings that have corresponding settings in the ACP. If this option is set (that is, value is '' or undefined), then take the ACP-set value or a hardcoded default otherwise.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inventorying the user settings described in the issue and their corresponding ACP settings, beginning with user language. Trace how unset or empty values are currently resolved, then define the scope for adding a system-default option across those settings. Done means users can distinguish an inherited value from an explicit one and return to the system default.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, nodejs
Domain
full-stack
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.