From e19e90e703e7d2361b0c586dc5e127d1b8a16096 Mon Sep 17 00:00:00 2001
From: angelblue05 <tamara.angel05@gmail.com>
Date: Sun, 4 Sep 2016 19:28:30 -0500
Subject: [PATCH] Review server offline

Add settings to disable offline server message
---
 resources/language/English/strings.xml |  1 +
 resources/lib/websocket_client.py      |  4 ++++
 resources/settings.xml                 |  1 +
 service.py                             | 11 ++++++-----
 4 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/resources/language/English/strings.xml b/resources/language/English/strings.xml
index affdc2da..d15ccde0 100644
--- a/resources/language/English/strings.xml
+++ b/resources/language/English/strings.xml
@@ -229,6 +229,7 @@
     <string id="30542">Server</string>
     <string id="30543">Username or email</string>
     <string id="30544">Enable database locked fix (will slow syncing process)</string>
+    <string id="30545">Enable server offline message</string>
 
     <!-- dialogs -->
     <string id="30600">Sign in with Emby Connect</string>
diff --git a/resources/lib/websocket_client.py b/resources/lib/websocket_client.py
index c79e81d0..3681b803 100644
--- a/resources/lib/websocket_client.py
+++ b/resources/lib/websocket_client.py
@@ -254,6 +254,10 @@ class WebSocket_Client(threading.Thread):
             userclient.UserClient().get_user(data)
             self.librarySync.refresh_views = True
 
+        elif messageType == "ServerShuttingDown":
+            # Server went offline
+            window('emby_online', value="false")
+
     def on_close(self, ws):
         log.debug("Closed.")
 
diff --git a/resources/settings.xml b/resources/settings.xml
index d9f9ec81..ca8c51fd 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -67,6 +67,7 @@
 		<setting id="additionalUsers" type="text" label="30528" default="" />
 		<setting type="lsep" label="30534" />
 		<setting id="connectMsg" type="bool" label="30249" default="true" />
+		<setting id="offlinetMsg" type="bool" label="30545" default="true" />
         <setting id="restartMsg" type="bool" label="30530" default="false" />
         <setting id="newContent" type="bool" label="30531" default="false" />
         <setting id="newvideotime" type="number" label="30532" visible="eq(-1,true)" default="5" option="int" subsetting="true" />
diff --git a/service.py b/service.py
index 0cd245c5..3c3551c1 100644
--- a/service.py
+++ b/service.py
@@ -227,11 +227,12 @@ class Service(object):
                             log.info("Server is offline.")
                             window('emby_online', value="false")
 
-                            xbmcgui.Dialog().notification(
-                                        heading=lang(33001),
-                                        message="%s %s" % (self.addonName, lang(33002)),
-                                        icon="special://home/addons/plugin.video.emby/icon.png",
-                                        sound=False)
+                            if settings('offlineMsg') == "true":
+                                xbmcgui.Dialog().notification(
+                                            heading=lang(33001),
+                                            message="%s %s" % (self.addonName, lang(33002)),
+                                            icon="special://home/addons/plugin.video.emby/icon.png",
+                                            sound=False)
                         
                         self.server_online = False