From cd37e1ee3ae3718b6488825f0285e5f28e6331d5 Mon Sep 17 00:00:00 2001 From: Neale Pickett Date: Fri, 14 Aug 2020 11:06:02 -0600 Subject: [PATCH] Sort attachments, add icon back --- devel/moth.py | 20 ++++++++-------- theme/luna-moth.png | Bin 0 -> 34559 bytes theme/luna-moth.svg | 57 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+), 10 deletions(-) create mode 100644 theme/luna-moth.png create mode 100644 theme/luna-moth.svg diff --git a/devel/moth.py b/devel/moth.py index c84f102..7df34f1 100644 --- a/devel/moth.py +++ b/devel/moth.py @@ -249,15 +249,10 @@ class Puzzle: elif key == 'files' and isinstance(val, dict): for filename, options in val.items(): - if "source" in options: - source = options["source"] - else: - source = filename - - if "hidden" in options and options["hidden"]: - hidden = True - else: - hidden = False + if not options: + options = {} + source = options.get("source", filename) + hidden = options.get("hidden", False) stream = open(source, "rb") self.files[filename] = PuzzleFile(stream, filename, not hidden) @@ -338,6 +333,11 @@ class Puzzle: name = self.random_hash() self.files[name] = PuzzleFile(stream, name, visible) + def create_stream(self, name=None, visible=True): + stream = io.BytesIO() + self.add_stream(stream, name, visible) + return stream + def add_file(self, filename, visible=True): fd = open(filename, 'rb') name = os.path.basename(filename) @@ -444,7 +444,7 @@ class Puzzle: def package(self, answers=False): """Return a dict packaging of the puzzle.""" - files = [fn for fn,f in self.files.items() if f.visible] + files = sorted([fn for fn,f in self.files.items() if f.visible]) hidden = [fn for fn,f in self.files.items() if not f.visible] return { 'authors': self.get_authors(), diff --git a/theme/luna-moth.png b/theme/luna-moth.png new file mode 100644 index 0000000000000000000000000000000000000000..0e341149ffdc04ea9d0a9a31a640d77a2ab8c901 GIT binary patch literal 34559 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 literal 0 HcmV?d00001 diff --git a/theme/luna-moth.svg b/theme/luna-moth.svg new file mode 100644 index 0000000..f44eaef --- /dev/null +++ b/theme/luna-moth.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file