Commit graph

296 commits

Author SHA1 Message Date
cf59f96813 Perform serverside expiration of sessions on get attempt.
Also remove unnecessary conversion to int.
2018-01-19 21:59:50 -08:00
cdd8f9e248 Only reload the page if the clip operation was successful. 2018-01-19 21:44:21 -08:00
b00d93901a Apply werkzeug ProxyFix so that request.remote_addr is correct. 2018-01-17 20:53:25 -08:00
7352d1e141 If the user has a token we don't recognize, give them a new one. 2018-01-15 20:04:47 -08:00
55e1281774 Improve technique for finding cookie set by function.
Instead of iterating through all the outgoing headers.
2018-01-15 18:56:41 -08:00
be0fca729f Create sessions for anons as well, instead of just logged in.
It makes sense that anon sessions are still sessions. So @give_token
will ensure that every request has a session. Logged in conditionals
move from 'if session' to 'if session.user'.
2018-01-15 18:41:21 -08:00
8a1f2c65f9 Tighten the types for _normalize_token; include werkzeug wrappers. 2018-01-15 18:39:40 -08:00
5e6f3d96b1 Remove localstorage from the todo list because that's done. 2018-01-13 20:06:53 -08:00
c62e6cd80b Fix synonym fetcher using outdated column name. 2018-01-13 20:02:49 -08:00
526cc7e07d Add search form input for created. 2018-01-13 20:02:12 -08:00
14750eafc5 Move DB_INIT to constants; auto parse column names. 2018-01-13 16:48:48 -08:00
ec4b5b014b Oops, fix missing return statement.
That would cause problems.
2018-01-13 16:14:01 -08:00
57f007d595 Don't use from etiquette import. 2018-01-13 16:12:52 -08:00
d84fc037fe Use urandom instead of uuid for session id. 2018-01-13 15:49:14 -08:00
c049b97bc6 Replace etiquette_flask.py with endpoints package.
Split the object types' endpoints into separate files and group
them better. Should be much easier to navigate and expand.
2018-01-11 19:40:56 -08:00
178a7df0b3 Add some more log debugs. 2018-01-11 19:32:15 -08:00
5fccf5548b Add Before and After search links to the photo sidebar. 2018-01-11 16:11:38 -08:00
fe88cdc413 Add decorator catch_etiquette_exception.
To reduce the number of 500 errors and provide 400 instead.
2018-01-09 21:21:15 -08:00
b5902ba4f1 Integrate voussoirkit sqlhelpers.
https://github.com/voussoir/else/tree/master/SQLHelpers
2018-01-09 21:15:50 -08:00
6f371701e4 Fix digest second-scan bug; Break down into smaller functions.
There was a bug where moving an album out of its determined parent
caused future digests to fail because I wanted to use the GroupExists
for control flow, but due to the @transaction decorator it was rolling
back the changes.
Moved some of the logical pieces of the function into subfunctions
as a visual and readability aid.
2018-01-09 18:59:15 -08:00
d548e09a96 Add .nfo to the custom mimetypes as text/plain. 2018-01-09 18:46:32 -08:00
b89d5f77d5 Oops, add back some css classes that I missed during the rearrangement. 2017-12-20 20:11:34 -08:00
b859dbd22a Add bookmark cache, replace get_bookmark code with call to get_thing. 2017-12-20 20:10:58 -08:00
1f7247dbe1 Add paste/unpaste buttons to clipboard tray toolbox for albums. 2017-12-16 14:19:37 -08:00
3d8aeec484 Add API endpoints for add/remove photo from album. 2017-12-16 14:19:00 -08:00
e41532cff1 Rearrange some button CSS classes to be more generic.
Adds CSS variables for the highlight and shadow so they don't need
to be custom-defined for each color of button.
Elements should use more generic classes like green_button instead of
add_tag_button unless there's a good reason.
2017-12-16 14:13:02 -08:00
f59f94cae9 Fix required_fields looking at wrong jsonify file. 2017-12-16 12:25:01 -08:00
4a5583c091 Add tray_lines div so that tray_body might hold more buttons. 2017-12-16 12:24:46 -08:00
67c2dadffa Expand the project structure diagram on the readme. 2017-12-16 04:08:15 -08:00
443d93ce18 Add the clipboard tray where users manage their photo clipboard.
Appearing on search and album pages, the tray is where you can
remove items from your clipboard without having to click on its
checkbox -- that photo card may not even be on the current page.
2017-12-16 03:47:54 -08:00
0b5f736574 Few minor text fixes. 2017-12-16 03:45:07 -08:00
55f7da7bb2 Add the photo_clipboard feature with localStorage.
photo_card objects now have a checkbox which adds them
to the clipboard. No pasting or other operations yet.
2017-12-09 17:48:56 -08:00
f69d9d409d Give the editor toolbox a CSS class. 2017-12-08 11:59:27 -08:00
13803dc7f7 Oops, put remove_path_badchars where it belongs alphabetically. 2017-12-07 21:37:55 -08:00
f39717c216 Minor improvements to other helpers and their docstrings. 2017-12-07 21:32:37 -08:00
0d0354f4da Rename normalize_filepath to remove_path_badchars.
Because the function does not do any resolving or converting
to an absolute path, I feel the name 'normalize' is inaccurate
and could be misleading when read. This is more clear.
2017-12-07 21:15:10 -08:00
6cf355d7ce Rename comma_split to comma_space_split to better describe behavior. 2017-12-07 20:58:06 -08:00
156e467814 Display album hierarchy as nested bullets instead of separate lists.
Not perfect yet but I didn't like having all those header elements.
2017-11-27 16:00:52 -08:00
a7b5a7d42a Multiple small cleanups, docstrings, messages, lint improvements. 2017-11-27 15:56:16 -08:00
d7d1e155c1 Add some tasks to the to do list. 2017-11-27 15:24:55 -08:00
bdbded6467 'info' link should point to /tag/x instead of /tags/x 2017-11-26 02:49:57 -08:00
a0e0e9fbd2 Add a link to the info page for each tag. 2017-11-26 02:40:15 -08:00
b3c9dd58f5 Allow custom innertext besides just the tag's name. 2017-11-26 02:38:39 -08:00
e6a50500b9 Fix missing file_read_chunk from default config 2017-11-26 02:37:33 -08:00
f052858d5f Improve log creation and use custom formatter. 2017-11-26 02:37:11 -08:00
be35f3bb1f Fix Tag.rename from raising TagExists for old instead of desired new. 2017-11-23 21:58:38 -08:00
64d8410977 No need for self.cur, just cur. 2017-11-16 18:03:51 -08:00
259c9ee1ab Add PhotoDB init arg ephemeral. Uses :memory: sql and tempdir.
Primarily necessitated by unit testing. Running through the DB_INIT
is quite slow on disk, so this argument causes the sql to be done
on an in-memory database and all the other files are put into a
TemporaryDirectory.

Eventually I would like to have the other files be in-memory too
but that may be overcomplicated and underuseful.
2017-11-16 18:02:05 -08:00
74f4e74bdf Add a few docstrings and update readme to-do list. 2017-11-16 16:46:39 -08:00
8f000543ea Add exceptions.DatabaseOutOfDate instead of just using an error string.
And don't raise SystemExit. Not sure what I was thinking.
2017-11-16 16:33:40 -08:00