Commit Graph

410 Commits (33d506ddaf3743d0fef5b00ca3f016252bdcb5c9)

Author SHA1 Message Date
voussoir 3e5031a1c5 Add methods sql_insert, sql_update to centralize sqlhelper work. 2018-02-16 18:49:02 -08:00
voussoir 655d1fa235 Prepare to use dicts SQL_COLUMNS, _INDEX instead of separate. 2018-02-16 18:48:03 -08:00
voussoir 4e8a67aa54 Avoid sql indexing by instantiating User earlier. 2018-02-16 18:40:57 -08:00
voussoir bc4e228a25 Remove a lot of the commented code from earlier search. 2018-02-04 15:11:46 -08:00
voussoir 6f4530c88c Let SessionManager.get require Request object; Check IP addr.
So far there is no use case in which get needs to be called with
something other than a Request, and I don't think there will be.
So let's make that part of the design and we can also take the
opportunity to check IP.
2018-02-03 02:10:07 -08:00
voussoir c6a396c658 Move ef/endpoints/common.py to ef/common.py
Decided it doesn't belong with the endpoints files.
2018-02-03 01:43:41 -08:00
voussoir f7dcb489c5 Remove unnecessary intification of timestamps.
I decided I want to have higher precision especially because
batch inserts were having several photos with the same
created timestamp making orderby >= dumb.
2018-02-03 01:35:32 -08:00
voussoir b39f2e3f7b Create basic_endpoints file. Don't put them in __init__. 2018-02-03 01:34:07 -08:00
voussoir dec28b321a Rename recursive_dict_update's parameters for clarity. 2018-02-03 01:10:54 -08:00
voussoir f266e1c79c Split PhotoDB's large init into some smaller portions. 2018-02-03 01:10:04 -08:00
voussoir f9ee56187c Rename attr database_file to database_filepath.
To make it more consistent with config_filepath and show
that it's a path object.
2018-01-30 19:46:43 -08:00
voussoir 20462f1085 Oops, add back missing CSS on mmf deleter. 2018-01-30 19:45:59 -08:00
voussoir 06599df80b Update voussoirkit requirement to 0.0.19. 2018-01-30 19:45:21 -08:00
voussoir 75953c2999 Add docstrings to the photoclipboard functions. 2018-01-19 22:24:07 -08:00
voussoir cf59f96813 Perform serverside expiration of sessions on get attempt.
Also remove unnecessary conversion to int.
2018-01-19 21:59:50 -08:00
voussoir cdd8f9e248 Only reload the page if the clip operation was successful. 2018-01-19 21:44:21 -08:00
voussoir b00d93901a Apply werkzeug ProxyFix so that request.remote_addr is correct. 2018-01-17 20:53:25 -08:00
voussoir 7352d1e141 If the user has a token we don't recognize, give them a new one. 2018-01-15 20:04:47 -08:00
voussoir 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
voussoir 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
voussoir 8a1f2c65f9 Tighten the types for _normalize_token; include werkzeug wrappers. 2018-01-15 18:39:40 -08:00
voussoir 5e6f3d96b1 Remove localstorage from the todo list because that's done. 2018-01-13 20:06:53 -08:00
voussoir c62e6cd80b Fix synonym fetcher using outdated column name. 2018-01-13 20:02:49 -08:00
voussoir 526cc7e07d Add search form input for created. 2018-01-13 20:02:12 -08:00
voussoir 14750eafc5 Move DB_INIT to constants; auto parse column names. 2018-01-13 16:48:48 -08:00
voussoir ec4b5b014b Oops, fix missing return statement.
That would cause problems.
2018-01-13 16:14:01 -08:00
voussoir 57f007d595 Don't use `from etiquette import`. 2018-01-13 16:12:52 -08:00
voussoir d84fc037fe Use urandom instead of uuid for session id. 2018-01-13 15:49:14 -08:00
voussoir 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
voussoir 178a7df0b3 Add some more log debugs. 2018-01-11 19:32:15 -08:00
voussoir 5fccf5548b Add Before and After search links to the photo sidebar. 2018-01-11 16:11:38 -08:00
voussoir 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
voussoir b5902ba4f1 Integrate voussoirkit sqlhelpers.
https://github.com/voussoir/else/tree/master/SQLHelpers
2018-01-09 21:15:50 -08:00
voussoir 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
voussoir d548e09a96 Add .nfo to the custom mimetypes as text/plain. 2018-01-09 18:46:32 -08:00
voussoir b89d5f77d5 Oops, add back some css classes that I missed during the rearrangement. 2017-12-20 20:11:34 -08:00
voussoir b859dbd22a Add bookmark cache, replace get_bookmark code with call to get_thing. 2017-12-20 20:10:58 -08:00
voussoir 1f7247dbe1 Add paste/unpaste buttons to clipboard tray toolbox for albums. 2017-12-16 14:19:37 -08:00
voussoir 3d8aeec484 Add API endpoints for add/remove photo from album. 2017-12-16 14:19:00 -08:00
voussoir 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
voussoir f59f94cae9 Fix required_fields looking at wrong jsonify file. 2017-12-16 12:25:01 -08:00
voussoir 4a5583c091 Add tray_lines div so that tray_body might hold more buttons. 2017-12-16 12:24:46 -08:00
voussoir 67c2dadffa Expand the project structure diagram on the readme. 2017-12-16 04:08:15 -08:00
voussoir 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
voussoir 0b5f736574 Few minor text fixes. 2017-12-16 03:45:07 -08:00
voussoir 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
voussoir f69d9d409d Give the editor toolbox a CSS class. 2017-12-08 11:59:27 -08:00
voussoir 13803dc7f7 Oops, put remove_path_badchars where it belongs alphabetically. 2017-12-07 21:37:55 -08:00
voussoir f39717c216 Minor improvements to other helpers and their docstrings. 2017-12-07 21:32:37 -08:00
voussoir 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