]> git.ipfire.org Git - ipfire.org.git/blobdiff - src/backend/wiki.py
docs: Deliver images in WEBP format if the browser supports it
[ipfire.org.git] / src / backend / wiki.py
index 6bc2cf7a16787f806b0e704035b1380be019bbfe..349a94d08b3b76324f518eb471a86da4c6813b11 100644 (file)
@@ -685,13 +685,16 @@ class File(misc.Object):
                if res:
                        return bytes(res.data)
 
-       async def get_thumbnail(self, size):
+       async def get_thumbnail(self, size, format=None):
                assert self.is_bitmap_image()
 
-               cache_key = "-".join((
+               cache_key = ":".join((
+                       "wiki",
+                       "thumbnail",
                        self.path,
                        util.normalize(self.filename),
                        self.created_at.isoformat(),
+                       format or "N/A",
                        "%spx" % size,
                ))
 
@@ -701,7 +704,7 @@ class File(misc.Object):
                        return thumbnail
 
                # Generate the thumbnail
-               thumbnail = util.generate_thumbnail(self.blob, size)
+               thumbnail = util.generate_thumbnail(self.blob, size, format=format)
 
                # Put it into the cache for forever
                await self.backend.cache.set(cache_key, thumbnail)