-from Components.Sources.Source import Source\r
-from Components.config import config\r
-\r
-from Screens.MessageBox import MessageBox\r
-#DO NOT REMOVE THE FOLLOWING IMPORT, it ensures that config.sleeptimer.defaulttime is there\r
-import Screens.SleepTimerEdit\r
-\r
-class SleepTimer(Source):\r
- def __init__(self, session):\r
- Source.__init__(self)\r
- self.session = session\r
- self.res = ( False, \r
- config.SleepTimer.defaulttime.value,\r
- config.SleepTimer.action.value,\r
- "Obligatory parameters missing [cmd [set,get], time [0-999], action [standby,shutdown], enabled [True,False]" )\r
- \r
- def handleCommand(self, cmd):\r
- print "[WebComponents.SleepTimer].handleCommand"\r
- self.res = self.setSleeptimer(cmd)\r
- \r
- def setSleeptimer(self, cmd):\r
- print "[WebComponents.SleepTimer].setSleeptimer, cmd=%s" %cmd\r
- \r
- from Screens.Standby import inStandby\r
- \r
- if inStandby == None: \r
- if cmd['cmd'] is None or cmd['cmd'] == "get": \r
- if self.session.nav.SleepTimer.isActive():\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- self.session.nav.SleepTimer.getCurrentSleepTime(), \r
- config.SleepTimer.action.value, \r
- "Sleeptimer is enabled" ) \r
- else:\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value, \r
- "Sleeptimer is disabled" )\r
- \r
- elif cmd['cmd'] == "set":\r
- if cmd['enabled'] == 'True':\r
- enabled = True\r
- elif cmd['enabled'] == 'False':\r
- enabled = False\r
- else:\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value, \r
- "ERROR: Obligatory parameter 'enabled' [True,False] has unspecified value '%s'" %cmd['enabled'] ) \r
- \r
- if not enabled:\r
- self.session.nav.SleepTimer.clear()\r
- self.session.open(MessageBox, _("The sleep timer has been disabled."), MessageBox.TYPE_INFO)\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value,\r
- "Sleeptimer has been disabled" )\r
- \r
- else:\r
- if cmd['time'] is None :\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value,\r
- "ERROR: Obligatory parameter 'time' [0-999] is missing" )\r
- \r
- elif cmd['enabled'] is None :\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value,\r
- "Obligatory parameter 'enabled' [True,False] is missing" )\r
- \r
- time = int(float(cmd['time']))\r
- \r
- if cmd['action'] is None :\r
- action = "standby"\r
- else:\r
- action = cmd['action']\r
- \r
- if time > 999:\r
- time = 999 \r
- elif time < 0:\r
- time = 0\r
- \r
- if action == "shutdown":\r
- config.SleepTimer.action.value = action\r
- else:\r
- config.SleepTimer.action.value = "standby"\r
- \r
- config.SleepTimer.defaulttime.setValue(time)\r
- config.SleepTimer.defaulttime.save()\r
- config.SleepTimer.action.save()\r
- self.session.nav.SleepTimer.setSleepTime(time)\r
- self.session.open(MessageBox, _("The sleep timer has been activated for %s minutes.") %time, MessageBox.TYPE_INFO)\r
- \r
- return ( self.session.nav.SleepTimer.isActive(), \r
- time, \r
- config.SleepTimer.action.value,\r
- "Sleeptimer set to %s minutes" %time)\r
- \r
- else:\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value, \r
- "ERROR: Obligatory parameter 'cmd' [get,set] has unspecified value '%s'" %cmd['cmd'] ) \r
- else:\r
- return ( self.session.nav.SleepTimer.isActive(), \r
- config.SleepTimer.defaulttime.value, \r
- config.SleepTimer.action.value, \r
- "ERROR: Cannot set SleepTimer while device is in Standby-Mode" )\r
- \r
- def getResult(self):\r
- return self.res\r
- \r
- timer = property(getResult)\r
+from Components.Sources.Source import Source
+from Components.config import config
+
+from Screens.MessageBox import MessageBox
+#DO NOT REMOVE THE FOLLOWING IMPORT, it ensures that config.sleeptimer.defaulttime is there
+import Screens.SleepTimerEdit
+
+class SleepTimer(Source):
+ def __init__(self, session):
+ Source.__init__(self)
+ self.session = session
+ self.res = ( False,
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "Obligatory parameters missing [cmd [set,get], time [0-999], action [standby,shutdown], enabled [True,False]" )
+
+ def handleCommand(self, cmd):
+ print "[WebComponents.SleepTimer].handleCommand"
+ self.res = self.setSleeptimer(cmd)
+
+ def setSleeptimer(self, cmd):
+ print "[WebComponents.SleepTimer].setSleeptimer, cmd=%s" %cmd
+
+ from Screens.Standby import inStandby
+
+ if inStandby == None:
+ if cmd['cmd'] is None or cmd['cmd'] == "get":
+ if self.session.nav.SleepTimer.isActive():
+ return ( self.session.nav.SleepTimer.isActive(),
+ self.session.nav.SleepTimer.getCurrentSleepTime(),
+ config.SleepTimer.action.value,
+ "Sleeptimer is enabled" )
+ else:
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "Sleeptimer is disabled" )
+
+ elif cmd['cmd'] == "set":
+ if cmd['enabled'] == 'True':
+ enabled = True
+ elif cmd['enabled'] == 'False':
+ enabled = False
+ else:
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "ERROR: Obligatory parameter 'enabled' [True,False] has unspecified value '%s'" %cmd['enabled'] )
+
+ if not enabled:
+ self.session.nav.SleepTimer.clear()
+ self.session.open(MessageBox, _("The sleep timer has been disabled."), MessageBox.TYPE_INFO)
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "Sleeptimer has been disabled" )
+
+ else:
+ if cmd['time'] is None :
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "ERROR: Obligatory parameter 'time' [0-999] is missing" )
+
+ elif cmd['enabled'] is None :
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "Obligatory parameter 'enabled' [True,False] is missing" )
+
+ time = int(float(cmd['time']))
+
+ if cmd['action'] is None :
+ action = "standby"
+ else:
+ action = cmd['action']
+
+ if time > 999:
+ time = 999
+ elif time < 0:
+ time = 0
+
+ if action == "shutdown":
+ config.SleepTimer.action.value = action
+ else:
+ config.SleepTimer.action.value = "standby"
+
+ config.SleepTimer.defaulttime.setValue(time)
+ config.SleepTimer.defaulttime.save()
+ config.SleepTimer.action.save()
+ self.session.nav.SleepTimer.setSleepTime(time)
+ self.session.open(MessageBox, _("The sleep timer has been activated for %s minutes.") %time, MessageBox.TYPE_INFO)
+
+ return ( self.session.nav.SleepTimer.isActive(),
+ time,
+ config.SleepTimer.action.value,
+ "Sleeptimer set to %s minutes" %time)
+
+ else:
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "ERROR: Obligatory parameter 'cmd' [get,set] has unspecified value '%s'" %cmd['cmd'] )
+ else:
+ return ( self.session.nav.SleepTimer.isActive(),
+ config.SleepTimer.defaulttime.value,
+ config.SleepTimer.action.value,
+ "ERROR: Cannot set SleepTimer while device is in Standby-Mode" )
+
+ def getResult(self):
+ return self.res
+
+ timer = property(getResult)
\ No newline at end of file