Commit Graph

584 Commits (8a1d5d9eae87bc4ec0a7ef6bf0f92c9a4f6cbd48)

Author SHA1 Message Date
voussoir daf824caf5 Improve album page's use of data-editor-empty-text. 2018-03-10 13:24:23 -08:00
voussoir 494d44aa03 Improve editor.js comments and usage of `this`.
I realized what I was doing wrong with `this`, so now the function
binder is much cleaner.
2018-03-10 13:23:37 -08:00
voussoir ae6df8f999 Remove searchhidden from to do list. 2018-03-09 17:52:52 -08:00
voussoir f9bee5716c Don't clear the clipboard after pasting into album.
Sometimes I want to do more operations.
2018-03-09 17:50:41 -08:00
voussoir a1919a7725 Support giving title when creating albums. Two-step prompt. 2018-03-09 17:38:40 -08:00
voussoir 5f6d21fdee Give Photos a `searchhidden` property.
By default, photos with searchhidden do not appear in the search
results. This allows a small number of representative images from
a large album to appear in the results, while the rest can be
found on the album's page.

The same effect could be achieved with a tag and forbid search,
but tag searching has much higher cost and it would be more difficult
to implement as a default behavior without requiring lots of special
checks whenever listing tags etc.
2018-03-09 17:10:27 -08:00
voussoir d88db08693 Allow PDB.rollback to take a savepoint; Warn early commits.
If a @transaction method makes calls to other @transaction
methods, and one of those nested calls makes a commit, and then
the outer call raises an exception, then the outer call will
not rollback properly because its savepoint is no longer in
the savepoint stack. So let's warn the user if that happens.
Should this raise an exception instead of just warn? Not sure,
I mean the data is already committed.
2018-03-05 21:35:36 -08:00
voussoir 26141f8198 Put savepoints in the on_commit_queue so we can cancel on rb. 2018-03-02 20:30:55 -08:00
voussoir faacf7b594 Oops, use response["data"]. 2018-02-26 19:06:27 -08:00
voussoir 8b9ef2a492 Oops, add commit parameter to Photo.copy_tags. 2018-02-25 18:56:11 -08:00
voussoir 4ae5f52db3 Add some missing decorators and explain others.
Leave comments in places where @transaction or @required_feature
might be expected, but are taken care of by something else.
2018-02-25 18:55:46 -08:00
voussoir 3ff89c330f Remove obvious and unhelpful stuff from project structure. 2018-02-25 18:45:11 -08:00
voussoir 3d925c1426 Rename inner wrapped to improve traceback clarity.
Because "line 77, in wrapped_transaction" is at least slightly
better than "in wrapped".
2018-02-25 17:15:35 -08:00
voussoir c001b0fc87 Use SQL savepoints to improve @transaction.
I didn't know about these! Now we don't have to roll all the way
back in case of problems. This allows for raising exceptions as
control flow since they won't undo unrelated stuff.
2018-02-25 17:10:04 -08:00
voussoir 576fac416a Move SQL heavy lifting to its own Mixin. 2018-02-25 16:30:05 -08:00
voussoir e4e542a8a6 Replace manual DELETEs with calls to sql_delete. 2018-02-25 16:17:19 -08:00
voussoir a2e13003e8 Add PhotoDB.sql_delete. 2018-02-25 16:09:36 -08:00
voussoir f6cef5bcbf Require voussoirkit 0.0.21 for sqlhelpers.delete_filler. 2018-02-25 16:07:58 -08:00
voussoir f34164bf85 Add search feature has_thumbnails.
Search needs a complete refactor.
But until then, let's keep adding to it!
2018-02-24 23:06:25 -08:00
voussoir d653673277 Update truthystring to return bool, not given int. 2018-02-24 23:01:44 -08:00
voussoir 5f7266c519 Add button to clear clipboard. 2018-02-24 23:00:28 -08:00
voussoir 4e98fcf137 Oops, add the session to /clipboard. 2018-02-24 19:18:15 -08:00
voussoir 0228fbebfd Move the random hex generator to helpers. 2018-02-24 18:54:59 -08:00
voussoir 2fceeedbbb Add /clipboard UI for mass refresh metadata. 2018-02-24 13:23:35 -08:00
voussoir 5add26d8fb Add endpoint /batch/photos/refresh_metadata. 2018-02-24 12:52:36 -08:00
voussoir 30c9148092 Move the remaining common css / js to their folders. 2018-02-24 12:51:36 -08:00
voussoir 79b20369db Oops, apply listeners to /photo input box as well. 2018-02-24 01:08:21 -08:00
voussoir e359180467 Move clipboard_tray rules to own file in css folder. 2018-02-24 01:06:27 -08:00
voussoir aabcb61a9c Create css folder. Move photo_card rules to own file. 2018-02-24 00:58:43 -08:00
voussoir 840185072b Move photoclipboard.js to the js folder. 2018-02-24 00:47:44 -08:00
voussoir 56a998682d Create js folder. Move Editor to its own file. 2018-02-24 00:46:55 -08:00
voussoir aa284c388d Fix message_area on /login.
Because the rules are no longer in common.
2018-02-24 00:34:46 -08:00
voussoir 9c6cae7177 Use event listeners instead of setting onkeyup manually. 2018-02-24 00:24:38 -08:00
voussoir 5a1d259780 Add /clipboard UI for mass-tagging. 2018-02-22 15:23:57 -08:00
voussoir 4b79308119 Move 0-item clipboard collapser to update_clipboard_tray. 2018-02-22 13:36:31 -08:00
voussoir 2adadf9871 Rewrite tags.html with more Grid. 2018-02-21 22:13:46 -08:00
voussoir 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
voussoir 761ae5c30c Add endpoints /batch/photos/add_tag and /remove_tag. 2018-02-20 17:23:51 -08:00
voussoir 13e8bc4a6f Add more items to to-do list; minor fixes. 2018-02-20 16:50:39 -08:00
voussoir ebe0fcee40 Rename URL /photo_cards -> /batch/photos/photo_card. 2018-02-19 23:44:24 -08:00
voussoir 6ad41eb516 Improve bookmark appearance; don't send edit with blank url. 2018-02-17 19:36:48 -08:00
voussoir 91d445a877 Add new page /clipboard, with full photo cards. 2018-02-17 19:12:34 -08:00
voussoir ef5bbf5fc3 Split HTTP response dict into ["meta"] and ["data"]. 2018-02-17 18:47:17 -08:00
voussoir f4756d97e4 Improve html & Jinja indentation. 2018-02-17 18:19:47 -08:00
voussoir b02374136f Let the page add its own clipboard load/save hooks. 2018-02-17 16:31:51 -08:00
voussoir 1b631b33e9 Make separate functions for HTTP get / post. 2018-02-17 16:08:38 -08:00
voussoir 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
voussoir 606a66cbf9 Remove Photo.filepath and real_filepath in favor of real_path. 2018-02-17 15:19:36 -08:00
voussoir 42728d5d67 Add method Photo.set_override_filename. 2018-02-17 15:07:26 -08:00
voussoir f7bd49b2dd Add call to remove_control_chars in remove_bad_pathchars. 2018-02-17 15:07:12 -08:00