diff --git a/app.py b/app.py index 1e5b844..09282f0 100644 --- a/app.py +++ b/app.py @@ -4,7 +4,7 @@ from flask_caching import Cache import requests.auth import os from lib.datetime import filter_accounts_next_30_days, filter_accounts_expired -from lib.reqs import get_urls, get_user_accounts, add_user_account, delete_user_account, get_user_accounts_count +from lib.reqs import get_urls, get_user_accounts, add_user_account, delete_user_account, get_user_accounts_count, get_stream_names from flask import send_from_directory import requests import base64 @@ -164,6 +164,15 @@ def delete_account(): return redirect(url_for("user_accounts")) +@app.route("/get_stream_names", methods=["GET"]) +def stream_names(): + if not session.get("logged_in"): + return redirect(url_for("home")) + base_url = app.config["BASE_URL"] + stream_names = get_stream_names(base_url, session["auth_credentials"]) + return jsonify(stream_names) + + @app.route('/OCRupload', methods=['POST']) def OCRupload(): if 'image' not in request.files: diff --git a/lib/reqs.py b/lib/reqs.py index 3e56419..07e02c3 100644 --- a/lib/reqs.py +++ b/lib/reqs.py @@ -105,3 +105,19 @@ def get_user_accounts_count(base_url: str, auth: str) -> int: response = requests.request("GET", url, headers=headers, data=payload) res_json = json.loads(response.text) return res_json['count'] + + +def get_stream_names(base_url: str, auth: str) -> List[str]: + """Get a list of stream names from the API. + + Args: + base_url (str): The base URL of the API. + auth (str): The authorization token. + + Returns: + List[str]: A list of stream names. + """ + url = f"{base_url}/getStreamNames" + headers = {"Authorization": f"Basic {auth}"} + response = requests.get(url, headers=headers) + return json.loads(response.text) diff --git a/templates/add_account.html b/templates/add_account.html index 0f88dc6..dde1338 100644 --- a/templates/add_account.html +++ b/templates/add_account.html @@ -7,6 +7,7 @@ Add Account - KTVManager +