6cb545af8b
Fix incorrect error message when deleting invalid synonym.
...
Because P_tag was raising 404 with "no such tag" when
we know it should have been "no such synonym".
2018-07-28 19:14:02 -07:00
22d2efa289
Add 'event' to toggle_hoverzoom header for firefox's benefit.
2018-07-28 16:16:16 -07:00
dfff79baa7
Oops, fix broken clipboard reference due to namespace change.
2018-07-28 16:15:15 -07:00
89850497da
Apply the squared 3d button css to all <button>.
2018-07-28 16:04:57 -07:00
9c354249c9
Rename variable editor -> ed to avoid conflicting with the module.
...
Even in cases that were not causing problems, for consistency.
2018-07-28 15:17:18 -07:00
1b90850818
Oops, add the required_feature decorators to remove_child.
2018-07-22 21:06:16 -07:00
977b47522d
Add autocomplete to /clipboard.
2018-07-22 20:45:16 -07:00
2a45f4e17e
Add parameter albums to purge_empty_albums as starting set.
...
Like purge_deleted_files, you can provide a list of albums to
act as the starting point instead of letting it use the default
of all albums.
2018-07-22 20:21:00 -07:00
c840845c7d
Add namespacing to albums.js.
2018-07-22 20:21:00 -07:00
1bff642ca7
Add namespacing to hotkeys.js.
2018-07-22 20:21:00 -07:00
63a3ecfa88
Add namespacing to editor.js.
2018-07-22 20:21:00 -07:00
d7b9020585
Add namespacing to photoclipboard.js.
2018-07-22 20:21:00 -07:00
c7cce5a4e5
Add namespacing to common.js.
2018-07-22 20:21:00 -07:00
cf9b6d0725
Workaround autocomplete box sticking around after submitting.
2018-07-22 20:20:54 -07:00
5ec38a93b1
On the tag ancestors, don't display the current tag name.
...
I was finding it too confusing.
2018-07-22 20:19:05 -07:00
8a12a24e8e
Add tag_autocomplete.js.
...
Instead of embedding the entire tag list in the search.html template
every single time, this script loads the tags from the new,
cache-enabled endpoint /all_tags.json. Then we can use html5
datalists to create autocomplete forms on the search and photo pages.
2018-07-22 20:19:05 -07:00
bbf07f4401
Fix image thumbnail wrong variable bug.
...
How long has that been there?
2018-07-22 20:19:05 -07:00
5ac3a8a121
Add caching.cached_endpoint decorator for 304'ing any url.
2018-07-22 20:19:05 -07:00
d740e6d686
Oops, fix read_filebytes not stopping at the range_max properly.
2018-07-22 20:18:58 -07:00
4c65ccaf68
Big! Liberate Groupables from strict heirarchy. Multiple parents.
...
I found that the strict heirarchy was not satisfying the situation
where one tag is the intersection of two others, but we can only
pick one as the parent
For example, does red_jacket belong under clothes.red_clothes or
clothes.jackets? A search for "red_clothes AND jackets" might
give us someone wearing red pants and a black jacket, so this
definitely needs to be a separate tag, but picking only one
parent for it is not sufficient. Now, a search for red_clothes
and a search for jackets will both find our red_jacket photo.
The change also applies to Albums because why not, and I'm sure
a similar case can be made.
Unfortunately this means tags no longer have one true qualname.
The concept of qualnames has not been completely phased out but
it's in progress.
This commit is very big because I was not sure for a long time
whether to go through with it, and so much stuff had to change
that I don't want to go back and figure out what could be grouped
together.
2018-07-20 13:09:06 -07:00
c2cfa99752
Alphabetize imports in endpoints files.
2018-07-18 18:37:21 -07:00
4987db4bd0
Switch to f-string formatting in many places.
2018-07-18 18:36:36 -07:00
4a39873fed
Increase default tag cache to 10,000.
2018-07-18 18:27:18 -07:00
38bac41eb9
Add helpers.split_easybake_string for prelim parsing.
...
Helps to remove some distractions from the main easybake method.
2018-07-15 14:23:43 -07:00
f06b0915ab
Add new_photo_kwargs to the create_or_get call.
...
Due to the closure, it was already working just fine, but I
want the explicitness of having it there.
2018-07-15 13:52:08 -07:00
57a9e0d4dc
Move PDB.close out of the sqlmixin, into main class.
...
Doesn't really deserve to be with the sql stuff.
2018-07-15 13:27:04 -07:00
5c97086df3
Improve hotkey framework by making own file & register function.
2018-07-14 14:19:13 -07:00
2901fefe65
Add more clipboard feature hotkeys.
2018-07-14 02:54:39 -07:00
984f6eb3c7
Add a clear button to the clipboard tray.
2018-07-14 02:49:45 -07:00
c37b54b456
Add dividers and rearrange some of the table column parsing.
2018-07-13 19:22:05 -07:00
2f83bc2808
Add a simple docstring to the flask launch files.
2018-06-30 12:59:10 -07:00
0852630cd1
Alphabetize _extract_table_name.
2018-06-30 12:55:30 -07:00
c930228d3f
Rearrange order of Album.delete ops to not void FK contraint.
2018-06-30 12:51:09 -07:00
c736c33165
Add caching of tag synonyms.
2018-05-06 21:09:15 -07:00
c6b71f1a0d
Revert caching of qualified names. Causing too many problems.
...
The world is just not ready for it. Was having issues about the
parents being deleted / renamed and needing to propogate those
changes in a not-ugly way.
Will reassess in the future.
2018-05-06 21:09:09 -07:00
0c8a57b6aa
Make the assert methods public.
2018-05-06 21:09:09 -07:00
40c255b0d0
Pass object instantiations through a cacher.
...
I want the system to only have one instance of a particular
object at any time, so that we can effectively cache things
in them.
2018-05-06 21:09:08 -07:00
11fda94968
Make the SQL_COLUMNS code a bit easier to read.
2018-05-06 21:09:02 -07:00
db28b6819c
Replace individual cache instantiations with all at once.
2018-05-06 21:08:56 -07:00
96d79f2b25
Oops, let separate loading of pragmas for not-first-time load.
...
Since DB_INIT was only run during first time setup, all future
loads were not running the pragmas, not even the FK restriction.
2018-05-03 19:02:53 -07:00
64449569ea
Rearrange statements during tag delete to not voilate FK.
2018-05-03 18:59:50 -07:00
23cc769357
Take advantage of parent's cached_qualname when making mine.
2018-05-03 18:45:57 -07:00
943deb9bf7
Move child-lifting code to its own helper method.
2018-05-03 18:32:44 -07:00
ae46b097e4
Let get_tag_by_name return inputted Tag right away.
...
For caller's convenience most functions assume you are passing
name as a string, but if you already have the Tag we'll just use it.
2018-05-03 18:20:48 -07:00
a0e3e037c1
Bail out of join_group early if already immediate parent.
...
I'd rather make the extra select than a delete and reinsert.
2018-05-03 18:18:13 -07:00
22269af2ca
Always use False for leave commit before joining new group.
2018-05-03 18:10:12 -07:00
a8fc1206d9
Oops, move get_root_tags into alphabetical position.
2018-05-02 17:41:46 -07:00
4002cc660e
Don't use shortlink for zoom url. It breaks caching.
2018-05-01 21:03:10 -07:00
58d450a856
Fix handling of the event that a file loses its thumbnail.
...
In which case return_filepath is None and the relative_to breaks.
2018-05-01 20:41:38 -07:00
1626a6fa11
Optimize PDB.get_root_albums and get_root_tags.
...
Achieves in a single query what used to require a ton of
individual get_parent calls.
2018-05-01 20:32:45 -07:00