X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=RecordTimer.py;h=147a38fc6510660b340719e9d5fa2c74d6a6d407;hp=63ddaab0c77109190b2e30e47f27b535f3014ede;hb=04f4636324ab06c5a3a4f618100048e159eaf6f9;hpb=bc937acb188ea59ced7d67ceaa91f2598db39ab9 diff --git a/RecordTimer.py b/RecordTimer.py index 63ddaab..147a38f 100644 --- a/RecordTimer.py +++ b/RecordTimer.py @@ -115,6 +115,7 @@ class RecordTimerEntry(timer.TimerEntry, object): self.justplay = justplay self.afterEvent = afterEvent self.dirname = dirname + self.dirnameHadToFallback = False self.log_entries = [] self.resetState() @@ -122,13 +123,7 @@ class RecordTimerEntry(timer.TimerEntry, object): def log(self, code, msg): self.log_entries.append((int(time.time()), code, msg)) print "[TIMER]", msg - - def resetState(self): - self.state = self.StateWaiting - self.cancelled = False - self.first_try_prepare = True - self.timeChanged() - + def calculateFilename(self): service_name = self.service_ref.getServiceName() begin_date = time.strftime("%Y%m%d %H%M", time.localtime(self.begin)) @@ -142,7 +137,11 @@ class RecordTimerEntry(timer.TimerEntry, object): if self.name: filename += " - " + self.name - self.Filename = Directories.getRecordingFilename(filename, self.dirname) + if self.dirname and not Directories.pathExists(self.dirname): + self.dirnameHadToFallback = True + self.Filename = Directories.getRecordingFilename(filename, None) + else: + self.Filename = Directories.getRecordingFilename(filename, self.dirname) self.log(0, "Filename calculated as: '%s'" % self.Filename) #begin_date + " - " + service_name + description) @@ -329,8 +328,12 @@ class RecordTimerEntry(timer.TimerEntry, object): # that in our state, with also keeping the possibility to re-try. # TODO: this has to be done. elif event == iRecordableService.evStart: + text = _("A record has been started:\n%s") % self.name + if self.dirnameHadToFallback: + text = '\n'.join([text, _("Please note that the previously selected media could not be accessed and therefore the default directory is being used instead.")]) + # maybe this should be configurable? - Notifications.AddPopup(text = _("A record has been started:\n%s") % self.name, type = MessageBox.TYPE_INFO, timeout = 3) + Notifications.AddPopup(text = text, type = MessageBox.TYPE_INFO, timeout = 3) # we have record_service as property to automatically subscribe to record service events def setRecordService(self, service): @@ -361,11 +364,10 @@ def createTimer(xml): else: eit = None if xml.hasAttribute("location") and xml.getAttribute("location") != "None": - location = str(xml.getAttribute("location")).encode("utf-8") + location = xml.getAttribute("location").encode("utf-8") else: location = None - name = xml.getAttribute("name").encode("utf-8") #filename = xml.getAttribute("filename").encode("utf-8") entry = RecordTimerEntry(serviceref, begin, end, name, description, eit, disabled, justplay, afterevent, dirname = location)