diff --git a/bazarr/api.py b/bazarr/api.py index 1a4838602..41f362146 100644 --- a/bazarr/api.py +++ b/bazarr/api.py @@ -77,7 +77,7 @@ class Restart(Resource): webserver.restart() -class Badges(Resource): +class BadgesSeries(Resource): @authenticate def get(self): missing_episodes = database.execute("SELECT table_shows.tags, table_episodes.monitored, table_shows.seriesType " @@ -87,14 +87,30 @@ class Badges(Resource): missing_episodes = filter_exclusions(missing_episodes, 'series') missing_episodes = len(missing_episodes) + result = { + "missing_episodes": missing_episodes + } + return jsonify(result) + + +class BadgesMovies(Resource): + @authenticate + def get(self): missing_movies = database.execute("SELECT tags, monitored FROM table_movies WHERE missing_subtitles is not " "null AND missing_subtitles != '[]'") missing_movies = filter_exclusions(missing_movies, 'movie') missing_movies = len(missing_movies) result = { - "missing_episodes": missing_episodes, - "missing_movies": missing_movies, + "missing_movies": missing_movies + } + return jsonify(result) + + +class BadgesProviders(Resource): + @authenticate + def get(self): + result = { "throttled_providers": len(eval(str(settings.general.throtteled_providers))) } return jsonify(result) @@ -1796,7 +1812,9 @@ class BrowseRadarrFS(Resource): api.add_resource(Shutdown, '/shutdown') api.add_resource(Restart, '/restart') -api.add_resource(Badges, '/badges') +api.add_resource(BadgesSeries, '/badges_series') +api.add_resource(BadgesMovies, '/badges_movies') +api.add_resource(BadgesProviders, '/badges_providers') api.add_resource(Languages, '/languages') api.add_resource(Notifications, '/notifications') diff --git a/bazarr/get_providers.py b/bazarr/get_providers.py index eac4e11a4..3bac72326 100644 --- a/bazarr/get_providers.py +++ b/bazarr/get_providers.py @@ -198,6 +198,7 @@ def provider_throttle(name, exception): logging.info("Throttling %s for %s, until %s, because of: %s. Exception info: %r", name, throttle_description, throttle_until.strftime("%y/%m/%d %H:%M"), cls_name, exception.args[0] if exception.args else None) + update_throttled_provider() def throttled_count(name): @@ -255,7 +256,7 @@ def update_throttled_provider(): with open(os.path.join(args.config_dir, 'config', 'config.ini'), 'w+') as handle: settings.write(handle) - event_stream(type='badges') + event_stream(type='badges_providers') def list_throttled_providers(): diff --git a/bazarr/list_subtitles.py b/bazarr/list_subtitles.py index 9f654eeb2..0a2374f86 100644 --- a/bazarr/list_subtitles.py +++ b/bazarr/list_subtitles.py @@ -236,7 +236,7 @@ def list_missing_subtitles(no=None, epno=None, send_event=True): if send_event: event_stream(type='episode', action='update', series=missing_subtitles_item[2], episode=missing_subtitles_item[1]) - event_stream(type='badges') + event_stream(type='badges_series') def list_missing_subtitles_movies(no=None, send_event=True): @@ -297,7 +297,7 @@ def list_missing_subtitles_movies(no=None, send_event=True): if send_event: event_stream(type='movie', action='update', movie=missing_subtitles_item[1]) - event_stream(type='badges') + event_stream(type='badges_movies') def series_full_scan_subtitles(): diff --git a/views/_main.html b/views/_main.html index d2390ace5..014a4dfa4 100644 --- a/views/_main.html +++ b/views/_main.html @@ -374,7 +374,9 @@