- if (config.timerentry.type.value == 0): # once
- self.timer.begin = self.getTimestamp(config.timerentry.startdate.value, config.timerentry.starttime.value)
- self.timer.end = self.getTimestamp(config.timerentry.enddate.value, config.timerentry.endtime.value)
- if (config.timerentry.type.value == 1): # repeated
- if (config.timerentry.repeated.value == 0): # daily
- self.timer.setRepeated(0) # Mon
- self.timer.setRepeated(1) # Tue
- self.timer.setRepeated(2) # Wed
- self.timer.setRepeated(3) # Thu
- self.timer.setRepeated(4) # Fri
- self.timer.setRepeated(5) # Sat
- self.timer.setRepeated(6) # Sun
-
- if (config.timerentry.repeated.value == 1): # weekly
- self.timer.setRepeated(config.timerentry.weekday.value)
-
- if (config.timerentry.repeated.value == 2): # Mon-Fri
- self.timer.setRepeated(0) # Mon
- self.timer.setRepeated(1) # Tue
- self.timer.setRepeated(2) # Wed
- self.timer.setRepeated(3) # Thu
- self.timer.setRepeated(4) # Fri
-
- if (config.timerentry.repeated.value == 3): # user-defined
- if (config.timerentry.monday.value == 0): self.timer.setRepeated(0)
- if (config.timerentry.tuesday.value == 0): self.timer.setRepeated(1)
- if (config.timerentry.wednesday.value == 0): self.timer.setRepeated(2)
- if (config.timerentry.thursday.value == 0): self.timer.setRepeated(3)
- if (config.timerentry.friday.value == 0): self.timer.setRepeated(4)
- if (config.timerentry.saturday.value == 0): self.timer.setRepeated(5)
- if (config.timerentry.sunday.value == 0): self.timer.setRepeated(6)
-
+ self.timer.name = self.timerentry_name.value
+ self.timer.description = self.timerentry_description.value
+ self.timer.justplay = self.timerentry_justplay.value == "zap"
+ self.timer.resetRepeated()
+ self.timer.afterEvent = {
+ "nothing": AFTEREVENT.NONE,
+ "deepstandby": AFTEREVENT.DEEPSTANDBY,
+ "standby": AFTEREVENT.STANDBY,
+ "auto": AFTEREVENT.AUTO
+ }[self.timerentry_afterevent.value]
+ self.timer.service_ref = self.timerentry_service_ref
+ self.timer.tags = self.timerentry_tags
+
+ self.timer.dirname = self.timerentry_dirname.value
+ config.movielist.last_timer_videodir.value = self.timer.dirname
+ config.movielist.last_timer_videodir.save()
+
+ if self.timerentry_type.value == "once":
+ self.timer.begin, self.timer.end = self.getBeginEnd()
+ if self.timerentry_type.value == "repeated":
+ if self.timerentry_repeated.value == "daily":
+ for x in (0, 1, 2, 3, 4, 5, 6):
+ self.timer.setRepeated(x)
+
+ if self.timerentry_repeated.value == "weekly":
+ self.timer.setRepeated(self.timerentry_weekday.index)
+
+ if self.timerentry_repeated.value == "weekdays":
+ for x in (0, 1, 2, 3, 4):
+ self.timer.setRepeated(x)
+
+ if self.timerentry_repeated.value == "user":
+ for x in (0, 1, 2, 3, 4, 5, 6):
+ if self.timerentry_day[x].value:
+ self.timer.setRepeated(x)
+
+ self.timer.repeatedbegindate = self.getTimestamp(self.timerentry_repeatedbegindate.value, self.timerentry_starttime.value)
+ if self.timer.repeated:
+ self.timer.begin = self.getTimestamp(self.timerentry_repeatedbegindate.value, self.timerentry_starttime.value)
+ self.timer.end = self.getTimestamp(self.timerentry_repeatedbegindate.value, self.timerentry_endtime.value)
+ else:
+ self.timer.begin = self.getTimestamp(time.time(), self.timerentry_starttime.value)
+ self.timer.end = self.getTimestamp(time.time(), self.timerentry_endtime.value)
+
+ # when a timer end is set before the start, add 1 day
+ if self.timer.end < self.timer.begin:
+ self.timer.end += 86400
+
+ if self.timer.eit is not None:
+ event = eEPGCache.getInstance().lookupEventId(self.timer.service_ref.ref, self.timer.eit)
+ if event:
+ n = event.getNumOfLinkageServices()
+ if n > 1:
+ tlist = []
+ ref = self.session.nav.getCurrentlyPlayingServiceReference()
+ parent = self.timer.service_ref.ref
+ selection = 0
+ for x in range(n):
+ i = event.getLinkageService(parent, x)
+ if i.toString() == ref.toString():
+ selection = x
+ tlist.append((i.getName(), i))
+ self.session.openWithCallback(self.subserviceSelected, ChoiceBox, title=_("Please select a subservice to record..."), list = tlist, selection = selection)
+ return
+ elif n > 0:
+ parent = self.timer.service_ref.ref
+ self.timer.service_ref = ServiceReference(event.getLinkageService(parent, 0))
+ self.saveTimer()
+ self.close((True, self.timer))