Commit Graph

103 Commits

Author SHA1 Message Date
70191db656 Rename PoorBooru => PoorBooru::Backend 2023-03-05 20:03:20 +00:00
db26c5fcc9 migrate.pl: ignore dbix_migration table 2023-03-05 19:57:20 +00:00
6dfabdf29f backend: add / 2023-03-05 17:23:13 +00:00
302ec269d5 Add a barebones SeaweedFS client library 2023-03-05 17:23:13 +00:00
c9ffa62be8 api: quiet a warning about tag_id not being numeric
Only add one of tag_id or name to the search query, depending on whether
tag_id_or_name is numeric or not.

While at it, replace a {} with undef in search().
2023-03-05 17:23:13 +00:00
04580aca72 api: add /random/media 2023-03-05 17:23:13 +00:00
0c4ab53586 api: add /media and /media/:media_id 2023-03-05 17:23:13 +00:00
8655e5fa04 db: use a binary seaweedfs_fid 2023-03-05 17:23:13 +00:00
6ecf98f917 api: add /random/tag 2023-03-04 21:58:18 +00:00
7ccbc3af12 api: initial migration 2023-03-04 21:58:18 +00:00
13a6d287af db: rework schema and infrastructure 2023-03-04 21:31:42 +00:00
fbcaea8bfc Remove Dancer2 files 2023-03-04 21:31:42 +00:00
ff22b71fa1 backend: use tag name instead of ID 2023-02-22 21:10:01 +00:00
cb361c21cd Update TODO 2023-02-22 17:07:57 +00:00
5a0b18feb8 Replace some concatenations with interpolation 2023-02-21 19:55:12 +00:00
91d73cd314 backend: implement /random/media and /random/tag 2023-02-21 19:55:12 +00:00
88b5354529 api: rename /random -> /random/media and implement /random/tag 2023-02-21 19:30:23 +00:00
ad6a6cb9c0 backend: implement /random 2023-02-19 20:22:30 +00:00
c55bdd6ea7 backend: rename /view -> /media 2023-02-19 20:22:29 +00:00
b09a5e7fe1 backend: add partial support for viewing media 2023-02-19 20:22:29 +00:00
f63398e54f frontend: change h1 sizing 2023-02-19 20:22:22 +00:00
499510bd21 frontend: use width in .viewport
Also add .viewport to main div.
2023-02-19 20:22:22 +00:00
922fe8c2be Add TODO file 2023-02-19 19:50:45 +00:00
137ad87699 frontend: remove needless flex-i-fullsize 2023-02-19 18:31:08 +00:00
82aeb0c536 backend: handle paged /tag/:tag_id_or_name from API 2023-02-19 18:17:59 +00:00
065d5a9d88 api, backend: whitespace and declarations shuffling 2023-02-19 18:14:04 +00:00
06a939bcd1 api, backend: improve validations
Introduce a sub for validating page number.

Introduce a sub for validating tag name and allow non-ASCII characters.
2023-02-19 18:09:44 +00:00
3011d47ec8 api: fix VERSION 2023-02-19 17:56:10 +00:00
ec026de8b5 frontend: layout and css improvements
Make title and pager part of the main layout.

Adjust sizes and vertical rhythm all over the place.

Add flex to the main section, again keeping the header and footer at top
and bottom.

Rename main navigation classes.

Remove unused index.tt template.
2023-02-19 17:01:55 +00:00
978f979d4d api: rewrite /tag/:tag_id_or_name
Commit 3a41ea6d0b allows for using a
SELECT WHERE ... OR ... instead of two SELECT WHERE.

Page the media results.
2023-02-19 16:17:39 +00:00
a0d3601c57 backend: refactor communication with api 2023-02-19 15:50:06 +00:00
7d827212c1 api, backend: replace '+( { ... } )' -> '+{ ... }'
api, backend: whitespace: '+( {' -> '+({'
2023-02-19 15:15:57 +00:00
861593d26d api: inline ROUTES 2023-02-19 12:17:51 +00:00
1ac5d07821 db: revert deb082f46c
Change media search options to sort by media_id to compensate.
2023-02-19 11:28:13 +00:00
f2ee7e3db8 backend: rename gallery_nav_pager -> nav_pager 2023-02-19 11:27:45 +00:00
5b8cbd37e5 backend: handle paged /tags from API 2023-02-19 11:27:45 +00:00
7e3fdadfc6 api: page /tags results
While at it, move /media search opts to a variable too.
2023-02-19 10:42:15 +00:00
401202037f api: allow creating multiple tags in one call 2023-02-19 10:28:22 +00:00
af1cac6d3f api: use a quoted regex for media_id validation 2023-02-19 09:55:28 +00:00
3a41ea6d0b api: rename /tags/new to just /tags and validate name 2023-02-19 09:54:52 +00:00
420fc9ce97 api: use more compact code in /tags 2023-02-19 09:04:00 +00:00
6eae4e0fe4 backend: implement main section 2023-02-18 19:10:33 +00:00
a7f2381d81 api: provide a better paging object 2023-02-18 19:01:35 +00:00
216422f50a api: always return a list of media_ids 2023-02-18 17:14:40 +00:00
0876464b5b api: implement /media endpoint
Returns a paged collection of all media entries. Will be used for the
main page in a follow-up commit.
2023-02-18 17:06:00 +00:00
deb082f46c db: add upload_date field to media table 2023-02-18 17:06:00 +00:00
63368ba06e api: use 'constant' for constants 2023-02-18 16:10:45 +00:00
bab1140053 api: reorder routes 2023-02-18 15:33:28 +00:00
46cb5c19ec api: return paths instead of URIs 2023-02-18 15:05:52 +00:00
ead5728a99 Implement /tags and /tag/id endpoints 2023-02-18 14:47:32 +00:00