Add settings page and basic settings #20

Merged
Jaculabilis merged 8 commits from tvb/settings-page into develop 2021-09-10 03:39:07 +00:00
Owner

Replaces the Session page link with a link to the new Settings page. Different subsets of the settings are arranged on pages underneath /settings.

  • Player Settings has all the settings specific to each player and is the only page visible to each player, regardless of editorial status. Currently that's just the notification settings, but could include more display settings in the future.
  • Game Setup includes basic lexicon settings like the title and prompt and public status. These are mostly set-once-and-forget settings.
  • Article Indices allows the editor to create index definitions before the game. Thanks to the magic of FieldList and FormField, this can be done (somewhat awkwardly) with only HTML forms and no javascript.

Background changes: the route parameter name is now lexicon_name and there are current_lexicon and current_membership proxies similar to Flask-Login's current_user.

Replaces the Session page link with a link to the new Settings page. Different subsets of the settings are arranged on pages underneath /settings. * Player Settings has all the settings specific to each player and is the only page visible to each player, regardless of editorial status. Currently that's just the notification settings, but could include more display settings in the future. * Game Setup includes basic lexicon settings like the title and prompt and public status. These are mostly set-once-and-forget settings. * Article Indices allows the editor to create index definitions before the game. Thanks to the magic of FieldList and FormField, this can be done (somewhat awkwardly) with only HTML forms and no javascript. Background changes: the route parameter `name` is now `lexicon_name` and there are `current_lexicon` and `current_membership` proxies similar to Flask-Login's `current_user`.
Jaculabilis added 8 commits 2021-09-10 03:39:01 +00:00
This disambiguates and future-proofs the route parameters so they can be more
easily referenced in before_request contexts shared by all routes.
This somewhat duplicates loading the objects into flask.g, but doesn't require
the lexicon route decorators. Additionally, lazy-loading these objects can save
the occasional db call, and for the current membership this is more convenient
than having to add a second decorator or staple it to the lexicon loading.
These will be reused in the settings tabs and perhaps elsewhere
Unlike the player and setup settings, the form here has a variable
number of inputs, so we use a blank row to allow expanding the index
set and allow deleting by clearing out the index type
These settings have now been reintegrated into the new code, so we can
remove them from the old code to make it easier to audit what has and
hasn't been converted yet
Jaculabilis merged commit 4d1c579e3c into develop 2021-09-10 03:39:07 +00:00
Jaculabilis deleted branch tvb/settings-page 2021-09-10 03:39:12 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
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: Jaculabilis/amanuensis#20
No description provided.