Commit graph

1624 commits

Author SHA1 Message Date
da5c1ee008 Let PhotoTags have timestamps; use more js cards.
Tags on photos can now have timestamps, so that if you are tagging
a video or audio you can reference a specific moment with your tag.
In the interface, this means the tag is clickable and seeks to that
point in the media.

For the user interface, I am finding I need to move away from jinja
for the object cards because it is too much hassle to keep the code
for jinja-based cards for static rendering and the js-based cards
for dynamic rendering in sync. Rather than write the same cards in
two languages I can dump the JSON into the script and render the cards
on load. Which makes the static HTML worse but that's what the JSON
API is for anyway.
2023-09-17 14:07:22 -07:00
f3c8a8da3d Add flac to common.MIMETYPES. 2023-09-13 19:34:09 -07:00
2a475ffb03 Add git.voussoir.net mirror. 2023-09-11 21:19:00 -07:00
a68f76176f Move themes into one file, set by class on html element. 2023-07-22 17:32:39 -07:00
1d8ea14dd2 Match common.js. 2023-07-22 17:21:25 -07:00
e1c47e8bf6 Minor decorator fix. 2023-06-25 21:13:52 -07:00
3c505e1244 Default _init_sql argument create=False. 2023-06-25 00:05:15 -07:00
ef668c5d3b Add endpoint /batch/photos/generate_thumbnail. 2023-06-25 00:02:20 -07:00
b384f2895a Bring back target=_blank to photo links.
After living without it for a while, I prefer with.
2023-06-25 00:01:15 -07:00
ec8644dded Improve video thumbnailer by skipping early black frames. 2023-06-25 00:00:51 -07:00
19a0322901 Convert all thumbnails to srgb. 2023-06-24 23:59:26 -07:00
22702342bc Fix trailing comma in constants.DB_INIT. 2023-02-25 14:16:05 -08:00
ce30077013 First attempt at online permissions. 2023-02-04 13:49:42 -08:00
e78a667ee3 Move the session into requests.session for universal access. 2023-02-01 22:04:44 -08:00
d16fcd7c48 Remove specificity preference, let tags of the same branch coexist. 2023-01-27 20:45:58 -08:00
e4f686c86f Move thumbnail blobs into the database.
I've moved the thumbnails around many times over this project
and hopefully it doesn't happen too many more. Once the database has
tens of thousands of items, the thumbnails start to become the biggest
headache on the disk. Backing up, restoring, and sharding files per
directory are slower and more effortful with separate files. In the db
means the db is a larger file, but this is disk space that was already
getting used anyway. Now it's simpler and has atomic transactions.
2023-01-27 17:34:32 -08:00
d5ac0b1717 Minor linting. 2022-11-19 22:43:44 -08:00
e9c5203f11 Fix use of mebibyte. 2022-11-19 22:43:01 -08:00
cfffed81b4 Fix use of timetools. 2022-11-19 22:42:50 -08:00
db37519f63 Small css tweaks. 2022-11-19 22:42:35 -08:00
c9d2806a4f Remove outdated user_id_characters. 2022-11-18 22:01:13 -08:00
52c7df1061 Remove unnecessary fstring. 2022-11-18 22:01:01 -08:00
d13443d70e Match bytestring typo fix. 2022-11-13 19:12:50 -08:00
e3ab2e52e9 Preserve search query, bindings, and explain. 2022-11-13 19:01:41 -08:00
cc3cf58f46 Show cached counts in admin statistics. 2022-11-12 18:40:09 -08:00
e3a0b3898f Move /file/ urls to /photo/id/download. 2022-11-11 21:35:29 -08:00
25b0f4106f Remove target=_blank from photo cards.
This will take some getting used to but nothing else in the system
uses target blank.
2022-11-11 20:04:57 -08:00
bdce60fce6 Add statistics with object counts to admin page. 2022-11-11 19:26:36 -08:00
ca2a4ec365 Use boolean in sql declaration, which is an alias for int anyway. 2022-11-11 19:17:43 -08:00
1477a7668d Add theme_hotdogstand.css. 2022-11-11 15:31:33 -08:00
226e39419d Add class navigation_link to homepage and header links. 2022-11-11 15:30:23 -08:00
47f71e0b7e Prefer grid gap instead of margin. 2022-11-11 15:30:02 -08:00
4bde199dbc Use progressbar for hashing of large files. 2022-11-11 15:29:45 -08:00
a2ad5ef930 Match voussoirkit common.css. 2022-11-11 15:29:33 -08:00
b99c594931 Add exceptions.GenerateIDFailed. 2022-11-11 15:29:22 -08:00
d1b0fb6aec Add Bookmark.atomify and /bookmarks.atom. 2022-11-11 11:41:24 -08:00
732c13440e Use flasktools.atom_response. 2022-11-11 11:39:04 -08:00
e4b6e629c1 Add loading=lazy to album thumbnail img. 2022-11-10 19:41:36 -08:00
ad84cb28f2 Fix thumbnail_photo return None when photo no longer exists. 2022-11-10 19:39:38 -08:00
adad4da086 Remove to-do list items that have been completed. 2022-11-09 19:43:31 -08:00
ae28e3a0a6 Add link to /admin on homepage for localhost. 2022-11-09 19:42:46 -08:00
1867d30d88 Add log.loud for search query explain. 2022-11-09 19:42:30 -08:00
638dd67cef Let atomify take argument web_root. 2022-11-09 19:42:17 -08:00
e89d6fe10e Remove "UTC" from the isoformat since it already contains +0000. 2022-11-09 19:41:48 -08:00
fb2a5e9d56 Use user ids for author search instead of usernames. 2022-11-09 19:41:16 -08:00
9fb45403df Fix jinja use of search kwargs dotdict. 2022-11-09 19:40:28 -08:00
87e53f85b8 Use select_column. 2022-11-07 18:44:21 -08:00
11706cc1c7 Add admin button to clear all login sessions. 2022-11-07 17:51:02 -08:00
ba99b43bc7 Let relocate photo accept the old filepath in place of photo id. 2022-11-06 22:58:56 -08:00
b64901105c Move search to an entire class of its own.
The initial motivation for this was to make the "more_after_limit"
feature, which would help the UI to not show a next page button when
the number of results was exactly equal to the limit.

However, in order to surface this more_after_limit status using only
the old search generator, it would have to be a special yield at the
end. I was getting tired of the special yields like give_back_params
at the beginning and warning_bag at the end, and this would be worse.

There is a lot of sideband information about the search that is now
more easily accessible when the search is its own object.
2022-11-06 22:58:36 -08:00