diff --git a/css/style.css b/css/style.css new file mode 100644 index 0000000..6799b4b --- /dev/null +++ b/css/style.css @@ -0,0 +1,121 @@ +:root { + --primary-color: #afafaf; + --accent-color: #0074d9; + --bg-color: #2e2d2d; + --white: #ffffff; + --light-gray: #848991; + --border-color: #727070; + --text-color: #ffffff; + --black: #000000; +} +body { + background-color: #282828; + text-align: center; + color: white; + font-family: Titillium Web; +} + +.search-result { + border: 2px solid white; + border-radius: 8px; + width: 15%; + margin: auto; + margin-left: 5px; + margin-right: 5px; + margin-top: 10px; + cursor: pointer; + display: inline-block; +} + +table { + border-collapse: collapse; + border-radius: 8px; + width: 85%; + margin: auto; + margin-top: 1rem; +} + +th { + background-color: lightslategray; +} + +th, +td { + border: 2px solid #444; + padding: 8px; + text-align: left; +} + +tr:nth-child(even) { + background-color: dimgray; +} + +.bus-card-red { + background-color: rgb(241, 120, 120) !important; +} + +header { + font-size: 67%; + background-color: #333; + height: auto; + padding: 0px 0px; + align-items: start; + width: 100%; + border-radius: 10px; +} + +nav ul { + list-style-type: none; + margin: 0; + padding: 0; + display: flex; + justify-content: left; +} + +nav { + text-align: center; + flex-shrink: 0; +} + +nav.index { + display: flex; + min-height: 51px; +} + +nav ul li { + margin-left: 20px; + margin-right: 20px; +} + +nav ul li a { + color: #fff; + text-decoration: none; + font-size: 16px; +} + +nav ul li a:hover { + text-decoration: underline; +} + +a { + color: orange; +} + +@media (max-width: 768px) { + .search-result { + display: block; + } +} +#bacino, +#searchBar { + padding: 10px; + font-size: 16px; + border-radius: 6px; + border: 1px solid var(--border-color); +} + +footer { + position: fixed; + bottom: 0px; + width: 100%; +} \ No newline at end of file diff --git a/img/favicon.ico b/img/favicon.ico new file mode 100644 index 0000000..95b83b1 Binary files /dev/null and b/img/favicon.ico differ diff --git a/js/cercafermata.js b/js/cercafermata.js new file mode 100644 index 0000000..28d6005 --- /dev/null +++ b/js/cercafermata.js @@ -0,0 +1,72 @@ +function populateSearchResults(results, selectedOption) { + const searchResultsContainer = document.getElementById('searchResults'); + searchResultsContainer.innerHTML = ''; + + if (results.length === 0) { + searchResultsContainer.innerHTML = '
Nessun risultato trovato
'; + return; + } + + results.forEach(item => { + const div = document.createElement('div'); + div.className = 'search-result'; + div.innerHTML = ` +Palina: ${item.palina}, Target ID: ${item.targetID}
+Caricamento lista fermate in corso...
'; + + fetch(`http://localhost:3005/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 diff --git a/js/fermata.js b/js/fermata.js new file mode 100644 index 0000000..d5f4892 --- /dev/null +++ b/js/fermata.js @@ -0,0 +1,70 @@ +const params = new URLSearchParams(window.location.search); +const palina = params.get('palina'); +const targetID = params.get('targetID'); +const selectedOption = params.get('selectedOption'); + +//const urlBackend = `https://api.vichingo455.freeddns.org/start-fermatebus.json/w?param=${targetID}¶m2=${selectedOption}&palina=${palina}`; +const urlBackend = `http://localhost:3005/fermata?param=${targetID}¶m2=${selectedOption}&palina=${palina}`; +function caricadati(){ + fetch(urlBackend) + .then(res => res.json()) + .then(data => { + const fermata_span = document.getElementById('fermata-span'); + if (data[0] && data[0].fermata !== undefined) { + fermata_span.innerHTML = `"${data[0].fermata}"`; + } + const container = document.getElementById('tabella-container'); + container.innerHTML = ''; + + if (!data || data.length === 0) { + container.innerHTML = '