diff --git a/app/flask-postgres/app/app.py b/app/flask-postgres/app/app.py index b4a6cd4..b9eed30 100644 --- a/app/flask-postgres/app/app.py +++ b/app/flask-postgres/app/app.py @@ -295,26 +295,26 @@ def startup_checks(): ensure_default_admin() - +@app.route("/") @app.route("/home") def home(): return render_template( #"index.html", #page_title="Info", #active_page="home", - "preise2.html", + "preise3.html", page_title="Preise", active_page="preise", vat_label=COUNTRY_VAT_LABELS.get(session.get("country", "DE")), **get_current_user() ) -@app.route("/") + @app.route("/preise") #@login_required def preise(): return render_template( - "preise2.html", + "preise3.html", page_title="Preise", active_page="preise", vat_label=COUNTRY_VAT_LABELS.get(session.get("country", "DE")), @@ -1951,14 +1951,12 @@ def admin_questions_course(course_id): @app.route("/course//assessment", methods=["GET", "POST"]) @login_required def course_assessment(course_id): - mandant_level = session.get("mandant_level", 0) user_level = session.get("user_level", 3) - if not is_course_allowed_for_level(course["code"], user_level): - abort(403) conn = get_connection() cur = conn.cursor() + # Kurs zuerst laden cur.execute(""" SELECT id, code, title FROM course @@ -1971,7 +1969,8 @@ def course_assessment(course_id): conn.close() abort(404) - if not is_course_allowed_for_level(course["code"], mandant_level): + # Erst jetzt darf auf course["code"] zugegriffen werden + if not is_course_allowed_for_level(course["code"], user_level): cur.close() conn.close() abort(403) @@ -2021,7 +2020,9 @@ def course_assessment(course_id): module_was_completed_before = False if module_code in ("A", "B", "C"): - module_was_completed_before = get_user_module_completion(session["user_id"], module_code) is not None + module_was_completed_before = ( + get_user_module_completion(session["user_id"], module_code) is not None + ) for q in questions: selected_answer_id = request.form.get(f"question_{q['id']}") @@ -2032,7 +2033,7 @@ def course_assessment(course_id): SELECT is_correct FROM answer WHERE id = %s - AND question_id = %s + AND question_id = %s """, (int(selected_answer_id), q["id"])) row = cur.fetchone() @@ -2050,16 +2051,22 @@ def course_assessment(course_id): module_completed_now = False certificate_generated = False + certificate_guid = None if passed and module_code in ("A", "B", "C"): - module_is_completed_after = get_user_module_completion(session["user_id"], module_code) is not None + module_is_completed_after = ( + get_user_module_completion(session["user_id"], module_code) is not None + ) if module_is_completed_after and not module_was_completed_before: - certificate_result = generate_certificate_pdf_for_user(session["user_id"], module_code) + certificate_result = generate_certificate_pdf_for_user( + session["user_id"], module_code + ) if certificate_result: module_completed_now = True certificate_generated = True + certificate_guid = certificate_result["guid"] cur.close() conn.close() @@ -2074,6 +2081,7 @@ def course_assessment(course_id): passed=passed, module_completed_now=module_completed_now, certificate_generated=certificate_generated, + certificate_guid=certificate_guid, module_code=module_code, **get_current_user() ) diff --git a/app/flask-postgres/app/templates/preise3.html b/app/flask-postgres/app/templates/preise3.html new file mode 100644 index 0000000..9b9dc0b --- /dev/null +++ b/app/flask-postgres/app/templates/preise3.html @@ -0,0 +1,54 @@ +{% extends "base.html" %} + +{% block content %} + +
+ +
+ +

Compliance Verification Plattform

+ +

+ Schulung, Bewertung und Unterstützung bei AI Governance in Ihrem Unternehmen. +

+ + + +
+ +
+ +
+ +
+ +

Was ist Compliance Verification?

+ +

+ Diese Plattform unterstützt Unternehmen dabei, + den Einsatz von Künstlicher Intelligenz strukturiert zu verstehen, + Risiken zu bewerten und Governance-Prozesse aufzubauen. +

+ +

+ Mitarbeitende durchlaufen modulare Schulungen (A, B, C) + und schließen diese mit Assessments ab. +

+ + + +
+ +
+ +{% endblock %} \ No newline at end of file