From 885abb43e28d1e9d0c157083505056d23f62d121 Mon Sep 17 00:00:00 2001 From: Vichingo455 Date: Mon, 28 Jul 2025 16:42:50 +0200 Subject: [PATCH] Piccolo easter egg --- .../start-fermatebus/js/cercafermata.js | 2 +- .../js/cercafermatamiglioreamioparere.js | 76 +++++++++++++++++++ 2 files changed, 77 insertions(+), 1 deletion(-) create mode 100644 start_menu/servizi/start-fermatebus/js/cercafermatamiglioreamioparere.js diff --git a/start_menu/servizi/start-fermatebus/js/cercafermata.js b/start_menu/servizi/start-fermatebus/js/cercafermata.js index 18fac11..43a35a7 100644 --- a/start_menu/servizi/start-fermatebus/js/cercafermata.js +++ b/start_menu/servizi/start-fermatebus/js/cercafermata.js @@ -19,7 +19,7 @@ function populateSearchResults(results, selectedOption) { div.addEventListener('click', () => { const url = `fermata.html?palina=${encodeURIComponent(item.palina)}&targetID=${encodeURIComponent(item.targetID)}&selectedOption=${encodeURIComponent(selectedOption)}`; - window.open(url, '_blank'); + window.open(url, "_blank"); }); searchResultsContainer.appendChild(div); diff --git a/start_menu/servizi/start-fermatebus/js/cercafermatamiglioreamioparere.js b/start_menu/servizi/start-fermatebus/js/cercafermatamiglioreamioparere.js new file mode 100644 index 0000000..06e7476 --- /dev/null +++ b/start_menu/servizi/start-fermatebus/js/cercafermatamiglioreamioparere.js @@ -0,0 +1,76 @@ +function populateSearchResults(results, selectedOption) { + const searchResultsContainer = document.getElementById('searchResults'); + searchResultsContainer.innerHTML = ''; + + if (results.length === 0) { + searchResultsContainer.innerHTML = '

Nessun risultato trovato

'; + return; + } + var w = 900; + var h = 600; + var l = Math.floor((screen.width-w)/2); + var t = Math.floor((screen.height-h)/2); + + results.forEach(item => { + const div = document.createElement('div'); + div.className = 'search-result'; + div.innerHTML = ` +
+

${item.nome}

+

Palina: ${item.palina}, Target ID: ${item.targetID}

+
+ `; + + div.addEventListener('click', () => { + const url = `fermata.html?palina=${encodeURIComponent(item.palina)}&targetID=${encodeURIComponent(item.targetID)}&selectedOption=${encodeURIComponent(selectedOption)}`; + window.open(url, "","top=" + t + ",left=" + l + ",width=" + w + ",height=" + h + ",status=no,menubar=no,toolbar=no scrollbars=yes"); + }); + + searchResultsContainer.appendChild(div); + }); +} + +function filterOptions(query, data) { + const q = query.toLowerCase(); + return data.filter(item => + (item.nome || '').toLowerCase().includes(q) || + (item.palina || '').toLowerCase().includes(q) || + (item.targetID || '').toLowerCase().includes(q) + ); +} + + +let allOptions = []; +let currentSelectedOption = ''; + +const searchBar = document.getElementById('searchBar'); +searchBar.addEventListener('input', function() { + const query = searchBar.value; + const filteredOptions = filterOptions(query, allOptions); + populateSearchResults(filteredOptions, currentSelectedOption); +}); + +document.getElementById('bacino').addEventListener('change', function(event) { + const selectedOption = event.target.value; + currentSelectedOption = selectedOption; + + if (!selectedOption) { + allOptions = []; + document.getElementById('searchResults').innerHTML = ''; + return; + } + + const resultsContainer = document.getElementById('searchResults'); + resultsContainer.innerHTML = '

Caricamento lista fermate in corso...

'; + + fetch(`https://api.vichingo455.freeddns.org/fermateapi/bacino?selectedOption=${selectedOption}`) + .then(res => res.json()) + .then(data => { + allOptions = data; + populateSearchResults(allOptions, selectedOption); + }) + .catch(err => { + resultsContainer.innerHTML = '

Errore nel caricamento delle fermate.

'; + console.error('Errore:', err); + }); +}); \ No newline at end of file