From d9f4846aa524efe631e516317b450a4d58ae1f79 Mon Sep 17 00:00:00 2001 From: Ville Rantanen Date: Tue, 31 Aug 2021 15:54:48 +0300 Subject: [PATCH] video support --- README.md | 1 + mirva/__init__.py | 2 +- mirva/mirva.py | 24 ++++++++++++++++++++++-- mirva/resources/style.css | 2 ++ 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 91157a1..752f093 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # Mirva A tool to create a web gallery from a single folder of images. +Also .mp4 files are included in the gallery ## Installation diff --git a/mirva/__init__.py b/mirva/__init__.py index f95b5a7..2c50999 100644 --- a/mirva/__init__.py +++ b/mirva/__init__.py @@ -1,4 +1,4 @@ -__version__ = "20210826.0" +__version__ = "20210831.0" def get_version(): diff --git a/mirva/mirva.py b/mirva/mirva.py index a7d25a1..bd87516 100755 --- a/mirva/mirva.py +++ b/mirva/mirva.py @@ -17,6 +17,8 @@ class Mirva: self.resource_dir = ".mirva" self.config_file = os.path.join(self.resource_dir, "config.cfg") self.config_backup = os.path.join(self.resource_dir, "config.cfg.bkp") + self.image_match = re.compile(".*\.jpg$|.*\.jpeg$|.*\.png$|.*\.gif$|.*\.tif$", re.I) + self.video_match = re.compile(".*\.mp4$", re.I) self.get_options() os.chdir(self.options.folder) self.write_resources() @@ -92,7 +94,7 @@ class Mirva: for f in sorted(os.listdir(".")): if f.startswith("."): continue - if not image_match.match(f): + if not (self.image_match.match(f) or self.video_match.match(f)): continue files.append(f) return files @@ -233,6 +235,22 @@ function create_button(direction, to) {{ def get_post(self, image, title, content): + if self.video_match.match(image): + return """ +
+ + +
{title}
+
 
+
{content}
+
""".format( + image=image, title=title, content=content + ) + return """
@@ -302,9 +320,11 @@ function create_button(direction, to) {{ if link: r = 0 + res = "{:d}x{:d}>".format(int(r), int(r)) force = self.options.force for f in self.file_list: - res = "{:d}x{:d}>".format(int(r), int(r)) + if self.video_match.match(f): + continue outfile = os.path.join(".med", "{}.jpg".format(f)) if force: try: diff --git a/mirva/resources/style.css b/mirva/resources/style.css index d710f26..cae95d6 100644 --- a/mirva/resources/style.css +++ b/mirva/resources/style.css @@ -196,11 +196,13 @@ a:hover { .post_image { max-height: calc(100vh - 60px); max-width: calc(100vw - 128px); + display: inline; } @media only screen and (max-width: 800px) { .post_image { max-height: calc(100vh - 2px); max-width: calc(100vw - 2px); + display: inline; } } /* Footer */