{% extends 'base.html' %}

{% block content %}
<div class="grid place-items-center min-h-[calc(100vh-5rem)] flex justify-center py-6 m-2">
    <div class="max-w-md w-full p-8 rounded-2xl border-2 border-blue-400 bg-white dark:bg-transparent dark:text-white">
        <h1 class="text-2xl text-center font-bold mb-4 ">Spiel beitreten</h1>
        <form action="{% url 'play:join_game' %}" method="post" class="flex flex-col gap-4">
            {% csrf_token %}
            <div class="flex gap-3 items-center justify-center">
                <input type="number" name="game_code" placeholder="123456" maxlength="6" class="w-32 p-3 rounded-full bg-gray-200 focus:scale-105 transition duration-200 font-black focus:outline-none focus:ring-2 focus:ring-blue-400 focus:bg-blue-100 text-center tracking-wider text-black"  autofocus>
                <button type="submit" class="h-12 px-6 rounded-full bg-blue-600 text-white font-black hover:scale-105 transition duration-200 flex items-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed hover:bg-blue-700 active:scale-95 group" disabled>
                    <span class="hidden sm:block">Beitreten</span>
                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5 transition-transform group-hover:translate-x-1">
                        <path stroke-linecap="round" stroke-linejoin="round" d="M13.5 4.5L21 12m0 0l-7.5 7.5M21 12H3" />
                    </svg>
                </button>
            </div>
            {% if messages %}
                <ul class="messages">
                    {% for message in messages %}
                    <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
                    {% endfor %}
                </ul>
            {% endif %}
        </form>
        <script>
            const input = document.querySelector('input[name="game_code"]');
            const button = document.querySelector('button[type="submit"]');
            
            input.addEventListener('input', function(e) {
                button.disabled = !this.value.match(/^[0-9]{6}$/);
            });

            input.addEventListener('keypress', function(e) {
                if (e.key === 'Enter' && !button.disabled) {
                    button.click();
                }
            });
        </script>
    </div>
</div>
{% endblock %}