]> kaliko git repositories - mpd-sima.git/blobdiff - sima/plugins/core/mpdoptions.py
Add option to prevent single|repeat to disable queuing (Closes #19)
[mpd-sima.git] / sima / plugins / core / mpdoptions.py
index be47a40f94914aff65d81814042b4f005e6c75dc..47b0c042e6fcbb5fbbdf67d234aa24c08a83d2d4 100644 (file)
@@ -1,6 +1,24 @@
 # -*- coding: utf-8 -*-
+# Copyright (c) 2013, 2014 Jack Kaliko <kaliko@azylum.org>
+#
+#  This file is part of sima
+#
+#  sima is free software: you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation, either version 3 of the License, or
+#  (at your option) any later version.
+#
+#  sima is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#
+#  You should have received a copy of the GNU General Public License
+#  along with sima.  If not, see <http://www.gnu.org/licenses/>.
+#
+#
 """
-    Deal with MPD options ‑ idle and repeat mode
+    Deal with MPD options ‑ single and repeat mode
 """
 
 # standard library import
@@ -13,7 +31,7 @@ from ...lib.plugin import Plugin
 
 class MpdOptions(Plugin):
     """
-    Deal with MPD options  idle and repeat mode
+    Deal with MPD options - idle and repeat mode
     """
 
     def __init__(self, daemon):
@@ -25,12 +43,14 @@ class MpdOptions(Plugin):
         Called on player changes
         """
         player = self.daemon.player
-        if player.status().get('single') == str(1):
-            self.log.info('MPD "single" mode activated.')
-            self.daemon.enabled = False
-        elif player.status().get('repeat') == str(1):
-            self.log.info('MPD "repeat" mode activated.')
-            self.daemon.enabled = False
+        if player.playmode.get('single'):
+            if self.daemon.config.getboolean('sima', 'single_disable_queue'):
+                self.log.info('MPD "single" mode activated.')
+                self.daemon.enabled = False
+        elif player.playmode.get('repeat'):
+            if self.daemon.config.getboolean('sima', 'repeat_disable_queue'):
+                self.log.info('MPD "repeat" mode activated.')
+                self.daemon.enabled = False
         else:
             if self.daemon.enabled is False:
                 self.log.debug('enabling queuing (leaving single|repeat mode)')