Profil-Seite mit CIS-Zusatzinfos: Anrede, Matrikelnummer, Telefon/Buero (Lektoren), Geburtsdatum/-ort, Wohnsitz, FH-Ausweis, private Kontaktdaten (nur bei eigener Sichtbarkeit)

This commit is contained in:
Nicolas Gruber
2026-10-21 14:37:34 +02:00
parent da4acfa5eb
commit 5b036024ec
2 changed files with 20 additions and 1 deletions
+10
View File
@@ -394,10 +394,20 @@ class CISClient:
"role": role,
"person_id": m.group(1) if m else "",
"username": _pick(r"Username:\s*(\S+)"),
"anrede": _pick(r"Anrede:\s*(.*?)\s*(?:Titel:|Vorname:)"),
"matrikel_nr": _pick(r"Matrikelnummer:\s*(\d+)"),
"titel": _pick(r"Titel:\s*(.*?)\s*Vorname:").strip(),
"vorname": _pick(r"Vorname:\s*(.*?)\s*Nachname:"),
"nachname": _pick(r"Nachname:\s*(.*?)\s*Postnomen:"),
"postnomen": _pick(r"Postnomen:\s*(.*?)\s*(?:Geburtsdatum:|Kurzzeichen:|Studiengang:|eMail)"),
"geburtsdatum": _pick(r"Geburtsdatum:\s*([\d.]+)"),
"geburtsort": _pick(r"Geburtsort:\s*(.*?)\s*(?:Hauptwohnsitz:|Studiengang:)"),
"wohnsitz": _pick(r"Hauptwohnsitz:\s*(.*?)\s*Studiengang:"),
"fh_ausweis": _pick(r"FH-Ausweis Status\s*(.*?)\s*eMail"),
"privat_mail": _pick(r"Privat\s+E-Mail\s+(\S+@\S+)"),
"privat_tel": _pick(r"Telefonnummer\s+([+\d][\d\s/-]*)"),
"telefon": _pick(r"Telefon:\s*(.*?)\s*(?:B\xfcro:|eMail|$)"),
"buero": _pick(r"B\xfcro:\s*(\S+)"),
"kurzzeichen": _pick(r"Kurzzeichen:\s*(\S+)"),
"mail": _pick(r"Intern:\s*([^\s]+@[^\s]+)"),
"mail_alias": _pick(r"Alias:\s*([^\s]+@[^\s]+)"),
+10 -1
View File
@@ -31,12 +31,21 @@
{% if prof.nachname or prof.username or prof.semester or prof.stg or prof.verband or prof.kurzzeichen or prof.mail %}
<table class="person-kv">
{% if prof.username %}<tr><td>Username</td><td class="mono">{{ prof.username }}</td></tr>{% endif %}
{% if prof.anrede %}<tr><td>Anrede</td><td>{{ prof.anrede }}</td></tr>{% endif %}
{% if prof.matrikel_nr %}<tr><td>Matrikelnummer</td><td class="mono">{{ prof.matrikel_nr }}</td></tr>{% endif %}
{% if prof.stg %}<tr><td>Studiengang</td><td>{{ prof.stg }}</td></tr>{% endif %}
{% if prof.semester %}<tr><td>Studien-Semester</td><td>{{ prof.semester }}</td></tr>{% endif %}
{% if prof.verband %}<tr><td>Verband</td><td>{{ prof.verband }}{{ verband_label(prof.verband) }}</td></tr>{% endif %}
{% if prof.kurzzeichen %}<tr><td>Kurzzeichen</td><td>{{ prof.kurzzeichen }}</td></tr>{% endif %}
{% if prof.mail %}<tr><td>E-Mail</td><td><a href="mailto:{{ prof.mail }}">{{ prof.mail }}</a></td></tr>{% endif %}
{% if prof.telefon %}<tr><td>Telefon (FH)</td><td><a href="tel:{{ prof.telefon | replace(' ', '') }}">{{ prof.telefon }}</a></td></tr>{% endif %}
{% if prof.buero %}<tr><td>Büro</td><td class="mono">{{ prof.buero }}</td></tr>{% endif %}
{% if prof.mail %}<tr><td>E-Mail (FH)</td><td><a href="mailto:{{ prof.mail }}">{{ prof.mail }}</a></td></tr>{% endif %}
{% if prof.mail_alias %}<tr><td>E-Mail (Alias)</td><td><a href="mailto:{{ prof.mail_alias }}">{{ prof.mail_alias }}</a></td></tr>{% endif %}
{% if prof.privat_mail %}<tr><td>E-Mail (privat)</td><td><a href="mailto:{{ prof.privat_mail }}">{{ prof.privat_mail }}</a></td></tr>{% endif %}
{% if prof.privat_tel %}<tr><td>Telefon (privat)</td><td><a href="tel:{{ prof.privat_tel | replace(' ', '') }}">{{ prof.privat_tel }}</a></td></tr>{% endif %}
{% if prof.geburtsdatum or prof.geburtsort %}<tr><td>Geboren</td><td>{{ prof.geburtsdatum }}{% if prof.geburtsort %} in {{ prof.geburtsort }}{% endif %}</td></tr>{% endif %}
{% if prof.wohnsitz %}<tr><td>Wohnsitz</td><td>{{ prof.wohnsitz }}</td></tr>{% endif %}
{% if prof.fh_ausweis %}<tr><td>FH-Ausweis</td><td>{{ prof.fh_ausweis }}</td></tr>{% endif %}
</table>
{% endif %}
<div class="person-actions">