- Timestamp:
- May 23, 2025, 8:38:24 PM (7 months ago)
- Location:
- trunk
- Files:
-
- 8 added
- 23 deleted
- 9 edited
-
admin/modules/Elezioni/ele_configurazione.php (modified) (2 diffs)
-
admin/modules/Elezioni/ele_gruppo.php (modified) (4 diffs)
-
admin/modules/Elezioni/mappa_popup.php (modified) (9 diffs)
-
admin/versione.php (modified) (1 diff)
-
client/modelli/form_affluenza.php (deleted)
-
client/modelli/form_affluenza_referendum.php (deleted)
-
client/modelli/form_comunicazioni.php (deleted)
-
client/modelli/form_scrutinio_ballottaggio.php (deleted)
-
client/modelli/form_scrutinio_candidati._europee.php (deleted)
-
client/modelli/form_scrutinio_candidati_europee.php (deleted)
-
client/modelli/form_scrutinio_liste_europee.php (deleted)
-
client/modelli/form_scrutinio_preferenze_consiglieri.php (deleted)
-
client/modelli/form_scrutinio_presidente_liste.php (deleted)
-
client/modelli/form_scrutinio_referendum.php (deleted)
-
client/modelli/form_scrutinio_sindaco_liste.php (deleted)
-
client/modelli/genera_pdf_affluenza.php (deleted)
-
client/modelli/genera_pdf_affluenza_referendum.php (deleted)
-
client/modelli/genera_pdf_comunicazione.php (deleted)
-
client/modelli/genera_pdf_scrutinio_ballottaggio.php (deleted)
-
client/modelli/genera_pdf_scrutinio_candidati_europee.php (deleted)
-
client/modelli/genera_pdf_scrutinio_liste_europee.php (deleted)
-
client/modelli/genera_pdf_scrutinio_preferenze_consiglieri.php (deleted)
-
client/modelli/genera_pdf_scrutinio_presidente_liste.php (deleted)
-
client/modelli/genera_pdf_scrutinio_referendum.php (deleted)
-
client/modelli/genera_pdf_scrutinio_sindaco_liste.php (deleted)
-
client/modelli/genera_pdf_seggi.php (deleted)
-
client/modelli/index.html (deleted)
-
client/modules/Elezioni/consiglieri.php (modified) (4 diffs)
-
client/modules/Elezioni/crea_paginaphp7.php (modified) (2 diffs)
-
client/modules/Elezioni/gruppo.php (modified) (5 diffs)
-
client/temi/bootstrap/pagine/datigeneralisezioni.php (modified) (2 diffs)
-
client/temi/bootstrap/pagine/imgscheda (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_arancione.jpg (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_blu.jpg (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_giallo.jpg (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_grigio.jpg (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_verde.jpg (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_verdescuro.jpg (added)
-
client/temi/bootstrap/pagine/imgscheda/scheda_viola.jpg (added)
-
client/versione.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/admin/modules/Elezioni/ele_configurazione.php
r468 r469 44 44 if (isset($param['siteistat'])) $siteistat=addslashes($param['siteistat']); else $siteistat=''; 45 45 if (isset($param['language2'])) $language2=addslashes($param['language2']); else $language2=''; 46 if (isset($param['flash2'])) $flash2=addslashes($param['flash2']); else $flash2=' ';46 if (isset($param['flash2'])) $flash2=addslashes($param['flash2']); else $flash2='0'; 47 47 if (isset($param['displayerrors'])) $displayerrors=intval($param['displayerrors']); else $displayerrors='0'; 48 48 … … 148 148 ########## 149 149 echo "<td><b>"._LANGUAGE."</b></td><td><input type=\"text\" name=\"language2\" value=\"".$gru['language']."\"></td></tr>"; 150 $sel= ($gru['googlemaps']==1) ? "selected":""; 151 echo "<tr><td><b>"._GOOGLEMAPS."</b></td><td><select name=\"googlemaps\"><option value=\"0\">No<option value=\"1\" $sel>Si</select></td>"; 150 // modifica alex 151 //rinominare googlemaps in maps_provider per maggiore chiarezza 152 // Se $gru['googlemaps'] non Ú impostato o Ú vuoto, usa 'openstreetmap' come default 153 $maps_provider = !empty($gru['googlemaps']) ? $gru['googlemaps'] : 'openstreetmap'; 154 $google_api_key = !empty($gru['google_api_key']) ? htmlspecialchars($gru['google_api_key']) : ''; 155 156 $maps_provider = !empty($gru['googlemaps']) ? $gru['googlemaps'] : 'openstreetmap'; 157 $google_api_key = !empty($gru['google_api_key']) ? htmlspecialchars($gru['google_api_key']) : ''; 158 159 echo "<tr><td><b>Provider Mappa</b></td><td> 160 <select name=\"googlemaps\" id=\"maps_provider\" onchange=\"toggleApiKeyField()\"> 161 <option value=\"openstreetmap\" " . ($maps_provider === 'openstreetmap' ? 'selected' : '') . ">OpenStreetMap</option> 162 <option value=\"google\" " . ($maps_provider === 'google' ? 'selected' : '') . ">Google Maps</option> 163 </select> 164 <span style=\" 165 display:inline-block; 166 margin-left:8px; 167 color:#007bff; 168 font-weight:bold; 169 cursor: help; 170 font-size: 18px; 171 \" 172 title=\"Seleziona il provider delle mappe da utilizzare esclusivamente nell'interfaccia di amministrazione della sede elettorale. OpenStreetMap Ú gratuito e non richiede chiavi API. Google Maps offre funzionalità avanzate, ma può richiedere una chiave API e comportare costi in base all'utilizzo.\" 173 >❓</span> 174 175 </td></tr>"; 176 177 echo "<tr id=\"apikey_row\" style=\"" . ($maps_provider === 'google' ? '' : 'display:none;') . "\"> 178 <td><b>Google Maps API Key</b></td> 179 <td> 180 <input type=\"text\" name=\"google_api_key\" value=\"$google_api_key\" style=\"width:100%;\"> 181 <span style=\" 182 display:inline-block; 183 margin-left:8px; 184 color:#007bff; 185 font-weight:bold; 186 font-size: 18px; 187 cursor: help; 188 \" 189 title=\"Inserisci qui la tua Google Maps API Key. Puoi ottenerla dalla Google Cloud Console. Assicurati di abilitare le API Maps e configurare correttamente le restrizioni per la sicurezza.\" 190 >❓</span> 191 <a href=\"https://console.cloud.google.com/apis/credentials\" target=\"_blank\" style=\" 192 margin-left:6px; 193 font-size: 13px; 194 color: #007bff; 195 text-decoration: none; 196 \">[Vai alla Google Cloud Console]</a> 197 </td> 198 </tr>"; 199 200 echo "<script> 201 function toggleApiKeyField() { 202 const provider = document.getElementById('maps_provider').value; 203 const row = document.getElementById('apikey_row'); 204 row.style.display = (provider === 'google') ? '' : 'none'; 205 } 206 document.addEventListener('DOMContentLoaded', toggleApiKeyField); 207 </script>"; 208 209 210 211 212 213 // $sel= ($gru['googlemaps']==1) ? "selected":""; 214 // echo "<tr><td><b>"._GOOGLEMAPS."</b></td><td><select name=\"googlemaps\"><option value=\"0\">No<option value=\"1\" $sel>Si</select></td>"; 152 215 /* tolta la chiave 153 216 echo "<td><b>"._GKEY."</b></td><td><input type=\"text\" name=\"gkey\" value=\"".$gru['gkey']."\"></td></tr>"; -
trunk/admin/modules/Elezioni/ele_gruppo.php
r468 r469 48 48 if (isset($param['cg'])) $cg=addslashes($param['cg']); else $cg=''; 49 49 if (isset($param['colore_id'])) $colore_id=intval($param['colore_id']); else $colore_id=0; 50 echo "TEST: $colore_id";51 50 /******************************************************/ 52 51 /*Funzione di visualizzazione globale */ … … 77 76 echo "<center><font class=\"title\"><b>"._GRUPPO."</b></font><br>"; 78 77 79 echo "<table border=\"0\" width=\"100%\"><tr bgcolor=\"$bgcolor1\"><td colspan=\" 5\">";78 echo "<table border=\"0\" width=\"100%\"><tr bgcolor=\"$bgcolor1\"><td colspan=\"7\">"; 80 79 echo "<form name=\"gruppo2\" enctype=\"multipart/form-data\" action=\"admin.php\" method=\"post\">" 81 80 ."<input type=\"hidden\" name=\"op\" value=\"gruppo\">"; … … 88 87 } 89 88 90 echo "<td align=\"center\" width=\"5%\"><b>" . _SIMBOLO . "</b></td>"; 91 89 echo "<td align=\"center\" width=\"5%\"><b>" . _SIMBOLO . "</b>"; 92 90 if ($do=='modify') 93 91 echo "<br><input type=\"checkbox\" name=\"delsimb\" value=\"false\"> "._DELETE; … … 277 275 //fine 278 276 echo "<td align=\"center\"><b> 279 <img src=\"admin.php?op=foto&id_gruppo=$id_gruppo\" width=\"50 %\" alt=\"foto\"></b></td>";277 <img src=\"admin.php?op=foto&id_gruppo=$id_gruppo\" width=\"50px\" alt=\"foto\"></b></td>"; 280 278 if ($tipo_cons!=2) 281 279 echo "<td width=\"100\">$prognome</td>"; -
trunk/admin/modules/Elezioni/mappa_popup.php
r468 r469 1 <?php 2 $maps_provider = 'openstreetmap'; // utillizzare 'openstreetmap' oppure 'google' 3 4 if ($maps_provider === 'google') { 5 $google_maps_api_key = "LA_TUA_API_KEY_DAL_DB_O_CONFIG"; 6 } else { 7 $google_maps_api_key = null; 8 } 9 if ($maps_provider !== 'google' || empty($google_maps_api_key)) { 10 $maps_provider = 'openstreetmap'; 11 } 12 ?> 1 13 <style> 2 14 #mapPopup { … … 22 34 </style> 23 35 24 <!-- Leaflet CSS & JS -->25 36 <link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" /> 26 37 <script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script> 38 39 <?php if ($maps_provider === 'google' && $google_maps_api_key): ?> 40 <script src="https://maps.googleapis.com/maps/api/js?key=<?php echo htmlspecialchars($google_maps_api_key); ?>&callback=initMap" async defer></script> 41 <?php endif; ?> 27 42 28 43 <div id="mapPopup"> … … 37 52 38 53 <script> 54 const maps_provider = <?= json_encode($maps_provider) ?>; 39 55 const mapPopup = document.getElementById('mapPopup'); 40 56 const closeMapBtn = document.getElementById('closeMap'); … … 42 58 const mapDiv = document.getElementById('map'); 43 59 44 let map, marker, popupMarker ;60 let map, marker, popupMarker, gmap, gmarker, ginfoWindow; 45 61 let currentInputs = null; 46 let currentLatLng = null; // salvo lat/lng correnti del marker senza aggiornare input62 let currentLatLng = null; 47 63 48 64 document.querySelectorAll('.btnApriMappa').forEach(button => { … … 55 71 56 72 const comune = comuneInput ? comuneInput.value.trim() : ""; 57 58 if (!indir) { 59 alert('Input indirizzo non trovato.'); 60 return; 61 } 62 73 if (!indir) return alert('Input indirizzo non trovato.'); 63 74 const query = indir.value.trim(); 64 if (!query) { 65 alert("Inserisci un indirizzo o nome da cercare."); 66 return; 67 } 75 if (!query) return alert("Inserisci un indirizzo o nome da cercare."); 68 76 69 77 const fullQuery = comune ? `${query}, ${comune}` : query; 70 71 78 currentInputs = { indir, lat, lng }; 72 79 … … 74 81 .then(res => res.json()) 75 82 .then(results => { 76 if (results.length === 0) { 77 alert('Nessun risultato trovato per "' + fullQuery + '". Puoi modificare manualmente.'); 78 return; 79 } 83 if (results.length === 0) return alert('Nessun risultato trovato per "' + fullQuery + '".'); 80 84 apriMappa(results[0]); 81 }) ;85 }).catch(() => alert('Errore durante la ricerca dell\'indirizzo.')); 82 86 }); 83 87 }); … … 86 90 const lat = parseFloat(result.lat); 87 91 const lon = parseFloat(result.lon); 88 92 currentLatLng = { lat, lon }; 89 93 mapPopup.style.display = 'block'; 90 94 91 if (!map) { 92 map = L.map('map').setView([lat, lon], 16); 93 L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { 94 attribution: '© OpenStreetMap contributors' 95 }).addTo(map); 96 } else { 97 map.setView([lat, lon], 16); 95 if (maps_provider === 'google') { 96 if (!gmap) { 97 gmap = new google.maps.Map(mapDiv, { 98 center: { lat, lng: lon }, 99 zoom: 16 100 }); 101 gmarker = new google.maps.Marker({ 102 position: { lat, lng: lon }, 103 map: gmap, 104 draggable: true 105 }); 106 ginfoWindow = new google.maps.InfoWindow(); 107 108 gmarker.addListener('drag', () => { 109 const pos = gmarker.getPosition(); 110 currentLatLng = { lat: pos.lat(), lon: pos.lng() }; 111 }); 112 113 gmarker.addListener('dragend', () => { 114 const pos = gmarker.getPosition(); 115 currentLatLng = { lat: pos.lat(), lon: pos.lng() }; 116 aggiornaIndirizzo(pos.lat(), pos.lng()).then(info => { 117 ginfoWindow.setContent(`<strong>${info.address}</strong><br>Lat: ${info.lat.toFixed(6)}, Lon: ${info.lon.toFixed(6)}`); 118 ginfoWindow.open(gmap, gmarker); 119 }); 120 }); 121 } else { 122 gmap.setCenter({ lat, lng: lon }); 123 gmarker.setPosition({ lat, lng: lon }); 124 } 125 126 aggiornaIndirizzo(lat, lon).then(info => { 127 ginfoWindow.setContent(`<strong>${info.address}</strong><br>Lat: ${info.lat.toFixed(6)}, Lon: ${info.lon.toFixed(6)}`); 128 ginfoWindow.open(gmap, gmarker); 129 }); 130 131 } else { // openstreetmap (Leaflet) 132 if (!map) { 133 map = L.map('map').setView([lat, lon], 16); 134 L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { 135 attribution: '© OpenStreetMap contributors' 136 }).addTo(map); 137 } else { 138 map.setView([lat, lon], 16); 139 } 140 141 if (marker) { 142 marker.setLatLng([lat, lon]); 143 } else { 144 marker = L.marker([lat, lon], { draggable: true }).addTo(map); 145 marker.on('drag', e => { 146 const pos = e.target.getLatLng(); 147 currentLatLng = { lat: pos.lat, lon: pos.lng }; 148 }); 149 marker.on('dragend', e => { 150 const pos = e.target.getLatLng(); 151 currentLatLng = { lat: pos.lat, lon: pos.lng }; 152 aggiornaIndirizzo(pos.lat, pos.lng).then(info => { 153 mostraPopup(info.address, info.lat, info.lon); 154 }); 155 }); 156 } 157 158 if (!popupMarker) { 159 popupMarker = L.popup({ closeButton: false, offset: [0, -30] }); 160 } 161 162 aggiornaIndirizzo(lat, lon).then(info => { 163 mostraPopup(info.address, info.lat, info.lon); 164 }); 98 165 } 99 100 if (marker) {101 marker.setLatLng([lat, lon]);102 } else {103 marker = L.marker([lat, lon], { draggable: true }).addTo(map);104 marker.on('dragend', onMarkerDragEnd);105 marker.on('drag', onMarkerDrag);106 }107 108 if (!popupMarker) {109 popupMarker = L.popup({ closeButton: false, offset: [0, -30] });110 }111 112 currentLatLng = { lat, lon }; // aggiorno solo questa variabile113 114 aggiornaIndirizzo(lat, lon).then(info => {115 mostraPopup(info.address, info.lat, info.lon);116 });117 }118 119 function onMarkerDrag(e) {120 const pos = e.target.getLatLng();121 currentLatLng = { lat: pos.lat, lon: pos.lng }; // aggiorno solo variabile, non input122 }123 124 function onMarkerDragEnd(e) {125 const pos = e.target.getLatLng();126 currentLatLng = { lat: pos.lat, lon: pos.lng }; // aggiorno solo variabile127 128 aggiornaIndirizzo(pos.lat, pos.lng).then(info => {129 mostraPopup(info.address, info.lat, info.lon);130 });131 166 } 132 167 … … 135 170 ? `<strong>${address}</strong><br>Lat: ${lat.toFixed(6)}, Lon: ${lon.toFixed(6)}` 136 171 : `Lat: ${lat.toFixed(6)}, Lon: ${lon.toFixed(6)}`; 137 popupMarker 138 .setLatLng([lat, lon]) 139 .setContent(content) 140 .openOn(map); 172 if (maps_provider === 'openstreetmap') { 173 popupMarker.setLatLng([lat, lon]).setContent(content).openOn(map); 174 } 141 175 } 142 176 143 177 function aggiornaIndirizzo(lat, lon) { 144 if (!currentInputs) return Promise.resolve({ address: null, lat, lon });145 146 178 return fetch(`https://nominatim.openstreetmap.org/reverse?format=jsonv2&lat=${lat}&lon=${lon}`) 147 179 .then(res => res.json()) … … 151 183 const num = data.address?.house_number || ""; 152 184 const indirizzoCompleto = [nome, via, num].filter(Boolean).join(" - "); 153 154 // qui non aggiorno più l'indirizzo input automaticamente per evitare modifiche in corso155 // l'utente deve confermare premendo "Usa questa posizione"156 157 185 return { address: indirizzoCompleto, lat, lon }; 158 }) 159 .catch(() => ({ address: null, lat, lon })); 186 }).catch(() => ({ address: null, lat, lon })); 160 187 } 161 188 162 189 closeMapBtn.addEventListener('click', () => { 163 190 if (currentInputs && currentLatLng) { 164 // aggiorno solo al click su "Usa questa posizione"165 191 currentInputs.lat.value = currentLatLng.lat.toFixed(6); 166 192 currentInputs.lng.value = currentLatLng.lon.toFixed(6); 167 168 // opzionale: aggiorno anche l'indirizzo input con il valore popup corrente169 193 aggiornaIndirizzo(currentLatLng.lat, currentLatLng.lon).then(info => { 170 194 if (currentInputs.indir && info.address) { 171 const cleanedAddress = info.address.replace(/"/g, '').trim(); 172 currentInputs.indir.value = cleanedAddress; 173 } 174 195 const cleanedAddress = info.address.replace(/"/g, '').trim(); 196 currentInputs.indir.value = cleanedAddress; 197 } 175 198 }); 176 199 } -
trunk/admin/versione.php
r468 r469 1 1 <?php 2 2 3 $versione = "3.0 rev 46 8";3 $versione = "3.0 rev 469"; 4 4 $version_number = $versione; 5 $datarel = " 19maggio 2025";5 $datarel = "23 maggio 2025"; 6 6 $version = "Eleonline $version_number (<i>Data Release: $datarel</i>)"; 7 7 -
trunk/client/modules/Elezioni/consiglieri.php
r468 r469 692 692 $fmin=2; 693 693 ob_start(); 694 echo "<table class=\"table-docs\" style=\"border-spacing: 0; padding: 2px; border: 1px solid;\">";695 echo "<caption style=\"caption-side: top;\"><br>Tabella dei consiglieri di maggioranza</caption>";694 echo "<table width=\"100%\" summary=\"Tabella dei consiglieri di maggioranza\" class=\"table-docs\" cellspacing=\"0\" cellpadding=\"2\" border=\"1\" rules=\"all\">"; 695 # echo "<caption style=\"caption-side: top;\"><br>Tabella dei consiglieri di maggioranza</caption>"; 696 696 $y=1;$i='';$e=0; 697 697 foreach ($ar as $riga) { … … 701 701 $fmin=1; 702 702 echo "</table>"; 703 echo "<table class=\"table-docs\" style=\"padding: 2px; border-spacing: 0; border: 1px solid;\">"; 704 echo "<caption style=\"caption-side: top;page-break-before: always;\"><br>Tabella dei candidati alla carica di sindaco eletti consigliere</caption>"; 703 # echo "</div><div class=\"row\">"; 704 echo "<table summary=\"Tabella dei candidati a sindaco eletti consigliere\" class=\"table-docs\" cellspacing=\"0\" cellpadding=\"2\" border=\"1\" rules=\"all\">"; 705 # echo "<caption style=\"caption-side: top;page-break-before: always;\"><br>Tabella dei candidati alla carica di sindaco eletti consigliere</caption>"; 705 706 echo "<tr class=\"bggray\"><td colspan=\"2\"><b>"; 706 707 echo $csin; … … 711 712 { $fmin=0; 712 713 echo "</table>"; 713 echo "<table class=\"table-docs\" style=\"padding: 2px; border-spacing: 0; border: 1px solid;\">"; 714 echo "<caption style=\"caption-side: top;\"><br>Tabella dei consiglieri di minoranza</caption>"; 714 # echo "</div><div class=\"row\">"; 715 echo "<table summary=\"Tabella dei consiglieri di minoranza\" class=\"table-docs\" cellspacing=\"0\" cellpadding=\"2\" border=\"1\" rules=\"all\">"; 716 # echo "<caption style=\"caption-side: top;\"><br>Tabella dei consiglieri di minoranza</caption>"; 715 717 # echo "<tr class=\"bggray\"><td colspan=\"6\"><b>"; 716 718 # echo $cmin; … … 745 747 } 746 748 echo "</table>"; 749 # echo "</div>"; 747 750 # $stampa=ob_get_contents(); 748 751 $tmpstampa=ob_get_clean(); -
trunk/client/modules/Elezioni/crea_paginaphp7.php
r460 r469 33 33 if ($xls==1) { 34 34 $nomefile=strip_tags(str_replace(array('"', "'", ' ', ','), "_", $datipdf).".xls"); 35 if(!$nomefile) $nomefile="$descr_cons.xls";36 35 header ("Content-Type: application/vnd.ms-excel"); 37 36 header ("Content-Disposition: inline; filename=$nomefile"); … … 218 217 $nomefile=str_replace(" ", "_",$nomefile); 219 218 // conversion HTML => PDF 219 # die("TEST: $style"); 220 220 $html2pdf = new Html2Pdf($orienta,$formato, 'it'); 221 221 $html2pdf->WriteHTML($style, isset($_GET['vuehtml'])); -
trunk/client/modules/Elezioni/gruppo.php
r431 r469 374 374 } 375 375 echo "</select>"; 376 echo " "._A.": <select name=\"offset\" class=\"modulo\"> ";376 echo " "._A.": <select name=\"offset\" class=\"modulo\"></p>"; 377 377 $res_cand = $dbi->prepare("$sqlc"); 378 378 $res_cand->execute(); … … 390 390 if(!$circo){ 391 391 echo "<p>"._SCEGLI." $tipo1 n. <input name=\"minsez\" value=\"$minsez\" size=\"4\" ></input>"; 392 echo _A." n. <input name=\"offsetsez\" value=\"$offsetsez\" size=\"4\" ></input> (max. $numsezmax) ";392 echo _A." n. <input name=\"offsetsez\" value=\"$offsetsez\" size=\"4\" ></input> (max. $numsezmax)</p>"; 393 393 } 394 394 # pagine … … 427 427 echo "></input><br/>"; 428 428 } 429 echo "< p>";429 echo "</p><p>"; 430 430 if (!strstr( $op,'candidato')) { 431 431 echo ""._VIS_PERC.": <input type=\"checkbox\" name=\"perc\" value=\"true\""; … … 433 433 echo "></input><br/>"; 434 434 } 435 echo " ";435 echo "</p>"; 436 436 if($circo) 437 437 echo "<input type=\"hidden\" name=\"id_circ\" value=\"$id_circ\"></input>"; … … 537 537 $nomefile.="$descr_cons $tab15"; 538 538 $_SESSION['nomefile']=strip_tags(str_replace(" ", "_", $nomefile)); 539 $datipdf="<b>"._COMUNE." $descr_comune</b> - "._RISULTATI.": $descr_cons<br/><b>$pagina</b><br/><br/>$list1 $list2 $list3"; 539 $datipdf="<table style=\"text-align:center;margin-right:0px;border-top : 1px solid Blue;width: 800px;\"><tr style=\" background:#eceff5;\"><td>"; 540 $datipdf.="<b><h2>"._COMUNE." $descr_comune</h2></b></td></tr><tr><td>"._RISULTATI.": $descr_cons</td></tr><tr><td><b>$pagina</b></td></tr><tr><td>$list1 $list2 $list3</td></tr></table>"; 541 $datipdf="<b>"._COMUNE." $descr_comune</b> - "._RISULTATI.": $descr_cons<br/><b>$pagina</b><br/><br/> "; 542 $datipdf .="<br/><b>$list1 $list2 $list3</b>"; 543 $datipdf=str_replace('"',"'",$datipdf); 544 540 545 $_SESSION['datipdf']= $datipdf; 541 546 if (!$csv){ -
trunk/client/temi/bootstrap/pagine/datigeneralisezioni.php
r468 r469 99 99 <td><?php echo $row2[0][5];?></td> 100 100 <td> 101 <?php if(strlen($row2[0]['latitudine'])>0 and strlen($row2[0]['longitudine'])>0) $indirizzo= '@'.$row2[0]['latitudine'].",".$row2[0]['longitudine'].'z';101 <?php if(strlen($row2[0]['latitudine'])>0 and strlen($row2[0]['longitudine'])>0) $indirizzo=$row2[0]['latitudine'].",".$row2[0]['longitudine']; 102 102 else 103 $indirizzo= strtr($row2[0][3]," ","+")."+".strtr($sitename," ","+");?>104 <a href="https://maps.google.com/maps/search/<?php echo $indirizzo;?>" target="_blank"><span>MAPPA</span></a>103 $indirizzo=$row2[0][3]." ".$sitename;?> 104 <a href="https://maps.google.com/maps/search/<?php echo urlencode($indirizzo);?>" target="_blank"><span>MAPPA</span></a> 105 105 </td> 106 106 </tr> … … 133 133 <div class="d-flex justify-content-center"> 134 134 <div class="table-responsive overflow-x"> 135 <?php if(strlen($row2[0]['filemappa'])>0) { ?> 136 <img src="modules.php?name=Elezioni&file=foto&id_sede=<?php echo $id_sede;?>" alt=\"mappa\" > 137 <?php } ?> 135 138 <table class="table table-striped table-bordered table-sm align-middle"> 136 139 <thead class="table-light mx-auto"> -
trunk/client/versione.php
r468 r469 1 1 <?php 2 $versione = "3.0 rev 46 8";2 $versione = "3.0 rev 469"; 3 3 $version_number = $versione; 4 $datarel = " 19maggio 2025";4 $datarel = "23 maggio 2025"; 5 5 $version = "Eleonline $version_number (<i>Data Release: $datarel</i>)"; 6 6
Note:
See TracChangeset
for help on using the changeset viewer.
