def __init__(self, session): self.session = session path = "%s/skins/%s/screen_skipwords.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions"], { "ok" : self.keyOK, "cancel": self.keyCancel, "green" : self.keyAdd, "red" : self.keyDel, }, -1) self['title'] = Label(pluginName) self['head'] = Label("Skiplist") self.skipwordliste = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', contentSize)) self.streamMenuList.l.setItemHeight(25) self['skipwordselect'] = self.streamMenuList self.sky_skipwords_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_skipwords" self.sky_skipwords_path_tmp = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_skipwords.tmp" self.onLayoutFinish.append(self.readSkipWords)
def __init__(self, session): self.session = session path = "%s/skins/%s/screen_archiv.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value # try to get the ayntimefolder try: anytimefolder = config.plugins.skyrecorder.anytimefolder.value except Exception: sys.exc_clear() anytimefolder = resolveFilename(SCOPE_HDD) self.anytimefolder = anytimefolder self.serviceHandler = eServiceCenter.getInstance() self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions"], { "ok" : self.keyOK, "cancel" : self.keyCancel, "up" : self.keyUp, "down" : self.keyDown, "right" : self.keySwitchList, "left" : self.keySwitchList, "red": self.keyRed, "green": self.keyGreen, "prevBouquet" : self.keyPageDown, "nextBouquet" : self.keyPageUp }, -1) # Genrelist self.showGenreList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.showGenreList.l.setFont(0, gFont('Regular', contentSize)) self.showGenreList.l.setItemHeight(25) self['genreselect'] = self.showGenreList self['genreselect'].setList([]) #Movielist self.showMovieList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.showMovieList.l.setFont(0, gFont('Regular', contentSize)) self.showMovieList.l.setItemHeight(25) self['movieselect'] = self.showMovieList self['movieselect'].setList([]) # Auswahl der liste welche als erstes angezeigt werden soll self["genreselect"].selectionEnabled(0) self["movieselect"].selectionEnabled(1) self.currentList = "movieselect" self['mainselect'] = Label("SkyRecorder Archiv") self['handlung'] = Label("") self.onLayoutFinish.append(self.getGenreList) self['movieselect'].onSelectionChanged.append(self.showDetails)
def __init__(self, session, last_index): self.session = session self.last_index = last_index path = "%s/skins/%s/screen_channel_editor.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self.sky_chlist = buildSkyChannellist() self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "ColorActions", "MenuActions"], { "ok" : self.keyOK, "cancel": self.keyCancel }, -1) self['title'] = Label(pluginName) self['head'] = Label("Skiplist") self.channellist = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', contentSize)) self.streamMenuList.l.setItemHeight(25) self['channeledit'] = self.streamMenuList self.sky_skipwords_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_skipwords" self.sky_skipwords_path_tmp = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_skipwords.tmp" self.onShown.append(self.readChannellist)
def __init__(self, session): self.session = session path = "%s/skins/%s/screen_channel_select.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions"], { "ok" : self.keyOK, "cancel": self.keyCancel, "green" : self.keyChange }, -1) self.channelliste = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', 30)) self.streamMenuList.l.setItemHeight(75) self['channelselect'] = self.streamMenuList self.sky_channel_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_channels" self.sky_channel_path_tmp = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_channels.tmp" self.last_index = 0 self.onLayoutFinish.append(self.readChannels)
def gotSkydbFolder(self, res): # check if we have to create the database from scratch retval = None if res is not None: try: currentdb = config.plugins.skyrecorder.skydb.value except Exception: sys.exc_clear() currentdb = getPluginPath() + "/skydb.db" new_db = res + "skydb.db" retval = True if os.path.exists(currentdb): try: shutil.copy2(currentdb, new_db) except Exception: sys.exc_clear() from SkyCreateDatabase import buildSkydb retval = buildSkydb(target=new_db,rebuild=True,backup=False) else: from SkyCreateDatabase import buildSkydb retval = buildSkydb(target=new_db,rebuild=True,backup=False) if retval: config.plugins.skyrecorder.skydb.value = new_db config.plugins.skyrecorder.skydb.save() self.changedEntry()
def __init__(self, session): self.session = session path = "%s/skins/%s/screen_added_edit.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions"], { "cancel": self.keyCancel, "green" : self.keyDel, "red" : self.keyDelAll, }, -1) self['title'] = Label(pluginName) self['head'] = Label("gemerkte Timer") self.addededit_list = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', contentSize)) self.streamMenuList.l.setItemHeight(25) self['addededit'] = self.streamMenuList self.last_index = 0 self.onLayoutFinish.append(self.readAdded)
def __init__(self, session, initDir, plugin_path = None): self.session = session path = "%s/skins/%s/screen_folder_skydb.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) self["folderlist"] = FileList(initDir, inhibitMounts = False, inhibitDirs = False, showMountpoints = False, showFiles = False) self["media"] = Label() self["actions"] = ActionMap(["WizardActions", "DirectionActions", "ColorActions", "EPGSelectActions"], { "back": self.cancel, "left": self.left, "right": self.right, "up": self.up, "down": self.down, "ok": self.ok, "green": self.green, "red": self.cancel }, -1) self.title=("SkyRecorder Dantenbankordner auswählen") try: self["title"]=StaticText(self.title) except Exception: sys.exc_clear()
def gotSkydbFolder(self, res): # check if we have to create the database from scratch retval = None can_delete = True if res is not None: if not os.path.exists(res): return try: currentdb = config.plugins.skyrecorder.skydb.value except Exception: sys.exc_clear() currentdb = getPluginPath() + "/skydb.db" new_db = res + "skydb.db" if os.path.exists(new_db): can_delete = self.askOverwriteSkydb(res) retval = True if can_delete: if os.path.exists(currentdb): try: shutil.copy2(currentdb, new_db) except Exception: sys.exc_clear() from SkyCreateDatabase import buildSkydb retval = buildSkydb(target=new_db, rebuild=True, backup=False) else: from SkyCreateDatabase import buildSkydb retval = buildSkydb(target=new_db, rebuild=True, backup=False) if retval: config.plugins.skyrecorder.skydb.value = new_db config.plugins.skyrecorder.skydb.save() config.save() configfile.save() try: sql.disconnect() sql.connect() except Exception: sys.exc_clear() return self.changedEntry()
def __init__(self, session): self.session = session path = "%s/skins/%s/screen_genre_select.xml" % ( getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) self.configlist = [] ConfigListScreen.__init__(self, self.configlist, session=self.session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self["actions"] = ActionMap( [ "OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions" ], { "ok": self.keyOK, "cancel": self.keyCancel, "up": self.keyUp, "down": self.keyDown, "left": self.keyLeft, "right": self.keyRight, "prevBouquet": self.keyPageDown, "nextBouquet": self.keyPageUp #"nextService" : self.keyLeft, #"prevService" : self.keyRight #"green" : self.keyAdd, #"red" : self.keyDel, }, -1) self.channelliste = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', 30)) self.streamMenuList.l.setItemHeight(75) self['channelselect'] = self.streamMenuList self.onLayoutFinish.append(self.readGenre)
def __init__(self, session, firstRun=False): self.session = session path = "%s/skins/%s/screen_settings.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) self.createConfigList() ConfigListScreen.__init__(self, self.configlist, session = self.session) self.popUpScreen = self.session.instantiateDialog(SkyHelpAll) self.popUpIsVisible = False self["actions"] = ActionMap(["OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions", "HelpActions"], { "ok" : self.keyOK, "cancel" : self.keyCancel, "nextBouquet" : self.log_up, "prevBouquet" : self.log_down, "blue" : self.askAddRecordimerNow, "menu" : self.startReadLog, "yellow" : self.readAdded, "green" : self.saveSettings, "red" : self.askCleanUpDatabase, "info" : self.askUpdateDatabase, "displayHelp" : self.togglePopUp }, -1) self['title'] = Label(pluginName) self['head'] = Label("Einstellungen") self["log"] = ScrollLabel() self.sky_log_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_log" self.sky_added_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_added" # start reading the last 7 lines from our logfile every second self.tempTimer = None self.onLayoutFinish.append(self.startReadLog)
def __init__(self, session, last_index): self.session = session self.last_index = last_index path = "%s/skins/%s/screen_channel_editor.xml" % ( getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self.sky_chlist = buildSkyChannellist() self["actions"] = ActionMap( [ "OkCancelActions", "ShortcutActions", "ColorActions", "MenuActions" ], { "ok": self.keyOK, "cancel": self.keyCancel, "red": self.askDeleteChannels, "green": self.askDeleteChannel }, -1) self.channellist = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', 32)) self.streamMenuList.l.setItemHeight(75) self['channeledit'] = self.streamMenuList self.sky_skipwords_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_skipwords" self.sky_skipwords_path_tmp = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_skipwords.tmp" self.onShown.append(self.readChannellist)
def connect(self): try: self.my_db_path = config.plugins.skyrecorder.skydb.value except: self.my_db_path = "{0}/skydb.db".format(getPluginPath()) try: sizeb = os.path.getsize(self.my_db_path) except: sizeb = 0 if not os.path.exists(self.my_db_path) or sizeb == 0: from SkyCreateDatabase import buildSkydb res = buildSkydb(self.my_db_path,rebuild=True,backup=False) self.con = sqlite3.connect(self.my_db_path) self.con.text_factory = str # we need utf-8 strings self.cur = self.con.cursor() self.cur.execute('SELECT SQLITE_VERSION()') data = self.cur.fetchone() if data: return True else: return False
def __init__(self, session): self.session = session self.last_index = -1 path = "%s/skins/%s/screen_whitelist.xml" % ( getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) pluginName = config.plugins.skyrecorder.pluginname.value contentSize = config.plugins.skyrecorder.contentsize.value self["actions"] = ActionMap( [ "OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions" ], { "ok": self.keyOK, "cancel": self.keyCancel, "green": self.keyEdit, "yellow": self.keyAdd, "red": self.keyDel, }, -1) self.whitelistliste = [] self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont('Regular', 28)) self.streamMenuList.l.setItemHeight(75) self['whitelist'] = self.streamMenuList self.onLayoutFinish.append(self.readWhitelist)
def __init__(self, session, id_events, id_channel, id_genre): self.session = session path = "%s/skins/%s/screen_timer_select.xml" % (getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) self.id_events = str(id_events) self.id_channel = id_channel self.id_genre = id_genre self.nonHDeventList = nonHDeventList() self.sky_chlist = buildSkyChannellist() self.pluginName = config.plugins.skyrecorder.pluginname.value self.contentSize = config.plugins.skyrecorder.contentsize.value self["actions"] = ActionMap( [ "OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions", ], { "ok": self.keyOK, "cancel": self.keyCancel, "nextBouquet": self.keyPageUp, "prevBouquet": self.keyPageDown, }, -1, ) self["title"] = Label(self.pluginName) try: self["head"] = Label("Sendetermine") except Exception: sys.exc_clear() self["name"] = Label("Timer Auswahl") self["handlung"] = Label(" ") self["image"] = Pixmap() self["image"].hide() self["hd"] = Pixmap() self["hd"].hide() self["169"] = Pixmap() self["169"].hide() self["dolby"] = Pixmap() self["dolby"].hide() self["dualch"] = Pixmap() self["dualch"].hide() self["sub"] = Pixmap() self["sub"].hide() self.keyLocked = True self.streamMenuList = MenuList([], enableWrapAround=True, content=eListboxPythonMultiContent) self.streamMenuList.l.setFont(0, gFont("Regular", self.contentSize)) self.streamMenuList.l.setItemHeight(25) self["filmliste"] = self.streamMenuList self.onLayoutFinish.append(self.getTimerEventList)
from SkyRunAutocheck import SkyRunAutocheck from SkySelectAnytimeFolder import SkySelectAnytimeFolder from SkySelectSkydbFolder import SkySelectSkydbFolder from SkyAddedEdit import SkyAddedEdit from SkySql import * # popup screen from SkyHelpPopUp import SkyHelpAll pluginTitle = "SkyRecorder" pluginVersion = "v1.2" pluginSubVersion = ".4" pluginName = pluginTitle + " " + pluginVersion + pluginSubVersion contentSize = 20 pluginfolder = getPluginPath() defaultmoviefolder = resolveFilename(SCOPE_HDD) recordings_base_folder = "SkyRecorder" anytimefolder = defaultmoviefolder #+ recordings_base_folder + "/" ### start config config.plugins.skyrecorder = ConfigSubsection() config.plugins.skyrecorder.auto_recordtimer_entries = ConfigYesNo(default = False) config.plugins.skyrecorder.pluginname = ConfigText(pluginName) config.plugins.skyrecorder.contentsize = ConfigInteger(20) config.plugins.skyrecorder.timerdays_allowed = ConfigSelection( default = "['all']", choices = [ ("['all']", _("jeden Wochentag")), ("['Mon','Tue','Wed','Thu','Fri']", _("Montag bis Freitag")),
def __init__(self, session, firstRun=False): self.session = session path = "%s/skins/%s/screen_settings.xml" % ( getPluginPath(), config.plugins.skyrecorder.anytime_skin.value) with open(path, "r") as f: self.skin = f.read() f.close() Screen.__init__(self, session) self.createConfigList() ConfigListScreen.__init__(self, self.configlist, session=self.session) self.popUpScreen = self.session.instantiateDialog(SkyHelpAll) self.popUpIsVisible = False self["actions"] = ActionMap( [ "OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions", "HelpActions" ], { "ok": self.keyOK, "cancel": self.keyCancel, "nextBouquet": self.log_up, "prevBouquet": self.log_down, "blue": self.askAddRecordimerNow, "menu": self.fullLog, "yellow": self.readAdded, "green": self.saveSettings, "red": self.askCleanUpDatabase, "info": self.askUpdateDatabase, "displayHelp": self.togglePopUp }, -1) self["disabled_actions"] = ActionMap( [ "OkCancelActions", "ShortcutActions", "EPGSelectActions", "WizardActions", "ColorActions", "NumberActions", "MenuActions", "MoviePlayerActions", "HelpActions" ], { "ok": self.keyCancel, "cancel": self.keyCancel, "up": self.help_page_up, "down": self.help_page_down, "right": self.ignoreKey, "left": self.ignoreKey, "nextBouquet": self.help_page_up, "prevBouquet": self.help_page_down, "displayHelp": self.togglePopUp }, -1) self["disabled_actions"].setEnabled(False) self['title'] = Label(pluginName + " " + pluginVersion) self["log"] = ScrollLabel() self.sky_log_path = "/usr/lib/enigma2/python/Plugins/Extensions/skyrecorder/sky_log" # start reading the last 7 lines from our logfile every second self.tempTimer = None self.onLayoutFinish.append(self.startReadLog)
from SkyRunAutocheck import SkyRunAutocheck from SkySelectAnytimeFolder import SkySelectAnytimeFolder from SkySelectSkydbFolder import SkySelectSkydbFolder from SkyAddedEdit import SkyAddedEdit from SkySql import * # popup screen from SkyPopUp import SkyHelpAll # moved from main from SkyChannelSelect import SkyChannelSelect from SkyGenreSelect import SkyGenreSelect pluginName = "SkyRecorder" pluginVersion = "v1.7.1" contentSize = 20 pluginfolder = getPluginPath() defaultmoviefolder = resolveFilename(SCOPE_HDD) recordings_base_folder = "SkyRecorder" anytimefolder = defaultmoviefolder #+ recordings_base_folder + "/" ### start config config.plugins.skyrecorder = ConfigSubsection() config.plugins.skyrecorder.auto_recordtimer_entries = ConfigYesNo( default=False) config.plugins.skyrecorder.pluginname = ConfigText(pluginName) config.plugins.skyrecorder.version = ConfigText(pluginVersion) config.plugins.skyrecorder.contentsize = ConfigInteger(20) config.plugins.skyrecorder.timerdays_allowed = ConfigSelection( default="['all']", choices=[("['all']", _("jeden Wochentag")),
def loadHelpText(self): path = "%s/skyrecorder_help_all.txt" % getPluginPath() with codecs.open(path, "r", "utf-8") as f: text = f.read() self['text'].setText(str(text))