Oglądasz starą wersję tego wpisu, z 7 października 2025 o 13:56:37. Zobacz poniżej różnice pomiędzy tą wersją a wersją aktualna wersja.
🗳️ Znajdź Swój Lokal Wyborczy (Radlin)
Wpisz pełną nazwę ulicy oraz numer domu, aby sprawdzić, gdzie głosujesz 7 kwietnia 2024 r.
| Głożyńska, Bolesława Chrobrego, Józefa Rymera od nr 144 do końca parzyste, Józefa Rymera od nr 139 do końca nieparzyste, Polna, Wilhelma Wawrzyńczyka, Juliusza Słowackiego, Karola Miarki, ks. Kard. Bolesława Kominka od nr 145 do końca nieparzyste, Nowa, Władysława Reymonta | Szkoła Podstawowa Nr 3, ul. Józefa Rymera 170. Lokal dostosowany dla niepełnosprawnych. |
| Głogowa, Jałowcowa, Jaśminowa, Jaworowa, ks. Kard. Bolesława Kominka od nr 103 do nr 143F nieparzyste, ks. Kard. Bolesława Kominka parzyste, Modrzewiowa, Sosnowa, Wrzosowa, Gabriela Narutowicza od nr 1 do nr 54 wszystkie, Ignacego Domeyki, Jana Matejki od nr 87 do końca nieparzyste, Jana Matejki od nr 126 do końca parzyste, Józefa Rymera od nr 98 do nr 142 parzyste, Józefa Rymera od nr 93 do nr 137 nieparzyste, Kasztanowa.od nr 24 do końca wszystkie, Krótka, Rydułtowska od nr 98 do końca wszystkie, Spacerowa od nr 77 do końca nieparzyste, Spacerowa od nr 88 do końca parzyste bez nr 104, Świerkowa | Szkoła Podstawowa Nr 3, ul. Józefa Rymera 170. Lokal dostosowany dla niepełnosprawnych. |
| Aleksandra Puszkina, Gabriela Narutowicza od nr 56 do końca wszystkie, Gabrieli Zapolskiej, Józefa Hallera nr 30, 32, 34, Rydułtowska od nr 1 do nr 97A wszystkie, Sokolska, Wiosenna | MOSIR „Sokolnia”, ul. Sokolska 6. |
| Grabowa, Jana Matejki od nr 1 do nr 85 nieparzyste, Jana Matejki od nr 2 do nr 124 parzyste, Józefa Rymera od nr 2 do nr 96A parzyste, Józefa Rymera od nr 35 do nr 91 nieparzyste, Kasztanowa od nr 1 do nr 23 wszystkie, Spacerowa od nr 1 do nr 75 nieparzyste, Spacerowa od nr 2 do nr 86B parzyste i nr 104, Wierzbowa, Zofii Nałkowskiej, Konstantego Damrota, Piotra Ściegiennego, Wojciecha Korfantego od nr 1 do nr 12 wszystkie | Miejski Ośrodek Kultury, ul. Mariacka 9. Lokal dostosowany dla niepełnosprawnych. |
| Cmentarna, Henryka Sienkiewicza, mjr Piotra Iwanowicza Rogozina, Młyńska, Odległa od nr 1 do nr 74 wszystkie, Pawła Stalmacha, Wypandów, Józefa Hallera bez nr 30, 32, 34, Józefa Lompy | Sportowa Szkoła Podstawowa nr 2, ul. mjr. Piotra Iwanowicza Rogozina 55. Lokal dostosowany dla niepełnosprawnych. |
| Józefa Rymera od nr 1 do nr 33 nieparzyste, Kornela Makuszyńskiego, Kostki Napierskiego, Malinowa, Wojciecha Korfantego od nr 14 do nr 38 parzyste | MOSIR Dom Sportu, ul. Wojciecha Korfantego 17. Lokal dostosowany dla niepełnosprawnych. |
| Kwiatowa, Mariacka od nr 2 do nr 28 parzyste, Mariacka od nr 1 do nr 93 nieparzyste, Wolności, Przyjaźni, Bronisława Czecha, Irysowa, Józefa Wieczorka nieparzyste, Józefa Wieczorka od nr 2 do nr 10 parzyste, Mariacka od nr 30 do nr 38 parzyste, Władysława Orkana, Wojciecha Korfantego od nr 15 do nr 83 nieparzyste, Wojciecha Korfantego od nr 40 do nr 62 parzyste | MOSiR Dom Sportu, ul. Wojciecha Korfantego 17. Lokal dostosowany dla niepełnosprawnych. |
| Hubalczyków, Józefa Wieczorka od nr 12 do końca parzyste, Mariacka od nr 40 do końca parzyste, Mariacka od nr 97 do końca nieparzyste, Odległa od nr 75 do końca wszystkie, Andrzeja Mielęckiego, Kornela Ujejskiego, Ludwika Solskiego, Pocztowa, Wojciecha Korfantego od nr 85 do nr 123 nieparzyste | Centrum Usług Społecznych, ul. Wojciecha Korfantego 87. Lokal dostosowany dla niepełnosprawnych. |
| Dworcowa, Hutnicza, Jana Wantuły, Rybnicka, Skautów, Stanisława Mikołajczyka, Wiosny Ludów, Wojciecha Korfantego od nr 125 do końca nieparzyste, Wojciecha Korfantego od nr 64 do końca parzyste | Hala Zborna Koksownia „Radlin”, ul. Hutnicza 1. |
- Wersja utworzona dnia 7 października 2025 o 14:02:06 przez Marek Gajda
- Wersja utworzona dnia 7 października 2025 o 14:00:46 przez Marek Gajda
- Wersja utworzona dnia 7 października 2025 o 13:59:21 przez Marek Gajda
- Wersja utworzona dnia 7 października 2025 o 13:58:28 przez Marek Gajda
- Wersja utworzona dnia 7 października 2025 o 13:56:37 przez Marek Gajda
- Wersja utworzona dnia 7 października 2025 o 13:54:51 przez Marek Gajda
Wersja utworzona
| 7 października 2025 o 13:56:37 | Aktualna wersja | ||
|---|---|---|---|
| Treść | |||
| Bez zmian: <!-- wp:paragraph --> | Bez zmian: <!-- wp:paragraph --> | ||
| Bez zmian: <p></p> | Bez zmian: <p></p> | ||
| Bez zmian: <!-- /wp:paragraph --> | Bez zmian: <!-- /wp:paragraph --> | ||
| Bez zmian: <!-- wp:html --> | Bez zmian: <!-- wp:html --> | ||
| Bez zmian: <style> | Bez zmian: <style> | ||
| Bez zmian: /* Podstawowe stylowanie i responsywność */ | Bez zmian: /* Podstawowe stylowanie i responsywność */ | ||
| Bez zmian: #wyszukiwarka- glosowania-radlin { | Bez zmian: #wyszukiwarka- glosowania-radlin { | ||
| Bez zmian: max-width: 800px; | Bez zmian: max-width: 800px; | ||
| Bez zmian: margin: 20px auto; | Bez zmian: margin: 20px auto; | ||
| Bez zmian: padding: 20px; | Bez zmian: padding: 20px; | ||
| Bez zmian: border: 1px solid #ccc; | Bez zmian: border: 1px solid #ccc; | ||
| Bez zmian: border-radius: 8px; | Bez zmian: border-radius: 8px; | ||
| Bez zmian: box-shadow: 0 4px 12px rgba(0,0,0,0.1); | Bez zmian: box-shadow: 0 4px 12px rgba(0,0,0,0.1); | ||
| Bez zmian: font-family: Arial, sans-serif; | Bez zmian: font-family: Arial, sans-serif; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .input-group { | Bez zmian: .input-group { | ||
| Bez zmian: display: flex; | Bez zmian: display: flex; | ||
| Bez zmian: gap: 15px; | Bez zmian: gap: 15px; | ||
| Bez zmian: margin-bottom: 20px; | Bez zmian: margin-bottom: 20px; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .input-group > div { | Bez zmian: .input-group > div { | ||
| Bez zmian: flex: 1; | Bez zmian: flex: 1; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .input-group label { | Bez zmian: .input-group label { | ||
| Bez zmian: display: block; | Bez zmian: display: block; | ||
| Bez zmian: margin-bottom: 5px; | Bez zmian: margin-bottom: 5px; | ||
| Bez zmian: font-weight: bold; | Bez zmian: font-weight: bold; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: #inputAdres, #inputNumer { | Bez zmian: #inputAdres, #inputNumer { | ||
| Bez zmian: width: 100%; | Bez zmian: width: 100%; | ||
| Bez zmian: padding: 10px; | Bez zmian: padding: 10px; | ||
| Bez zmian: border: 2px solid #0073aa; | Bez zmian: border: 2px solid #0073aa; | ||
| Bez zmian: border-radius: 5px; | Bez zmian: border-radius: 5px; | ||
| Bez zmian: box-sizing: border-box; | Bez zmian: box-sizing: border-box; | ||
| Bez zmian: font-size: 1em; | Bez zmian: font-size: 1em; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: button { | Bez zmian: button { | ||
| Bez zmian: background-color: #0073aa; | Bez zmian: background-color: #0073aa; | ||
| Bez zmian: color: white; | Bez zmian: color: white; | ||
| Bez zmian: padding: 10px 20px; | Bez zmian: padding: 10px 20px; | ||
| Bez zmian: border: none; | Bez zmian: border: none; | ||
| Bez zmian: border-radius: 5px; | Bez zmian: border-radius: 5px; | ||
| Bez zmian: cursor: pointer; | Bez zmian: cursor: pointer; | ||
| Bez zmian: font-size: 1em; | Bez zmian: font-size: 1em; | ||
| Bez zmian: transition: background-color 0.3s; | Bez zmian: transition: background-color 0.3s; | ||
| Dodano: box-shadow: 0 2px 4px rgba(0,0,0,0.2); | |||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: button:hover { | Bez zmian: button:hover { | ||
| Bez zmian: background-color: #005177; | Bez zmian: background-color: #005177; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: /* Styl dla głównego wyniku */ | Bez zmian: /* Styl dla głównego wyniku */ | ||
| Bez zmian: #wynikGlowny { | Bez zmian: #wynikGlowny { | ||
| Bez zmian: min-height: 120px; | Bez zmian: min-height: 120px; | ||
| Bez zmian: padding: 20px; | Bez zmian: padding: 20px; | ||
| Bez zmian: margin-top: 25px; | Bez zmian: margin-top: 25px; | ||
| Bez zmian: border-radius: 6px; | Bez zmian: border-radius: 6px; | ||
| Bez zmian: font-size: 1.1em; | Bez zmian: font-size: 1.1em; | ||
| Bez zmian: text-align: center; | Bez zmian: text-align: center; | ||
| Bez zmian: transition: all 0.3s ease; | Bez zmian: transition: all 0.3s ease; | ||
| Bez zmian: display: none; | Bez zmian: display: none; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: /* Nagłówek wyniku */ | Bez zmian: /* Nagłówek wyniku */ | ||
| Bez zmian: #wynikGlowny h3 { | Bez zmian: #wynikGlowny h3 { | ||
| Bez zmian: margin-top: 0; | Bez zmian: margin-top: 0; | ||
| Bez zmian: margin-bottom: 10px; | Bez zmian: margin-bottom: 10px; | ||
| Bez zmian: font-size: 1.6em; | Bez zmian: font-size: 1.6em; | ||
| Bez zmian: border-bottom: 2px solid; | Bez zmian: border-bottom: 2px solid; | ||
| Bez zmian: padding-bottom: 5px; | Bez zmian: padding-bottom: 5px; | ||
| Bez zmian: display: inline-block; | Bez zmian: display: inline-block; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .wynik-sukces { | Bez zmian: .wynik-sukces { | ||
| Bez zmian: background-color: #e6ffec; | Bez zmian: background-color: #e6ffec; | ||
| Bez zmian: border: 2px solid #00a859; | Bez zmian: border: 2px solid #00a859; | ||
| Bez zmian: color: #004d26; | Bez zmian: color: #004d26; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .wynik-sukces h3 { | Bez zmian: .wynik-sukces h3 { | ||
| Bez zmian: color: #00a859; | Bez zmian: color: #00a859; | ||
| Bez zmian: border-color: #00a859; | Bez zmian: border-color: #00a859; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .wynik-blad { | Bez zmian: .wynik-blad { | ||
| Bez zmian: background-color: #ffe8e6; | Bez zmian: background-color: #ffe8e6; | ||
| Bez zmian: border: 2px solid #e20000; | Bez zmian: border: 2px solid #e20000; | ||
| Bez zmian: color: #e20000; | Bez zmian: color: #e20000; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: .wynik-blad h3 { | Bez zmian: .wynik-blad h3 { | ||
| Bez zmian: color: #e20000; | Bez zmian: color: #e20000; | ||
| Bez zmian: border-color: #e20000; | Bez zmian: border-color: #e20000; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: /* Ukryta tabela z danymi (dane źródłowe) */ | Bez zmian: /* Ukryta tabela z danymi (dane źródłowe) */ | ||
| Bez zmian: #tabelaGlosowania { | Bez zmian: #tabelaGlosowania { | ||
| Bez zmian: display: none; | Bez zmian: display: none; | ||
| Bez zmian: } | Bez zmian: } | ||
| Bez zmian: </style> | Bez zmian: </style> | ||
| Bez zmian: <div id="wyszukiwarka- glosowania-radlin"> | Bez zmian: <div id="wyszukiwarka- glosowania-radlin"> | ||
| Bez zmian: <h2>🗳️ Znajdź Swój Lokal Wyborczy (Radlin)</h2> | Bez zmian: <h2>🗳️ Znajdź Swój Lokal Wyborczy (Radlin)</h2> | ||
| Skasowano: <p>Wpisz pełną nazwę ulicy oraz numer domu, aby sprawdzić, gdzie głosujesz | Dodano: <p>Wpisz pełną nazwę ulicy oraz numer domu, aby sprawdzić, gdzie głosujesz **7 kwietnia 2024 r.**</p> | ||
| Bez zmian: <div class="input-group"> | Bez zmian: <div class="input-group"> | ||
| Bez zmian: <div> | Bez zmian: <div> | ||
| Bez zmian: <label for="inputAdres">Nazwa ulicy:</label> | Bez zmian: <label for="inputAdres">Nazwa ulicy:</label> | ||
| Bez zmian: <input type="text" id="inputAdres" placeholder="Np. Józefa Rymera" aria-label="Wpisz nazwę ulicy"> | Bez zmian: <input type="text" id="inputAdres" placeholder="Np. Józefa Rymera" aria-label="Wpisz nazwę ulicy"> | ||
| Bez zmian: </div> | Bez zmian: </div> | ||
| Bez zmian: <div> | Bez zmian: <div> | ||
| Bez zmian: <label for="inputNumer">Numer domu:</label> | Bez zmian: <label for="inputNumer">Numer domu:</label> | ||
| Skasowano: <input type="text" id="inputNumer" placeholder="Np. 170" aria-label="Wpisz numer domu"> | Dodano: <input type="text" id="inputNumer" placeholder="Np. 170 lub 96A" aria-label="Wpisz numer domu"> | ||
| Bez zmian: </div> | Bez zmian: </div> | ||
| Bez zmian: </div> | Bez zmian: </div> | ||
| Bez zmian: | Bez zmian: | ||
| Skasowano: <button | Dodano: <button id="searchButton">Wyszukaj Lokal</button> | ||
| Bez zmian: <div id="wynikGlowny"></div> | Bez zmian: <div id="wynikGlowny"></div> | ||
| Bez zmian: <table id="tabelaGlosowania"> | Bez zmian: <table id="tabelaGlosowania"> | ||
| Bez zmian: <tbody> | Bez zmian: <tbody> | ||
| Bez zmian: <tr> | Bez zmian: <tr> | ||
| Bez zmian: <td>Głożyńska, Bolesława Chrobrego, Józefa Rymera od nr 144 do końca parzyste, Józefa Rymera od nr 139 do końca nieparzyste, Polna, Wilhelma Wawrzyńczyka, Juliusza Słowackiego, Karola Miarki, ks. Kard. Bolesława Kominka od nr 145 do końca nieparzyste, Nowa, Władysława Reymonta</td> | Bez zmian: <td>Głożyńska, Bolesława Chrobrego, Józefa Rymera od nr 144 do końca parzyste, Józefa Rymera od nr 139 do końca nieparzyste, Polna, Wilhelma Wawrzyńczyka, Juliusza Słowackiego, Karola Miarki, ks. Kard. Bolesława Kominka od nr 145 do końca nieparzyste, Nowa, Władysława Reymonta</td> | ||
| Bez zmian: <td>Szkoła Podstawowa Nr 3, ul. Józefa Rymera 170. Lokal dostosowany dla niepełnosprawnych.</td> | Bez zmian: <td>Szkoła Podstawowa Nr 3, ul. Józefa Rymera 170. Lokal dostosowany dla niepełnosprawnych.</td> | ||
| Bez zmian: </tr> | Bez zmian: </tr> | ||
| Bez zmian: <tr> | Bez zmian: <tr> | ||
| Skasowano: <td>Głogowa, Jałowcowa, Jaśminowa, Jaworowa, ks. Kard. Bolesława Kominka od nr 103 do nr 143F nieparzyste, ks. Kard. Bolesława Kominka parzyste, Modrzewiowa, Sosnowa, Wrzosowa, Gabriela Narutowicza od nr 1 do nr 54 wszystkie, Ignacego Domeyki, Jana Matejki od nr 87 do końca nieparzyste, Jana Matejki od nr 126 do końca parzyste, Józefa Rymera od nr 98 do nr 142 parzyste, Józefa Rymera od nr 93 do nr 137 nieparzyste, Kasztanowa.od nr 24 do końca wszystkie, Krótka, Rydułtowska od nr 98 do końca wszystkie, Spacerowa od nr 77 do końca nieparzyste, Spacerowa od nr 88 do końca parzyste bez nr 104, Świerkowa</td> | |||
| Skasowano: <td>Szkoła Podstawowa Nr 3, ul. Józefa Rymera 170. Lokal dostosowany dla niepełnosprawnych.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Aleksandra Puszkina, Gabriela Narutowicza od nr 56 do końca wszystkie, Gabrieli Zapolskiej, Józefa Hallera nr 30, 32, 34, Rydułtowska od nr 1 do nr 97A wszystkie, Sokolska, Wiosenna</td> | |||
| Skasowano: <td>MOSIR "Sokolnia", ul. Sokolska 6.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Grabowa, Jana Matejki od nr 1 do nr 85 nieparzyste, Jana Matejki od nr 2 do nr 124 parzyste, Józefa Rymera od nr 2 do nr 96A parzyste, Józefa Rymera od nr 35 do nr 91 nieparzyste, Kasztanowa od nr 1 do nr 23 wszystkie, Spacerowa od nr 1 do nr 75 nieparzyste, Spacerowa od nr 2 do nr 86B parzyste i nr 104, Wierzbowa, Zofii Nałkowskiej, Konstantego Damrota, Piotra Ściegiennego, Wojciecha Korfantego od nr 1 do nr 12 wszystkie</td> | |||
| Skasowano: <td>Miejski Ośrodek Kultury, ul. Mariacka 9. Lokal dostosowany dla niepełnosprawnych.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Cmentarna, Henryka Sienkiewicza, mjr Piotra Iwanowicza Rogozina, Młyńska, Odległa od nr 1 do nr 74 wszystkie, Pawła Stalmacha, Wypandów, Józefa Hallera bez nr 30, 32, 34, Józefa Lompy</td> | |||
| Skasowano: <td>Sportowa Szkoła Podstawowa nr 2, ul. mjr. Piotra Iwanowicza Rogozina 55. Lokal dostosowany dla niepełnosprawnych.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Józefa Rymera od nr 1 do nr 33 nieparzyste, Kornela Makuszyńskiego, Kostki Napierskiego, Malinowa, Wojciecha Korfantego od nr 14 do nr 38 parzyste</td> | |||
| Skasowano: <td>MOSIR Dom Sportu, ul. Wojciecha Korfantego 17. Lokal dostosowany dla niepełnosprawnych.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Kwiatowa, Mariacka od nr 2 do nr 28 parzyste, Mariacka od nr 1 do nr 93 nieparzyste, Wolności, Przyjaźni, Bronisława Czecha, Irysowa, Józefa Wieczorka nieparzyste, Józefa Wieczorka od nr 2 do nr 10 parzyste, Mariacka od nr 30 do nr 38 parzyste, Władysława Orkana, Wojciecha Korfantego od nr 15 do nr 83 nieparzyste, Wojciecha Korfantego od nr 40 do nr 62 parzyste</td> | |||
| Skasowano: <td>MOSiR Dom Sportu, ul. Wojciecha Korfantego 17. Lokal dostosowany dla niepełnosprawnych.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Hubalczyków, Józefa Wieczorka od nr 12 do końca parzyste, Mariacka od nr 40 do końca parzyste, Mariacka od nr 97 do końca nieparzyste, Odległa od nr 75 do końca wszystkie, Andrzeja Mielęckiego, Kornela Ujejskiego, Ludwika Solskiego, Pocztowa, Wojciecha Korfantego od nr 85 do nr 123 nieparzyste</td> | Dodano: <td>Głogowa, Jałowcowa, Jaśminowa, Jaworowa, ks. Kard. Bolesława Kominka od nr 103 do nr 143F nieparzyste, ks. Kard. Bolesława Kominka parzyste, Modrzewiowa, Sosnowa, Wrzosowa, Gabriela Narutowicza od nr 1 do nr 54 wszystkie, Ignacego Dome | ||
| Skasowano: <td>Centrum Usług Społecznych, ul. Wojciecha Korfantego 87. Lokal dostosowany dla niepełnosprawnych.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: <tr> | |||
| Skasowano: <td>Dworcowa, Hutnicza, Jana Wantuły, Rybnicka, Skautów, Stanisława Mikołajczyka, Wiosny Ludów, Wojciecha Korfantego od nr 125 do końca nieparzyste, Wojciecha Korfantego od nr 64 do końca parzyste</td> | |||
| Skasowano: <td>Hala Zborna Koksownia "Radlin", ul. Hutnicza 1.</td> | |||
| Skasowano: </tr> | |||
| Skasowano: </tbody> | |||
| Skasowano: </table> | |||
| Skasowano: </div> | |||
| Skasowano: <script> | |||
| Skasowano: function znajdzLokal() { | |||
| Skasowano: var inputUlica = document.getElementById( "inputAdres") .value.toUpperCase().trim(); | |||
| Skasowano: var inputNumerTekst = document.getElementById( "inputNumer") .value.toUpperCase().trim(); | |||
| Skasowano: var wynikElement = document.getElementById( "wynikGlowny"); | |||
| Skasowano: var tabela = document.getElementById( "tabelaGlosowania"); | |||
| Skasowano: var wiersze = tabela.getElementsByTagName("tr"); | |||
| Skasowano: | |||
| Skasowano: wynikElement.style.display = 'none'; | |||
| Skasowano: // 1. Walidacja podstawowa | |||
| Skasowano: if (inputUlica.length < 3 || inputNumerTekst.length === 0) { | |||
| Skasowano: wynikElement.className = 'wynik-blad'; | |||
| Skasowano: wynikElement.innerHTML = '<h3>Błąd Wprowadzania Danych</h3>Wprowadź pełną nazwę ulicy i numer domu.'; | |||
| Skasowano: wynikElement.style.display = 'block'; | |||
| Skasowano: return; | |||
| Skasowano: } | |||
| Skasowano: var numerDomuTylkoCyfry = parseInt(inputNumerTekst.match(/\d+/)?.[0] || 0); // Pobieramy tylko cyfry, np. z '96A' pobieramy 96 | |||
| Skasowano: var znaleziono = false; | |||
| Skasowano: var wynikHTML = ''; | |||
| Skasowano: // Funkcja pomocnicza do sprawdzania, czy numer domu pasuje do opisu (najważniejsza część) | |||
| Skasowano: function sprawdzZakres(opisGranic, numerTekst, numer) { | |||
| Skasowano: // Uproszczona obsługa polskich znaków | |||
| Skasowano: var ulicaRegex = new RegExp(`\\b${inputUlica.replace(/Ś/g, '[ŚS]').replace(/Ć/g, '[ĆC]').replace(/Ń/g, '[ŃN]').replace(/Ą/g, '[ĄA]').replace(/Ę/g, '[ĘE]')}\\b`, "i"); | |||
| Skasowano: | |||
| Skasowano: // 1. Sprawdzenie, czy ulica w ogóle występuje w opisie | |||
| Skasowano: if (!ulicaRegex.test( opisGranic)) { | |||
| Skasowano: return false; | |||
| Skasowano: } | |||
| Skasowano: // Ograniczamy opis do fragmentu po nazwie ulicy (dla uproszczenia parsowania) | |||
| Skasowano: var ulicaStart = opisGranic.toUpperCase( ).indexOf(inputUlica); | |||
| Skasowano: var opis = ulicaStart !== -1 ? opisGranic.toUpperCase( ).substring(ulicaStart) : opisGranic.toUpperCase(); | |||
| Skasowano: // 2. Obsługa numerów z literami (np. 96A, 143F) | |||
| Skasowano: if (/[A-Z]/.test( numerTekst)) { | |||
| Skasowano: return opisGranic.toUpperCase().indexOf(" " + numerTekst) > -1 || opisGranic.toUpperCase( ).indexOf("," + numerTekst) > -1; | |||
| Skasowano: } | |||
| Skasowano: // 3. Sprawdzenie numeru w zakresach numerycznych (tylko dla numerów bez liter) | |||
| Skasowano: var numerParzysty = (numer % 2 === 0); | |||
| Skasowano: var numerNieparzysty = (numer % 2 !== 0); | |||
| Skasowano: // A. Parsowanie zasady parzystości/ nieparzystości/wszystkich | |||
| Skasowano: var zasadaMatch = opis.match(/( PARZYSTE|NIEPARZYSTE|WSZYSTKIE|OD NR \d+)/); | |||
| Skasowano: var pasujeParzystosc = true; | |||
| Skasowano: if (zasadaMatch) { | |||
| Skasowano: var zasada = zasadaMatch[0]; | |||
| Skasowano: pasujeParzystosc = (zasada.indexOf( "WSZYSTKIE") > -1) || | |||
| Skasowano: (numerParzysty && zasada.indexOf("PARZYSTE") > -1) || | |||
| Skasowano: (numerNieparzysty && zasada.indexOf( "NIEPARZYSTE") > -1); | |||
| Skasowano: } | |||
| Skasowano: if (!pasujeParzystosc) return false; | |||
| Skasowano: // B. Parsowanie zakresów (OD NR X DO NR Y/DO KOŃCA) | |||
| Skasowano: var zakresRegex = /OD NR (\d+)(?:\s*DO NR\s*(\d+))?(?:\s*DO KOŃCA)?/g; | |||
| Skasowano: var matchZakres; | |||
| Skasowano: var wZakresie = false; | |||
| Skasowano: var znalezionoZakres = false; | |||
| Skasowano: // Sprawdzanie wszystkich zakresów dotyczących tej ulicy | |||
| Skasowano: while ((matchZakres = zakresRegex.exec(opis)) !== null) { | |||
| Skasowano: znalezionoZakres = true; | |||
| Skasowano: var start = parseInt(matchZakres[1]); | |||
| Skasowano: var end = 99999; | |||
| Skasowano: | |||
| Skasowano: if (matchZakres[2]) { // Jeśli jest "DO NR Y" | |||
| Skasowano: end = parseInt(matchZakres[2]); | |||
| Skasowano: } else if (opis.indexOf("DO KOŃCA") > -1) { | |||
| Skasowano: end = 99999; | |||
| Skasowano: } | |||
| Skasowano: if (numer >= start && numer <= end) { | |||
| Skasowano: wZakresie = true; | |||
| Skasowano: break; | |||
| Skasowano: } | |||
| Skasowano: } | |||
| Skasowano: // Jeśli nie znaleziono zakresu (np. ulica jest wymieniona bez numeracji, np. "Polna"), to uznajemy za pasujące. | |||
| Skasowano: if (!znalezionoZakres) { | |||
| Skasowano: // Sprawdzamy, czy ulica jest wymieniona bez żadnej numeracji | |||
| Skasowano: var ulicaW OpisieBezNumeracji = new RegExp(`\\b${inputUlica}\\b(?!.*OD NR|.*NR)`, "i"); | |||
| Skasowano: return ulicaW OpisieBezNumeracji.test( opisGranic); | |||
| Skasowano: } | |||
| Skasowano: // C. Obsługa wyjątków (BEZ NR) | |||
| Skasowano: if (opis.indexOf("BEZ NR " + numer) > -1) { | |||
| Skasowano: return false; | |||
| Skasowano: } | |||
| Skasowano: | |||
| Skasowano: return wZakresie; | |||
| Skasowano: } | |||
| Skasowano: // Przetwarzanie danych | |||
| Skasowano: for (var i = 0; i < wiersze.length; i++) { | |||
| Skasowano: var opisGranic = wiersze[i].getElementsByTagName( "td")[0].textContent; | |||
| Skasowano: var siedziba = wiersze[i].getElementsByTagName( "td")[1].textContent; | |||
| Skasowano: | |||
| Skasowano: if (sprawdzZakres(opisGranic, inputNumerTekst, numerDomuTylkoCyfry)) { | |||
| Skasowano: // Znaleziono pasujący obwód | |||
| Skasowano: wynikHTML = ` | |||
| Skasowano: <h3>✅ Twój Lokal Wyborczy</h3> | |||
| Skasowano: Adres: <strong>${inputUlica} ${inputNumerTekst}< /strong><br><br> | |||
| Skasowano: <strong>Głosujesz w:</strong><br> | |||
| Skasowano: <span style="font-size: 1.3em; font-weight: bold;">${siedziba}</span> | |||
| Skasowano: `; | |||
| Skasowano: znaleziono = true; | |||
| Skasowano: break; | |||
| Skasowano: } | |||
| Skasowano: } | |||
| Skasowano: // Wyświetlanie wyniku | |||
| Skasowano: wynikElement.className = znaleziono ? 'wynik-sukces' : 'wynik-blad'; | |||
| Skasowano: wynikElement.innerHTML = znaleziono ? wynikHTML : | |||
| Skasowano: '<h3>❌ Adres Nie Znaleziony</h3>Sprawdź dokładnie pisownię ulicy i numer domu. Pamiętaj: system bazuje na oficjalnych opisach obwodów, które mogą być skomplikowane.'; | |||
| Skasowano: wynikElement.style.display = 'block'; | |||
| Skasowano: } | |||
| Skasowano: </script> | |||
| Skasowano: Narzędzia | |||
| Bez zmian: <!-- /wp:html --> | Bez zmian: <!-- /wp:html --> | ||
| lazyload_thumbnail_quality | |||
|---|---|---|---|
| Skasowano: | Dodano: default | ||
Wyjaśnienie: Znajdujące się powyżej porównania wersji wyświetlone zostały tylko w celach technicznych i nie stanowią cześć dokumentu.
Zobacz również
aa


