From 03c656d0f97b1e3e0d23cb86ede3dc89ad65b29f Mon Sep 17 00:00:00 2001 From: jr-k Date: Wed, 28 Feb 2024 15:05:25 +0100 Subject: [PATCH] enable loop for slideshow with 1 slide only --- src/controller/PlayerController.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/controller/PlayerController.py b/src/controller/PlayerController.py index 4e5f90f..ee9cc1d 100644 --- a/src/controller/PlayerController.py +++ b/src/controller/PlayerController.py @@ -12,6 +12,14 @@ class PlayerController: self._slide_manager = slide_manager self.register() + def _get_playlist(self) -> dict: + slides = self._slide_manager.to_dict(self._slide_manager.get_enabled_slides()) + + if len(slides) == 1: + return [slides[0], slides[0]] + + return slides + def register(self): self._app.add_url_rule('/', 'player', self.player, methods=['GET']) self._app.add_url_rule('/player/default', 'player_default', self.player_default, methods=['GET']) @@ -20,7 +28,7 @@ class PlayerController: def player(self): return render_template( 'player/player.jinja.html', - items=json.dumps(self._slide_manager.to_dict(self._slide_manager.get_enabled_slides())) + items=json.dumps(self._get_playlist()) ) def player_default(self): @@ -32,4 +40,4 @@ class PlayerController: ) def player_playlist(self): - return jsonify(self._slide_manager.to_dict(self._slide_manager.get_enabled_slides())) + return jsonify(self._get_playlist())