1 | from enigma import * |
---|
2 | from Screens.MessageBox import MessageBox |
---|
3 | |
---|
4 | from crossepglib import * |
---|
5 | from crossepg_downloader import CrossEPG_Downloader |
---|
6 | from crossepg_importer import CrossEPG_Importer |
---|
7 | from crossepg_converter import CrossEPG_Converter |
---|
8 | from crossepg_loader import CrossEPG_Loader |
---|
9 | from crossepg_setup import CrossEPG_Setup |
---|
10 | from crossepg_menu import CrossEPG_Menu |
---|
11 | from crossepg_auto import crossepg_auto |
---|
12 | |
---|
13 | class CrossEPG_Main: |
---|
14 | def __init__(self): |
---|
15 | self.config = CrossEPG_Config() |
---|
16 | self.patchtype = getEPGPatchType() |
---|
17 | |
---|
18 | def downloader(self, session): |
---|
19 | self.session = session |
---|
20 | crossepg_auto.lock = True |
---|
21 | crossepg_auto.stop() |
---|
22 | self.config.load() |
---|
23 | if self.config.configured == 0: |
---|
24 | self.session.open(MessageBox, _("Please configure crossepg before start downloader"), type = MessageBox.TYPE_ERROR) |
---|
25 | else: |
---|
26 | self.config.deleteLog() |
---|
27 | self.session.openWithCallback(self.downloadCallback, CrossEPG_Downloader, self.config.providers) |
---|
28 | |
---|
29 | def loaderAsPlugin(self, session): |
---|
30 | self.session = session |
---|
31 | crossepg_auto.lock = True |
---|
32 | crossepg_auto.stop() |
---|
33 | self.loader() |
---|
34 | |
---|
35 | def downloadCallback(self, ret): |
---|
36 | if ret: |
---|
37 | if self.config.csv_import_enabled == 1: |
---|
38 | self.importer() |
---|
39 | else: |
---|
40 | if self.patchtype != 3: |
---|
41 | self.converter() |
---|
42 | else: |
---|
43 | self.loader() |
---|
44 | else: |
---|
45 | crossepg_auto.lock = False |
---|
46 | |
---|
47 | def importer(self): |
---|
48 | self.session.openWithCallback(self.importerCallback, CrossEPG_Importer) |
---|
49 | |
---|
50 | def importerCallback(self, ret): |
---|
51 | if ret: |
---|
52 | if self.patchtype != 3: |
---|
53 | self.converter() |
---|
54 | else: |
---|
55 | self.loader() |
---|
56 | else: |
---|
57 | crossepg_auto.lock = False |
---|
58 | |
---|
59 | def converter(self): |
---|
60 | self.session.openWithCallback(self.converterCallback, CrossEPG_Converter) |
---|
61 | |
---|
62 | def converterCallback(self, ret): |
---|
63 | if ret: |
---|
64 | if self.patchtype != -1: |
---|
65 | self.loader() |
---|
66 | else: |
---|
67 | if self.config.download_manual_reboot: |
---|
68 | from Screens.Standby import TryQuitMainloop |
---|
69 | self.session.open(TryQuitMainloop, 3) |
---|
70 | else: |
---|
71 | crossepg_auto.lock = False |
---|
72 | else: |
---|
73 | crossepg_auto.lock = False |
---|
74 | |
---|
75 | def loader(self): |
---|
76 | self.session.openWithCallback(self.loaderCallback, CrossEPG_Loader) |
---|
77 | |
---|
78 | def loaderCallback(self, ret): |
---|
79 | crossepg_auto.lock = False |
---|
80 | |
---|
81 | def setup(self, session): |
---|
82 | crossepg_auto.lock = True |
---|
83 | crossepg_auto.stop() |
---|
84 | session.openWithCallback(self.setupCallback, CrossEPG_Menu) |
---|
85 | |
---|
86 | def setupCallback(self): |
---|
87 | crossepg_auto.lock = False |
---|
88 | |
---|
89 | def autostart(self, reason, session): |
---|
90 | crossepg_auto.init(session) |
---|
91 | |
---|
92 | crossepg_main = CrossEPG_Main() |
---|