2adadf9871
Rewrite tags.html with more Grid.
2018-02-21 22:13:46 -08:00
a9248d8cab
Add CSS clipboard_size; and other clip hook improvements.
...
Any element with class clipboard_size will have its text updated;
Removed the call to on_pageload from save_ because it redundantly
causes a load. Separate those update hooks.
2018-02-20 20:20:20 -08:00
761ae5c30c
Add endpoints /batch/photos/add_tag and /remove_tag.
2018-02-20 17:23:51 -08:00
13e8bc4a6f
Add more items to to-do list; minor fixes.
2018-02-20 16:50:39 -08:00
ebe0fcee40
Rename URL /photo_cards -> /batch/photos/photo_card.
2018-02-19 23:44:24 -08:00
6ad41eb516
Improve bookmark appearance; don't send edit with blank url.
2018-02-17 19:36:48 -08:00
91d445a877
Add new page /clipboard, with full photo cards.
2018-02-17 19:12:34 -08:00
ef5bbf5fc3
Split HTTP response dict into ["meta"] and ["data"].
2018-02-17 18:47:17 -08:00
f4756d97e4
Improve html & Jinja indentation.
2018-02-17 18:19:47 -08:00
b02374136f
Let the page add its own clipboard load/save hooks.
2018-02-17 16:31:51 -08:00
1b631b33e9
Make separate functions for HTTP get / post.
2018-02-17 16:08:38 -08:00
5d6c5ef2b4
Raise exception if attempted override name is invalid.
...
Technically it doesn't really matter because the override is not
used for any file ops, but I don't like the idea of busted
path-looking strings being displayed anywhere on the interface.
2018-02-17 15:47:26 -08:00
606a66cbf9
Remove Photo.filepath and real_filepath in favor of real_path.
2018-02-17 15:19:36 -08:00
42728d5d67
Add method Photo.set_override_filename.
2018-02-17 15:07:26 -08:00
f7bd49b2dd
Add call to remove_control_chars in remove_bad_pathchars.
2018-02-17 15:07:12 -08:00
59cd922a53
Remove unnecessary methods=GET.
2018-02-17 14:59:02 -08:00
0d6faa8f6e
Take advantage of new sql_update to update where_keys.
2018-02-17 14:02:11 -08:00
9939f5da1d
For sql_insert / _update, let default commit=False.
...
Because all the calls are using it that way anyway.
2018-02-17 14:01:12 -08:00
cd4e970f04
Bump voussoirkit requirement to 0.0.20.
...
SQLHelpers can now update the where_key.
2018-02-17 13:48:56 -08:00
6363cb5fc0
Rename Album.associated_directories -> get_associated_directories.
2018-02-17 13:33:27 -08:00
574ac9f656
Slightly scale down image thumbnail to match others.
...
It was too big!
2018-02-16 23:30:27 -08:00
b4a28f5034
Make Photo.bytestring a @property.
...
This is the kind of thing that should be a @property, because
it's very low processing power and doesn't hit the database.
2018-02-16 23:16:02 -08:00
bbe392ac09
Rename Photo.author -> get_author; no longer a @property.
2018-02-16 23:11:25 -08:00
205c49c21f
Rename Photo.albums -> get_containing_albums.
2018-02-16 23:08:44 -08:00
2f9b51b636
Rename Photo.tags -> get_tags.
2018-02-16 23:07:21 -08:00
ac9d7ede22
Rename Album.photos -> get_photos.
2018-02-16 23:03:54 -08:00
6574450ad1
Rename Tag.synonyms -> get_synonyms.
2018-02-16 23:01:07 -08:00
fdcf07940a
Rename Groupable.children -> get_children.
2018-02-16 23:00:43 -08:00
75effafaf5
Rename Groupable.parent -> get_parent.
...
After making the "if x.parent is None" mistake too many times,
forgetting that it was not a @property, I've decided that the
verby name is better.
2018-02-16 22:59:34 -08:00
db92951ad6
Oops, remove incorrect name= from new_tag.
2018-02-16 22:57:35 -08:00
bf0ac1ebac
Move etiquette_repl into a folder for consistency.
...
The items in the frontends folder should essentially be
black boxes with a launch file. Now the repl one looks the same
as the flask.
2018-02-16 22:31:10 -08:00
3c4f69f647
Specify name= on calls to PDB.get_tag.
...
Sometimes it's easy to forget whether its the name or ID,
and I like the consistency of specifying.
2018-02-16 22:25:56 -08:00
16ac6f8b85
Move UN / PW validation to helper _assert methods.
2018-02-16 22:18:19 -08:00
173c07a0bf
Add some more exception hierarchy. Exists / InvalidUN/PW.
2018-02-16 22:13:54 -08:00
3944e1d862
Add CONTRIBUTING.md.
2018-02-16 21:54:22 -08:00
c6c7f51b15
Create new files for tests. Though still empty.
2018-02-16 21:45:36 -08:00
1c1e7f158f
Minor fixes & pylint appeasements.
2018-02-16 21:28:36 -08:00
e5a316ff9c
Remove old SQL_ constants. Use the dicts.
2018-02-16 20:40:58 -08:00
a8ead9c0c9
Replace a lot of manual insert/update with helper.
2018-02-16 20:19:18 -08:00
3e5031a1c5
Add methods sql_insert, sql_update to centralize sqlhelper work.
2018-02-16 18:49:02 -08:00
655d1fa235
Prepare to use dicts SQL_COLUMNS, _INDEX instead of separate.
2018-02-16 18:48:03 -08:00
4e8a67aa54
Avoid sql indexing by instantiating User earlier.
2018-02-16 18:40:57 -08:00
bc4e228a25
Remove a lot of the commented code from earlier search.
2018-02-04 15:11:46 -08:00
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
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
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
b39f2e3f7b
Create basic_endpoints file. Don't put them in __init__.
2018-02-03 01:34:07 -08:00
dec28b321a
Rename recursive_dict_update's parameters for clarity.
2018-02-03 01:10:54 -08:00
f266e1c79c
Split PhotoDB's large init into some smaller portions.
2018-02-03 01:10:04 -08:00
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