Commit Graph

404 Commits

Author SHA1 Message Date
0d022af335 Implement index assignments
The index assignment UI uses the same table-form pattern as the index
UI. There is currently no control over deleting indices when an index
assignment exists on that index.
2021-09-20 14:50:37 -07:00
a91be8bc87 Add name helper to index model to aid identification 2021-09-20 14:19:45 -07:00
b94a2224c0 Add sqlite to nix shell 2021-09-15 00:25:59 -07:00
6f73c58d23 s/indexes/indices 2021-09-15 00:25:59 -07:00
abbe6e6b2e Track Ersatz status with flag instead of null character
Previously, articles written by Ersatz Scrivener were represented in
the data model by having a NULL character id. This had several awkward
consequences, such as therebeing no real way to distinguish Ersatz
articles from different players without doubling up on foreign keys
whenever there was a character reference, because there would need to
be a user reference as well.

Using a flag on the article itself is a much cleaner solution. There is
no longer a need to have both character and user FKs. Ersatz-ness is
still a special case, but one easily tracked on articles without
changing how basic objects of the game relate to each other. Ersatz
articles can be treated differently in the stats just as easily while
still being subject to character-specific rules like index assignments.
2021-09-15 00:22:38 -07:00
4d1c579e3c Remove obsolete settings
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
2021-09-09 19:40:48 -07:00
e353ac9b93 Add index settings page
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
2021-09-09 19:40:48 -07:00
03c0b4ce70 Add index cli and create command 2021-09-09 19:39:53 -07:00
bff25fb97f Implement player-specific and game setup settings 2021-09-09 19:34:24 -07:00
bc6f29713e Add settings page skeleton 2021-09-09 19:34:24 -07:00
00bb2aedec Refactor some css colors
These will be reused in the settings tabs and perhaps elsewhere
2021-09-09 19:34:24 -07:00
d05bc3e689 Add local proxies for the current lexicon and membership
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.
2021-09-09 19:34:24 -07:00
ccb285cbf0 Rename route parameter to lexicon_name
This disambiguates and future-proofs the route parameters so they can be more
easily referenced in before_request contexts shared by all routes.
2021-09-09 19:34:24 -07:00
3a9b016320 Add uuid werkzeug route converter for character routes 2021-09-02 18:43:04 -07:00
a9c97430de Linting pass 2021-08-29 07:35:04 -07:00
45ee56d09b Add character creation and signatures 2021-08-27 12:03:16 -07:00
eec039c09a Add character limit cli 2021-08-27 08:19:29 -07:00
9f939fe57c Fix missing None check 2021-08-27 07:50:48 -07:00
af5b1c4cfa Add character editing page 2021-08-27 07:49:47 -07:00
3b95d650c1 Replace home sidebar item with link next to login status 2021-08-27 05:55:42 -07:00
c6f3ae4779 Add top-level character page 2021-08-27 05:15:13 -07:00
e480658ebe Add character create command 2021-08-19 18:17:06 -07:00
c26a0a058b Print help instead of only usage 2021-08-19 18:10:00 -07:00
34f750a7c7 Show session page to admins 2021-08-13 20:12:23 -07:00
4401024bf5 Reintegrate lexicon routes and joining 2021-08-13 20:12:13 -07:00
587a70faf5 Update lexicon route decorators 2021-08-13 20:09:08 -07:00
7645c85c9d Make backend argument type errors more specific 2021-08-13 17:23:03 -07:00
d6f558a92b Add backend to jinja context 2021-08-12 23:08:56 -07:00
74fe79dbf9 Make importing backends easier 2021-08-12 23:08:56 -07:00
06d662982c Rename lookup functions 2021-08-12 23:04:56 -07:00
9025be28bf Add update timestamp defaults to lexicon and article 2021-08-02 21:59:45 -07:00
10a0c59d5e Cleanup and removal of obsolete code 2021-06-26 13:48:18 -07:00
6c8f341a4e Add home page test 2021-06-26 10:13:46 -07:00
4284de1cd0 Misc touchups 2021-06-23 22:08:33 -07:00
0e5547b883 Update flask_wtf version 2021-06-23 22:06:46 -07:00
4603e9da28 Add bs4 and auth workflow tests 2021-06-23 22:02:55 -07:00
a6e2c8e6db Fix Python 3.8 incompatibility 2021-06-23 20:24:16 -07:00
9f6f5e92f5 Add unit tests for new backend functions 2021-06-17 02:06:48 -07:00
ba346c29bc Move backend tests 2021-06-16 20:17:35 -07:00
b789bad6c0 Switch tests to run on a tempfile db 2021-06-16 20:17:24 -07:00
3cfc01a9c8 Get home screen working 2021-06-16 20:16:23 -07:00
562d7d8a4b Add some basic lexicon cli commands 2021-06-16 20:13:07 -07:00
398b5705f1 Simplify some backend names 2021-06-16 20:10:09 -07:00
0e35f15a3a Add prettier date formatter 2021-06-16 00:58:09 -07:00
a07b342da3 Remove obsolete model code 2021-06-16 00:39:52 -07:00
e4e699fa1b Reintegrate auth routes 2021-06-16 00:37:49 -07:00
6b5463b702 Implement user passwd command 2021-06-16 00:34:20 -07:00
3c7fc4b5f8 Show admin status in user list 2021-06-15 23:33:25 -07:00
34685a741e Add user create and promotion commands 2021-06-15 23:26:58 -07:00
651ab1d72f Refactor db to lazy-load at the top level 2021-06-15 23:02:51 -07:00