Startseite neu

This commit is contained in:
Bkolb 2026-04-18 18:46:54 +02:00
parent b69992f6da
commit 308ffa38a1
2 changed files with 74 additions and 12 deletions

View File

@ -295,26 +295,26 @@ def startup_checks():
ensure_default_admin() ensure_default_admin()
@app.route("/")
@app.route("/home") @app.route("/home")
def home(): def home():
return render_template( return render_template(
#"index.html", #"index.html",
#page_title="Info", #page_title="Info",
#active_page="home", #active_page="home",
"preise2.html", "preise3.html",
page_title="Preise", page_title="Preise",
active_page="preise", active_page="preise",
vat_label=COUNTRY_VAT_LABELS.get(session.get("country", "DE")), vat_label=COUNTRY_VAT_LABELS.get(session.get("country", "DE")),
**get_current_user() **get_current_user()
) )
@app.route("/")
@app.route("/preise") @app.route("/preise")
#@login_required #@login_required
def preise(): def preise():
return render_template( return render_template(
"preise2.html", "preise3.html",
page_title="Preise", page_title="Preise",
active_page="preise", active_page="preise",
vat_label=COUNTRY_VAT_LABELS.get(session.get("country", "DE")), vat_label=COUNTRY_VAT_LABELS.get(session.get("country", "DE")),
@ -1951,14 +1951,12 @@ def admin_questions_course(course_id):
@app.route("/course/<int:course_id>/assessment", methods=["GET", "POST"]) @app.route("/course/<int:course_id>/assessment", methods=["GET", "POST"])
@login_required @login_required
def course_assessment(course_id): def course_assessment(course_id):
mandant_level = session.get("mandant_level", 0)
user_level = session.get("user_level", 3) user_level = session.get("user_level", 3)
if not is_course_allowed_for_level(course["code"], user_level):
abort(403)
conn = get_connection() conn = get_connection()
cur = conn.cursor() cur = conn.cursor()
# Kurs zuerst laden
cur.execute(""" cur.execute("""
SELECT id, code, title SELECT id, code, title
FROM course FROM course
@ -1971,7 +1969,8 @@ def course_assessment(course_id):
conn.close() conn.close()
abort(404) 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() cur.close()
conn.close() conn.close()
abort(403) abort(403)
@ -2021,7 +2020,9 @@ def course_assessment(course_id):
module_was_completed_before = False module_was_completed_before = False
if module_code in ("A", "B", "C"): 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: for q in questions:
selected_answer_id = request.form.get(f"question_{q['id']}") selected_answer_id = request.form.get(f"question_{q['id']}")
@ -2050,16 +2051,22 @@ def course_assessment(course_id):
module_completed_now = False module_completed_now = False
certificate_generated = False certificate_generated = False
certificate_guid = None
if passed and module_code in ("A", "B", "C"): 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: 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: if certificate_result:
module_completed_now = True module_completed_now = True
certificate_generated = True certificate_generated = True
certificate_guid = certificate_result["guid"]
cur.close() cur.close()
conn.close() conn.close()
@ -2074,6 +2081,7 @@ def course_assessment(course_id):
passed=passed, passed=passed,
module_completed_now=module_completed_now, module_completed_now=module_completed_now,
certificate_generated=certificate_generated, certificate_generated=certificate_generated,
certificate_guid=certificate_guid,
module_code=module_code, module_code=module_code,
**get_current_user() **get_current_user()
) )

View File

@ -0,0 +1,54 @@
{% extends "base.html" %}
{% block content %}
<section class="home-hero">
<div class="home-container">
<h1>Compliance Verification Plattform</h1>
<p class="home-subtitle">
Schulung, Bewertung und Unterstützung bei AI Governance in Ihrem Unternehmen.
</p>
<div class="home-actions">
<a href="/login" class="btn-primary btn-large">
Login
</a>
<a href="https://www.compliance-verification.info"
target="_blank"
class="btn-secondary btn-large">
Mehr Informationen
</a>
</div>
</div>
</section>
<section class="home-info">
<div class="home-container">
<h2>Was ist Compliance Verification?</h2>
<p>
Diese Plattform unterstützt Unternehmen dabei,
den Einsatz von Künstlicher Intelligenz strukturiert zu verstehen,
Risiken zu bewerten und Governance-Prozesse aufzubauen.
</p>
<p>
Mitarbeitende durchlaufen modulare Schulungen (A, B, C)
und schließen diese mit Assessments ab.
</p>
</div>
</section>
{% endblock %}