diff --git a/server/app.py b/server/app.py index cb21b06..53b69d7 100644 --- a/server/app.py +++ b/server/app.py @@ -482,9 +482,7 @@ def prepare_collection_episodes( @flask_app.route("/media") def list_media() -> ResponseReturnValue: - media_list: Iterable[MediaElement] = get_all_considered( - order_by="elem.release_date DESC, elem.id", - ) + media_list = prepare_media_sql() return render_template( "media_list.htm", media_list=common.limit_iter(media_list, 100), @@ -495,9 +493,8 @@ def list_media() -> ResponseReturnValue: @flask_app.route("/media/short") @flask_app.route("/media/short/") def list_short_media(seconds: int = 10 * 60) -> ResponseReturnValue: - media_list: Iterable[MediaElement] = get_all_considered( + media_list = prepare_media_sql( filter_by=f"(length - progress) <= {seconds}", - order_by="elem.release_date DESC, elem.id", ) return render_template( "media_list.htm", @@ -509,9 +506,8 @@ def list_short_media(seconds: int = 10 * 60) -> ResponseReturnValue: @flask_app.route("/media/long") @flask_app.route("/media/long/") def list_long_media(seconds: int = 10 * 60) -> ResponseReturnValue: - media_list: Iterable[MediaElement] = get_all_considered( + media_list = prepare_media_sql( filter_by=f"{seconds} <= (length - progress)", - order_by="elem.release_date DESC, elem.id", ) return render_template( "media_list.htm", @@ -553,6 +549,15 @@ def list_unsorted_media() -> ResponseReturnValue: ) +def prepare_media_sql( + filter_by: str = "TRUE", +) -> Sequence[MediaElement]: + return get_all_considered( + filter_by=filter_by, + order_by="elem.release_date DESC, elem.id", + ) + + @flask_app.route("/media/extract") def extract_media() -> ResponseReturnValue: return render_template("media_extract.htm")