feat(FastAPI): added /requests (get) route
Notes
There is a feature request to allow users to delete their own requests: #20 (closed). The GET /requests route here has been modified to be accessible by all authenticated users, but only showing requests and request actions which they are able to perform (for non-TUs: Close).
This commit implements 1/2 of #20 (closed). The other 1/2 will need to be implemented when /requests/{id}/close
is implemented.
Closes #14 (closed) for FastAPI.
Main commit
feat(FastAPI): added /requests (get) route
Introduces `aurweb.defaults` and `aurweb.filters`.
`aurweb.filters` is a location developers can put their additional
Jinja2 filters and/or functions. We should slowly move all of our
filters over here, where it makes sense.
`aurweb.defaults` is a new module which hosts some default constants
and utility functions, starting with offsets (O) and per page values
(PP).
As far as the new GET /requests is concerned, we match up here to
PHP's implementation, with some minor improvements:
Improvements:
* PP on this page is now configurable: 50 (default), 100, or 250.
* Example: `https://localhost:8444/requests?PP=250`
Modifications:
* The pagination is a bit different, but serves the exact same purpose.
* "Last" no longer goes to an empty page.
* Closes: https://gitlab.archlinux.org/archlinux/aurweb/-/issues/14
Signed-off-by: Kevin Morris <kevr@0cost.org>
Edited by Kevin Morris