diff --git a/AstraOS/Frontend/HTML/age_verification.html b/AstraOS/Frontend/HTML/age_verification.html index b590d02..656b57d 100644 --- a/AstraOS/Frontend/HTML/age_verification.html +++ b/AstraOS/Frontend/HTML/age_verification.html @@ -31,7 +31,7 @@
-
@@ -51,7 +51,7 @@

Ergebnis

Die Person ist {{ result.age }} Jahre alt.

{% if result.age < 13 %} -

Diese Person muss für {{ result.ban_duration_days }} Tage gesperrt werden.

+

Diese Person muss für {{ result.ban_duration_days }} Tage gebannt werden.

diff --git a/AstraOS/Frontend/HTML/view_user_age_details.html b/AstraOS/Frontend/HTML/view_user_age_details.html index 4909205..435b71c 100644 --- a/AstraOS/Frontend/HTML/view_user_age_details.html +++ b/AstraOS/Frontend/HTML/view_user_age_details.html @@ -2,58 +2,83 @@ {% block title %}AstraOS — Benutzerdetails{% endblock %} +{% block head %} + +{% endblock %} + {% block content %} -
-

Benutzerdetails

- - ← Zurück - -
+
+
+

Benutzerdetails

+ + ← Zurück + +
-
-
-
-

Ingame Name

-

{{ user.ingame_name }}

-
-
-

SteamID

-

{{ user.steam_id }}

-
-
-

Geburtsdatum

-

{{ user.birthdate }}

-
-
-

Alter bei Überprüfung

-

{{ user.age }} Jahre

-
-
-

Überprüft von

-

{{ user.checked_by }} am {{ user.timestamp.strftime('%d.%m.%Y um %H:%M') }}

-
-
- - {% if result %} -
-

Aktion erforderlich

-

Diese Person muss für {{ result.ban_duration_days }} Tage gesperrt werden.

-
- -
- - +
+
+
+

Ingame Name

+

{{ user.ingame_name }}

+
+
+

SteamID

+

{{ user.steam_id }}

+
+
+

Geburtsdatum

+

{{ user.birthdate }}

+
+
+

Aktuelles Alter

+

{{ user.age }} Jahre

+
+
+

Überprüft von

+

{{ user.checked_by }} am {{ user.timestamp.strftime('%d.%m.%Y um %H:%M') }}

+ + {% if result %} +
+

Aktion erforderlich

+

Diese Person muss für {{ result.ban_duration_days }} Tage gesperrt werden.

+
+ +
+ + +
+
+
+ {% elif user.age >= 13 %} +
+

Keine Sperre erforderlich.

+
+ {% endif %} + +
+ +
- {% elif user.age >= 13 %} -
-

Keine Sperre erforderlich.

+ + + - {% endif %}
{% endblock %} - diff --git a/AstraOS/astra_os.py b/AstraOS/astra_os.py index d608e77..805bf9b 100644 --- a/AstraOS/astra_os.py +++ b/AstraOS/astra_os.py @@ -693,6 +693,12 @@ def delete_role(role_id): roles_collection.delete_one({'_id': ObjectId(role_id)}) flash("Rolle wurde gelöscht.", "success") return redirect(url_for('role_management')) + +def calculate_current_age(birthdate_str): + birthdate_dt = datetime.strptime(birthdate_str, '%Y-%m-%d') + today = datetime.today() + return today.year - birthdate_dt.year - ((today.month, today.day) < (birthdate_dt.month, birthdate_dt.day)) + @app.route('/age_verification', methods=['GET', 'POST']) @login_required @permission_required('view_age_verification') @@ -739,6 +745,9 @@ def age_verification(): else: users = list(age_verification_collection.find().sort("timestamp", -1).limit(10)) + for user in users: + user['age'] = calculate_current_age(user['birthdate']) + return render_template('age_verification.html', active_page='age_verification', result=result, @@ -754,6 +763,8 @@ def view_user_age_details(user_id): flash("Benutzer nicht gefunden.", "danger") return redirect(url_for('age_verification')) + user['age'] = calculate_current_age(user['birthdate']) + result = None if user.get('age') < 13: today = datetime.today() @@ -770,6 +781,15 @@ def view_user_age_details(user_id): active_page='age_verification', user=user, result=result) + +@app.route('/age_verification/delete/', methods=['POST']) +@login_required +@permission_required('view_age_verification') +def delete_age_verification(user_id): + age_verification_collection.delete_one({'_id': ObjectId(user_id)}) + flash("Eintrag zur Altersüberprüfung wurde gelöscht.", "success") + return redirect(url_for('age_verification')) + @app.route('/ip_analyzer', methods=['GET', 'POST']) @login_required @permission_required('view_ip_analyzer')