From 9a327e6082e10f8d2b93d09e5c1c17e61ee7e29b Mon Sep 17 00:00:00 2001 From: Ethan Dalool Date: Sun, 30 Oct 2016 14:20:46 -0700 Subject: [PATCH] checkpoint --- etiquette/phototagger.py | 4 +- etiquette/static/basic_thumbnails/svg.png | Bin 0 -> 22655 bytes etiquette/static/basic_thumbnails/svg.svg | 157 ++++++++++++++++++++++ etiquette/templates/photo_object.html | 1 + 4 files changed, 161 insertions(+), 1 deletion(-) create mode 100644 etiquette/static/basic_thumbnails/svg.png create mode 100644 etiquette/static/basic_thumbnails/svg.svg diff --git a/etiquette/phototagger.py b/etiquette/phototagger.py index 7c8b13f..6e77858 100644 --- a/etiquette/phototagger.py +++ b/etiquette/phototagger.py @@ -210,7 +210,7 @@ def _helper_extension(ext): ext = [ext] if ext is None: return set() - ext = [e.lower() for e in ext] + ext = [e.lower().strip('.') for e in ext] ext = [e for e in ext if e] ext = set(ext) return ext @@ -504,6 +504,7 @@ def searchfilter_expression(photo_tags, expression, frozen_children, warn_bad_ta if token not in OPERATORS: try: + token = normalize_tagname(token) value = any(option in photo_tags for option in frozen_children[token]) except KeyError: if warn_bad_tags: @@ -1694,6 +1695,7 @@ class Album(ObjectBase, GroupableMixin): photoid = photo[SQL_ALBUMPHOTO['photoid']] photo = self.photodb.get_photo(photoid) photos.append(photo) + photos.sort(key=lambda x: x.basename.lower()) return photos def remove_photo(self, photo, commit=True): diff --git a/etiquette/static/basic_thumbnails/svg.png b/etiquette/static/basic_thumbnails/svg.png new file mode 100644 index 0000000000000000000000000000000000000000..ccb1fa40a58a738ff1591c16a175c9e75d596a82 GIT binary patch literal 22655 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 + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/etiquette/templates/photo_object.html b/etiquette/templates/photo_object.html index 65bd8f6..76597c5 100644 --- a/etiquette/templates/photo_object.html +++ b/etiquette/templates/photo_object.html @@ -2,6 +2,7 @@ { "audio": "audio", "txt": "txt", + "svg": "svg", "video": "video", } %}