37bff5c427
Look for renamed files (lost&found) during digest_directory.
2020-09-15 14:57:05 -07:00
9578dc4d67
Add column for photo's st_dev, st_ino to facilitate lost&found.
2020-09-15 14:56:45 -07:00
5f9627da61
Remove all cur, just use photodb.sql_execute.
2020-09-15 14:54:44 -07:00
2d5fb19ce7
Remove automatic BEGIN because it breaks pragma foreign_keys.
...
It turns out you can't adjust foreign_keys while a transaction is active,
so the upgraders that need to disable and re-enable them were not
working right and encountering foreign key violations.
2020-09-15 14:54:21 -07:00
50ecc4c1c1
Let digest_directory act as a generator, yielding photos & albums.
2020-09-15 13:48:06 -07:00
37c784982a
Add PDB.clear_all_caches.
2020-09-15 13:44:49 -07:00
5bc3fdd08e
Move purge_empty_albums to PDBAlbumMixin.
2020-09-15 13:44:28 -07:00
adbdb3bdb4
Show number of associated directories in alt text.
2020-09-14 20:26:46 -07:00
9102b37d5a
Let slate.css use black text on buttons.
2020-09-14 20:25:51 -07:00
5b4cc5bf9c
Log the exception before rolling back.
2020-09-14 20:25:24 -07:00
5d40622b76
Add log for Photo.relocate.
2020-09-14 19:38:29 -07:00
be0747fd8c
Use path.absolute_path when logging add_associated_directory.
2020-09-14 19:38:13 -07:00
8279a1871b
Return set instead of list from get_parents, get_tags.
2020-09-14 18:34:14 -07:00
dd0ee7a72a
Use more const.
2020-09-14 18:33:53 -07:00
7fecd65b33
Remove failed experiment.
2020-09-14 17:30:40 -07:00
733776ee88
Failed experiment: clientside updates of tag actions.
...
I'm committing this so I can reference it later if I decide to try
again, but for the time being I'm going to immediately revert it.
2020-09-14 17:21:13 -07:00
0f039c5c48
Add remove_specific_synonym_form.
2020-09-14 17:19:25 -07:00
5501f7279b
Don't use last-of-type to select tag object.
...
It turns out that last-of-type only considers a single tag type,
it doesn't select last element of class if it has a different tag
than the other classed elements.
2020-09-14 17:19:00 -07:00
a32caafb8b
Remove leftover print statements.
2020-09-14 16:56:55 -07:00
8659b55103
Use className instead of classList here.
2020-09-14 12:01:33 -07:00
1442e16eb7
Add specific_tag variable into the javascript.
2020-09-14 05:55:41 -07:00
c532b711b1
During init_all, launch individuals as setTimeouts.
...
I'm having some performance issues with button_with_confirm on /tags.
This won't magically make that faster but I'm trying to stop the main
thread from dragging at least.
2020-09-14 05:54:47 -07:00
b98ed27291
Change url parameter /tags?synonyms -> include_synonyms.
...
I keep forgetting that the url parameter name isn't the same as the
python variable name.
2020-09-14 05:52:00 -07:00
1f7ffbb283
Fix old reference to incorrect variable name tagname.
2020-09-14 05:50:10 -07:00
ff312d1e16
Let /tags pull from cached easybake export.
2020-09-14 05:49:49 -07:00
f3bceb4688
Remove get_cached_flat_dict, add get_cached_tag_export.
2020-09-14 05:49:24 -07:00
cf64c79809
When grouping tags, update tagged photos to prefer child.
...
I am also considering applying the opposite effect when ungrouping.
Should a photo with A.B get A when A and B are ungrouped? There are
some cases where the answer is yes, and others no, depending on the
reason you're ungrouping the tags. Whereas this change is non-
controversial and simply enforces the existing standard of adding
more specific tags to a photo.
2020-09-14 05:46:43 -07:00
f1d17350a7
Add Photo.remove_tags.
2020-09-14 05:38:20 -07:00
85f24dd1f5
Let Photo.remove_tag only remove exact tag, not children.
...
I wrote this because I felt it would be a useful shorthand, as a way
of nuking all tags of a subtree off a photo, but it's too easy
to cause collateral damage when composing remove_tag with other
functions. So, when you remove tags from a photo, you'll have to be
more specific.
2020-09-14 05:37:47 -07:00
2dc1603d5e
Use className instead of classList for initialization.
2020-09-14 05:19:10 -07:00
5461d49cb4
Strip more whitespace from tag_object macro output.
2020-09-14 05:17:44 -07:00
54add8ad61
Add search parameter yield_albums.
...
The exact details of this feature are still experimental, but I think
the concept is sound enough to make it an official parameter.
2020-09-14 05:16:36 -07:00
cc34c4d189
Pull out init_* function innards to separate one-item functions.
2020-09-12 20:34:59 -07:00
329c6dd27b
Trim whitespace from html_to_element input.
2020-09-12 20:33:46 -07:00
188095c30b
Remove unnecessary intermediate variable syn_lines.
2020-09-12 17:33:45 -07:00
c11fb12069
Sort tags as they are added to photo.
2020-09-12 16:52:46 -07:00
be7decf330
Rearrange confirm_onclick because they have return statements now.
...
Now that data-onclick begins with a return statement, this code was
not running.
2020-09-12 14:33:15 -07:00
2fad1c58fd
Use className instead of classList, as input may have spaces.
2020-09-12 13:14:55 -07:00
5dcccae646
Fix add_children all(bail) causing short-circuit.
2020-09-12 13:14:40 -07:00
bbadd15129
Put the callbacks next to their respective form functions.
2020-09-12 11:59:03 -07:00
eccb260a2b
Pull onclicks into separate _form functions.
2020-09-12 11:48:08 -07:00
a51d22bf71
Rename argument specific_tag -> tagname like the other endpoints.
2020-09-12 11:43:53 -07:00
42d4b7fafb
Add give_token, catch_etiquette_exception to all endpoints at once.
2020-09-12 11:43:25 -07:00
f7e5b639e3
Remove *args from common.render_template. Just template_name.
2020-09-12 10:13:24 -07:00
d00d7b4acf
Refocus add_tag_box after removing a tag.
2020-09-12 01:19:16 -07:00
d41bad63e7
Move reset of cached_tag_flat_dict out of GroupableMixin into Tag.
...
That should not have been there!
Needed to add the BAIL sentinel so that Tag methods would only
reset the cache if the internal method actually did made any changes.
2020-09-12 01:19:03 -07:00
74445d0a1f
Add internal _add_child so that plural doesn't call transacted.
...
add_children was calling add_child in a loop. Since this is a parent
class, that call would actually call the subclasses' add_child method,
which has a transaction decorator, and create unnecessary transactions.
2020-09-12 01:00:39 -07:00
21921dc8fc
Rename cached_frozen_children -> cached_tag_flat_dict.
2020-09-12 00:56:32 -07:00
b59c2700db
Update _lift_children docstring.
2020-09-12 00:53:12 -07:00
1a53af8821
Replace horrible flat_dict algorithm with actual recursion.
2020-09-12 00:21:37 -07:00