source: ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_main.py @ 12090

Last change on this file since 12090 was 12090, checked in by madie, 12 years ago

[ipk] update crossepg

File size: 2.4 KB
Line 
1from enigma import *
2from Screens.MessageBox import MessageBox
3
4from crossepglib import *
5from crossepg_downloader import CrossEPG_Downloader
6from crossepg_importer import CrossEPG_Importer
7from crossepg_converter import CrossEPG_Converter
8from crossepg_loader import CrossEPG_Loader
9from crossepg_setup import CrossEPG_Setup
10from crossepg_menu import CrossEPG_Menu
11from crossepg_auto import crossepg_auto
12
13class 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               
92crossepg_main = CrossEPG_Main()
Note: See TracBrowser for help on using the repository browser.