diff options
Diffstat (limited to 'plugin.video.unithek/default.py')
-rw-r--r-- | plugin.video.unithek/default.py | 139 |
1 files changed, 139 insertions, 0 deletions
diff --git a/plugin.video.unithek/default.py b/plugin.video.unithek/default.py new file mode 100644 index 0000000..fbacdb8 --- /dev/null +++ b/plugin.video.unithek/default.py @@ -0,0 +1,139 @@ +# -*- coding: utf-8 -*- + + +import sys +import xbmc +import xbmcgui +import xbmcplugin +import xbmcaddon +import urllib + +import threading + +import libmediathek3 as libMediathek + +import lib3sat +import libard +import libbr +import libdaserste +import libhr +import libkika +import libmdr +import libndr +import libsr +import libswr +import libwdr +import libzdf + +translation = libMediathek.getTranslation + +log = libMediathek.log +import time +t = time.time() * 1000 + + +def logtime(): + xbmc.log(str(time.time() * 1000 - t)) + +def listMain(): + l = [] + l.append({'_name':translation(31031), 'mode':'listMV', '_type':'dir'}) + l.append({'_name':translation(31032), 'mode':'listAZ', '_type':'dir'}) + l.append({'_name':translation(31033), 'mode':'listDateChannels', '_type':'dir'}) + return l + +def listMV(): + l = [] + l += libard.getMostViewed() + l += libzdf.getMostViewed()[:50] + libMediathek.sortAZ() + return l + +def listAZ(): + l = [] + t1 = threading.Thread(target=getA) + t2 = threading.Thread(target=getZ) + t1.start() + t2.start() + t1.join() + t2.join() + l += la + l += lz + libMediathek.sortAZ() + return l + +def getA(): + global la + la = libard.libArdListShows() + +def getZ(): + global lz + lz = libzdf.libZdfListAZ() + +def listDateChannels(): + l = [] + l.append({'name':'3sat', 'mode':'lib3satListDate', '_type':'dir'}) + l.append({'name':'ARD-Alpha', 'mode':'libBrListChannelDate', 'channel':'ARD-Alpha', '_type':'dir'}) + l.append({'name':'BR', 'mode':'libBrListChannelDate', 'channel':'BR', '_type':'dir'}) + l.append({'name':'Das Erste', 'mode':'libDasErsteListDate', '_type':'dir'}) + l.append({'name':'HR', 'mode':'libHrListDate', '_type':'dir'}) + l.append({'name':'KiKa', 'mode':'libKikaListDate', '_type':'dir'}) + l.append({'name':'MDR', 'mode':'libMdrListDate', '_type':'dir'}) + #l.append({'name':'MDR', 'mode':'libArdListChannelDate', 'channel':'MDR', '_type':'dir'}) + l.append({'name':'NDR', 'mode':'libNdrListDate', '_type':'dir'}) + l.append({'name':'One', 'mode':'libArdListChannelDate','channel':'One', '_type':'dir'}) + #l.append({'name':'Phoenix', 'mode':'libZdfListChannelDate', 'channel':'phoenix', '_type':'dir'}) + l.append({'name':'RB', 'mode':'libArdListChannelDate','channel':'RB', '_type':'dir'}) + l.append({'name':'RBB', 'mode':'libArdListChannelDate','channel':'RBB', '_type':'dir'}) + l.append({'name':'SR', 'mode':'libSrListDate', '_type':'dir'}) + l.append({'name':'SWR', 'mode':'libSwrListDate', '_type':'dir'}) + l.append({'name':'Tagesschau24', 'mode':'libArdListChannelDate','channel':'tagesschau24', '_type':'dir'}) + l.append({'name':'WDR', 'mode':'libWdrListDate', '_type':'dir'}) + l.append({'name':'ZDF', 'mode':'libZdfListChannelDate', 'channel':'zdf', '_type':'dir'}) + l.append({'name':'ZDF Info', 'mode':'libZdfListChannelDate', 'channel':'zdfinfo', '_type':'dir'}) + l.append({'name':'ZDF Neo', 'mode':'libZdfListChannelDate', 'channel':'zdfneo', '_type':'dir'}) + return l + +def list(): + global params + params = libMediathek.get_params() + global pluginhandle + pluginhandle = int(sys.argv[1]) + + mode = params.get('mode','listMain') + xbmc.log(mode) + if mode.startswith('lib3sat') or mode.startswith('xml'): + lib3sat.list() + elif mode.startswith('libArd'): + libard.list() + elif mode.startswith('libBr'): + libbr.list() + elif mode.startswith('libDasErste'): + libdaserste.list() + elif mode.startswith('libHr'): + libhr.list() + elif mode.startswith('libKika'): + libkika.list() + elif mode.startswith('libMdr'): + libmdr.list() + elif mode.startswith('libNdr'): + libndr.list() + elif mode.startswith('libSr'): + libsr.list() + elif mode.startswith('libSwr'): + libswr.list() + elif mode.startswith('libWdr'): + libwdr.list() + elif mode.startswith('libZdf'): + libzdf.list() + else: + l = modes.get(mode,listMain)() + libMediathek.addEntries(l) + xbmcplugin.endOfDirectory(int(sys.argv[1]),cacheToDisc=True) + +modes = { + 'listDateChannels': listDateChannels, + 'listAZ': listAZ, + 'listMV': listMV, + } +list()
\ No newline at end of file |