Ich bin eigentlich zu alt um Python noch zu lernen.
Ich bastel aber gerne an Convertern für Linux SAT Receiver rum, dort ist der Code in Python, ich guck mir viele Codes an und mach das meiste eigentlich per Copy & Paste
Nun zu meinem Problem:
Ich hab einen EPG Screen gebastelt, dort wird mir unten Rechts die Primetime angezeigt: Die Zeit 20:15 ist so im Code drin, allerdings hab ich dort:
Problem Nr.1 Nur einen englischen Wochentag: Mon anstatt Mo
Problem Nr.2 : Wenn die Sendung um 20:15 vorbei ist, kommt dort anstatt des Wochentages der Text : Morgen 20:15 - Ist das vielleicht auch möglich das man sich dort den richtigen Wochentag anzeigen lassen kann, in dem Beispiel dann halt: Di 20:15
Code: Alles auswählen
# -*- coding: utf-8 -*-
from enigma import eEPGCache, eServiceReference
from Components.Converter.Converter import Converter
from Components.Element import cached
from datetime import datetime, timedelta
from time import localtime, strftime, mktime, time
from Components.config import config
class CerxPrimetimeEvent(Converter, object):
def __init__(self, type):
Converter.__init__(self, type)
self.epgcache = eEPGCache.getInstance()
@cached
def getText(self):
entry = ''
ref = self.source.service
info = ref and self.source.info
if info is None:
return entry
primeTimeEvent = self.source.getCurrentEvent()
if primeTimeEvent:
if not self.epgcache.startTimeQuery(eServiceReference(ref.toString()), primeTimeEvent.getBeginTime()):
tomorrow = False
actualtime = localtime(time())
now = localtime(time())
prime = datetime(now.tm_year, now.tm_mon, now.tm_mday, 20, 15)
if time() > mktime(prime.timetuple()):
tomorrow = True
prime += timedelta(days=1)
primeTime = int(mktime(prime.timetuple()))
if not self.epgcache.startTimeQuery(eServiceReference(ref.toString()), primeTime):
event = self.epgcache.getNextTimeEntry()
if event and (event.getBeginTime() <= int(mktime(prime.timetuple()))):
if tomorrow == False:
entry = "%s - %s" % (strftime("%a %H:%M", localtime(event.getBeginTime())), event.getEventName())
else:
entry = "%s - %s" % (strftime("Morgen " + "%H:%M", localtime(event.getBeginTime())), event.getEventName())
return entry
text = property(getText)
def changed(self, changedvalue):
Converter.changed(self, changedvalue)