51b2642be9
Let data_directory take an existing pathclass instance.
2020-09-27 10:45:58 -07:00
a2fc49b6e7
Let config.log_level None -> setLevel(NOTSET).
2020-09-27 10:45:07 -07:00
17f694cfed
Add theme-change links to homepage.
2020-09-27 10:37:13 -07:00
41353b2eb4
Move current default css into theme_turquoise. Always pick a theme.
2020-09-25 16:27:47 -07:00
f5d8898e14
Increase search limit to 1,000.
2020-09-24 14:28:38 -07:00
343ce508bf
Add search UI for yield_albums.
2020-09-24 14:26:51 -07:00
9a85714df7
Use pathclass.Path.makedirs.
2020-09-24 14:18:23 -07:00
28181428be
Synchronize Etiquette and YCDL.
2020-09-22 02:54:26 -07:00
18e1849fcf
Fix video_thumbnail not checking if probe failed before using it.
2020-09-20 18:31:55 -07:00
2accb5c961
Use pathclass.Path.open.
2020-09-20 18:31:31 -07:00
55e66c8656
Fix NameError during set_override_filename.
2020-09-20 13:43:02 -07:00
f8e03bed21
Replace usage of row[0] with (column,) tuple unpack.
2020-09-20 13:41:22 -07:00
fa57386908
Don't call p.get_tags until needed, and don't sort them.
2020-09-20 13:17:51 -07:00
f56da72881
Return more sets from backend, do sorting on frontend.
...
It's better semantically for these items coming out of the backend
to be sets. Sorted lists are only relevant to human consumption at the
frontend.
2020-09-20 13:16:52 -07:00
317fa3b51d
Call assert_not_deleted before every @transaction.
2020-09-20 12:46:52 -07:00
497abf26cd
Move circular dependency to end of file.
2020-09-20 12:46:38 -07:00
407770a80e
Replace handwritten closest() with native closest().
...
And such a beautiful docstring, too, as if no one had done it before.
2020-09-20 12:23:43 -07:00
169fd4945d
Fix drag-drop behavior when dropping onto root.
2020-09-20 12:20:36 -07:00
00bc7e6eac
Replace nested if with early return.
2020-09-20 12:15:01 -07:00
5c4c0a3034
Let jsonify.photo expect that tags are sets, not lists.
2020-09-20 12:06:10 -07:00
a8f5f858b7
Add abstractmethod to Groupable methods that write; dunder methods.
...
The read-only methods like get_* and has_* don't need to be overridden,
but for anything that writes I don't want to forget to override them
with feature decorators etc.
2020-09-20 12:04:49 -07:00
2a89cf33d3
Add has_tags=False suggestion to digest_directory docstring.
2020-09-20 11:43:18 -07:00
512470f73d
Add log statement for PDB.digest_directory.
2020-09-20 11:42:44 -07:00
1acd570467
Simplify log statement for Photo.rename_file.
2020-09-20 11:41:33 -07:00
718da6c5c3
Remove leftover attributes group_sql_index, group_getter.
2020-09-20 11:41:15 -07:00
b66464dc46
Add exceptions.DeletedObject and ObjectBase.assert_not_deleted.
2020-09-20 11:31:51 -07:00
85260144ef
Add attribute deleted to all objects, for held instances.
...
If an instance is being held in two places, and then one of them
calls delete(), the other can check deleted before doing anything with
the object.
2020-09-20 11:16:07 -07:00
f70349470f
Don't gzip large responses.
2020-09-20 01:06:23 -07:00
7412ef5162
Let parse_unit_string try int before float.
2020-09-19 04:01:49 -07:00
865c3011e5
Some linting.
2020-09-19 03:59:37 -07:00
0df556da3f
Some more stricter type checks and exceptions.
2020-09-19 03:52:42 -07:00
2db1f12bfb
Add constants.USER_ID_CHARACTERS and show that when raising invalid.
2020-09-19 03:51:55 -07:00
b223691107
Add helpers.collapse_whitespace.
2020-09-19 03:50:55 -07:00
1013fb81c1
Call assert_no_such_user before assert_valid_password.
2020-09-19 03:35:26 -07:00
7b7015125e
Add period to all exception messages.
2020-09-19 03:32:16 -07:00
06c811d858
Move all get_user_id_or_none calls to "these might raise" portions.
2020-09-19 03:24:02 -07:00
adb1d0ef39
Replace all double blank lines with single, improve hash headers.
...
There was always some semblance that two blank lines has some kind of
meaning or structure that's different from single blank lines, but
in reality it was mostly arbitrary and I can't stand to look at it
any more.
2020-09-19 03:13:23 -07:00
a7cc6d2383
Rename all caught exception variables to "exc", not "e".
2020-09-19 03:08:45 -07:00
7f410f1da5
Remove leftover /apitest endpoint.
2020-09-19 03:02:14 -07:00
2ac6633f55
Remove leftover print statement.
2020-09-18 21:36:09 -07:00
79578823f5
Fix jinja variable not defined.
2020-09-18 21:28:21 -07:00
3fb198f994
Add explicit @media queries for wide mode, not just default to override.
...
Any properties that are different in wide/narrow mode should be defined
in the correct media query. I got tired of having wide mode be the
default and then narrow mode having to unset/initial all the attributes
that aren't relevant to narrow.
2020-09-18 21:12:28 -07:00
83d22d2736
Remove unnecessary declarations of grid-area: left, right.
2020-09-18 21:01:38 -07:00
8da18ba502
Add --narrow, --wide to common.css, is_wide_mode to common.js.
2020-09-18 20:57:35 -07:00
9a29048ccf
Split sticky_side functionality into _side, _bottom.
...
This makes the role of each css definition more clear, and could allow
for cases where the side is sticky in wide mode but not sticky in
narrow mode.
2020-09-18 20:37:40 -07:00
854f210a4f
Alphabetize Photo.set_searchhidden.
2020-09-18 13:11:56 -07:00
4b5a52abb4
Take advantage of the tag_exports cache for get_all_tag_names.
2020-09-17 21:22:54 -07:00
4bcfd9958a
Split get_user into _by_id, _by_username.
2020-09-17 21:11:42 -07:00
22d16693f3
Remove path parameter from get_album, remove get_album_by_id.
...
First of all, I realized the return statement was using the
outdated singular name of the method. But anyway, I don't like the
idea that this method would sometimes return a single album by id
or a list of albums by path. If you want to get by path, use
get_albums_by_path explicitly.
2020-09-17 21:09:10 -07:00
838982b6c3
Let login take username.
...
This cuts back on unnecessary sql selects.
2020-09-17 21:02:55 -07:00