X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/8a6e44c53a3fb23ca87645fdfad73652a202b905..043ef5bb98a2b1605dd3704bb34b813697a66376:/RecordTimer.py diff --git a/RecordTimer.py b/RecordTimer.py index e375c9f2..f9382e84 100644 --- a/RecordTimer.py +++ b/RecordTimer.py @@ -44,6 +44,7 @@ class RecordTimerEntry(timer.TimerEntry): self.description = description self.timer = None self.record_service = None + self.start_prepare = 0 self.log_entries = [] self.resetState() @@ -168,9 +169,12 @@ class RecordTimerEntry(timer.TimerEntry): self.log(14, "user didn't want to zap away, record will probably fail") def timeChanged(self): + old_prepare = self.start_prepare self.start_prepare = self.begin - self.prepare_time self.backoff = 0 - self.log(15, "record time changed, start prepare is now: %s" % time.ctime(self.start_prepare)) + + if old_prepare != self.start_prepare: + self.log(15, "record time changed, start prepare is now: %s" % time.ctime(self.start_prepare)) def createTimer(xml): begin = int(xml.getAttribute("begin")) @@ -178,7 +182,10 @@ def createTimer(xml): serviceref = ServiceReference(str(xml.getAttribute("serviceref"))) description = xml.getAttribute("description").encode("utf-8") repeated = xml.getAttribute("repeated").encode("utf-8") - eit = xml.getAttribute("eit").encode("utf-8") + try: + eit = long(xml.getAttribute("eit").encode("utf-8")) + except: + eit = None name = xml.getAttribute("name").encode("utf-8") #filename = xml.getAttribute("filename").encode("utf-8") entry = RecordTimerEntry(serviceref, begin, end, name, description, eit) @@ -217,45 +224,83 @@ class RecordTimer(timer.Timer): root = doc.childNodes[0] for timer in elementsWithTag(root.childNodes, "timer"): self.record(createTimer(timer)) - + + def strToXML(self, str): + return str.replace('&', '&').replace('<', '<').replace('>', '>').replace("'", '''). replace('"', '&qout;') + def saveTimer(self): - doc = xml.dom.minidom.Document() - root_element = doc.createElement('timers') - doc.appendChild(root_element) - root_element.appendChild(doc.createTextNode("\n")) + #doc = xml.dom.minidom.Document() + #root_element = doc.createElement('timers') + #doc.appendChild(root_element) + #root_element.appendChild(doc.createTextNode("\n")) - for timer in self.timer_list + self.processed_timers: + #for timer in self.timer_list + self.processed_timers: # some timers (instant records) don't want to be saved. # skip them - if timer.dontSave: - continue - t = doc.createTextNode("\t") - root_element.appendChild(t) - t = doc.createElement('timer') - t.setAttribute("begin", str(int(timer.begin))) - t.setAttribute("end", str(int(timer.end))) - t.setAttribute("serviceref", str(timer.service_ref)) - t.setAttribute("repeated", str(timer.repeated)) - t.setAttribute("name", timer.name) - t.setAttribute("description", timer.description) - t.setAttribute("eit", str(timer.eit)) + #if timer.dontSave: + #continue + #t = doc.createTextNode("\t") + #root_element.appendChild(t) + #t = doc.createElement('timer') + #t.setAttribute("begin", str(int(timer.begin))) + #t.setAttribute("end", str(int(timer.end))) + #t.setAttribute("serviceref", str(timer.service_ref)) + #t.setAttribute("repeated", str(timer.repeated)) + #t.setAttribute("name", timer.name) + #t.setAttribute("description", timer.description) + #t.setAttribute("eit", str(timer.eit)) + + #for time, code, msg in timer.log_entries: + #t.appendChild(doc.createTextNode("\t\t")) + #l = doc.createElement('log') + #l.setAttribute("time", str(time)) + #l.setAttribute("code", str(code)) + #l.appendChild(doc.createTextNode(msg)) + #t.appendChild(l) + #t.appendChild(doc.createTextNode("\n")) + + #root_element.appendChild(t) + #t = doc.createTextNode("\n") + #root_element.appendChild(t) + + + #file = open(self.Filename, "w") + #doc.writexml(file) + #file.write("\n") + #file.close() + + list = [] + + list.append('\n') + list.append('\n') + + for timer in self.timer_list + self.processed_timers: + list.append('\n') for time, code, msg in timer.log_entries: - t.appendChild(doc.createTextNode("\t\t")) - l = doc.createElement('log') - l.setAttribute("time", str(time)) - l.setAttribute("code", str(code)) - l.appendChild(doc.createTextNode(msg)) - t.appendChild(l) - t.appendChild(doc.createTextNode("\n")) - - root_element.appendChild(t) - t = doc.createTextNode("\n") - root_element.appendChild(t) + list.append('') + list.append(str(msg)) + list.append('\n') + + + list.append('\n') + + list.append('\n') file = open(self.Filename, "w") - doc.writexml(file) - file.write("\n") + for x in list: + file.write(x) file.close() def record(self, entry):