Commit Graph

53 Commits

Author SHA1 Message Date
Savanni D'Gerinel 9c75c84720 Fix the form to string conversion and set up the Delete form 2023-10-25 22:52:03 -04:00
Savanni D'Gerinel 41bbfa14f3 Bump file-service tag to 0.1.2 2023-10-25 10:38:11 -04:00
Savanni D'Gerinel 66876e41c0 Clean up broken tests and clippy warnings 2023-10-25 10:35:24 -04:00
Savanni D'Gerinel ee348c29cb Render the name and the uploaded date for each file in the gallery 2023-10-25 10:20:14 -04:00
Savanni D'Gerinel e96b8087e2 Add filenames to FileInfo and then set those filenames when creating the file 2023-10-25 10:17:17 -04:00
Savanni D'Gerinel 12df1f4b9b Create an UnorderedList HTML container 2023-10-25 09:47:27 -04:00
Savanni D'Gerinel 27e1691854 Set up a stylesheet for the OnePlus 8 2023-10-07 15:24:12 -04:00
Savanni D'Gerinel 2d2e82f41a Work out some basic styling for a phone screen 2023-10-06 23:59:02 -04:00
Savanni D'Gerinel 78c017ede7 Style the upload form 2023-10-06 23:51:41 -04:00
Savanni D'Gerinel cfdceff055 Refactor out the common card styling 2023-10-06 21:04:27 -04:00
Savanni D'Gerinel 07b4cb31ce Add reasonable desktop styling for the gallery 2023-10-06 20:36:27 -04:00
Savanni D'Gerinel b3f88a49aa Clean up the authentication page CSS
Center the authentication field in the authentication page. Provide some padding within the card, and arrange the form itself.
2023-10-06 19:05:24 -04:00
Savanni D'Gerinel 3f1316b3dd Serve the CSS file 2023-10-06 19:04:15 -04:00
Savanni D'Gerinel e657320b28 Thoroughly lint the file-service 2023-10-05 12:57:35 -04:00
Savanni D'Gerinel f9974e79a7 Set a maximum upload to 15MB 2023-10-05 00:08:27 -04:00
Savanni D'Gerinel 4200432e1f Make sure to compress the tar files when bundling for distribution 2023-10-05 00:07:55 -04:00
Savanni D'Gerinel d4a5e0f55d Serve the original file with the main path instead of the thumbnail 2023-10-04 15:22:43 -04:00
Savanni D'Gerinel 1d89254413 Set up the file service packaging script
Improve the dist script
2023-10-04 15:22:43 -04:00
Savanni D'Gerinel 2f6be84a43 Remove dead comments 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel f7403b43a3 Remove a legacy file 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel 2e7e159325 Remove an excess comment 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel 1e11069282 Remove old placeholder directories 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel c38d680e57 Handle file uploads with a validated session 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel 9bb32a378c Validate the session token with file uploads
File uploads now check the session token before continuing.

Resolves: https://www.pivotaltracker.com/story/show/186174680
2023-10-03 19:48:44 -04:00
Savanni D'Gerinel b3bfa84691 Validate the session token
A previous commit added authentication token checks. Auth tokens are replaced with session tokens, which can (and should) expire. This commit validates sessions, which now allows access to gated operations.
2023-10-03 19:48:44 -04:00
Savanni D'Gerinel f53c7200e6 Add a CLI application for user management 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel 491c80b42b Split out a support library 2023-10-03 19:48:44 -04:00
Savanni D'Gerinel 5e4db0032b Add session checks 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 4a7d741224 Add the ability to create and list users 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 6aedff8cda Create the initial database migration 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 535ea6cd9d Finish the auth handler and create app auth stubs 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel da8281636a Set up authentication routes 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel b448ab7656 Complete upload 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 75a90bbdff Set up temperory working directories 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 94aa67a156 Correctly set up file ids from list_files 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel ee5f4646df Refactor PathResolver so it cannot fail 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 561ec70a65 Remove old test files 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 14f0a74af8 Lots more refactoring :( 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 68b62464f0 Clean up the filehandle logic 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel da6bf3bfea Add cool_asserts 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 3e87e13526 Provide a unified interface for the File and Thumbnail 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 88938e44c8 Load file by ID 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 89a1aa7ee5 Get thumbnail creation working again 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 22e25256a5 Add some tests to verify that a file can be added to the system
Still gutting a lot of the old code, but this MR focuses more on ensuring that a file can be added and that the metadata gets saved.
2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 9787ed3e67 Add some testing for the PathResolver 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 396f6e3bcf Start ripping out lots of infrastructure
Much of the infrastructure is old and seems to be based on some assumptions about how Iron handled multipart posts. I don't understand how much of this works, so I'm slowly ripping parts out and rebuilding how the separation of concerns works.
2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 8521db333b Set up the delete route
Sets up the delete route, including post-delete redirect back to the root.
Also adds logging.

Delete does not actually delete things yet.
2023-10-03 19:48:43 -04:00
Savanni D'Gerinel 4a7b23544e Refactor file and thumbnail serving to common code 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel a06c9fae25 Attempt to add etag caching 2023-10-03 19:48:43 -04:00
Savanni D'Gerinel f05e0a15f1 Render thumbnails 2023-10-03 19:48:43 -04:00