diff --git a/libsaria/__init__.py b/libsaria/__init__.py index 1addd497..4560c606 100644 --- a/libsaria/__init__.py +++ b/libsaria/__init__.py @@ -7,10 +7,7 @@ import path import sources import controls - -server = None -if version.__dev__ == True: - import server +import server from path import lastfm #plugin = None @@ -27,8 +24,7 @@ def startup(): def shutdown(): audio.shutdown() - if server != None: - server.shutdown() + server.shutdown() ## import plugin ## plugin.quit() diff --git a/libsaria/server/__init__.py b/libsaria/server/__init__.py index 90319370..de383f9c 100644 --- a/libsaria/server/__init__.py +++ b/libsaria/server/__init__.py @@ -3,19 +3,39 @@ from BaseHTTPServer import HTTPServer import threading +from libsaria import prefs import request server = None +PREF_KEY="libsaria.server.enabled" +prefs.init(PREF_KEY, False) def setup_server(): global server + if prefs.get(PREF_KEY) == False: + return try: server = HTTPServer(('', 4242), request.Handler) server.serve_forever() except Exception,e: print "Error starting server:", e -threading.Thread(target=setup_server).start() + +def startup(): + threading.Thread(target=setup_server).start() +startup() def shutdown(): + global server if server != None: server.shutdown() + server = None + +def get_state(): + return prefs.get(PREF_KEY) + +def toggle_state(active): + prefs.set(PREF_KEY, active) + if active == True: + startup() + else: + shutdown()