Commit Graph

60 Commits

Author SHA1 Message Date
088232f750
refactor(api & server/utils): refactor imports of db helpers
create an index file which exports the functions we need in one accessible place
2023-12-11 21:29:46 -05:00
0ebc25a1c8
refactor(server/utils): allow an IDraft to be passed to permission checker 2023-12-11 21:20:06 -05:00
fd4de6489f
refactor(server/utils): move html normalizer into its own importable function 2023-12-11 21:13:22 -05:00
f57fd2df84
chore(api/utils): remove unused import 2023-12-09 17:48:07 -05:00
7e300734d8
refactor(api/utils): switch to if...else if for each check 2023-12-09 17:32:24 -05:00
989fefd6e7
fix(pages & middleware): throw error if non-author/collaborator tries to edit a story 2023-12-09 17:32:23 -05:00
a5346e8622
fix(client-side): add error check to story redirect middleware 2023-12-09 17:31:39 -05:00
e8aea81b0b
fix(server/utils): add null check to storyQuerier 2023-12-09 17:01:13 -05:00
46c9a07b7d
refactor(api/utils): add isLoggedIn guard to story checks 2023-12-09 17:00:22 -05:00
fe7c452231
feat(client-side): create story middleware
redirect users to the login page if a story is restricted and they're not logged in
2023-12-06 22:19:05 -05:00
22816477eb
refactor(server/utils): add chapter index parameter to storyCheck function 2023-12-06 22:11:41 -05:00
c27c81f39c
refactor(api/utils): update isAdmin check
make it also check that the user is logged in; eliminates need to type `isLoggedIn()` on the previous line
2023-12-06 21:37:54 -05:00
45783c60a9
refactor(api/utils): update listQuerier helper
make it return an object containing a sliced array and a total
2023-12-06 21:31:50 -05:00
faaf385bde
refactor(server/utils): strengthen typing
mongoose middleware helper functions are now properly typed
2023-12-06 21:30:22 -05:00
3a1ddf55e4
refactor(server/middleware): remove mongoose debug flag, set overwriteModels to true 2023-12-06 21:25:47 -05:00
9d4af2b256
refactor(typing): make all fav/sub/hidden request interface fields optional 2023-12-01 18:03:07 -05:00
23a7c4d222
refactor(typing): add SingleChapterResult type for singular chapters fetched from the api 2023-12-01 17:59:16 -05:00
d5de2499ab
refactor(server/utils): make the chapter index parameter in the chapterTransformer function mandatory 2023-12-01 17:57:17 -05:00
9f180a4d30
refactor: create a constant to hold path to .env file (this is temporary)
--- REVERT THIS ---
2023-10-12 23:04:25 -04:00
20b69c82da
fix(server/utils): prepend . to file extension checks 2023-10-12 22:58:10 -04:00
c925534eb4
fix(client-side): fix autosave store not updating 2023-10-12 22:56:09 -04:00
b1c94ab0ae
refactor: edit common function for database plugin and middleware 2023-10-11 16:51:03 -04:00
e13f9de5d3
feat(client-side): complete other debounced autosave function
(this is for editing stories)
2023-10-11 16:38:20 -04:00
64f3bf23ea
refactor(server/utils): add chapter index argument to chapterTransformer 2023-10-11 16:37:18 -04:00
8d162c8029
fix(typing): add coAuthor to form story interface 2023-10-11 16:36:29 -04:00
01d3b7f22b
feat(api): integrate co-author feature in api routes and helpers 2023-10-11 15:31:02 -04:00
5a5719dc52
style(client-side): run prettier on tinymce configs 2023-10-10 22:26:51 -04:00
662a97ffc5
chore: null
it's commented out code lmao
2023-10-10 22:26:17 -04:00
c502acbba9
fix(api/utils): fix listquerier
make it so that `author` is an object we can assign to, NOT a number
2023-10-10 22:25:25 -04:00
e50fd2aba9
refactor: change log verbosity to silly (for now) 2023-10-10 22:20:04 -04:00
ba05134015
refactor(client-side): create utilities
mainly intended to avoid repitition in long lists of data like stories, authors, and/or bands
2023-10-10 22:19:18 -04:00
90b0256008
refactor(server/utils): create gridfs bucket for draft contents 2023-10-10 22:05:26 -04:00
dd74c8417a
fix(server/utils): fix mammoth and sanitize-html imports
(make it so that we're not importing a namespace instead of a default export)
2023-10-10 22:04:42 -04:00
10fad65823
feat(client-side): add debounced autosave function for story form 2023-10-09 17:21:27 -04:00
ac6dc8ed09
refactor(api/utils): improve logger 2023-10-05 02:05:52 -04:00
490fa1469e
refactor(server/utils): create utility to return forum database's uid using the actual site's user id 2023-10-03 01:10:00 -04:00
6ae407c600
refactor(server/utils): add reusable ficmas utility functions 2023-10-03 01:07:29 -04:00
80438ecacd
refactor(server/utils): create custom winston logger 2023-10-03 01:03:31 -04:00
21360669d8
refactor(server/utils): add constants file 2023-10-03 00:53:10 -04:00
dd9fcaf5ae
refactor(api/utils): add story query helper function
to avoid having to write the same `populate` calls over and over
2023-10-03 00:52:24 -04:00
bef6e79317
refactor(server/utils): export all story helpers from a single index.ts file
this is to remove the need for importing from several different files
2023-10-03 00:51:12 -04:00
1059b560e6
refactor(api/utils): replace repetitive "forbidden" and "unauthorized" literals with constant references 2023-10-03 00:50:00 -04:00
66d6168a31
refactor(server/utils): add transformer for regular chapter objects
this transforms a story object into a slightly different object to be served by the api. notable differences are the `totalChapters` field and the removal of the `chapters` array. `chapters` is then replaced by a `currentChapter` object, representing the currently "selected" chapter, with an added `text` field
2023-10-03 00:46:57 -04:00
c8bdcc0ec3
refactor(server/utils): create reusable utilities for various story-related functions
`bodyHandler` takes a request body and returns the chapter content as a string
`formChapterTransform` serializes a chapter-like object supplied in a request body to an actual
	proper chapter object
`getBucket` retrieves the story content gridfs bucket
`replaceGridFS` either creates or updates (deletes + reuploads) a gridfs file
2023-10-03 00:42:24 -04:00
1338e87238
feat(api/utils): add isadmin check 2023-10-03 00:33:54 -04:00
a2300d959c
refactor(client-side): combine yup schema for story chapters with story schema file 2023-10-03 00:32:53 -04:00
f3a3240134
feat(client-side): create yup schema for story form and chapter sub-forms 2023-10-03 00:31:27 -04:00
c9574dfc29
refactor(server/utils): move listQuerier to separate database helper folder 2023-10-03 00:30:22 -04:00
09187fa5ac
feat(api): add captcha verify utility 2023-10-03 00:26:51 -04:00
972e8fa646
refactor(typing): create interfaces to ensure strongly typed form data 2023-10-03 00:23:52 -04:00