From be33a1d4e1b126ad1d6df152f29a59b27fee28c9 Mon Sep 17 00:00:00 2001 From: elias Date: Thu, 20 Aug 2026 13:00:35 +0200 Subject: [PATCH] AstraOS Ver. 1.47 Fix der Berechnung der Age Verification --- AstraOS/astra_os.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/AstraOS/astra_os.py b/AstraOS/astra_os.py index daecdcf..e4c4e36 100644 --- a/AstraOS/astra_os.py +++ b/AstraOS/astra_os.py @@ -1423,8 +1423,12 @@ def age_verification(): result = {'age': age, 'steam_id': steam_id} if age < 13: - thirteenth_birthday = birthdate_dt.replace(year=birthdate_dt.year + 13) - ban_duration_days = (thirteenth_birthday - today).days + 1 + try: + thirteenth_birthday = birthdate_dt.replace(year=birthdate_dt.year + 13) + except ValueError: + # 29. Feb in einem Nicht-Schaltjahr → auf 1. März ausweichen + thirteenth_birthday = birthdate_dt.replace(year=birthdate_dt.year + 13, month=3, day=1) + ban_duration_days = (thirteenth_birthday - today).days result['ban_duration_days'] = ban_duration_days result['ban_command'] = f"oban {steam_id} {ban_duration_days}d" @@ -1469,8 +1473,12 @@ def view_user_age_details(user_id): birthdate_dt = datetime.strptime(user['birthdate'], '%d.%m.%Y') except ValueError: birthdate_dt = datetime.strptime(user['birthdate'], '%Y-%m-%d') - thirteenth_birthday = birthdate_dt.replace(year=birthdate_dt.year + 13) - ban_duration_days = (thirteenth_birthday - today).days + 1 + try: + thirteenth_birthday = birthdate_dt.replace(year=birthdate_dt.year + 13) + except ValueError: + # 29. Feb in einem Nicht-Schaltjahr → auf 1. März ausweichen + thirteenth_birthday = birthdate_dt.replace(year=birthdate_dt.year + 13, month=3, day=1) + ban_duration_days = (thirteenth_birthday - today).days if ban_duration_days > 0: result = { 'ban_duration_days': ban_duration_days,