]> git.0d.be Git - django-panik-nonstop.git/blobdiff - nonstop/app_settings.py
stamina: add settings/hack to merge tracks from multiple zones
[django-panik-nonstop.git] / nonstop / app_settings.py
index 5873b69f7d4db7b784088126178f10d64dad4874..641f1aad00310df8afcb2df78d340ce35c65147f 100644 (file)
@@ -3,7 +3,7 @@ from django.conf import settings
 
 class AppSettings:
     def get_setting(self, setting, default=None):
-        return settings.getattr('NONSTOP_' + setting, default)
+        return getattr(settings, 'NONSTOP_' + setting, default)
 
     @property
     def REMOTE_BASE_PATH(self):
@@ -13,5 +13,49 @@ class AppSettings:
     def LOCAL_BASE_PATH(self):
         return self.get_setting('LOCAL_BASE_PATH', '/media/nonstop/')
 
+    @property
+    def JINGLES_PREFIX(self):
+        # relative to ..._BASE_PATH
+        return self.get_setting('JINGLES_PREFIX', 'SPOTS')
+
+    @property
+    def DEBUG_WITH_SLEEPS(self):
+        return self.get_setting('DEBUG_WITH_SLEEPS', False)
+
+    @property
+    def PLAYER_COMMAND(self):
+        return self.get_setting('PLAYER_COMMAND', 'mpv')
+
+    @property
+    def PLAYER_ARGS(self):
+        return self.get_setting('PLAYER_ARGS', [])
+
+    @property
+    def ON_AIR_SWITCH_URL(self):
+        return self.get_setting('ON_AIR_SWITCH_URL', None)
+
+    @property
+    def NO_REPEAT_DELAY(self):
+        return self.get_setting('NO_REPEAT_DELAY', 7)
+
+    @property
+    def AUTO_SCHEDULE(self):
+        return self.get_setting('AUTO_SCHEDULE', False)
+
+    @property
+    def SERVER_BIND_IFACE(self):
+        return self.get_setting('SERVER_BIND_IFACE', '127.0.0.1')
+
+    @property
+    def SERVER_BIND_PORT(self):
+        return self.get_setting('SERVER_BIND_PORT', 8888)
+
+    @property
+    def EXTRA_ZONES(self):
+        # zone slug to list of zone slugs,
+        # ex: {"le-mange-disque": ['hop-bop-and-co', 'up-beat-tempo']}
+        # to get tracks from additional zones.
+        return self.get_setting('EXTRA_ZONES', {})
+
 
 app_settings = AppSettings()