def delete(url): try: data = json.loads(url) dbid = hashlib.md5() for i in data['delbookmark']: dbid.update(str(i)) for i in data['action']: dbid.update(str(i)) dbid = str(dbid.hexdigest()) control.makeFile(control.dataPath) dbcon = database.connect(control.bookmarksFile) dbcur = dbcon.cursor() dbcur.execute("CREATE TABLE IF NOT EXISTS bookmark (" "dbid TEXT, " "item TEXT, " "UNIQUE(dbid)" ");") dbcur.execute("DELETE FROM bookmark WHERE dbid = '%s'" % dbid) dbcon.commit() control.refresh() except: pass
def clearSearchHistory(): try: control.searchHistoryDB_lock.acquire() confirmation = control.yesno_dialog(control.ADDON_NAME, "Clear search history?") if not confirmation: return cursor = _get_connection_cursor(control.searchHistoryDB) cursor.execute("DROP TABLE IF EXISTS movie") cursor.execute("DROP TABLE IF EXISTS show") try: cursor.execute("VACCUM") except: pass cursor.connection.commit() cursor.close() control.refresh() control.showDialog.notification(control.ADDON_NAME, "Search History has been cleared", time=5000) except: try: cursor.close() except: pass import traceback traceback.print_exc() return [] finally: control.try_release_lock(control.searchHistoryDB_lock)
def clear(self): control.window.clearProperty(property + '.status') control.window.clearProperty(property + '.name') control.window.clearProperty(property + '.image') control.window.clearProperty(property + '.percent') control.window.clearProperty(property + '.speed') control.window.clearProperty(property + '.size') control.refresh()
def removeDownload(url): try: def download(): return [] result = cache.get(download, 600000000, table='rel_dl') if result == '': result = [] result = [i for i in result if not i['url'] == url] if result == []: result = '' def download(): return result result = cache.get(download, 0, table='rel_dl') control.refresh() except: control.infoDialog('You need to remove file manually', 'Can not remove from Queue')
def setWatchedStatus(self): if self.content == 'movie': try: xbmc.executeJSONRPC('{"jsonrpc": "2.0", "method": "VideoLibrary.SetMovieDetails", "params": {"movieid" : %s, "playcount" : 1 }, "id": 1 }' % str(self.DBID)) if not self.folderPath.startswith('plugin://'): control.refresh() except: pass try: from metahandler import metahandlers metaget = metahandlers.MetaData(preparezip=False) metaget.get_meta('movie', self.title ,year=self.year) metaget.change_watched(self.content, '', self.imdb, season='', episode='', year='', watched=7) except: pass try: if trakt.getTraktAddonMovieInfo() == False: trakt.markMovieAsWatched(self.imdb) trakt.syncMovies() except: pass elif self.content == 'episode': try: xbmc.executeJSONRPC('{"jsonrpc": "2.0", "method": "VideoLibrary.SetEpisodeDetails", "params": {"episodeid" : %s, "playcount" : 1 }, "id": 1 }' % str(self.DBID)) if not self.folderPath.startswith('plugin://'): control.refresh() except: pass try: from metahandler import metahandlers metaget = metahandlers.MetaData(preparezip=False) metaget.get_meta('tvshow', self.show, imdb_id=self.imdb) metaget.get_episode_meta(self.show, self.imdb, self.season, self.episode) metaget.change_watched(self.content, '', self.imdb, season=self.season, episode=self.episode, year='', watched=7) except: pass try: if trakt.getTraktAddonEpisodeInfo() == False: trakt.markEpisodeAsWatched(self.tvdb, self.season, self.episode) trakt.syncTVShows() except: pass
def setWatchedStatus(self): if self.content == 'movie': try: xbmc.executeJSONRPC( '{"jsonrpc": "2.0", "method": "VideoLibrary.SetMovieDetails", "params": {"movieid" : %s, "playcount" : 1 }, "id": 1 }' % str(self.DBID)) if not self.folderPath.startswith('plugin://'): control.refresh() except: pass try: from metahandler import metahandlers metaget = metahandlers.MetaData(preparezip=False) metaget.get_meta('movie', self.title, year=self.year) metaget.change_watched(self.content, '', self.imdb, season='', episode='', year='', watched=7) except: pass try: if trakt.getTraktAddonMovieInfo() == False: trakt.markMovieAsWatched(self.imdb) trakt.syncMovies() except: pass elif self.content == 'episode': try: xbmc.executeJSONRPC( '{"jsonrpc": "2.0", "method": "VideoLibrary.SetEpisodeDetails", "params": {"episodeid" : %s, "playcount" : 1 }, "id": 1 }' % str(self.DBID)) if not self.folderPath.startswith('plugin://'): control.refresh() except: pass try: from metahandler import metahandlers metaget = metahandlers.MetaData(preparezip=False) metaget.get_meta('tvshow', self.show, imdb_id=self.imdb) metaget.get_episode_meta(self.show, self.imdb, self.season, self.episode) metaget.change_watched(self.content, '', self.imdb, season=self.season, episode=self.episode, year='', watched=7) except: pass try: if trakt.getTraktAddonEpisodeInfo() == False: trakt.markEpisodeAsWatched(self.tvdb, self.season, self.episode) trakt.syncTVShows() except: pass
def clearCacheSearch(self): control.idle() if control.yesnoDialog(control.lang(32056).encode('utf-8'), '', ''): control.setSetting('tvsearch', '') control.setSetting('moviesearch', '') control.refresh()