Commit Graph

1624 Commits (master)

Author SHA1 Message Date
voussoir 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
voussoir f3c8a8da3d Add flac to common.MIMETYPES. 2023-09-13 19:34:09 -07:00
voussoir 2a475ffb03 Add git.voussoir.net mirror. 2023-09-11 21:19:00 -07:00
voussoir a68f76176f Move themes into one file, set by class on html element. 2023-07-22 17:32:39 -07:00
voussoir 1d8ea14dd2 Match common.js. 2023-07-22 17:21:25 -07:00
voussoir e1c47e8bf6 Minor decorator fix. 2023-06-25 21:13:52 -07:00
voussoir 3c505e1244 Default _init_sql argument create=False. 2023-06-25 00:05:15 -07:00
voussoir ef668c5d3b Add endpoint /batch/photos/generate_thumbnail. 2023-06-25 00:02:20 -07:00
voussoir 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
voussoir ec8644dded Improve video thumbnailer by skipping early black frames. 2023-06-25 00:00:51 -07:00
voussoir 19a0322901 Convert all thumbnails to srgb. 2023-06-24 23:59:26 -07:00
voussoir 22702342bc Fix trailing comma in constants.DB_INIT. 2023-02-25 14:16:05 -08:00
voussoir ce30077013 First attempt at online permissions. 2023-02-04 13:49:42 -08:00
voussoir e78a667ee3 Move the session into requests.session for universal access. 2023-02-01 22:04:44 -08:00
voussoir d16fcd7c48 Remove specificity preference, let tags of the same branch coexist. 2023-01-27 20:45:58 -08:00
voussoir 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
voussoir d5ac0b1717 Minor linting. 2022-11-19 22:43:44 -08:00
voussoir e9c5203f11 Fix use of mebibyte. 2022-11-19 22:43:01 -08:00
voussoir cfffed81b4 Fix use of timetools. 2022-11-19 22:42:50 -08:00
voussoir db37519f63 Small css tweaks. 2022-11-19 22:42:35 -08:00
voussoir c9d2806a4f Remove outdated user_id_characters. 2022-11-18 22:01:13 -08:00
voussoir 52c7df1061 Remove unnecessary fstring. 2022-11-18 22:01:01 -08:00
voussoir d13443d70e Match bytestring typo fix. 2022-11-13 19:12:50 -08:00
voussoir e3ab2e52e9 Preserve search query, bindings, and explain. 2022-11-13 19:01:41 -08:00
voussoir cc3cf58f46 Show cached counts in admin statistics. 2022-11-12 18:40:09 -08:00
voussoir e3a0b3898f Move /file/ urls to /photo/id/download. 2022-11-11 21:35:29 -08:00
voussoir 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
voussoir bdce60fce6 Add statistics with object counts to admin page. 2022-11-11 19:26:36 -08:00
voussoir ca2a4ec365 Use boolean in sql declaration, which is an alias for int anyway. 2022-11-11 19:17:43 -08:00
voussoir 1477a7668d Add theme_hotdogstand.css. 2022-11-11 15:31:33 -08:00
voussoir 226e39419d Add class navigation_link to homepage and header links. 2022-11-11 15:30:23 -08:00
voussoir 47f71e0b7e Prefer grid gap instead of margin. 2022-11-11 15:30:02 -08:00
voussoir 4bde199dbc Use progressbar for hashing of large files. 2022-11-11 15:29:45 -08:00
voussoir a2ad5ef930 Match voussoirkit common.css. 2022-11-11 15:29:33 -08:00
voussoir b99c594931 Add exceptions.GenerateIDFailed. 2022-11-11 15:29:22 -08:00
voussoir d1b0fb6aec Add Bookmark.atomify and /bookmarks.atom. 2022-11-11 11:41:24 -08:00
voussoir 732c13440e Use flasktools.atom_response. 2022-11-11 11:39:04 -08:00
voussoir e4b6e629c1 Add loading=lazy to album thumbnail img. 2022-11-10 19:41:36 -08:00
voussoir ad84cb28f2 Fix thumbnail_photo return None when photo no longer exists. 2022-11-10 19:39:38 -08:00
voussoir adad4da086 Remove to-do list items that have been completed. 2022-11-09 19:43:31 -08:00
voussoir ae28e3a0a6 Add link to /admin on homepage for localhost. 2022-11-09 19:42:46 -08:00
voussoir 1867d30d88 Add log.loud for search query explain. 2022-11-09 19:42:30 -08:00
voussoir 638dd67cef Let atomify take argument web_root. 2022-11-09 19:42:17 -08:00
voussoir e89d6fe10e Remove "UTC" from the isoformat since it already contains +0000. 2022-11-09 19:41:48 -08:00
voussoir fb2a5e9d56 Use user ids for author search instead of usernames. 2022-11-09 19:41:16 -08:00
voussoir 9fb45403df Fix jinja use of search kwargs dotdict. 2022-11-09 19:40:28 -08:00
voussoir 87e53f85b8 Use select_column. 2022-11-07 18:44:21 -08:00
voussoir 11706cc1c7 Add admin button to clear all login sessions. 2022-11-07 17:51:02 -08:00
voussoir ba99b43bc7 Let relocate photo accept the old filepath in place of photo id. 2022-11-06 22:58:56 -08:00
voussoir 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