[AiHDcontroler] bugfix in NextEvent-renderer
[enigma2-plugins.git] / aihdcontroler / src / comp / vhdRendNextEvent.py
1 #######################################################################
2 #
3 #
4 #    Next Event Renderer for Dreambox/Enigma-2
5 #    Coded by Vali (c)2010-2011
6 #    Support: www.dreambox-tools.info
7 #
8 #
9 #  This plugin is licensed under the Creative Commons 
10 #  Attribution-NonCommercial-ShareAlike 3.0 Unported License.
11 #  To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
12 #  or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
13 #
14 #  Alternatively, this plugin may be distributed and executed on hardware which
15 #  is licensed by Dream Multimedia GmbH.
16 #
17 #
18 #  This plugin is NOT free software. It is open source, you are allowed to
19 #  modify it (if you keep the license), but it may not be commercially 
20 #  distributed other than under the conditions noted above.
21 #
22 #
23 #######################################################################
24
25 from Components.VariableText import VariableText
26 from enigma import eLabel, eEPGCache
27 from Renderer import Renderer
28 from time import localtime
29
30 class vhdRendNextEvent(Renderer, VariableText):
31         def __init__(self):
32                 Renderer.__init__(self)
33                 VariableText.__init__(self)
34                 self.epgcache = eEPGCache.getInstance()
35         GUI_WIDGET = eLabel
36         
37         def changed(self, what):
38                 ref = self.source.service
39                 info = ref and self.source.info
40                 if info is None:
41                         self.text = ""
42                         return
43                 ENext = ""
44                 eventNext = self.epgcache.lookupEvent(['IBDCTSERNX', (ref.toString(), 1, -1)])
45                 if eventNext:
46                         if eventNext[0][4]:
47                                 t = localtime(eventNext[0][1])
48                                 duration = "%d min" %  (eventNext[0][2] / 60)
49                                 ENext = "next:   %02d:%02d   %s   %s" % (t[3], t[4], duration, eventNext[0][4])
50                 self.text = ENext
51