def syncElement(self, path, filename, extension, imdbid, istvshow, oldelement=None): printl(str(path) + " " + str(filename) + " " + str(extension) + " " + str(imdbid) + " " + str(istvshow), self) element = None if oldelement is None: element = MediaInfo(path, filename, extension) element.parse() element.ImdbId = imdbid else: element = oldelement # .copy() if istvshow: element.setMediaType(MediaInfo.SERIE) else: element.setMediaType(MediaInfo.MOVIE) results = Sync().syncWithId(element) if results is not None: return results else: if istvshow is False: element.setMediaType(MediaInfo.SERIE) else: element.setMediaType(MediaInfo.MOVIE) results = Sync().syncWithId(element) if results is not None: return results return None
def syncElement(self, path, filename, extension, imdbid, istvshow, oldelement=None): printl( str(path) + " " + str(filename) + " " + str(extension) + " " + str(imdbid) + " " + str(istvshow), self) element = None if oldelement is None: element = MediaInfo(path, filename, extension) element.parse() element.ImdbId = imdbid else: element = oldelement #.copy() if istvshow: element.setMediaType(MediaInfo.SERIE) else: element.setMediaType(MediaInfo.MOVIE) results = Sync().syncWithId(element) if results is not None: return results else: if istvshow is False: element.setMediaType(MediaInfo.SERIE) else: element.setMediaType(MediaInfo.MOVIE) results = Sync().syncWithId(element) if results is not None: return results return None
def importDataToPickleV2(self, session): printl("->", self, "S") try: if session is not None: self.mm = session.open( MessageBox, (_("\nConverting data to V2.... \n\nPlease wait... ")), MessageBox.TYPE_INFO) #self.mm = self.session.open(Msg) printl("Importing Data to PickleV2", self) # this will Open Pickle V1 and run upgrades if necessary userId = config.plugins.pvmc.seenuserid.value dbHandlerPickle = databaseHandlerPICKLE().getInstance( "from importDataToPickleV2", None) dbHandlerPickle.loadAll() #Upgrade SeenDB records = dbHandlerPickle.getSeenForUpgrade() self.dbHandler.loadAll() start_time = time.time() cntNew = 0 printl( "Total Seen Movies to Convert: " + str(len(records["Movies"])), self) for imdb in records["Movies"]: if imdb == u"": continue printl("getSeen for imdb: " + imdb, self) m = self.dbHandler.getMediaWithImdbId(imdb) if m is None: #printl("IS NONE: "+imdb, self) m = MediaInfo() m.Id = None m.ImdbId = imdb seen = records["Movies"][imdb]["Seen"] if seen: self.dbHandler.MarkAsSeenWithMedia(m, userId) else: pass #self.dbHandler.MarkAsUnseenWithMedia(m,userId) cntNew += 1 printl( "Total Seen Series(no episodes) to Convert: " + str(len(records["TV"])), self) for thetvdb in records["TV"]: if thetvdb == u"": continue printl("getSeen for thetvdb: " + thetvdb, self) serie = self.dbHandler.getMediaWithTheTvDbId(thetvdb) for season in records["TV"][thetvdb]: if serie is not None: EpisodesFromSeason = self.dbHandler.getEpisodes( serie.Id, season) for episode in records["TV"][thetvdb][season]: EpisodeInserted = False seen = records["TV"][thetvdb][season][episode]["Seen"] if serie is not None: for ep in EpisodesFromSeason: if episode == ep.Episode: EpisodeInserted = True if seen: self.dbHandler.MarkAsSeen( ep.Id, userId) else: pass #self.dbHandler.MarkAsUnseen(ep.Id,userId) else: #printl("NO SERIE: " + thetvdb, self) pass if not EpisodeInserted: #printl("MANNUALLY: " + thetvdb, self) m = MediaInfo( ) # Fake Media, Avoid loosing Seen Data m.Id = None m.TheTvDbId = thetvdb m.Season = season m.Episode = episode if seen: #printl("SEEN 2: " + thetvdb, self) self.dbHandler.MarkAsSeenWithMedia(m, userId) else: #printl("UNSEEN 2: " + thetvdb, self) #self.dbHandler.MarkAsUnseenWithMedia(m,userId) pass cntNew += 1 # dbSeen["Movies"][primary_key["ImdbId"]]["Seen"] = primary_key["Seen"] # dbSeen["TV"][primary_key["TheTvDbId"]][primary_key["Season"]][primary_key["Episode"]]["Seen"] = primary_key["Seen"] printl("Seen Count: " + str(str(len(records["Movies"]) + len(records["TV"]))) + " Processed: " + str(cntNew)) #self.dbHandler.commit() elapsed_time = time.time() - start_time printl("Took: " + str(elapsed_time), self) try: if os.path.exists(self.DB_PATH + "seen.db"): os.rename(self.DB_PATH + "seen.db", self.DB_PATH + "seen.db" + ".old") except Exception, ex: printl(".Backup Seen failed! Ex: " + str(ex), __name__, "E") except Exception, ex: printl( ".Failed Import to PickleV2! Reloading Pickle V1. Ex: " + str(ex), __name__, "E") self.USE_DB_TYPE = self.DB_PICKLE
def importDataToPickleV2 (self, session): printl("->", self, "S") try: if session is not None: self.mm = session.open(MessageBox, (_("\nConverting data to V2.... \n\nPlease wait... ")), MessageBox.TYPE_INFO) #self.mm = self.session.open(Msg) printl("Importing Data to PickleV2", self) # this will Open Pickle V1 and run upgrades if necessary userId = config.plugins.pvmc.seenuserid.value dbHandlerPickle = databaseHandlerPICKLE().getInstance("from importDataToPickleV2", None) dbHandlerPickle.loadAll() #Upgrade SeenDB records = dbHandlerPickle.getSeenForUpgrade() self.dbHandler.loadAll() start_time = time.time() cntNew = 0 printl("Total Seen Movies to Convert: "+str(len(records["Movies"])), self) for imdb in records["Movies"]: if imdb == u"": continue printl("getSeen for imdb: "+imdb, self) m = self.dbHandler.getMediaWithImdbId(imdb) if m is None: #printl("IS NONE: "+imdb, self) m = MediaInfo() m.Id = None m.ImdbId = imdb seen = records["Movies"][imdb]["Seen"] if seen: self.dbHandler.MarkAsSeenWithMedia(m,userId) else: pass #self.dbHandler.MarkAsUnseenWithMedia(m,userId) cntNew += 1 printl("Total Seen Series(no episodes) to Convert: "+str(len(records["TV"])), self) for thetvdb in records["TV"]: if thetvdb == u"": continue printl("getSeen for thetvdb: "+thetvdb, self) serie = self.dbHandler.getMediaWithTheTvDbId(thetvdb) for season in records["TV"][thetvdb]: if serie is not None: EpisodesFromSeason = self.dbHandler.getEpisodes(serie.Id, season) for episode in records["TV"][thetvdb][season]: EpisodeInserted = False seen = records["TV"][thetvdb][season][episode]["Seen"] if serie is not None: for ep in EpisodesFromSeason: if episode == ep.Episode: EpisodeInserted = True if seen: self.dbHandler.MarkAsSeen(ep.Id,userId) else: pass #self.dbHandler.MarkAsUnseen(ep.Id,userId) else: #printl("NO SERIE: " + thetvdb, self) pass if not EpisodeInserted: #printl("MANNUALLY: " + thetvdb, self) m = MediaInfo() # Fake Media, Avoid loosing Seen Data m.Id = None m.TheTvDbId = thetvdb m.Season = season m.Episode = episode if seen: #printl("SEEN 2: " + thetvdb, self) self.dbHandler.MarkAsSeenWithMedia(m,userId) else: #printl("UNSEEN 2: " + thetvdb, self) #self.dbHandler.MarkAsUnseenWithMedia(m,userId) pass cntNew += 1 # dbSeen["Movies"][primary_key["ImdbId"]]["Seen"] = primary_key["Seen"] # dbSeen["TV"][primary_key["TheTvDbId"]][primary_key["Season"]][primary_key["Episode"]]["Seen"] = primary_key["Seen"] printl("Seen Count: "+str(str(len(records["Movies"])+len(records["TV"]))) + " Processed: " + str(cntNew) ) #self.dbHandler.commit() elapsed_time = time.time() - start_time printl("Took: " + str(elapsed_time), self) try: if os.path.exists(self.DB_PATH + "seen.db"): os.rename(self.DB_PATH + "seen.db", self.DB_PATH + "seen.db" +".old") except Exception, ex: printl(".Backup Seen failed! Ex: " + str(ex), __name__, "E") except Exception, ex: printl(".Failed Import to PickleV2! Reloading Pickle V1. Ex: " + str(ex), __name__, "E") self.USE_DB_TYPE = self.DB_PICKLE