From eade9a5f272434b20572c7048b309968790bc39e Mon Sep 17 00:00:00 2001 From: Norm Rasmussen Date: Thu, 6 Apr 2023 16:46:49 -0400 Subject: [PATCH] Added getting people functionality. Configured the action button to only show up if there's something to do (like a table) and also can scroll to the top. --- app/__pycache__/routes.cpython-311.pyc | Bin 29381 -> 33100 bytes app/routes.py | 107 +++++++++++++++++++++---- app/static/css/styles.css | 23 +++--- app/templates/footer_button.html | 22 +++-- app/templates/home.html | 14 +++- app/templates/subheader.html | 12 ++- app/templates/templates.html | 3 +- 7 files changed, 140 insertions(+), 41 deletions(-) diff --git a/app/__pycache__/routes.cpython-311.pyc b/app/__pycache__/routes.cpython-311.pyc index 2a5d796bc2263af0e0296df386c9943818b84d54..9013b66966a0e80e5d7d3157003a2110760d9717 100644 GIT binary patch delta 10931 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 YB*X=>o1k~bAi56e_}gcg0o~+(0B^=f-2eap diff --git a/app/routes.py b/app/routes.py index 86b2b9a..b831800 100644 --- a/app/routes.py +++ b/app/routes.py @@ -7,6 +7,7 @@ import csv import glob import time import pandas as pd +from urllib.parse import urlparse from datetime import datetime, timezone, timedelta from pathlib import Path from functools import wraps @@ -86,9 +87,18 @@ def key_required(check): if session.get("key") is None: return redirect("/", code=302) return check(*args, **kwargs) - return decorated_function +def grab_subdomain(): + endpoint = "/v2/courses" + headers = {"accept":"application/json", "X-Api-Key":session["key"]} + response = requests.get(url+endpoint, headers=headers) + data2 = response.json()["data"][0]["links"]["enroll"]["href"] + data = urlparse(data2) + data = str("https://" + data.netloc) + print(data) + session["subdomain"] = data + @app.route("/", methods=["GET", "POST"]) def ask_key(): @@ -108,7 +118,9 @@ def ask_key(): endpoint = "/v2/properties/school" headers = {"accept": "application/json", "X-Api-Key": session["key"]} response = requests.get(url + endpoint, headers=headers) + grab_subdomain() return key_response(response) + error = "Hm. That doesn't seem right" session.clear() return render_template("index.html", title="Home", error=error) @@ -336,7 +348,7 @@ def load_templates(): while True: count += 1 - endpoint = "v2/custom_templates" + endpoint = f"v2/custom_templates?page={count}" headers = { "accept": "application/json", "content-type": "application/json", @@ -344,7 +356,6 @@ def load_templates(): } response = requests.get(url + endpoint, headers=headers) data = response.json() - nextlink = data["links"] for response in data["data"]: last_updated = response["attributes"]["updated_at"].split("T") full_updated = response["attributes"]["updated_at"] @@ -357,17 +368,15 @@ def load_templates(): ) templates.append((name, body, last_updated)) - if "next" not in nextlink: + if data["data"] == []: break - save_templates_backup(templates) - return render_template( - "templates.html", - title="Templates", - templates=templates, - ) - - return render_template("options.html") + save_templates_backup(templates) + return render_template( + "templates.html", + title="Templates", + templates=templates, + ) @app.route("/templates", methods=["GET", "POST"]) @@ -475,9 +484,10 @@ def get_info(): return render_template("get_info.html", title="Get Customer Information") -@app.route("/get_info/", methods=["GET", "POST"]) +@app.route("/get_courses", methods=["GET", "POST"]) @key_required -def get_courses(variable): +def get_courses(): + print("course function running") count = 0 courses = [] cats = [] @@ -537,9 +547,9 @@ def get_courses(variable): finally: pd.set_option("display.max_colwidth", 30) df = pd.DataFrame.from_records(courses) - df.iloc[-1] = df.iloc[-1].astype(str).str.replace("[\]\[]",'') + # df.iloc[-1] = df.iloc[-1].astype(str).str.replace("[\]\[]",'') df.fillna('', inplace=True) - table = df.to_html() + courses_table = df.to_html() session["dfcsv"] = df.to_csv() if data["data"] == []: @@ -547,12 +557,75 @@ def get_courses(variable): return render_template("get_info.html", title="Course Information", - table=table) + table=courses_table) return "You didn't post up" +@app.route("/get_groups", methods=["GET", "POST"]) +@key_required +def get_groups(): + print("groups function running") + count = 0 + groups = [] + group_dict = {} + if request.method == "POST": + while True: + count += 1 + url = f"https://api.northpass.com/v2/groups?page={count}" + headers = {"accept": "application/json", "X-Api-Key": session["key"]} + response = requests.get(url, headers=headers) + data = response.json() + print(data) + + for response in data["data"]: + uuid = response["id"] + name = response["attributes"]["name"] + ecount = response["attributes"]["membership_count"] + created = response["attributes"]["created_at"] + update = response["attributes"]["updated_at"] + elink = response["attributes"]["group_enrollment_link"] + group_dict = { + "Id": uuid, + "Name": name, + "Members": ecount, + "Created At": created, + "Last Updated": update, + "Enrollment Link":elink, + } + try: + groups.append(group_dict) + except TypeError as e: + print(f"Error: {e}") + finally: + pd.set_option("display.max_colwidth", 30) + df = pd.DataFrame.from_records(groups) + # df.iloc[-1] = df.iloc[-1].astype(str).str.replace("[\]\[]",'') + df.fillna('', inplace=True) + groups_table = df.to_html() + session["dfcsv"] = df.to_csv() + if data["data"] == []: + break + return render_template("get_info.html", + title="Course Information", + table=groups_table) + return "You didn't post up" +@app.route("/get_people", methods=["GET", "POST"]) +@key_required +def get_people(): + print("groups function running") + count = 0 + groups = [] + group_dict = {} + if request.method == "POST": + while True: + count += 1 + url = f"https://api.northpass.com/v2/groups?page={count}" + headers = {"accept": "application/json", "X-Api-Key": session["key"]} + response = requests.get(url, headers=headers) + data = response.json() + print(data) @app.route("/undo_template", methods=["POST"]) @key_required def undo_template(): diff --git a/app/static/css/styles.css b/app/static/css/styles.css index 7ff5a52..545769e 100644 --- a/app/static/css/styles.css +++ b/app/static/css/styles.css @@ -192,6 +192,9 @@ justify-content: space-evenly; justify-content: space-evenly; } +.subdom-link { color: #089FB7; } +.subdom-link:hover { color: #F05323; } + #templates { width: 75%; } @@ -279,11 +282,6 @@ ul { padding: 0; } -html, body { - background: #eaedf2; - font-family: 'Roboto', sans-serif; -} - .floating-container { position: fixed; width: 100px; @@ -293,7 +291,7 @@ html, body { margin: 35px 25px; } .floating-container:hover { - height: 200px; + height: 280px; } .floating-container:hover .floating-button { box-shadow: 0 10px 25px rgba(44, 179, 240, 0.6); @@ -352,17 +350,18 @@ html, body { } .floating-container .float-element .material-icons { vertical-align: middle; + color: white; font-size: 16px; } .floating-container .float-element:nth-child(1) { - background: #42A5F5; - box-shadow: 0 20px 20px -10px rgba(66, 165, 245, 0.5); + background: #F05323; + box-shadow: 0 20px 20px -10px rgba(240, 84, 36, 0.5); } .floating-container .float-element:nth-child(2) { - background: #4CAF50; - box-shadow: 0 20px 20px -10px rgba(76, 175, 80, 0.5); + background: #FED109; + box-shadow: 0 20px 20px -10px rgba(255, 209, 10, 0.5); } .floating-container .float-element:nth-child(3) { - background: #FF9800; - box-shadow: 0 20px 20px -10px rgba(255, 152, 0, 0.5); + background: #089FB7; + box-shadow: 0 20px 20px -10px rgba(08, 159, 183, 0.5); } diff --git a/app/templates/footer_button.html b/app/templates/footer_button.html index c8450eb..ca2e32e 100644 --- a/app/templates/footer_button.html +++ b/app/templates/footer_button.html @@ -1,17 +1,23 @@ - diff --git a/app/templates/home.html b/app/templates/home.html index 45b188d..619407e 100644 --- a/app/templates/home.html +++ b/app/templates/home.html @@ -3,6 +3,18 @@ {% include 'header.html' %} {% include 'logo.html' %} {% block content %} -

Academy: {{ session.raw_school }}.

+
+
+

Academy: {{ session.raw_school }}

+

 

+

Subdomain: + {{ session.subdomain }} + +

{% endblock %} + + diff --git a/app/templates/subheader.html b/app/templates/subheader.html index ffac554..ce14845 100644 --- a/app/templates/subheader.html +++ b/app/templates/subheader.html @@ -3,7 +3,7 @@ diff --git a/app/templates/templates.html b/app/templates/templates.html index 8469d15..e06d0a4 100644 --- a/app/templates/templates.html +++ b/app/templates/templates.html @@ -90,7 +90,6 @@ {% endif %} - - {% include 'footer_button.html'%} +{% include 'footer_button.html'%}