329c6dd27b
Trim whitespace from html_to_element input.
2020-09-12 20:33:46 -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
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
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
f640268793
Gzip responses.
2020-09-11 23:12:37 -07:00
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
30c9efc043
Rename generate_thumbnail_for_video -> _form.
2020-09-11 17:06:50 -07:00
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
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
892390c77a
Rewrite entry_with_history hook and use keydown instead of keyup.
2020-09-10 08:21:20 -07:00
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
6184476485
Let the specific_tag have class=tag_object so it looks the part.
2020-09-10 08:18:20 -07:00
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
2d01297729
Adjust photo_card_searchhidden to 2px dotted border.
2020-09-09 23:55:46 -07:00
8d2af3255b
Add endpoints set_searchhidden, unset_searchhidden and checkbox.
2020-09-09 20:51:15 -07:00
4569e7848c
Let apply_check_all search for the checkboxes, not the photo cards.
2020-09-09 20:09:41 -07:00
7762a8ff07
Rename post_photo_searchhidden -> post_batch_photos_searchidden.
2020-09-09 19:27:22 -07:00
193c8645ed
Save the user's CSS theme in a cookie so it stays across pages.
2020-09-09 19:26:11 -07:00
804afe912f
Add css class .photo_card_searchhidden.
2020-09-09 19:24:43 -07:00
cb881ed640
Add httponly to session cookie.
2020-09-09 19:19:35 -07:00
2ba4a3bb91
Add constant RESPONSE_TYPES for use in isinstance checks.
2020-09-09 18:53:51 -07:00
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
82758ed336
Rename color_3d_shadow -> color_shadow.
2020-09-09 15:57:53 -07:00
f5eb2467dc
Add synonyms div to specific tag page.
2020-09-09 15:52:09 -07:00
97bb9da8a6
Use (+) (x) links on /tags page, link main tag object to info.
2020-09-09 15:51:57 -07:00
270dcadf4e
Let tag_object also link to mays, forbids.
2020-09-09 14:08:06 -07:00
c425d55331
Use decorators in jinja_filters to automatically register them.
2020-09-09 13:23:16 -07:00
199a4af658
Remove unnecessary intermediate variable view.
2020-09-09 13:15:21 -07:00
71e87f83f7
Use class=hidden instead of inline style display:none.
2020-09-09 13:13:38 -07:00
edca32e81c
Simplify {%if x%} to just {{x or ''}.
2020-09-09 13:13:04 -07:00
6d5cd11612
Let search_core return tags as real lists.
...
This lets search.html deal with real objects instead of playing with
dumed-down strings.
2020-09-09 13:09:48 -07:00
d585fe92a9
Let search_core return author as real list.
...
This lets search.html deal with real objects instead of playing with
dumed-down strings.
2020-09-09 13:08:41 -07:00
94b811b3b1
Let search_core return extension as real list.
...
This lets search.html deal with real objects instead of playing with
dumed-down strings.
2020-09-09 13:07:22 -07:00
a048a48159
Use class=hidden instead of inline style display:none.
2020-09-09 12:51:59 -07:00
c0f24732e1
Remove useless intermediate variable search_kwargs.
2020-09-09 12:13:18 -07:00
c507d5f629
Fix reassign to const tag of tags.
2020-09-08 16:42:44 -07:00
53da81a283
Add .bold class.
2020-09-05 17:47:29 -07:00
348215a8ee
Add whitelist/blacklist functionality to merge_params.
2020-09-04 15:10:41 -07:00
5356b19858
Add explanation of data-prompt-class et al.
...
I think I left these blank because I felt they should be obvious.
But I'd rather have it explicit.
2020-09-04 14:50:51 -07:00
139998172f
Add spinner.BAIL for cancelling spinner without launching callback.
2020-09-04 11:25:11 -07:00
7f48c3e97c
Add css/js classes entry_with_history, _with_tagname_replacements.
2020-09-04 11:20:51 -07:00
295c9b4956
Add return to all onclicks, and ; to other javascript hooks.
2020-09-04 10:37:04 -07:00
1f88b007cd
Fine-tune use of let/const in spinner.js.
2020-09-03 15:57:02 -07:00
62e87c4b1a
Add missing space around assignment.
2020-09-03 15:46:34 -07:00
d6a46ed551
Use const for api.js url/data variables.
2020-09-03 15:42:13 -07:00
c091e5fa36
Bind mmf inputs to search button with ctrl+enter.
2020-09-03 15:39:48 -07:00
9a9edecfd2
Fix album drag-drop when you drag by the thumbnail or other child.
2020-09-03 15:39:34 -07:00
dae5815239
Give #refresh_metadata_button .button_with_spinner.
2020-09-03 15:39:11 -07:00
05b39c21fd
Replace loop uses of var with let/const.
2020-09-03 15:33:37 -07:00
8af340e442
Replace non-global uses of var with let.
2020-09-03 15:31:47 -07:00
1849c2e58b
Add tag_autocomplete's on_pageload into its namespace.
2020-09-03 14:30:57 -07:00
fe7b5de427
Replace many uses of forEach with for-of.
2020-09-03 14:18:05 -07:00
fa83324cc3
Remove width from bookmark_card, just rely on max-width.
2020-09-03 12:20:49 -07:00
0ee1599c93
Improve color of tab buttons active/inactive/hover.
2020-09-03 12:04:18 -07:00
45b42d3ca3
Add css/js class tabbed_container.
2020-09-03 11:54:14 -07:00
8dafe8c4f4
Synchronize Etiquette common.css and YCDL common.css.
2020-09-03 11:50:16 -07:00
a15f14ad06
Simplify parameter format for hotkeys.register_hotkey.
2020-09-03 11:47:40 -07:00
bff4a12fcb
Add various comments, docstrings, and console.log.
2020-09-03 11:46:26 -07:00
6b037e1120
Move several /batch functions into api.js.
2020-08-30 19:18:06 -07:00
c8ab3c22c9
Remove redundant call to removeChild.
...
appendChild already takes elements out of the old parent.
2020-08-30 17:53:46 -07:00
90873c648b
Move hotkey listener from anonymous to named function.
2020-08-30 17:53:11 -07:00
48a63a099b
Fix button_with_spinner now uses onclick instead of data-onclick.
2020-08-29 22:27:15 -07:00
8ae1086727
Remove var holder which is already on the global scope.
2020-08-29 18:58:19 -07:00
c5fbcf0056
Add z-index to photo_card_selected::after.
2020-08-28 17:56:30 -07:00
8163f33ba3
Reinstate z-index for photo_card_filename:hover.
...
For extremely long titles, it was being obscured by the photo
card on the next row.
2020-08-28 17:12:32 -07:00
9b47a6dd4e
Let photo card thumbnail images lazyload.
...
It seems that some people like lazyload and others don't. Let's try it.
2020-08-28 16:24:18 -07:00
2eed3ff1c5
Add css/js class enable_on_pageload.
2020-08-28 16:23:28 -07:00
a66aca8a17
Jankily fix button text causing breakage out of parent div.
...
I described the issue here but have yet to find the correct fix.
https://old.reddit.com/r/css/comments/i4drwa
2020-08-10 21:02:11 -07:00
7609f20dd0
Let button_with_confirm inherit original CSS when not specified.
2020-08-07 21:14:27 -07:00
b6f4874b66
Move colored button class rules below button element rules.
2020-08-07 21:07:30 -07:00
31d4e58dbc
Change hovertext from "x children" to "x child albums".
2020-07-26 19:18:27 -07:00
976534982b
Add border-radius to album cards, like photo cards.
2020-07-26 19:17:47 -07:00
3e9e7e6a52
Add more to docstring about spinner delay attribute.
2020-07-10 16:34:20 -07:00
b910094443
Show the counts of tags and tag parents / children.
...
Note that children is actually descendants.
2020-07-01 16:42:36 -07:00
592c8d6bd2
Increase tag_object line height from 1.3 to 1.5.
...
I'm finding weird behavior where on the main /tags page, hovering
over the tags shows the delete / unlink button without a problem,
but on a specific tag page hovering over this button causes the
rest of the list to shift a pixel or two.
I'm sure this line-height fix is nothing more than a bandaid and
not the right thing to change.
2020-07-01 16:40:30 -07:00
e61d436791
Use Array.isArray instead of instanceof Array.
2020-07-01 16:28:39 -07:00
0cb41f09cf
Add docstring to bind_box_to_button, and some small linting.
2020-06-30 20:33:24 -07:00
7c4229f1fa
Use dot notation instead of subscript for response.
2020-06-28 17:54:16 -07:00
68f52271f1
Dedent by using early returns.
2020-06-28 17:07:28 -07:00
b817a7e8b9
Use dot notation instead of subscript.
2020-06-28 16:55:48 -07:00
6cfa83e2d8
Add attribute "completed" to response object.
2020-06-28 16:52:08 -07:00
b81aad78dd
Rename CSS vars color_theme_* and color_site_* to color_*.
...
There was just no point to naming them like this because all of the
color vars obviously represent some part of the site's color theme.
2020-06-25 10:03:50 -07:00
fbf462af64
Fix mortifying typo tag_automplete -> tag_autocomplete.
2020-06-25 10:02:42 -07:00
8c50700290
Add more docstring to button_with_confirm data-onclick parameter.
2020-06-17 14:08:03 -07:00
a56b5274c9
Read spinner button function from onclick instead of data-onclick.
...
I think my original reason for doing this was to prevent the button
from being operational until after the spinner initialization has
completed, so you don't get any weird half-functional spinner buttons.
However, in practice I'm finding that I constantly forget about this
and it adds tedium to creating spinner buttons.
Will review if any actual problems come up.
2020-06-17 14:04:27 -07:00
d6ca8206b4
Synchronize Etiquette common.js and YCDL common.js.
2020-06-17 13:38:20 -07:00
e1033d0138
Move tagname related functions from common.js to tag_autocomplete.js.
2020-06-17 12:42:08 -07:00
fdfc7308b0
Move all spinner related functions from common.js to spinner.js.
2020-06-17 12:41:13 -07:00
91ac2315e6
Put meta before data in the json responses.
2020-06-17 12:37:22 -07:00
136a47bf10
Add support for spinner groups, all buttons spin when one clicked.
2020-06-11 18:20:20 -07:00
634f6f5188
Fix metadata spinner not closing when 0 items on clipboard.
2020-05-28 19:02:07 -07:00
2f5510fd0c
Rename variable spinner_button_count -> spinner_button_index.
2020-05-28 19:01:42 -07:00
88a6708061
Replace werkzeug.contrib with werkzeug.middleware proxyfix.
...
werkzeug.contrib has been deprecated, this is the new location
of the proxyfix.
2020-05-17 16:33:40 -07:00