<?php

declare(strict_types=1);

namespace App\Application\System;

use App\Framework\Core\Events\OnEvent;
use App\Framework\Core\Events\UserRegistered;

/**
 * Logger für Benutzerregistrierungen
 */
final readonly class UserRegistrationLogger
{
    /**
     * Protokolliert die Registrierung eines neuen Benutzers
     */
    #[OnEvent]
    public function logUserRegistration(UserRegistered $event): void
    {
        $message = sprintf(
            "[%s] Neuer Benutzer registriert: %s (%s)",
            $event->occurredAt->format('Y-m-d H:i:s'),
            $event->username,
            $event->email
        );

        // In der Produktion würden wir in eine Datei oder einen Service loggen
        error_log($message);
    }
}
