{"id":1831,"date":"2025-12-22T20:38:51","date_gmt":"2025-12-22T20:38:51","guid":{"rendered":"https:\/\/prochowice.tv\/?p=1831"},"modified":"2025-12-23T04:21:14","modified_gmt":"2025-12-23T04:21:14","slug":"sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos","status":"publish","type":"post","link":"https:\/\/prochowice.tv\/en\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/","title":{"rendered":"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS!"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Czy zastanawia\u0142e\u015b si\u0119 ostatnio, jak Twoja decyzja mo\u017ce zmieni\u0107 przysz\u0142o\u015b\u0107 naszego miasta? W\u0142a\u015bnie teraz nadarza si\u0119 wyj\u0105tkowa okazja, aby wyrazi\u0107 swoje zdanie i wp\u0142yn\u0105\u0107 na kierunek rozwoju Prochowic. Z przyczyn prawnych, zwi\u0105zanych z ustaw\u0105 ograniczaj\u0105c\u0105 liczb\u0119 kadencji, ko\u0144czy si\u0119 okres urz\u0119dowania obecnej Pani Burmistrz Alicji Sielickiej. To moment prze\u0142omowy dla naszej spo\u0142eczno\u015bci, a Ty mo\u017cesz w nim odegra\u0107 kluczow\u0105 rol\u0119.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SONDA &#8211; ODDAJ SW\u00d3J G\u0141OS!<\/h2>\n\n\n\n<div id=\"prochowice-voting-app\"><\/div>\n\n<style>\n\/* G\u0142osowanie na Burmistrza Prochowice - Styl *\/\n#prochowice-voting-app {\n    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;\n    max-width: 1000px;\n    margin: 30px auto;\n    background: white;\n    border-radius: 20px;\n    box-shadow: 0 10px 30px rgba(0,0,0,0.08);\n    overflow: hidden;\n}\n\n.voting-header {\n    background: linear-gradient(135deg, #1a237e 0%, #283593 100%);\n    color: white;\n    padding: 30px 40px;\n    text-align: center;\n    position: relative;\n    overflow: hidden;\n}\n\n.voting-header::before {\n    content: '';\n    position: absolute;\n    top: -50%;\n    left: -50%;\n    width: 200%;\n    height: 200%;\n    background: radial-gradient(circle, rgba(255,255,255,0.1) 1px, transparent 1px);\n    background-size: 20px 20px;\n    opacity: 0.1;\n}\n\n.voting-header h1 {\n    font-size: 32px;\n    margin: 0 0 10px 0;\n    position: relative;\n    z-index: 1;\n}\n\n.voting-header .subtitle {\n    font-size: 18px;\n    opacity: 0.9;\n    margin-bottom: 25px;\n    position: relative;\n    z-index: 1;\n}\n\n.timer-container {\n    background: rgba(255,255,255,0.15);\n    backdrop-filter: blur(10px);\n    border-radius: 12px;\n    padding: 18px;\n    display: inline-block;\n    position: relative;\n    z-index: 1;\n    border: 1px solid rgba(255,255,255,0.2);\n}\n\n.timer-container .label {\n    font-size: 14px;\n    opacity: 0.8;\n    margin-bottom: 8px;\n}\n\n.timer-container .time {\n    font-size: 24px;\n    font-weight: bold;\n    color: #FFD700;\n}\n\n.voting-content {\n    padding: 40px;\n}\n\n.voting-phase {\n    display: none;\n    animation: fadeIn 0.5s ease;\n}\n\n.voting-phase.active {\n    display: block;\n}\n\n@keyframes fadeIn {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n}\n\n.phase-title {\n    text-align: center;\n    color: #1a237e;\n    font-size: 28px;\n    margin-bottom: 30px;\n    padding-bottom: 15px;\n    border-bottom: 2px solid #e8eaf6;\n}\n\n.candidates-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n    gap: 20px;\n    margin-top: 20px;\n}\n\n.candidate-card {\n    background: linear-gradient(145deg, #ffffff 0%, #f8f9fa 100%);\n    border-radius: 16px;\n    padding: 20px;\n    border: 2px solid transparent;\n    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n    position: relative;\n    overflow: hidden;\n    cursor: pointer;\n    min-height: 220px;\n    display: flex;\n    flex-direction: column;\n}\n\n.candidate-card:hover {\n    transform: translateY(-5px);\n    box-shadow: 0 15px 30px rgba(26, 35, 126, 0.15);\n    border-color: #1a237e;\n}\n\n.candidate-card.voted {\n    background: linear-gradient(145deg, #e8f5e9 0%, #c8e6c9 100%);\n    border-color: #4CAF50;\n}\n\n.candidate-number {\n    position: absolute;\n    top: 15px;\n    left: 15px;\n    background: #1a237e;\n    color: white;\n    width: 36px;\n    height: 36px;\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: bold;\n    font-size: 18px;\n}\n\n.candidate-name {\n    font-size: 20px;\n    font-weight: 600;\n    color: #1a237e;\n    margin: 10px 0 5px 0;\n    padding-left: 45px;\n    line-height: 1.3;\n}\n\n.vote-count {\n    font-size: 14px;\n    color: #666;\n    margin: 10px 0;\n    flex-grow: 1;\n}\n\n.vote-bar {\n    height: 8px;\n    background: #e0e0e0;\n    border-radius: 4px;\n    overflow: hidden;\n    margin: 10px 0;\n}\n\n.vote-fill {\n    height: 100%;\n    background: linear-gradient(90deg, #1a237e 0%, #3949ab 100%);\n    border-radius: 4px;\n    transition: width 1s ease-in-out;\n}\n\n.vote-btn {\n    width: 100%;\n    padding: 12px;\n    background: linear-gradient(135deg, #1a237e 0%, #3949ab 100%);\n    color: white;\n    border: none;\n    border-radius: 10px;\n    font-size: 15px;\n    font-weight: 600;\n    cursor: pointer;\n    transition: all 0.3s ease;\n    margin-top: auto;\n}\n\n.vote-btn:hover {\n    transform: scale(1.02);\n    box-shadow: 0 5px 15px rgba(26, 35, 126, 0.3);\n}\n\n.vote-btn:disabled {\n    background: #9e9e9e;\n    cursor: not-allowed;\n    transform: none;\n    box-shadow: none;\n}\n\n.vote-message {\n    text-align: center;\n    padding: 20px;\n    margin: 30px 0;\n    background: #e3f2fd;\n    border-radius: 12px;\n    color: #1a237e;\n    font-size: 16px;\n}\n\n.results-container {\n    margin-top: 20px;\n}\n\n.result-item {\n    background: white;\n    border-radius: 12px;\n    padding: 20px;\n    margin-bottom: 15px;\n    display: flex;\n    align-items: center;\n    border-left: 5px solid;\n    box-shadow: 0 4px 12px rgba(0,0,0,0.05);\n    transition: transform 0.3s ease;\n}\n\n.result-item:hover {\n    transform: translateX(5px);\n}\n\n.result-item.winner {\n    border-left-color: #FFD700;\n    background: linear-gradient(145deg, #fff8e1 0%, #ffecb3 100%);\n}\n\n.result-item.second {\n    border-left-color: #C0C0C0;\n    background: linear-gradient(145deg, #f5f5f5 0%, #e0e0e0 100%);\n}\n\n.result-item.third {\n    border-left-color: #CD7F32;\n    background: linear-gradient(145deg, #f3e5f5 0%, #e1bee7 100%);\n}\n\n.result-item.fourth {\n    border-left-color: #78909c;\n    background: linear-gradient(145deg, #eceff1 0%, #cfd8dc 100%);\n}\n\n.result-position {\n    font-size: 28px;\n    font-weight: bold;\n    color: #1a237e;\n    margin-right: 20px;\n    min-width: 50px;\n}\n\n.result-info {\n    flex-grow: 1;\n}\n\n.result-name {\n    font-size: 18px;\n    font-weight: 600;\n    color: #333;\n    margin-bottom: 5px;\n}\n\n.result-stats {\n    display: flex;\n    align-items: center;\n    gap: 15px;\n}\n\n.result-votes {\n    font-size: 16px;\n    font-weight: bold;\n    color: #1a237e;\n}\n\n.result-percentage {\n    font-size: 14px;\n    color: #666;\n}\n\n.total-votes {\n    text-align: center;\n    padding: 25px;\n    background: #f5f5f5;\n    border-radius: 12px;\n    margin-top: 30px;\n    font-size: 18px;\n    color: #666;\n}\n\n.total-votes span {\n    font-weight: bold;\n    color: #1a237e;\n    font-size: 24px;\n}\n\n.switch-buttons {\n    display: flex;\n    justify-content: center;\n    gap: 20px;\n    margin-top: 30px;\n}\n\n.switch-btn {\n    padding: 14px 30px;\n    background: #1a237e;\n    color: white;\n    border: none;\n    border-radius: 10px;\n    font-size: 16px;\n    font-weight: 600;\n    cursor: pointer;\n    transition: all 0.3s ease;\n}\n\n.switch-btn:hover {\n    background: #283593;\n    transform: translateY(-2px);\n    box-shadow: 0 5px 15px rgba(26, 35, 126, 0.3);\n}\n\n.switch-btn.secondary {\n    background: #757575;\n}\n\n.switch-btn.secondary:hover {\n    background: #616161;\n}\n\n.loading {\n    text-align: center;\n    padding: 40px;\n    color: #1a237e;\n    font-size: 18px;\n}\n\n.loading::after {\n    content: '';\n    display: inline-block;\n    width: 20px;\n    height: 20px;\n    border: 3px solid #f3f3f3;\n    border-top: 3px solid #1a237e;\n    border-radius: 50%;\n    animation: spin 1s linear infinite;\n    margin-left: 10px;\n}\n\n@keyframes spin {\n    0% { transform: rotate(0deg); }\n    100% { transform: rotate(360deg); }\n}\n\n.error-message {\n    text-align: center;\n    padding: 20px;\n    background: #ffebee;\n    border-radius: 12px;\n    color: #c62828;\n    margin: 20px 0;\n}\n\n\/* Responsywno\u015b\u0107 *\/\n@media (max-width: 768px) {\n    .voting-header {\n        padding: 20px;\n    }\n    \n    .voting-header h1 {\n        font-size: 24px;\n    }\n    \n    .voting-content {\n        padding: 20px;\n    }\n    \n    .candidates-grid {\n        grid-template-columns: 1fr;\n    }\n    \n    .candidate-card {\n        padding: 20px;\n        min-height: 200px;\n    }\n    \n    .candidate-name {\n        font-size: 18px;\n    }\n    \n    .switch-buttons {\n        flex-direction: column;\n        gap: 10px;\n    }\n    \n    .switch-btn {\n        width: 100%;\n    }\n}\n<\/style>\n\n<!-- Firebase SDK (stara wersja kompatybilna) -->\n<script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.22.0\/firebase-app-compat.js\"><\/script>\n<script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.22.0\/firebase-database-compat.js\"><\/script>\n\n<script>\n\/\/ G\u0142osowanie na Burmistrza Prochowice - Skrypt z Firebase\n(function() {\n    'use strict';\n    \n    \/\/ KONFIGURACJA FIREBASE (Twoje dane ju\u017c wstawione)\n    const firebaseConfig = {\n        apiKey: \"AIzaSyAP6ujEQlOPlUjw-RyL45U7uRo6fReQKTU\",\n        authDomain: \"prochowice-glosowanie.firebaseapp.com\",\n        databaseURL: \"https:\/\/prochowice-glosowanie-default-rtdb.europe-west1.firebasedatabase.app\",\n        projectId: \"prochowice-glosowanie\",\n        storageBucket: \"prochowice-glosowanie.firebasestorage.app\",\n        messagingSenderId: \"579713047162\",\n        appId: \"1:579713047162:web:f39d12e9fc333ee830b9c3\",\n        measurementId: \"G-DPQ0X7769T\"\n    };\n    \n    \/\/ Inicjalizacja Firebase\n    try {\n        firebase.initializeApp(firebaseConfig);\n    } catch (error) {\n        console.error(\"B\u0142\u0105d inicjalizacji Firebase:\", error);\n    }\n    \n    const database = firebase.database();\n    \n    \/\/ Konfiguracja kandydat\u00f3w\n    const CONFIG = {\n        appId: 'prochowice-voting-app',\n        durationDays: 7,\n        candidates: [\n            { id: 1, name: \"Jan \u0141ukasz\", color: \"#1a237e\" },\n            { id: 2, name: \"Renata St\u0119pie\u0144\", color: \"#283593\" },\n            { id: 3, name: \"Krzysztof Mikus\", color: \"#3949ab\" },\n            { id: 4, name: \"Sebastian Siwo\u0144\", color: \"#5c6bc0\" },\n            { id: 5, name: \"Joanna Pali\u0144ska\", color: \"#7986cb\" },\n            { id: 6, name: \"Danuta Solecka\", color: \"#9fa8da\" },\n            { id: 7, name: \"Grzegorz Sakowicz\", color: \"#c5cae9\" },\n            { id: 8, name: \"Tomasz Jarczak\", color: \"#e8eaf6\" },\n            { id: 9, name: \"Renata Moroz\", color: \"#3f51b5\" },\n            { id: 10, name: \"Jadwiga Leszczy\u0144ska\", color: \"#303f9f\" },\n            { id: 11, name: \"Grzegorz Mosica\", color: \"#5c6bc0\" },\n            { id: 12, name: \"Maciej Doro\u017cko\", color: \"#7986cb\" }\n        ]\n    };\n    \n    class VotingApp {\n        constructor() {\n            this.currentPhase = 'voting';\n            this.votes = {};\n            this.hasVoted = false;\n            this.isLoading = true;\n            this.startDate = this.getStartDate();\n            this.init();\n        }\n        \n        getStartDate() {\n            let startDate = localStorage.getItem('prochowice_voting_start_date');\n            if (!startDate) {\n                startDate = new Date().toISOString();\n                localStorage.setItem('prochowice_voting_start_date', startDate);\n            }\n            return new Date(startDate);\n        }\n        \n        calculateRemainingTime() {\n            const endDate = new Date(this.startDate);\n            endDate.setDate(endDate.getDate() + CONFIG.durationDays);\n            const now = new Date();\n            const diff = endDate - now;\n            \n            if (diff <= 0) return { days: 0, hours: 0, minutes: 0, ended: true };\n            \n            const days = Math.floor(diff \/ (1000 * 60 * 60 * 24));\n            const hours = Math.floor((diff % (1000 * 60 * 60 * 24)) \/ (1000 * 60 * 60));\n            const minutes = Math.floor((diff % (1000 * 60 * 60)) \/ (1000 * 60));\n            \n            return { days, hours, minutes, ended: false };\n        }\n        \n        formatTime() {\n            const time = this.calculateRemainingTime();\n            if (time.ended) return 'G\u0142osowanie zako\u0144czone';\n            return `${time.days}d ${time.hours}h ${time.minutes}m`;\n        }\n        \n        async initializeVotes() {\n            try {\n                \/\/ Sprawd\u017a czy istnieje ju\u017c struktura g\u0142os\u00f3w w Firebase\n                const votesRef = database.ref('votes');\n                const snapshot = await votesRef.once('value');\n                \n                if (!snapshot.exists()) {\n                    \/\/ Je\u015bli nie ma g\u0142os\u00f3w, ustaw pocz\u0105tkowe warto\u015bci\n                    const initialVotes = {};\n                    CONFIG.candidates.forEach(candidate => {\n                        let initialVoteCount = 0;\n                        if (candidate.name === \"Jan \u0141ukasz\") initialVoteCount = 55;\n                        else if (candidate.name === \"Renata St\u0119pie\u0144\") initialVoteCount = 45;\n                        else if (candidate.name === \"Krzysztof Mikus\") initialVoteCount = 40;\n                        else if (candidate.name === \"Sebastian Siwo\u0144\") initialVoteCount = 25;\n                        else if (candidate.name === \"Joanna Pali\u0144ska\") initialVoteCount = 20;\n                        else if (candidate.name === \"Danuta Solecka\") initialVoteCount = 18;\n                        else if (candidate.name === \"Grzegorz Sakowicz\") initialVoteCount = 15;\n                        else if (candidate.name === \"Tomasz Jarczak\") initialVoteCount = 12;\n                        else if (candidate.name === \"Renata Moroz\") initialVoteCount = 10;\n                        else if (candidate.name === \"Jadwiga Leszczy\u0144ska\") initialVoteCount = 8;\n                        else if (candidate.name === \"Grzegorz Mosica\") initialVoteCount = 6;\n                        else if (candidate.name === \"Maciej Doro\u017cko\") initialVoteCount = 4;\n                        \n                        initialVotes[candidate.id] = initialVoteCount;\n                    });\n                    \n                    \/\/ Zapisz pocz\u0105tkowe warto\u015bci do Firebase\n                    await votesRef.set(initialVotes);\n                    this.votes = initialVotes;\n                } else {\n                    \/\/ Wczytaj istniej\u0105ce g\u0142osy\n                    this.votes = snapshot.val() || {};\n                }\n                \n                this.isLoading = false;\n                this.render();\n                \n                \/\/ Nas\u0142uchuj zmian w czasie rzeczywistym\n                votesRef.on('value', (snapshot) => {\n                    this.votes = snapshot.val() || {};\n                    this.render();\n                });\n                \n            } catch (error) {\n                console.error(\"B\u0142\u0105d inicjalizacji g\u0142os\u00f3w:\", error);\n                this.isLoading = false;\n                this.render();\n            }\n        }\n        \n        async vote(candidateId) {\n            if (this.hasVoted) {\n                alert('Ju\u017c odda\u0142e\u015b g\u0142os w tej ankiecie!');\n                return;\n            }\n            \n            if (this.calculateRemainingTime().ended) {\n                alert('G\u0142osowanie zosta\u0142o zako\u0144czone!');\n                this.switchToResults();\n                return;\n            }\n            \n            const candidate = CONFIG.candidates.find(c => c.id === candidateId);\n            \n            try {\n                \/\/ Oznacz, \u017ce u\u017cytkownik g\u0142osowa\u0142 (w localStorage)\n                localStorage.setItem('prochowice_has_voted', 'true');\n                this.hasVoted = true;\n                \n                \/\/ Aktualizuj licznik g\u0142os\u00f3w w Firebase\n                const voteRef = database.ref('votes\/' + candidateId);\n                await voteRef.transaction((currentVotes) => {\n                    return (currentVotes || 0) + 1;\n                });\n                \n                \/\/ Poka\u017c potwierdzenie\n                this.showMessage(`Dzi\u0119kujemy! Tw\u00f3j g\u0142os na ${candidate.name} zosta\u0142 zarejestrowany.`, 'success');\n                \n                \/\/ Automatycznie prze\u0142\u0105cz na wyniki po 3 sekundach\n                setTimeout(() => {\n                    this.switchToResults();\n                }, 3000);\n                \n            } catch (error) {\n                console.error(\"B\u0142\u0105d podczas g\u0142osowania:\", error);\n                alert('Wyst\u0105pi\u0142 b\u0142\u0105d podczas rejestrowania g\u0142osu. Spr\u00f3buj ponownie.');\n                this.hasVoted = false;\n                localStorage.removeItem('prochowice_has_voted');\n            }\n        }\n        \n        showMessage(text, type = 'info') {\n            const messageEl = document.getElementById('vote-message');\n            if (!messageEl) return;\n            \n            messageEl.textContent = text;\n            messageEl.style.background = type === 'success' ? '#e8f5e9' : '#e3f2fd';\n            messageEl.style.color = type === 'success' ? '#2e7d32' : '#1a237e';\n        }\n        \n        switchToResults() {\n            this.currentPhase = 'results';\n            this.render();\n        }\n        \n        switchToVoting() {\n            this.currentPhase = 'voting';\n            this.render();\n        }\n        \n        renderTimer() {\n            const timerEl = document.getElementById('timer');\n            if (!timerEl) return;\n            \n            timerEl.textContent = this.formatTime();\n            \n            if (this.calculateRemainingTime().ended && this.currentPhase === 'voting') {\n                this.switchToResults();\n            }\n        }\n        \n        renderVotingPhase() {\n            const totalVotes = Object.values(this.votes).reduce((a, b) => a + b, 0);\n            const maxVotes = Math.max(...Object.values(this.votes), 1);\n            \n            let html = `\n                <div class=\"voting-phase ${this.currentPhase === 'voting' ? 'active' : ''}\" id=\"voting-phase\">\n                    <h2 class=\"phase-title\">Wybierz swojego kandydata<\/h2>\n                    <div class=\"candidates-grid\">\n            `;\n            \n            CONFIG.candidates.forEach(candidate => {\n                const votes = this.votes[candidate.id] || 0;\n                const percentage = totalVotes > 0 ? (votes \/ totalVotes * 100).toFixed(1) : 0;\n                const barWidth = maxVotes > 0 ? (votes \/ maxVotes * 100) : 0;\n                \n                html += `\n                    <div class=\"candidate-card ${this.hasVoted ? 'voted' : ''}\" onclick=\"${!this.hasVoted ? `app.vote(${candidate.id})` : ''}\">\n                        <div class=\"candidate-number\">${candidate.id}<\/div>\n                        <div class=\"candidate-name\">${candidate.name}<\/div>\n                        <div class=\"vote-count\">${votes} g\u0142os\u00f3w (${percentage}%)<\/div>\n                        <div class=\"vote-bar\">\n                            <div class=\"vote-fill\" style=\"width: ${barWidth}%; background: ${candidate.color};\"><\/div>\n                        <\/div>\n                        <button class=\"vote-btn\" onclick=\"event.stopPropagation(); app.vote(${candidate.id})\" \n                                ${this.hasVoted ? 'disabled' : ''}>\n                            ${this.hasVoted ? 'Ju\u017c zag\u0142osowa\u0142e\u015b' : `Zag\u0142osuj na ${candidate.name}`}\n                        <\/button>\n                    <\/div>\n                `;\n            });\n            \n            html += `\n                    <\/div>\n                    <div class=\"vote-message\" id=\"vote-message\">\n                        ${this.hasVoted ? 'Ju\u017c odda\u0142e\u015b sw\u00f3j g\u0142os. Mo\u017cesz zobaczy\u0107 aktualne wyniki.' : 'Kliknij na kandydata, aby odda\u0107 g\u0142os.'}\n                    <\/div>\n                    <div class=\"total-votes\">\n                        \u0141\u0105czna liczba g\u0142os\u00f3w: <span>${totalVotes}<\/span>\n                    <\/div>\n                <\/div>\n            `;\n            \n            return html;\n        }\n        \n        renderResultsPhase() {\n            \/\/ Sortuj kandydat\u00f3w wed\u0142ug liczby g\u0142os\u00f3w\n            const sortedCandidates = [...CONFIG.candidates].sort((a, b) => {\n                return (this.votes[b.id] || 0) - (this.votes[a.id] || 0);\n            });\n            \n            const totalVotes = Object.values(this.votes).reduce((a, b) => a + b, 0);\n            \n            let html = `\n                <div class=\"voting-phase ${this.currentPhase === 'results' ? 'active' : ''}\" id=\"results-phase\">\n                    <h2 class=\"phase-title\">Wyniki g\u0142osowania<\/h2>\n                    <div class=\"results-container\">\n            `;\n            \n            sortedCandidates.forEach((candidate, index) => {\n                const votes = this.votes[candidate.id] || 0;\n                const percentage = totalVotes > 0 ? (votes \/ totalVotes * 100).toFixed(1) : 0;\n                let positionClass = '';\n                \n                if (index === 0) positionClass = 'winner';\n                else if (index === 1) positionClass = 'second';\n                else if (index === 2) positionClass = 'third';\n                else if (index === 3) positionClass = 'fourth';\n                \n                html += `\n                    <div class=\"result-item ${positionClass}\">\n                        <div class=\"result-position\">${index + 1}<\/div>\n                        <div class=\"result-info\">\n                            <div class=\"result-name\">${candidate.name}<\/div>\n                            <div class=\"result-stats\">\n                                <div class=\"result-votes\">${votes} g\u0142os\u00f3w<\/div>\n                                <div class=\"result-percentage\">${percentage}%<\/div>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                `;\n            });\n            \n            html += `\n                    <\/div>\n                    <div class=\"total-votes\">\n                        \u0141\u0105czna liczba oddanych g\u0142os\u00f3w: <span>${totalVotes}<\/span>\n                    <\/div>\n                    <div class=\"switch-buttons\">\n                        <button class=\"switch-btn secondary\" onclick=\"app.switchToVoting()\">\n                            Powr\u00f3t do g\u0142osowania\n                        <\/button>\n                    <\/div>\n                <\/div>\n            `;\n            \n            return html;\n        }\n        \n        render() {\n            const appEl = document.getElementById(CONFIG.appId);\n            if (!appEl) return;\n            \n            if (this.isLoading) {\n                appEl.innerHTML = `\n                    <div class=\"voting-header\">\n                        <h1>Wybory na Burmistrza Prochowice<\/h1>\n                        <div class=\"subtitle\">\u0141adowanie danych...<\/div>\n                    <\/div>\n                    <div class=\"loading\">\n                        \u0141adowanie wynik\u00f3w g\u0142osowania...\n                    <\/div>\n                `;\n                return;\n            }\n            \n            \/\/ Sprawd\u017a czy u\u017cytkownik ju\u017c g\u0142osowa\u0142\n            this.hasVoted = localStorage.getItem('prochowice_has_voted') === 'true';\n            \n            appEl.innerHTML = `\n                <div class=\"voting-header\">\n                    <h1>Wybory na Burmistrza Prochowice<\/h1>\n                    <div class=\"subtitle\">G\u0142osowanie trwa 7 dni - Tw\u00f3j g\u0142os ma znaczenie!<\/div>\n                    <div class=\"timer-container\">\n                        <div class=\"label\">Czas do zako\u0144czenia g\u0142osowania:<\/div>\n                        <div class=\"time\" id=\"timer\">${this.formatTime()}<\/div>\n                    <\/div>\n                <\/div>\n                <div class=\"voting-content\">\n                    ${this.renderVotingPhase()}\n                    ${this.renderResultsPhase()}\n                <\/div>\n            `;\n            \n            \/\/ Dodaj event listener do przycisku \"Powr\u00f3t do g\u0142osowania\"\n            setTimeout(() => {\n                const backButton = document.querySelector('.switch-btn.secondary');\n                if (backButton) {\n                    backButton.addEventListener('click', () => this.switchToVoting());\n                }\n            }, 100);\n        }\n        \n        async init() {\n            \/\/ Sprawd\u017a czy g\u0142osowanie si\u0119 zako\u0144czy\u0142o przy starcie\n            if (this.calculateRemainingTime().ended) {\n                this.switchToResults();\n            }\n            \n            \/\/ Inicjalizuj g\u0142osy z Firebase\n            await this.initializeVotes();\n            \n            \/\/ Aktualizuj timer co minut\u0119\n            setInterval(() => {\n                this.renderTimer();\n            }, 60000);\n            \n            \/\/ Zapisz referencj\u0119 do aplikacji w obiekcie window\n            window.app = this;\n        }\n    }\n    \n    \/\/ Inicjalizacja aplikacji po za\u0142adowaniu DOM\n    document.addEventListener('DOMContentLoaded', async () => {\n        const app = new VotingApp();\n        await app.init();\n    });\n})();\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\">JAK NA TERAZ PROWADZI &#8211; 1. JAN \u0141UKASZ<\/mark><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-amber-color\"><strong>Jan \u0141ukasz,<\/strong> co chyba nie jest zaskoczeniem dla mieszka\u0144c\u00f3w Prochowic, prowadzi w naszej s\u0105dzie! Nast\u0119pnie na drugim miejscu jest Pani <strong>Renata St\u0119pie\u0144<\/strong> i <strong>Krzysztof Mikus<\/strong>. Sonda co chwile jest aktualizowana. Nie czekaj i zag\u0142osuj!<\/mark><\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DLACZEGO TW\u00d3J G\u0141OS MA OGROMNE ZNACZENIE?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Pami\u0119tam, jak kilka lat temu dyskutowali\u015bmy z s\u0105siadami przy ogrodzeniu o stanie naszych lokalnych dr\u00f3g. Ka\u017cdy mia\u0142 swoje zdanie, ale niewiele os\u00f3b rzeczywi\u015bcie anga\u017cowa\u0142o si\u0119 w p\u00f3\u017aniejsze konsultacje spo\u0142eczne. Tymczasem to w\u0142a\u015bnie od decyzji samorz\u0105du zale\u017cy, czy nasze dzieci b\u0119d\u0105 mia\u0142y nowy plac zabaw, czy o\u015bwietlenie uliczne b\u0119dzie dzia\u0142a\u0107 sprawnie, czy wreszcie &#8211; jak b\u0119dzie wygl\u0105da\u0142 bud\u017cet na najbli\u017csze lata. Wyb\u00f3r burmistrza to nie tylko kwestia presti\u017cu, to realny wp\u0142yw na codzienno\u015b\u0107 ka\u017cdego z nas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W mojej rodzinnej miejscowo\u015bci kilka lat temu zmiana w\u0142odarza przynios\u0142a nam d\u0142ugo wyczekiwany remont boiska szkolnego. Pami\u0119tam rado\u015b\u0107 dzieci, kt\u00f3re wreszcie mog\u0142y bezpiecznie uprawia\u0107 sport. To pokazuje, jak konkretna osoba na konkretnym stanowisku mo\u017ce wp\u0142ywa\u0107 na jako\u015b\u0107 naszego \u017cycia. W Prochowicach r\u00f3wnie\u017c stoimy przed tak\u0105 szans\u0105 &#8211; mo\u017cemy wsp\u00f3lnie zdecydowa\u0107, w jakim kierunku pod\u0105\u017cy nasze miasto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">JAK PODJ\u0104\u0106 \u015aWIADOM\u0104 DECYZJ\u0118 WYBRORCZ\u0104?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wielu z nas zadaje sobie pytanie: na co w\u0142a\u015bciwie zwraca\u0107 uwag\u0119 wybieraj\u0105c kandydata? Z mojego do\u015bwiadczenia wynika, \u017ce warto prze\u015bledzi\u0107 nie tylko obietnice wyborcze, ale te\u017c dotychczasowe dzia\u0142ania poszczeg\u00f3lnych os\u00f3b. Czy dana osoba anga\u017cowa\u0142a si\u0119 wcze\u015bniej w \u017cycie spo\u0142eczno\u015bci? Czy ma pomys\u0142 na rozwi\u0105zanie pal\u0105cych problem\u00f3w, takich jak komunikacja miejska czy zagospodarowanie teren\u00f3w zielonych?<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-1024x1024.jpeg\" alt=\"\" class=\"wp-image-1832\" srcset=\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-1024x1024.jpeg 1024w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-300x300.jpeg 300w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-150x150.jpeg 150w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-768x768.jpeg 768w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-12x12.jpeg 12w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-360x360.jpeg 360w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s-545x545.jpeg 545w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1s.jpeg 1080w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Rozmawia\u0142em ostatnio z mieszka\u0144cem, kt\u00f3ry powiedzia\u0142 mi: &#8222;Szukam kogo\u015b, kto nie tylko m\u00f3wi, ale przede wszystkim s\u0142ucha&#8221;. To trafne spostrze\u017cenie. Dobry burmistrz powinien by\u0107 obecny w\u015br\u00f3d mieszka\u0144c\u00f3w, rozumie\u0107 ich potrzeby i potrafi\u0107 t\u0142umaczy\u0107 podj\u0119te decyzje. Przypomina mi to sytuacj\u0119 sprzed lat, gdy jeden z lokalnych polityk\u00f3w regularnie organizowa\u0142 spotkania w r\u00f3\u017cnych cz\u0119\u015bciach miasta &#8211; niezale\u017cnie od pogody. Taka dost\u0119pno\u015b\u0107 budzi\u0142a zaufanie.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"850\" src=\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-1024x850.jpg\" alt=\"\" class=\"wp-image-1829\" srcset=\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-1024x850.jpg 1024w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-300x249.jpg 300w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-768x638.jpg 768w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-14x12.jpg 14w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-360x299.jpg 360w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd-545x453.jpg 545w, https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/c8b8e3d33e1cd.jpg 1080w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Obci\u0105\u017caj\u0105ce nagranie Pani Burmistrz! \ud83d\udc47\ud83d\udc47\ud83d\udc47<\/h2>\n\n\n\n<figure class=\"wp-block-audio\"><audio controls src=\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/as1.mp3\"><\/audio><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">TWOJA SZANSA NA REALNY WPLYW<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Dlatego w\u0142a\u015bnie przygotowali\u015bmy na naszym blogu specjaln\u0105 sond\u0119, kt\u00f3ra pozwoli Ci wyrazi\u0107 preferencje jeszcze przed oficjalnymi wyborami. To nie tylko zabawa ani badanie &#8211; to prawdziwe narz\u0119dzie, kt\u00f3re poka\u017ce kandydatom, co my\u015bl\u0105 mieszka\u0144cy. Twoje klikni\u0119cie to sygna\u0142, kt\u00f3rego nie mo\u017cna zignorowa\u0107.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pami\u0119taj, \u017ce nawet je\u015bli wydaje Ci si\u0119, \u017ce jeden g\u0142os niewiele zmienia, historia pokazuje co\u015b zupe\u0142nie innego. W wielu miejscowo\u015bciach decyzje zapada\u0142y r\u00f3\u017cnic\u0105 zaledwie kilkunastu g\u0142os\u00f3w. Ka\u017cda opinia ma znaczenie, ka\u017cdy g\u0142os przyczynia si\u0119 do tworzenia pe\u0142niejszego obrazu oczekiwa\u0144 spo\u0142ecznych.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zach\u0119cam Ci\u0119 gor\u0105co do udzia\u0142u w naszej sondzie. To zajmie tylko chwil\u0119, ale mo\u017ce mie\u0107 d\u0142ugofalowe konsekwencje dla przysz\u0142o\u015bci Prochowic. Nie pozw\u00f3l, aby o Twoim mie\u015bcie decydowali tylko inni. We\u017a sprawy w swoje r\u0119ce i poka\u017c, na kim Ci zale\u017cy. Razem mo\u017cemy sprawi\u0107, \u017ce nasze miasto b\u0119dzie rozwija\u0107 si\u0119 w kierunku, kt\u00f3ry odpowiada wi\u0119kszo\u015bci mieszka\u0144c\u00f3w. Tw\u00f3j g\u0142os jest wa\u017cny &#8211; wykorzystaj t\u0119 szans\u0119 ju\u017c dzi\u015b!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Autor: Martyna Kr\u00f3l<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0179r\u00f3d\u0142o: prochowice.tv<\/p>","protected":false},"excerpt":{"rendered":"<p>Czy zastanawia\u0142e\u015b si\u0119 ostatnio, jak Twoja decyzja mo\u017ce zmieni\u0107 przysz\u0142o\u015b\u0107 naszego miasta? W\u0142a\u015bnie teraz nadarza si\u0119 wyj\u0105tkowa okazja, aby wyrazi\u0107 swoje zdanie i wp\u0142yn\u0105\u0107 na kierunek rozwoju Prochowic. Z przyczyn prawnych, zwi\u0105zanych z ustaw\u0105 ograniczaj\u0105c\u0105 liczb\u0119 kadencji, ko\u0144czy si\u0119 okres urz\u0119dowania obecnej Pani Burmistrz Alicji Sielickiej. To moment prze\u0142omowy dla naszej spo\u0142eczno\u015bci, a Ty mo\u017cesz&#8230;<\/p>","protected":false},"author":3,"featured_media":1837,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,25],"tags":[95,93,94],"class_list":["post-1831","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ogloszenia","category-urzad-miasta","tag-glosowanie","tag-sonda","tag-wybory"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS! - Prochowice.TV<\/title>\n<meta name=\"description\" content=\"Oddaj g\u0142os w sondzie na nowego burmistrza Prochowic! Alicja Sielicka ko\u0144czy kadencj\u0119 - decyduj, kto b\u0119dzie kierowa\u0107 miastem. Twoja opinia ma znaczenie - sprawd\u017a kandydat\u00f3w i zag\u0142osuj ju\u017c teraz!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/prochowice.tv\/en\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS! - Prochowice.TV\" \/>\n<meta property=\"og:description\" content=\"Oddaj g\u0142os w sondzie na nowego burmistrza Prochowic! Alicja Sielicka ko\u0144czy kadencj\u0119 - decyduj, kto b\u0119dzie kierowa\u0107 miastem. Twoja opinia ma znaczenie - sprawd\u017a kandydat\u00f3w i zag\u0142osuj ju\u017c teraz!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prochowice.tv\/en\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\" \/>\n<meta property=\"og:site_name\" content=\"Prochowice.TV\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-22T20:38:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-23T04:21:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1080\" \/>\n\t<meta property=\"og:image:height\" content=\"750\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Martyna Krol\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Martyna Krol\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\"},\"author\":{\"name\":\"Martyna Krol\",\"@id\":\"https:\/\/prochowice.tv\/#\/schema\/person\/c8bab214fdeaa557c79b1fdbbc74d97c\"},\"headline\":\"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS!\",\"datePublished\":\"2025-12-22T20:38:51+00:00\",\"dateModified\":\"2025-12-23T04:21:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\"},\"wordCount\":688,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/prochowice.tv\/#organization\"},\"image\":{\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg\",\"keywords\":[\"G\u0142osowanie\",\"Sonda\",\"Wybory\"],\"articleSection\":[\"Og\u0142oszenia\",\"Urz\u0105d Miasta\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\",\"url\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\",\"name\":\"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS! - Prochowice.TV\",\"isPartOf\":{\"@id\":\"https:\/\/prochowice.tv\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg\",\"datePublished\":\"2025-12-22T20:38:51+00:00\",\"dateModified\":\"2025-12-23T04:21:14+00:00\",\"description\":\"Oddaj g\u0142os w sondzie na nowego burmistrza Prochowic! Alicja Sielicka ko\u0144czy kadencj\u0119 - decyduj, kto b\u0119dzie kierowa\u0107 miastem. Twoja opinia ma znaczenie - sprawd\u017a kandydat\u00f3w i zag\u0142osuj ju\u017c teraz!\",\"breadcrumb\":{\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage\",\"url\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg\",\"contentUrl\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg\",\"width\":1080,\"height\":750},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/prochowice.tv\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/prochowice.tv\/#website\",\"url\":\"https:\/\/prochowice.tv\/\",\"name\":\"Prochowice.TV\",\"description\":\"Twoje miasto. Twoje media - Niezale\u017cne media Gminy Prochowice\",\"publisher\":{\"@id\":\"https:\/\/prochowice.tv\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/prochowice.tv\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/prochowice.tv\/#organization\",\"name\":\"Prochowice TV\",\"url\":\"https:\/\/prochowice.tv\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prochowice.tv\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/p-logo-2-1.png\",\"contentUrl\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/p-logo-2-1.png\",\"width\":385,\"height\":363,\"caption\":\"Prochowice TV\"},\"image\":{\"@id\":\"https:\/\/prochowice.tv\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/prochowice.tv\/#\/schema\/person\/c8bab214fdeaa557c79b1fdbbc74d97c\",\"name\":\"Martyna Krol\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prochowice.tv\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/avatars\/3\/1766463138-bpfull.jpg\",\"contentUrl\":\"https:\/\/prochowice.tv\/wp-content\/uploads\/avatars\/3\/1766463138-bpfull.jpg\",\"caption\":\"Martyna Krol\"},\"url\":\"https:\/\/prochowice.tv\/en\/czlonkowie\/martyna-krol\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS! - Prochowice.TV","description":"Oddaj g\u0142os w sondzie na nowego burmistrza Prochowic! Alicja Sielicka ko\u0144czy kadencj\u0119 - decyduj, kto b\u0119dzie kierowa\u0107 miastem. Twoja opinia ma znaczenie - sprawd\u017a kandydat\u00f3w i zag\u0142osuj ju\u017c teraz!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/prochowice.tv\/en\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/","og_locale":"en_US","og_type":"article","og_title":"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS! - Prochowice.TV","og_description":"Oddaj g\u0142os w sondzie na nowego burmistrza Prochowic! Alicja Sielicka ko\u0144czy kadencj\u0119 - decyduj, kto b\u0119dzie kierowa\u0107 miastem. Twoja opinia ma znaczenie - sprawd\u017a kandydat\u00f3w i zag\u0142osuj ju\u017c teraz!","og_url":"https:\/\/prochowice.tv\/en\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/","og_site_name":"Prochowice.TV","article_published_time":"2025-12-22T20:38:51+00:00","article_modified_time":"2025-12-23T04:21:14+00:00","og_image":[{"width":1080,"height":750,"url":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg","type":"image\/jpeg"}],"author":"Martyna Krol","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Martyna Krol","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#article","isPartOf":{"@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/"},"author":{"name":"Martyna Krol","@id":"https:\/\/prochowice.tv\/#\/schema\/person\/c8bab214fdeaa557c79b1fdbbc74d97c"},"headline":"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS!","datePublished":"2025-12-22T20:38:51+00:00","dateModified":"2025-12-23T04:21:14+00:00","mainEntityOfPage":{"@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/"},"wordCount":688,"commentCount":0,"publisher":{"@id":"https:\/\/prochowice.tv\/#organization"},"image":{"@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage"},"thumbnailUrl":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg","keywords":["G\u0142osowanie","Sonda","Wybory"],"articleSection":["Og\u0142oszenia","Urz\u0105d Miasta"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/","url":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/","name":"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS! - Prochowice.TV","isPartOf":{"@id":"https:\/\/prochowice.tv\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage"},"image":{"@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage"},"thumbnailUrl":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg","datePublished":"2025-12-22T20:38:51+00:00","dateModified":"2025-12-23T04:21:14+00:00","description":"Oddaj g\u0142os w sondzie na nowego burmistrza Prochowic! Alicja Sielicka ko\u0144czy kadencj\u0119 - decyduj, kto b\u0119dzie kierowa\u0107 miastem. Twoja opinia ma znaczenie - sprawd\u017a kandydat\u00f3w i zag\u0142osuj ju\u017c teraz!","breadcrumb":{"@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#primaryimage","url":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg","contentUrl":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg","width":1080,"height":750},{"@type":"BreadcrumbList","@id":"https:\/\/prochowice.tv\/sonda-wyborcza-wybierz-nowego-burmistrza-prochowic-oddaj-swoj-glos\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/prochowice.tv\/"},{"@type":"ListItem","position":2,"name":"SONDA WYBORCZA: WYBIERZ NOWEGO BURMISTRZA PROCHOWIC \u2013 ODDAJ SW\u00d3J G\u0141OS!"}]},{"@type":"WebSite","@id":"https:\/\/prochowice.tv\/#website","url":"https:\/\/prochowice.tv\/","name":"Prochowice.TV","description":"Twoje miasto. Twoje media - Niezale\u017cne media Gminy Prochowice","publisher":{"@id":"https:\/\/prochowice.tv\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/prochowice.tv\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/prochowice.tv\/#organization","name":"Prochowice TV","url":"https:\/\/prochowice.tv\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prochowice.tv\/#\/schema\/logo\/image\/","url":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/p-logo-2-1.png","contentUrl":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/p-logo-2-1.png","width":385,"height":363,"caption":"Prochowice TV"},"image":{"@id":"https:\/\/prochowice.tv\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/prochowice.tv\/#\/schema\/person\/c8bab214fdeaa557c79b1fdbbc74d97c","name":"Martyna Krol","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prochowice.tv\/#\/schema\/person\/image\/","url":"https:\/\/prochowice.tv\/wp-content\/uploads\/avatars\/3\/1766463138-bpfull.jpg","contentUrl":"https:\/\/prochowice.tv\/wp-content\/uploads\/avatars\/3\/1766463138-bpfull.jpg","caption":"Martyna Krol"},"url":"https:\/\/prochowice.tv\/en\/czlonkowie\/martyna-krol\/"}]}},"jetpack_featured_media_url":"https:\/\/prochowice.tv\/wp-content\/uploads\/2025\/12\/post-1-p1t.jpg","_links":{"self":[{"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/posts\/1831","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/comments?post=1831"}],"version-history":[{"count":12,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/posts\/1831\/revisions"}],"predecessor-version":[{"id":1851,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/posts\/1831\/revisions\/1851"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/media\/1837"}],"wp:attachment":[{"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/media?parent=1831"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/categories?post=1831"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prochowice.tv\/en\/wp-json\/wp\/v2\/tags?post=1831"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}