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
009c0dc678
Allow the data_directory to contain colons (fully qualified paths)
2017-11-16 16:32:05 -08:00
73d2ef5bbf
Change exception __str__ to be the type + message
...
Because the repr is ugly
2017-11-16 16:31:10 -08:00