Example #1
0
    def process_allitems(self, excludeprocessed=False):
        currentdate = str(datetime_now())
        items = quickjson.get_movies(properties=movie_properties)
        if excludeprocessed:
            items = [movie for movie in items if movie["movieid"] not in self.processed.movie]
        serieslist = quickjson.get_tvshows(properties=tvshow_properties)
        if self.abortRequested():
            return
        autoaddepisodes = addon.get_setting("autoaddepisodes_list") if addon.get_setting("episode.fanart") else ()
        for series in serieslist:
            if not excludeprocessed or series["season"] > self.processed.tvshow.get(series["tvshowid"]):
                items.append(series)
            if series["imdbnumber"] in autoaddepisodes:
                episodes = quickjson.get_episodes(series["tvshowid"], "dateadded", properties=episode_properties)
                for episode in episodes:
                    if not excludeprocessed or episode["episodeid"] not in self.processed.episode:
                        items.append(episode)
            if self.abortRequested():
                return

        processed = self.processor.process_medialist(items)
        if excludeprocessed:
            self.processed.extend(processed)
        else:
            self.processed.set(processed)
            addon.set_setting("lastalldate", currentdate)
        self.processed.save()
        if not self.abortRequested():
            addon.set_setting("lastunprocesseddate", currentdate)
Example #2
0
def set_autoaddepisodes():
    xbmc.executebuiltin('ActivateWindow(busydialog)')
    serieslist = [series for series in quickjson.get_tvshows() if series.get('imdbnumber')]
    autoaddepisodes = addon.get_setting('autoaddepisodes_list')
    xbmc.executebuiltin('Dialog.Close(busydialog)')
    selected = SeriesSelector('DialogSelect.xml', addon.path, serieslist=serieslist, selected=autoaddepisodes).prompt()
    addon.set_setting('autoaddepisodes_list', selected)
    if selected != autoaddepisodes:
        if xbmcgui.Dialog().yesno(L(M.ADD_MISSING_HEADER), L(M.ADD_MISSING_MESSAGE)):
            pykodi.execute_builtin('NotifyAll(script.artwork.beef, ProcessAfterSettings)')