]> code.delx.au - comingnext/commitdiff
fixed update timer not being updated when changing update interval in settings
authorMichael Prager <michael@pragers.de>
Tue, 23 Nov 2010 14:04:28 +0000 (15:04 +0100)
committerMichael Prager <michael@pragers.de>
Tue, 23 Nov 2010 14:04:28 +0000 (15:04 +0100)
comingNext/index.html

index 445fe64fae879f7910b9bdb4ac67b43362c83eb3..f098716ed7d9b87159b2cc9ff3fdb910a6b70bed 100644 (file)
@@ -95,6 +95,8 @@ var settingsCache = null;
 var notificationRequests = new Array();\r
 var calendarList = [];\r
 var calendarColors = [];\r
+var updateTimer = null;\r
+var screenRotationTimer = null;\r
 \r
 // vars for daylight saving time\r
 var summertime = false; // true, if current date is in summer, false if in winter\r
@@ -837,9 +839,8 @@ function init()
        collectLocales();\r
        //updateData();\r
        requestNotification();\r
-       window.setInterval('updateData()', 1000 * 60 * config['updateDataInterval'].Value);\r
        document.getElementById("settingsTitle").innerHTML = getLocalizedText('menu.settings');\r
-\r
+       setUpdateTimer();\r
        if (window.innerHeight > 91) {\r
                mode = 0; // we're starting fullscreen, we set mode to homescreen in order to let updateScreen() do all the work for us\r
        }\r
@@ -850,10 +851,26 @@ function init()
        updateScreen();\r
        if (config['useBackgroundImage'].Value)\r
                // check for screen rotation every 1 secs\r
-               window.setInterval('updateScreen()', 1000 * 1);\r
+               screenRotationTimer = window.setInterval('updateScreen()', 1000 * 1);\r
        console.info("init(): finished...");\r
 }\r
 \r
+function setUpdateTimer()\r
+{\r
+       updateTimer = window.setInterval('updateTimerCallback()', 1000 * 60 * config['updateDataInterval'].Value);\r
+}\r
+\r
+function clearUpdateTimer() \r
+{\r
+       window.clearInterval(updateTimer);\r
+}\r
+\r
+function updateTimerCallback()\r
+{\r
+       console.info("updateTimerCallback()");\r
+       updateData();\r
+}\r
+\r
 function createMenu()\r
 {\r
        window.menu.setLeftSoftkeyLabel("",null);\r
@@ -1099,6 +1116,9 @@ function saveSettings()
        } catch (e) {\r
                error("saveSettings: " + e + ', line ' + e.line);\r
        }\r
+       \r
+       clearUpdateTimer();\r
+       setUpdateTimer();\r
 }\r
 \r
 function toggleVisibility(elementId)\r