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
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
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
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
f1af4314b5
Fix typo
2023-02-18 10:51:36 +00:00
1ff831f80d
Initial import
2023-02-18 09:49:05 +00:00