{"id":672,"date":"2023-09-22T13:31:28","date_gmt":"2023-09-22T11:31:28","guid":{"rendered":"http:\/\/www.abpisa.it\/wordpress\/?page_id=672"},"modified":"2025-09-26T01:37:26","modified_gmt":"2025-09-25T23:37:26","slug":"prenotazioni-ai-tornei","status":"publish","type":"page","link":"http:\/\/www.abpisa.it\/wordpress\/prenotazioni-ai-tornei\/","title":{"rendered":"Iscrizioni ai tornei"},"content":{"rendered":"    <div class=\"event-registration-system\">\n<div class=\"ers-header\">\n            <!-- HEADER PER LA LISTA EVENTI -->\n        <h1>\ud83c\udfc6 Tornei organizzati da A.s.d. Bridge Pisa<\/h1>\n        <b>\ud83d\udccd Circolo \"Cavallino Rosso\" - Via Livornese 209<\/b><br>\n        Scegli il torneo a cui vuoi partecipare e clicca su \"Iscriviti al torneo\"<br>\n        <b><font color=\"red\" size=\"3\">\u26a0\ufe0f L'iscrizione ai tornei \u00e8 obbligatoria<\/font><\/b><br>\n        Ci si iscrive come <b><font color=\"red\">COPPIA<\/font><\/b>, non verranno accettate iscrizioni incomplete<br>\n        <font color=\"red\">Per annullare un'iscrizione inviare un messaggio alla chat whatsapp \"Bridge a Pisa\"<\/font>\n    <\/div>        \n                <div class=\"ers-events-list\">\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Grand Prix di gioved\u00ec 15 ott<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 15 Ottobre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 11 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1795\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Supp. Giov. di luned\u00ec 19 ott<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 19 Ottobre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 2 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1796\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Grand Prix di gioved\u00ec 22 ott<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 22 Ottobre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 2 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1797\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Supp. Giov. di luned\u00ec 26 ott<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 26 Ottobre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 2 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1798\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Grand Prix di gioved\u00ec 29 ott<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 29 Ottobre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 1 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1799\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Supp. Giov. di luned\u00ec 02 nov<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 02 Novembre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 0 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1800\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Grand Prix di gioved\u00ec 05 nov<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 05 Novembre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 0 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1801\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                        <div class=\"ers-event-card\">\n                <div class=\"ers-event-content\">\n                    <h3 class=\"ers-event-title\" style=\"color: #2563eb;\">\n        Simultaneo Supp. Giov. di luned\u00ec 09 nov<\/h3>\n                    <div class=\"ers-event-date\">\ud83d\udcc5 09 Novembre 2026, 21:30<\/div>\n                    <div class=\"ers-event-iscritti\">\ud83d\udc65 0 coppie iscritte<\/div>\n                    <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672?evento_id=1802\" class=\"ers-btn\">Iscriviti al torneo<\/a>\n                <\/div>\n            <\/div>\n                    <\/div>\n                \n        <div class=\"ers-event-detail\" style=\"display: none;\">\n                        <a href=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672\" class=\"ers-btn ers-back-btn\">\u2190 Torna ai tornei<\/a>\n                        \n            <div class=\"ers-detail-content\">\n                <div class=\"ers-event-full\"><\/div>\n                \n                <div class=\"ers-alert ers-success\" style=\"display: none;\">\n                    Iscrizione completata con successo!\n                <\/div>\n                \n                <div class=\"ers-alert ers-error\" style=\"display: none;\">\n                    Si \u00e8 verificato un errore. Riprova pi\u00f9 tardi.\n                <\/div>\n                \n                <div class=\"ers-registration-form\">\n                    <h3 id=\"ers-form-title\">Iscriviti al torneo<\/h3>\n                    <form id=\"form-iscrizione\">\n                        <input type=\"hidden\" id=\"ers-event-id\" name=\"event_id\" value=\"0\">\n                        <input type=\"hidden\" id=\"security\" name=\"security\" value=\"ec1e550f56\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/wordpress\/wp-json\/wp\/v2\/pages\/672\" \/>                        \n                        <div class=\"ers-form-group\">\n                            <label for=\"ers-player1\">Primo giocatore *<\/label>\n                            <input type=\"text\" id=\"ers-player1\" name=\"giocatore1\" required class=\"ers-input-large\">\n                        <\/div>\n                        \n                        <div class=\"ers-form-group\">\n                            <label for=\"ers-player2\">Secondo giocatore *<\/label>\n                            <input type=\"text\" id=\"ers-player2\" name=\"giocatore2\" required class=\"ers-input-large\">\n                        <\/div>\n                        \n                        <div class=\"ers-form-group\">\n                            <label for=\"ers-code1\">Codice FIGB del 1\u00b0 giocatore (opzionale)<\/label>\n                            <input type=\"text\" id=\"ers-code1\" name=\"codice1\" class=\"ers-input-large\">\n                        <\/div>\n                        \n                        <div class=\"ers-form-group\">\n                            <label for=\"ers-code2\">Codice FIGB del 2\u00b0 giocatore (opzionale)<\/label>\n                            <input type=\"text\" id=\"ers-code2\" name=\"codice2\" class=\"ers-input-large\">\n                        <\/div>\n                        \n                        <button type=\"submit\" class=\"ers-btn\">Conferma iscrizione<\/button>\n                    <\/form>\n                <\/div>\n                \n                <div class=\"ers-registrations-list\">\n                    <h3 id=\"ers-registrations-title\">Coppie iscritte a questo torneo<\/h3>\n                    <div class=\"ers-registrations-container\"><\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <style>\n    .event-registration-system {\n        max-width: 1000px;\n        margin: 0 auto;\n        padding: 5px;\n        font-family: 'Segoe UI', system-ui, sans-serif;\n    }\n    .ers-header {\n        text-align: center;\n        margin-bottom: 30px;\n        padding: 5px;\n        background: white;\n        border-radius: 12px;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        margin-top: 0 !important;\n        padding-top: 0 !important;\n    }\n    .ers-header h1 {\n        color: #2563eb;\n        margin-bottom: 10px;\n        font-size: 2.2rem;\n        line-height: 1.2;\n        margin-top: 0 !important;\n        padding-top: 0 !important;\n    }\n    .ers-events-list {\n        display: grid;\n        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n        gap: 15px;\n        margin-bottom: 30px;\n    }\n    .ers-event-card {\n        background: white;\n        border-radius: 10px;\n        overflow: hidden;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: transform 0.3s ease, box-shadow 0.3s ease;\n        border-left: 4px solid #2563eb;\n        height: fit-content;\n    }\n    .ers-event-card:hover {\n        transform: translateY(-3px);\n        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);\n    }\n    .ers-event-content {\n        padding: 12px 15px;\n        display: flex;\n        flex-direction: column;\n        gap: 8px;\n    }\n    .ers-event-title {\n        font-size: 1.3rem;\n        margin: 0 !important;\n        padding: 0 !important;\n        color: #2563eb;\n        line-height: 1.2;\n        font-weight: 600;\n    }\n    .ers-event-date {\n        color: #64748b;\n        font-weight: 700;\n        margin: 0;\n        display: flex;\n        align-items: center;\n        gap: 5px;\n        font-size: 1.5rem;\n    }\n    .ers-event-iscritti {\n        color: #059669;\n        font-weight: 600;\n        margin: 0;\n        display: flex;\n        align-items: center;\n        gap: 5px;\n        font-size: 2rem;\n        background: #f0fdf4;\n        padding: 4px 8px;\n        border-radius: 6px;\n        display: inline-block;\n        align-self: flex-start;\n    }\n    .ers-btn {\n        display: inline-block;\n        padding: 12px 20px;\n        background-color: #2563eb;\n        color: white;\n        text-decoration: none;\n        border-radius: 8px;\n        font-weight: 600;\n        transition: background-color 0.3s ease;\n        border: none;\n        cursor: pointer;\n        text-align: center;\n        font-size: 1.5rem;\n        width: 100%;\n    }\n    .ers-btn:hover {\n        background-color: #1d4ed8;\n    }\n    .ers-back-btn {\n        margin-bottom: 20px;\n        display: inline-flex;\n        align-items: center;\n        gap: 5px;\n        width: auto;\n        padding: 10px 16px;\n    }\n    .ers-detail-content {\n        background: white;\n        border-radius: 12px;\n        padding: 25px;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        margin-bottom: 30px;\n    }\n    .ers-form-group {\n        margin-bottom: 20px;\n    }\n    .ers-form-group label {\n        display: block;\n        margin-bottom: 10px;\n        font-weight: 600;\n        font-size: 1.8rem;\n        color: #374151;\n    }\n    .ers-input-large {\n        width: 100%;\n        padding: 16px 18px;\n        border: 2px solid #e2e8f0;\n        border-radius: 10px;\n        font-size: 1.8rem;\n        transition: all 0.3s ease;\n        background-color: #fafafa;\n    }\n    .ers-input-large:focus {\n        outline: none;\n        border-color: #2563eb;\n        box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1);\n        background-color: #fff;\n        transform: translateY(-2px);\n    }\n    .ers-registrations-list {\n        margin-top: 30px;\n    }\n    .ers-registrations-list h3 {\n        margin-bottom: 15px;\n        padding-bottom: 10px;\n        border-bottom: 2px solid #eee;\n        font-size: 1.3rem;\n    }\n    .ers-registration-item {\n        padding: 12px;\n        border-bottom: 1px solid #eee;\n        display: flex;\n        justify-content: space-between;\n        align-items: center;\n        background: #f8fafc;\n        border-radius: 6px;\n        margin-bottom: 8px;\n    }\n    .ers-registration-info {\n        flex: 1;\n    }\n    .ers-registration-players {\n        font-weight: 600;\n        margin-bottom: 4px;\n        color: #2563eb;\n        font-size: 2rem;\n    }\n    .ers-registration-date {\n        color: #64748b;\n        font-size: 1.5rem;\n    }\n    .ers-empty-state {\n        text-align: center;\n        padding: 30px;\n        color: #64748b;\n        background: #f8fafc;\n        border-radius: 8px;\n    }\n    .ers-alert {\n        padding: 12px 16px;\n        border-radius: 8px;\n        margin-bottom: 20px;\n        font-size: 1rem;\n    }\n    .ers-success {\n        background-color: #dcfce7;\n        color: #166534;\n        border: 1px solid #bbf7d0;\n    }\n    .ers-error {\n        background-color: #fee2e2;\n        color: #991b1b;\n        border: 1px solid #fecaca;\n    }\n    @media (max-width: 768px) {\n        .ers-form-group label {\n            font-size: 1.8rem;\n        }\n        .ers-input-large {\n            font-size: 1.8rem;\n            padding: 18px 16px;\n        }\n        .ers-events-list {\n            grid-template-columns: 1fr;\n            gap: 12px;\n        }\n        .ers-detail-content {\n            padding: 20px;\n        }\n        .ers-event-content {\n            padding: 16px;\n        }\n        .ers-registration-item {\n            flex-direction: column;\n            align-items: flex-start;\n            gap: 8px;\n        }\n    }\n    .ers-btn:disabled {\n        opacity: 0.7 !important;\n        cursor: not-allowed !important;\n        transform: none !important;\n    }\n    .ers-btn.processing {\n        background: linear-gradient(45deg, #2563eb, #3b82f6) !important;\n        animation: pulse 1.5s infinite;\n    }\n    .ers-btn.success {\n        background-color: #059669 !important;\n        transform: scale(1.02);\n    }\n    @keyframes pulse {\n        0% { opacity: 0.7; }\n        50% { opacity: 1; }\n        100% { opacity: 0.7; }\n    }\n    .ers-btn {\n        transition: all 0.3s ease;\n        position: relative;\n    }\n    .ers-btn:focus {\n        outline: 2px solid #3b82f6;\n        outline-offset: 2px;\n    }\n    <\/style>\n\n    <script type=\"text\/javascript\">\n    document.addEventListener('DOMContentLoaded', function() {\n        var currentEventId = null;\n        var ajaxurl = 'http:\/\/www.abpisa.it\/wordpress\/wp-admin\/admin-ajax.php';\n        var isDirect = false;\n        var mostraLista = true;\n\n        if (isDirect && currentEventId) {\n            var listDiv = document.querySelector('.ers-events-list');\n            if (listDiv) {\n                listDiv.style.display = 'none';\n            }\n            var detailDiv = document.querySelector('.ers-event-detail');\n            if (detailDiv) {\n                detailDiv.style.display = 'block';\n            }\n            caricaDettaglioEvento(currentEventId);\n        }\n\n        var registrationForm = document.getElementById('form-iscrizione');\n        if (registrationForm) {\n            registrationForm.addEventListener('submit', function(e) {\n                e.preventDefault();\n                \n                var submitBtn = this.querySelector('button[type=\"submit\"]');\n                var originalText = submitBtn.textContent;\n                \n                submitBtn.disabled = true;\n                submitBtn.innerHTML = '\u23f3 Registrazione in corso...';\n                submitBtn.style.opacity = '0.7';\n                submitBtn.style.cursor = 'not-allowed';\n                \n                var formData = new FormData();\n                formData.append('action', 'registra_partecipazione');\n                formData.append('security', document.getElementById('security').value);\n                formData.append('evento_id', document.getElementById('ers-event-id').value);\n                formData.append('giocatore1', document.getElementById('ers-player1').value);\n                formData.append('giocatore2', document.getElementById('ers-player2').value);\n                formData.append('codice1', document.getElementById('ers-code1').value);\n                formData.append('codice2', document.getElementById('ers-code2').value);\n\n                fetch(ajaxurl, {\n                    method: 'POST',\n                    body: formData\n                })\n                .then(response => response.json())\n                .then(data => {\n                    if (data.success) {\n                        submitBtn.innerHTML = '\u2705 Registrato!';\n                        submitBtn.style.backgroundColor = '#059669';\n                        \n                        document.querySelector('.ers-success').style.display = 'block';\n                        setTimeout(function() {\n                            document.querySelector('.ers-success').style.display = 'none';\n                        }, 3000);\n                        \n                        registrationForm.reset();\n                        caricaRegistrazioni(document.getElementById('ers-event-id').value);\n                        \n                        setTimeout(function() {\n                            submitBtn.disabled = false;\n                            submitBtn.innerHTML = originalText;\n                            submitBtn.style.opacity = '1';\n                            submitBtn.style.cursor = 'pointer';\n                            submitBtn.style.backgroundColor = '';\n                        }, 3000);\n                    } else {\n                        document.querySelector('.ers-error').textContent = data.data;\n                        document.querySelector('.ers-error').style.display = 'block';\n                        setTimeout(function() {\n                            document.querySelector('.ers-error').style.display = 'none';\n                        }, 3000);\n                        \n                        submitBtn.disabled = false;\n                        submitBtn.innerHTML = originalText;\n                        submitBtn.style.opacity = '1';\n                        submitBtn.style.cursor = 'pointer';\n                    }\n                })\n                .catch(error => {\n                    console.error('Error:', error);\n                    document.querySelector('.ers-error').textContent = 'Errore di connessione';\n                    document.querySelector('.ers-error').style.display = 'block';\n                    setTimeout(function() {\n                        document.querySelector('.ers-error').style.display = 'none';\n                    }, 3000);\n                    \n                    submitBtn.disabled = false;\n                    submitBtn.innerHTML = originalText;\n                    submitBtn.style.opacity = '1';\n                    submitBtn.style.cursor = 'pointer';\n                });\n            });\n        }\n\n        function caricaDettaglioEvento(eventId) {\n            var formData = new FormData();\n            formData.append('action', 'ottieni_dettaglio_evento');\n            formData.append('event_id', eventId);\n\n            fetch(ajaxurl, {\n                method: 'POST',\n                body: formData\n            })\n            .then(response => response.json())\n            .then(data => {\n                if (data.success) {\n                    var eventFull = document.querySelector('.ers-event-full');\n                    if (eventFull) {\n                        eventFull.innerHTML = `\n                            <h2>${data.data.titolo}<\/h2>\n                            <div class=\"ers-event-date\">\ud83d\udcc5 ${data.data.data}<\/div>\n                            <p style=\"margin: 20px 0;\">${data.data.descrizione}<\/p>\n                        `;\n                    }\n                    var eventIdField = document.getElementById('ers-event-id');\n                    if (eventIdField) {\n                        eventIdField.value = eventId;\n                    }\n                    caricaRegistrazioni(eventId);\n                }\n            });\n        }\n\n        function caricaRegistrazioni(eventId) {\n            var formData = new FormData();\n            formData.append('action', 'ottieni_registrazioni_evento');\n            formData.append('evento_id', eventId);\n\n            fetch(ajaxurl, {\n                method: 'POST',\n                body: formData\n            })\n            .then(response => response.json())\n            .then(data => {\n                var container = document.querySelector('.ers-registrations-container');\n                var title = document.getElementById('ers-registrations-title');\n                \n                if (data.success && container && title) {\n                    var numeroIscritti = data.data.length;\n                    title.textContent = numeroIscritti + ' coppie iscritte a questo torneo';\n                    \n                    if (numeroIscritti > 0) {\n                        var html = '';\n                        data.data.forEach(function(registrazione) {\n                            var dataReg = new Date(registrazione.data_registrazione);\n                            var dataFormattata = dataReg.toLocaleDateString('it-IT') + ' ' + dataReg.toLocaleTimeString('it-IT');\n                            \n                            html += `\n                                <div class=\"ers-registration-item\">\n                                    <div class=\"ers-registration-info\">\n                                        <div class=\"ers-registration-players\">${registrazione.giocatore1} (${registrazione.codice1}) e ${registrazione.giocatore2} (${registrazione.codice2})<\/div>\n                                        <div class=\"ers-registration-date\">Iscritti il: ${dataFormattata}<\/div>\n                                    <\/div>\n                                <\/div>\n                            `;\n                        });\n                        container.innerHTML = html;\n                    } else {\n                        container.innerHTML = `\n                            <div class=\"ers-empty-state\">\n                                <p>Ancora nessuna coppia iscritta a questo torneo.<\/p>\n                            <\/div>\n                        `;\n                    }\n                }\n            });\n        }\n    });\n    <\/script>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-672","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/pages\/672","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/comments?post=672"}],"version-history":[{"count":6,"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/pages\/672\/revisions"}],"predecessor-version":[{"id":1565,"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/pages\/672\/revisions\/1565"}],"wp:attachment":[{"href":"http:\/\/www.abpisa.it\/wordpress\/wp-json\/wp\/v2\/media?parent=672"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}