catch a None case in the xml parsing of the timer
[enigma2.git] / lib / python / Screens / TimerEntry.py
index 703e4aba884cafc04b998eb8fb6abae15c74080e..a9a79d12dc4bf9dcf580320bc525840a2fdb0ba1 100644 (file)
@@ -81,6 +81,8 @@ class TimerEntry(Screen):
                        else: # once
                                type = 0
                                repeated = 0
+                               weekday = (int(strftime("%w", time.localtime(self.timer.begin))) - 1) % 7
+                               day[weekday] = 0
                        
                        config.timerentry.type = configElement_nonSave("config.timerentry.type", configSelection, type, (_("once"), _("repeated")))
                        config.timerentry.name = configElement_nonSave("config.timerentry.name", configText, self.timer.name, (configText.extendableSize, self.keyRightCallback))
@@ -138,7 +140,7 @@ class TimerEntry(Screen):
                self.list.append(self.timerTypeEntry)
 
                if (config.timerentry.type.value == 0): # once
-                       pass
+                       self.frequencyEntry = None
                else: # repeated
                        self.frequencyEntry = getConfigListEntry(_("Frequency"), config.timerentry.repeated)
                        self.list.append(self.frequencyEntry)
@@ -211,6 +213,8 @@ class TimerEntry(Screen):
        def keySelect(self):
                if self["config"].getCurrent() == self.channelEntry:
                        self.session.openWithCallback(self.finishedChannelSelection, ChannelSelection.SimpleChannelSelection, _("Select channel to record from"))
+               else:
+                       self.keyGo()
 
        def finishedChannelSelection(self, args):
                oldref = self.timer.service_ref
@@ -266,7 +270,7 @@ class TimerEntry(Screen):
                                if event.getNumOfLinkageServices() > 0:
                                        self.session.openWithCallback(self.subserviceSelected, SubserviceSelection, event, self.timer.service_ref.ref)
                                        return
-                       self.close((True, self.timer))
+               self.close((True, self.timer))
 
        def subserviceSelected(self, service):
                if not service is None: