voussoir
ad1655bf3e
Let content_body have margin-top when there is no header.
2022-03-26 13:21:59 -07:00
voussoir
5b6621ea4e
Move .panel into common.css.
2022-03-26 13:21:59 -07:00
voussoir
da0e6a59f7
Add a dedicated background_click function.
2022-03-26 13:21:58 -07:00
voussoir
635bf27c1e
Add function menu_is_open.
2022-03-26 13:21:58 -07:00
voussoir
ab78385833
Improve use of clientX instead of offsetX.
2022-03-26 13:21:57 -07:00
voussoir
fc582df257
Move delayed_showing_timeout assignment where needed.
2022-03-08 16:42:56 -08:00
voussoir
0fd18221b1
Give button_with_spinner's onclick event to the original function.
2022-03-08 16:42:03 -08:00
voussoir
85055cdea2
Use new betterhelp.
2022-02-12 19:56:00 -08:00
voussoir
4261c42512
Add xdg-open for non-windows use.
2022-01-11 01:00:36 -08:00
voussoir
16688f95e7
Fix bookmark card being created without the h2.
2021-12-21 16:56:49 -08:00
voussoir
77cd0e871c
Fix call to cards.bookmarks.create, add rest of options.
2021-12-21 16:56:30 -08:00
voussoir
5efad72425
Use log.warning for traceback instead of print_exc.
2021-12-21 16:55:46 -08:00
voussoir
017523bdac
Return 404 if we try to reload_metadata on a missing file.
2021-12-21 16:55:03 -08:00
voussoir
c591997b10
Change the background-color of disabled input elements.
2021-12-14 20:30:38 -08:00
voussoir
71de72c776
Rephrase some of the filter dropdowns.
2021-11-16 12:52:21 -08:00
voussoir
e2e0e13fb5
Replace some h3 with h2.
2021-10-31 16:28:34 -07:00
voussoir
bfe11cccd5
Finally improve photo thumbnail css to reduce use of 150px constant.
...
I've attempted this so many times and always failed. object-fit:contain
and minmax(0, fr) was the solution.
2021-10-31 16:15:57 -07:00
voussoir
3e72029908
Improve placement of photo toolbutton in list view.
2021-10-31 16:15:01 -07:00
voussoir
2d4acfe511
Replace some h2 with h1, set h:first-child, last-child margin=0.
2021-10-31 16:14:18 -07:00
voussoir
63af7b48e6
Add class=panel to bookmark list.
2021-10-31 16:12:30 -07:00
voussoir
886ddecfa7
Improve appearance of bookmark cards with h2, hiding url element.
2021-10-31 16:12:14 -07:00
voussoir
e99023c7ab
Bookmark cards don't really need to be grid based.
2021-10-31 16:08:41 -07:00
voussoir
1e9e948431
Move decorate_and_route to flasktools.
2021-10-31 15:11:17 -07:00
voussoir
1f18713875
Add reminder of what __file__.parent.parent evaluates to.
2021-10-31 15:10:54 -07:00
voussoir
f0d302d4a5
Move give_theme_cookie to flasktools.
2021-10-30 17:29:43 -07:00
voussoir
6ac1d8a90a
Add remark about X-Forwarded-For.
2021-10-24 23:21:11 -07:00
voussoir
779eff1761
Don't show the registration form if registration is disabled.
2021-10-24 22:17:50 -07:00
voussoir
842dad3243
Add remark to common.css, etiquette.css.
2021-10-24 16:48:06 -07:00
voussoir
e101f4c2d8
Add author to bookmark card.
2021-10-23 18:48:27 -07:00
voussoir
4da25c1d9e
Replace get_author with @property author.
2021-10-23 18:48:14 -07:00
voussoir
6fad61d49a
Add docstring to should_prevent_hotkey.
2021-10-23 18:45:52 -07:00
voussoir
08a8095efb
Add author's name on tag pages.
2021-10-23 17:20:43 -07:00
voussoir
7e0c3e2626
Use /userid/ links instead of /user/username.
2021-10-23 17:20:14 -07:00
voussoir
e2a97cef9c
Remove div #tag_metadata, raise the children.
2021-10-23 17:19:43 -07:00
voussoir
6794caa32b
Call photo._uncache instead of doing it manually.
2021-10-18 14:10:59 -07:00
voussoir
9f7a7ca3f7
Remove unnecessary cwd. It is the default anyway.
2021-10-02 12:45:51 -07:00
voussoir
91cf08efde
Match renamed flasktools.json_response.
2021-10-01 23:05:46 -07:00
voussoir
fd42ef16e1
Add admin endpoints.
2021-10-01 22:42:45 -07:00
voussoir
2932a8f23f
Slight backstep on the overreach of flask/__init__.py imports.
2021-09-30 22:29:21 -07:00
voussoir
bdc67696fd
Remove blank line.
2021-09-30 22:03:16 -07:00
voussoir
d5f8b9254f
Improve the way prod imports flask backend.
2021-09-08 20:00:32 -07:00
voussoir
e5c16c4ba1
Improve etiquette_flask_dev helptext.
2021-09-08 19:40:05 -07:00
voussoir
23f9a5427f
Make better use of vlogging.
2021-09-08 19:36:29 -07:00
voussoir
0c51201901
Move truthystring to stringtools.
2021-09-05 01:21:04 -07:00
voussoir
10f6509536
Add common.formdata so api.js can just use dicts.
2021-09-03 12:52:41 -07:00
voussoir
d4025e865b
Move cached_endpoint, required_fields to flasktools.
2021-09-03 12:45:07 -07:00
voussoir
2e0b4cfa14
Replace run_generator with gentools.run.
2021-08-31 19:23:56 -07:00
voussoir
e9d5711f29
Some linting.
2021-08-20 22:54:12 -07:00
voussoir
e5f2f6992b
Fix DOCTYPE should just be "html".
2021-06-22 13:38:08 -07:00
voussoir
0829383f7d
Replace margin:auto with flex justify, align.
2021-06-15 22:26:42 -07:00
voussoir
87126c1b89
Fix photo cards being too wide due to img misjudging height.
2021-06-15 22:01:43 -07:00
voussoir
82a6103d8d
Fix leftover imports.
2021-06-08 16:04:20 -07:00
voussoir
f003f55fca
Move make_json_response to voussoirkit.flasktools.
2021-06-04 21:49:45 -07:00
voussoir
adb691405c
Give this div an id, #theme_links.
2021-06-04 21:36:17 -07:00
voussoir
47c4790d36
Remove unnecessary intermediate variable ip.
2021-06-04 21:33:55 -07:00
voussoir
7f8a007e2d
Add decorators.give_theme_cookie to decouple from render_template.
...
I realized it was not appropriate for render_template to be handling
this responsibility, but previously did not think of another way.
Now I did.
2021-06-04 21:29:23 -07:00
voussoir
1554b86c11
Use flasktools.ensure_response_type.
2021-06-04 21:28:23 -07:00
voussoir
d091efb619
Flip all_albums.json to id:name map.
2021-06-04 21:00:49 -07:00
voussoir
53e8030186
Move REQUEST_TYPES, RESPONSE_TYPES to voussoirkit.flasktools.
2021-06-04 21:00:22 -07:00
voussoir
0012999744
Remove some pointless whitespace.
2021-06-04 20:52:39 -07:00
voussoir
5de8c8ddad
Replace #000 with black.
2021-06-04 20:47:41 -07:00
voussoir
6dc352b25c
Add comment for photo_card_toolbutton.
2021-06-04 19:34:52 -07:00
voussoir
40d618dd85
Fix settimeout calling function immediately.
2021-06-04 18:45:34 -07:00
voussoir
975408227b
Improve cached_endpoint behavior with sentinel.
2021-06-04 17:49:46 -07:00
voussoir
56ab6636cc
Add Swipe UI.
2021-06-03 21:28:05 -07:00
voussoir
b35cc8196f
Turn off hotkeys.js logging every press.
2021-06-03 17:53:34 -07:00
voussoir
83f1443a86
Fix photo_clipboard.select_all on /photo, where no photo_card exists.
2021-06-03 17:43:36 -07:00
voussoir
737fa5652f
Add word-break: break-all to bookmark cards.
2021-06-03 17:43:06 -07:00
voussoir
9c13220ac3
Let pages opt in to the use of photo_clipboard's hotkeys.
2021-06-03 17:42:46 -07:00
voussoir
cbde9488b8
Assign const search_go_button instead of implicit html id variable.
2021-06-01 17:52:17 -07:00
voussoir
ac80d61ab0
Just use "/search" without window.location.origin.
2021-06-01 17:51:57 -07:00
voussoir
049fc794c3
Add api.photos.search.
2021-06-01 17:51:31 -07:00
voussoir
f30528cc35
Return xhr request object from api functions.
2021-06-01 17:48:03 -07:00
voussoir
5e9b7e2dd0
Return xhr request object from get and post.
2021-06-01 17:38:43 -07:00
voussoir
0694073b70
Ensure that response always has json_ok even if no internet.
2021-06-01 17:38:32 -07:00
voussoir
2f68b800c5
Pull out separate build_search_params, use URLSearchParams object.
2021-06-01 14:12:47 -07:00
voussoir
64585a6fa1
Calculate number of orderby columns instead of hardcoded 9.
2021-06-01 14:12:09 -07:00
voussoir
84d966ff3d
Set #header height: 18px, which was already the natural height.
...
No visual change now, but writing it down helps communicate intention
with regards to the size of other elements.
2021-05-30 19:18:16 -07:00
voussoir
e8cb183849
Add cards.js photos.create, render clipboard batches on client.
2021-05-29 08:46:25 -07:00
voussoir
93bd3ee912
Add common.join_and_trail.
2021-05-29 08:45:15 -07:00
voussoir
22f320532b
Add draggable=false to file size link.
2021-06-03 21:35:24 -07:00
voussoir
387b7f1096
Rename Photo.bytestring -> bytes_string.
2021-05-24 20:42:29 -07:00
voussoir
a227474a2b
Add explanation to common.css --wide --narrow.
2021-05-19 23:43:08 -07:00
voussoir
95a6d7bb92
Let the logout button match the link color.
2021-05-19 00:07:19 -07:00
voussoir
26d5ff5730
Update closest_photodb to take starting path argument.
2021-05-16 21:08:51 -07:00
voussoir
59654a89e6
Add new bookmarks to page without refreshing.
...
This is the first card to get a javascript version, so I'm testing
the waters with the low-stakes bookmarks.
2021-05-02 18:37:28 -07:00
voussoir
c984f6884e
Pull create_editor into separate function, called by loop.
2021-05-02 18:36:10 -07:00
voussoir
89205ac24a
Add interface for copying tags from other photos.
2021-04-29 13:12:37 -07:00
voussoir
bc5a9f2116
Remove unused variable action.
2021-04-29 13:04:27 -07:00
voussoir
ef2a1574ca
Add some comment headers, change some whitespace.
2021-04-18 18:50:51 -07:00
voussoir
0c085f09b9
Add tag filter box.
2021-04-18 18:50:31 -07:00
voussoir
e3872e1da4
Update requirements.txt.
2021-04-04 11:17:45 -07:00
voussoir
ff1ec3896b
Use voussoirkit.flasktools for gzip_response.
2021-04-02 18:31:44 -07:00
voussoir
400c255aea
Add "Show in folder" button to photos, albums.
2021-02-25 18:57:41 -08:00
voussoir
361795237c
Store value request.is_localhost and pass request into all jinjas.
2021-02-25 18:52:25 -08:00
voussoir
4bf5b6d824
Replace dev_ino with mtime, sha256.
...
This change was prompted by my discovery that under DrivePool, two
files can have the same dev, ino pair. It's understandable but the fact
of the matter is I don't want to rely on inodes any more.
Hashing has the downside of speed, but considering the time investment
of tagging files in the first place I think it should be worthwhile.
2021-02-03 12:12:47 -08:00
voussoir
e717833d41
Fix batch cards endpoint still referring to photo_card.html.
2021-01-28 17:01:00 -08:00
voussoir
38e9b796fe
Use spinal.hash_file instead of redefining here.
2021-01-25 14:59:40 -08:00
voussoir
b5e8363374
Add preliminary photo drag-drop code.
2021-01-25 13:47:47 -08:00
voussoir
6c2da7a6f0
Move album drag-drop functions to cards.js.
2021-01-25 13:46:24 -08:00