add missing import
[vuplus_dvbapp] / lib / python / Components / TimerSanityCheck.py
index c0ca10f..b9dda6a 100644 (file)
@@ -2,6 +2,7 @@ import NavigationInstance
 from time import localtime, mktime, gmtime
 from ServiceReference import ServiceReference
 from enigma import iServiceInformation, eServiceCenter, eServiceReference
+from timer import TimerEntry
 
 class TimerSanityCheck:
        def __init__(self, timerlist, newtimer=None):
@@ -12,8 +13,8 @@ class TimerSanityCheck:
                self.simultimer = []
                self.rep_eventlist = []
                self.nrep_eventlist = []
-               self.bflag = 1
-               self.eflag = -1
+               self.bflag = -1
+               self.eflag = 1
 
        def check(self, ext_timer=1):
                print "check"
@@ -36,6 +37,12 @@ class TimerSanityCheck:
                                        return True
                                else:
                                        if timer.begin == self.newtimer.begin:
+                                               fl1 = timer.service_ref.ref.flags & eServiceReference.isGroup
+                                               fl2 = self.newtimer.service_ref.ref.flags & eServiceReference.isGroup
+                                               if fl1 != fl2:
+                                                       return False
+                                               if fl1: #is group
+                                                       return timer.service_ref.ref.getPath() == self.newtimer.service_ref.ref.getPath()
                                                getUnsignedDataRef1 = timer.service_ref.ref.getUnsignedData
                                                getUnsignedDataRef2 = self.newtimer.service_ref.ref.getUnsignedData
                                                for x in (1, 2, 3, 4):
@@ -101,7 +108,7 @@ class TimerSanityCheck:
                                                        self.rep_eventlist.append((begin, idx))
                                                begin += 86400
                                                rflags >>= 1
-                               else:
+                               elif timer.state < TimerEntry.StateEnded:
                                        self.nrep_eventlist.extend([(timer.begin,self.bflag,idx),(timer.end,self.eflag,idx)])
                        idx += 1