{% extends 'admin/base.html.twig' %}

{% block title %}{{ usuario.nombre }}{% endblock %}

{% block page_title %}
    <a href="{{ path('app_admin_usuario_index') }}" class="admin-back-link">← Usuarios</a>
    {{ usuario.nombre }}
{% endblock %}

{% block body %}
<div class="admin-show-layout">
    <div class="admin-card">
        <div class="admin-card-header">
            <h2 class="admin-card-title">Datos del usuario</h2>
            <div class="admin-card-badges">
                {% if usuario.banned %}
                    <span class="admin-badge admin-badge--banned">Baneado</span>
                {% elseif usuario.activo %}
                    <span class="admin-badge admin-badge--success">Activo</span>
                {% else %}
                    <span class="admin-badge admin-badge--danger">Inactivo</span>
                {% endif %}
                {% if usuario.isAdmin %}
                    <span class="admin-badge admin-badge--admin">Admin</span>
                {% endif %}
            </div>
        </div>

        <dl class="admin-dl">
            <dt>ID</dt>
            <dd>{{ usuario.id }}</dd>

            <dt>Nombre</dt>
            <dd>{{ usuario.nombre }}</dd>

            <dt>Email</dt>
            <dd>{{ usuario.email }}</dd>

            <dt>Username tag</dt>
            <dd>{{ usuario.usernameTag ?? '—' }}</dd>

            <dt>BGG</dt>
            <dd>{{ usuario.usuarioBgg ?? '—' }}</dd>

            <dt>Fecha de registro</dt>
            <dd>{{ usuario.fechaRegistro|date('d/m/Y H:i') }}</dd>

            <dt>Grupos</dt>
            <dd>{{ usuario.grupoMiembros|length }}</dd>

            {% if usuario.banned %}
            <dt>Baneado el</dt>
            <dd>{{ usuario.bannedAt|date('d/m/Y H:i') }}</dd>

            <dt>Motivo del ban</dt>
            <dd>{{ usuario.banReason ?? '—' }}</dd>
            {% endif %}
        </dl>
    </div>

    <div class="admin-card">
        <div class="admin-card-header">
            <h2 class="admin-card-title">Colección de juegos <span class="admin-count-badge">{{ usuario.colecciones|length }}</span></h2>
        </div>
        {% if usuario.colecciones|length == 0 %}
            <p class="admin-empty">Este usuario no tiene juegos en su colección.</p>
        {% else %}
            <ul class="admin-member-list">
                {% for coleccion in usuario.colecciones %}
                    <li class="admin-member-item">
                        {% if coleccion.juego.imagenUrl %}
                            <img src="{{ coleccion.juego.imagenUrl }}" alt="" class="admin-game-thumb">
                        {% endif %}
                        <a href="{{ path('app_admin_juego_show', {id: coleccion.juego.id}) }}" class="admin-link">
                            {{ coleccion.juego.nombre }}
                        </a>
                        <span class="admin-muted" style="font-size:.8rem; margin-left:auto">{{ coleccion.fechaAgregado|date('d/m/Y') }}</span>
                    </li>
                {% endfor %}
            </ul>
        {% endif %}
    </div>

    <div class="admin-card">
        <div class="admin-card-header">
            <h2 class="admin-card-title">Acciones</h2>
        </div>

        <div class="admin-actions-list">
            {% if usuario.banned %}
                <form method="post" action="{{ path('app_admin_usuario_unban', {id: usuario.id}) }}">
                    <input type="hidden" name="_csrf_token" value="{{ csrf_token('admin_unban_' ~ usuario.id) }}">
                    <button type="submit" class="btn btn-block btn-success">Levantar ban</button>
                </form>
            {% else %}
                <form method="post" action="{{ path('app_admin_usuario_ban', {id: usuario.id}) }}" class="admin-ban-form">
                    <input type="hidden" name="_csrf_token" value="{{ csrf_token('admin_ban_' ~ usuario.id) }}">
                    <input type="text" name="razon" placeholder="Motivo del ban (opcional)" class="admin-search-input" maxlength="500">
                    <button type="submit" class="btn btn-block btn-danger">Banear usuario</button>
                </form>
            {% endif %}

            <form method="post" action="{{ path('app_admin_usuario_toggle_activo', {id: usuario.id}) }}">
                <input type="hidden" name="_csrf_token" value="{{ csrf_token('admin_toggle_activo_' ~ usuario.id) }}">
                <button type="submit" class="btn btn-block {% if usuario.activo %}btn-warning{% else %}btn-success{% endif %}">
                    {% if usuario.activo %}Desactivar cuenta{% else %}Activar cuenta{% endif %}
                </button>
            </form>

            <form method="post" action="{{ path('app_admin_usuario_toggle_admin', {id: usuario.id}) }}">
                <input type="hidden" name="_csrf_token" value="{{ csrf_token('admin_toggle_admin_' ~ usuario.id) }}">
                <button type="submit" class="btn btn-block {% if usuario.isAdmin %}btn-danger{% else %}btn-primary{% endif %}">
                    {% if usuario.isAdmin %}Quitar rol Admin{% else %}Hacer Admin{% endif %}
                </button>
            </form>
        </div>
    </div>
</div>
{% endblock %}
