Commit Graph

510 Commits (9102b37d5a7bd740b8e0d47050bc900f60f05ec6)

Author SHA1 Message Date
voussoir 9102b37d5a Let slate.css use black text on buttons. 2020-09-14 20:25:51 -07:00
voussoir dd0ee7a72a Use more const. 2020-09-14 18:33:53 -07:00
voussoir 7fecd65b33 Remove failed experiment. 2020-09-14 17:30:40 -07:00
voussoir 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
voussoir 0f039c5c48 Add remove_specific_synonym_form. 2020-09-14 17:19:25 -07:00
voussoir 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
voussoir 8659b55103 Use className instead of classList here. 2020-09-14 12:01:33 -07:00
voussoir 1442e16eb7 Add specific_tag variable into the javascript. 2020-09-14 05:55:41 -07:00
voussoir 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
voussoir 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
voussoir ff312d1e16 Let /tags pull from cached easybake export. 2020-09-14 05:49:49 -07:00
voussoir 2dc1603d5e Use className instead of classList for initialization. 2020-09-14 05:19:10 -07:00
voussoir 5461d49cb4 Strip more whitespace from tag_object macro output. 2020-09-14 05:17:44 -07:00
voussoir cc34c4d189 Pull out init_* function innards to separate one-item functions. 2020-09-12 20:34:59 -07:00
voussoir 329c6dd27b Trim whitespace from html_to_element input. 2020-09-12 20:33:46 -07:00
voussoir c11fb12069 Sort tags as they are added to photo. 2020-09-12 16:52:46 -07:00
voussoir 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
voussoir 2fad1c58fd Use className instead of classList, as input may have spaces. 2020-09-12 13:14:55 -07:00
voussoir bbadd15129 Put the callbacks next to their respective form functions. 2020-09-12 11:59:03 -07:00
voussoir eccb260a2b Pull onclicks into separate _form functions. 2020-09-12 11:48:08 -07:00
voussoir a51d22bf71 Rename argument specific_tag -> tagname like the other endpoints. 2020-09-12 11:43:53 -07:00
voussoir 42d4b7fafb Add give_token, catch_etiquette_exception to all endpoints at once. 2020-09-12 11:43:25 -07:00
voussoir f7e5b639e3 Remove *args from common.render_template. Just template_name. 2020-09-12 10:13:24 -07:00
voussoir d00d7b4acf Refocus add_tag_box after removing a tag. 2020-09-12 01:19:16 -07:00
voussoir ee28779138 Pass separate tag_count into tags.html to prevent double-counting.
Foolishly, I was checking the length of the outputted easybake format,
which included lines for synonyms and multi-parent tags that shouldn't
be part of the tag count.
2020-09-11 23:52:23 -07:00
voussoir f640268793 Gzip responses. 2020-09-11 23:12:37 -07:00
voussoir b0dcc6d3c6 Separately count photo results to fix included albums counting.
I'm currently running an experiment where albums are also included in
search results, but they don't cost you any of your limit parameter.
So the len(results) was often bigger than limit and tricking this
paginator into thinking we needed a next page when really we didn't.
This workaround can be undone when I decide how to make the album
results more official.
2020-09-11 23:12:23 -07:00
voussoir 30c9efc043 Rename generate_thumbnail_for_video -> _form. 2020-09-11 17:06:50 -07:00
voussoir 08f6c21286 Add return to these onchange and ondrag attributes.
I skipped them during the commit where I added return to all onclicks
because I figure I won't be wrapping these kinds of attributes.
But I feel like it's better to be consistent and you never know when
it might happen.
2020-09-11 16:03:15 -07:00
voussoir ad26f09ee0 On photo.html, add and remove tag lis dynamically.
Instead of requiring a page refresh to see the new tags. They
just won't be sorted.
Slight bummer, the datalist dropdown pretty much obscures the
whole thing anyway.
2020-09-11 15:57:06 -07:00
voussoir 892390c77a Rewrite entry_with_history hook and use keydown instead of keyup. 2020-09-10 08:21:20 -07:00
voussoir 8aa2b8dd3c Rewrite photo_clipboard actions to take ids instead of cards.
Following the previous commit about the checkbox on the /photo page,
this fixes all of the code assuming that we're dealing with photo_card
divs, the majority of which was doing nothing but accessing the id.
2020-09-10 08:20:55 -07:00
voussoir 6184476485 Let the specific_tag have class=tag_object so it looks the part. 2020-09-10 08:18:20 -07:00
voussoir 4b76bc0628 Don't access response.data.tagname until we know it's not an error.
This wasn't causing any issues, because it was just setting itself
to undefined, but I realized I should move it.
2020-09-10 06:48:56 -07:00
voussoir 2d01297729 Adjust photo_card_searchhidden to 2px dotted border. 2020-09-09 23:55:46 -07:00
voussoir 8d2af3255b Add endpoints set_searchhidden, unset_searchhidden and checkbox. 2020-09-09 20:51:15 -07:00
voussoir 4569e7848c Let apply_check_all search for the checkboxes, not the photo cards. 2020-09-09 20:09:41 -07:00
voussoir 7762a8ff07 Rename post_photo_searchhidden -> post_batch_photos_searchidden. 2020-09-09 19:27:22 -07:00
voussoir 193c8645ed Save the user's CSS theme in a cookie so it stays across pages. 2020-09-09 19:26:11 -07:00
voussoir 804afe912f Add css class .photo_card_searchhidden. 2020-09-09 19:24:43 -07:00
voussoir cb881ed640 Add httponly to session cookie. 2020-09-09 19:19:35 -07:00
voussoir 2ba4a3bb91 Add constant RESPONSE_TYPES for use in isinstance checks. 2020-09-09 18:53:51 -07:00
voussoir 049d620789 Convert cookies to werkzeug MultiDict instead of plain dict.
I discovered that werkzeug stores cookies in lists, with its .get
returning only the first item of the list. By converting the cookies
to a plain dict, I was breaking that functionality of cookies.get.
So, using werkzeug's MultiDict is the correct choice.
2020-09-09 18:53:26 -07:00
voussoir 82758ed336 Rename color_3d_shadow -> color_shadow. 2020-09-09 15:57:53 -07:00
voussoir f5eb2467dc Add synonyms div to specific tag page. 2020-09-09 15:52:09 -07:00
voussoir 97bb9da8a6 Use (+) (x) links on /tags page, link main tag object to info. 2020-09-09 15:51:57 -07:00
voussoir 270dcadf4e Let tag_object also link to mays, forbids. 2020-09-09 14:08:06 -07:00
voussoir c425d55331 Use decorators in jinja_filters to automatically register them. 2020-09-09 13:23:16 -07:00
voussoir 199a4af658 Remove unnecessary intermediate variable view. 2020-09-09 13:15:21 -07:00
voussoir 71e87f83f7 Use class=hidden instead of inline style display:none. 2020-09-09 13:13:38 -07:00