aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--utils.py14
1 files changed, 4 insertions, 10 deletions
diff --git a/utils.py b/utils.py
index c7f63d0..b40624b 100644
--- a/utils.py
+++ b/utils.py
@@ -18,6 +18,7 @@ except ImportError:
markdown = None
import base64
+import mimetypes
def shorten(s, width = 60):
if len(s) < 60:
@@ -56,9 +57,8 @@ def can_markdown(fname):
def can_embed_image(fname):
"""True if we can embed image file in HTML, False otherwise."""
-
- exts = [ 'jpg', 'jpeg', 'png', 'gif', 'svg' ]
- if '.' in fname and fname.split('.')[-1] in exts:
+ exts = [ 'jpg', 'jpeg', 'png', 'gif' ]
+ if '.' in fname and fname.split('.')[-1].lower() in exts:
return True
return False
@@ -94,13 +94,7 @@ def markdown_blob(s):
return markdown.markdown(s)
def embed_image_blob(repo, dirname, fname):
- ext_to_mimetype = {'jpg': 'image/jpeg',
- 'jpeg': 'image/jpeg',
- 'png': 'image/png',
- 'gif': 'image/gif',
- 'svg': 'image/svg+xml',}
-
- mimetype = ext_to_mimetype[fname.split('.')[-1]]
+ mimetype = mimetypes.guess_type(fname)[0]
# Unfortunately, bottle seems to require utf-8 encoded data.
# We have to refetch the blob with raw=True, because the utf-8 encoded