PageSourceSearch

https://www.unicas.it/info-studenti-unicas/app-unicas/

html unicas.it collected 2026-09-27 20:55:38 UTC 54,094 bytes, 1,078 lines download raw bytes

1
2
3<!doctype html>
4<html lang="it">
5<head>
6
7    <meta charset="utf-8">
8    <meta name="viewport" content="width=device-width, initial-scale=1" >
9    <meta name="description" content="App Unicas - Universit&#xE0; degli studi di Cassino e del Lazio Meridionale">
10    <meta name="author" content="Be Smart">
11    
12    <!-- Facebook Meta Tags -->
13<meta property="og:url" content="https://www.unicas.it/">
14<meta property="og:type" content="website">
15<meta property="og:title" content="App Unicas - Universit&#xE0; degli studi di Cassino e del Lazio Meridionale">
16<meta property="og:description" content="App Unicas">
17<meta property="og:image" content="https://www.unicas.it/media/asobeu15/8h7a9525.jpg?width=1200&height=630">
18
19<!-- Twitter Meta Tags -->
20<meta name="twitter:card" content="summary_large_image">
21<meta property="twitter:domain" content="unicas.it">
22<meta property="twitter:url" content="http://www.unicas.it//info-studenti-unicas/app-unicas/">
23<meta name="twitter:title" content="App Unicas - Universit&#xE0; degli studi di Cassino e del Lazio Meridionale">
24<meta name="twitter:description" content="App Unicas">
25<meta name="twitter:image" content="https://www.unicas.it/media/asobeu15/8h7a9525.jpg?width=1200&height=630">
26
27    <title>App Unicas - Universit&#xE0; degli studi di Cassino e del Lazio Meridionale</title>
28    
29    
29<script crossorigin="anonymous" async src="https://kit.fontawesome.com/4e8f57cf0a.js"></script>
29
30
31    <!-- Favicon-->
32    <link rel="icon" type="image/x-icon" href="/media/tfrlxtmu/favicon.ico">
33    
34    <link rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
35
36    
37    
38    <link rel="stylesheet" type="text/css" href="/css/chatbot.css">
39    <link rel="stylesheet" type="text/css" href="/css/stylecalendario.css">
40    
40<script src="/scripts/calendario.js"></script>
40
41    
42<link media="print" rel="stylesheet" type="text/css" href="/css/print.css">
43
44
45    <!-- carousel -->
46    <link rel="stylesheet" href="/css/carousel.min.css">
47    <link rel="stylesheet" href="/css/custom.css">
48
49   <!-- 
49<script src="https://code.jquery.com/jquery-3.6.0.min.js" async></script>
49 -->
50    
50<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
50
51
52<link rel="icon" href="/media/tfrlxtmu/favicon.ico">
53
54
55<!-- Matomo -->
56<script>
57  var _paq = window._paq = window._paq || [];
58  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
59  _paq.push(['trackPageView']);
60  _paq.push(['enableLinkTracking']);
61  (function() {
62    var u="//matomo.unicas.it/";
63    _paq.push(['setTrackerUrl', u+'matomo.php']);
64    _paq.push(['setSiteId', '1']);
65    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
66    g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
67  })();
68</script>
68
69<!-- End Matomo Code -->
70<!-- cookiealert styles -->
71<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/Wruczek/Bootstrap-Cookie-Alert@gh-pages/cookiealert.css">
72 
73</head>
74
75<body>
76
77<!-- START Bootstrap-Cookie-Alert -->
78<div class="alert text-center cookiealert" role="alert">
79    Utilizziamo i cookie per assicurarti la migliore esperienza nel nostro sito. Se prosegui nella navigazione di questo sito acconsenti all’utilizzo dei cookie. <a href="/privacy/cookies/" class="text-white">Informazioni sui cookie</a>
80
81    <button type="button" class="btn btn-primary btn-sm acceptcookies">
82        Sono d'accordo
83    </button>
84</div>
85<!-- END Bootstrap-Cookie-Alert -->
86    
87    
88
89<div class="fixed-top headeryellow">
90
91    <header class="border-bottom " id="header">
92
93        <nav class="navbar navbar-expand-lg navbar-light">
94            <div class="container-fluid ">
95
96<!-- comment out the following line if you want to remove the root node name from the top navigation -->
97<a class="navbar-brand" href="/" title="Home page Unicas">
98                    <img src="/media/34klzppo/unicas.svg" alt="Unicas" width="222" height="80" class="d-inline-block align-text-top">
99                    
100                </a>
101                <a href="https://www.univ-tech.eu/" title="European University of Technology">
102                    <img src="/media/ibbntxr3/eutplus.svg" width="77" height="48" class="me-5 navbar-brand titolo" alt="Membro di European University of Technology">
103                </a>
104 <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
105                    <span class="navbar-toggler-icon"></span>
106                </button>
107<div class="collapse navbar-collapse" id="navbarSupportedContent">
108    <ul class="navbar-nav me-auto mb-2 mb-lg-0">
109   <li class="nav-item">
110    <a class="nav-link " href="/ateneo/"  rel=""><strong>Ateneo</strong></a>
111    </li>
112   <li class="nav-item">
113    <a class="nav-link" href="/didattica/"  rel=""><strong>Didattica</strong></a>
114    </li>
115   <li class="nav-item">
116    <a class="nav-link" href="/research/"  rel=""><strong>Research</strong></a>
117    </li>
118   <li class="nav-item">
119    <a class="nav-link" href="/terza-missione/"  rel=""><strong>Terza Missione</strong></a>
120    </li>
121   <li class="nav-item">
122    <a class="nav-link" href="/rubrica/"  rel=""><strong>Rubrica</strong></a>
123    </li>
124
125
126
127
128
129
130 <li class="nav-item dropdown ms-lg-4">
131                            <a class="nav-link dropdown-toggle text-warning" href="#" title="Preferiti" id="navbarDropdown4" role="button" data-bs-toggle="dropdown" aria-expanded="false">
132                               <strong class="text-20437B">Servizi online</strong>  <i class="fa-duotone fa-circle-star fa-2xl"></i>
133                            </a>
134                            <ul class="dropdown-menu" aria-labelledby="navbarDropdown4">
135                                <li><a class="dropdown-item text-success" href="/1263"><i class="fas fa-tablet-alt"></i> GOMP - Mobile Studenti</a></li>
136                                <li><a class="dropdown-item text-success" href="/17636"><i class="fa-solid fa-hand-back-point-up"></i> App Unicas</a></li>
137                                <li><a class="dropdown-item text-success" href="/info-studenti-unicas/servizi-informatici-didattica-a-distanza/"><i class="fas fa-envelope"></i> Servizi Informatici</a></li>
138                                <li><a class="dropdown-item  text-success" href="/info-studenti/servizi-informatici/eduroam/"><i class="fas fa-wifi"></i> Wi-fi Eduroam</a></li>
139                                <li><a class="dropdown-item  text-success" href="https://intranet.unicas.it" target="_blank"><i class="fas fa-cubes"></i> Intranet</a></li>
140                                <li><hr class="dropdown-divider"></li>
141                                <li><a class="dropdown-item" href="https://www.facebook.com/universita.cassino"><i class="fab fa-facebook"></i> Facebook</a></li>
142                                <li><a class="dropdown-item" href="https://twitter.com/uni_cassino"><i class="fab fa-x-twitter"></i> X</a></li>
143                                <li><a class="dropdown-item" href="/2200"><i class="fab fa-youtube"></i> Youtube</a></li>
144                                <li><a class="dropdown-item" href="https://www.instagram.com/universitacassino/"><i class="fab fa-instagram"></i> Instagram</a></li>
145                                 <li><a class="dropdown-item" href="https://www.linkedin.com/school/universita-cassino"><i class="fa-brands fa-linkedin"></i> Linkedin</a></li>
146                                 <li><a class="dropdown-item" href="https://www.tiktok.com/@unicas_tiktok"><i class="fa-brands fa-tiktok"></i> Tiktok</a></li>
147
148                                 <li><a class="dropdown-item" href="https://t.me/unicassino"><i class="fa-brands fa-telegram"></i> Telegram</a></li>
149                                <li><a class="dropdown-item" href="https://whatsapp.com/channel/0029VaRpdRX0rGiF01yq6E2t"><i class="fa-brands fa-whatsapp"></i> Whatsapp</a></li>
150                                 <li><a href="https://application.unicas.it/PodcastGenerator/" class="dropdown-item"><i class="fa-light fa-podcast"></i> Podcast</a></li>
151	  <li><a href="https://www.threads.com/@universitacassino" class="dropdown-item"><i class="fa-brands fa-threads"></i> Threads</a></li>
152                                <li><a class="dropdown-item" href="https://open.spotify.com/show/3NVcDosYtHtk5gY82gludM"><i class="fa-brands fa-spotify"></i> Spotify</a></li>
153                            </ul>
154                        </li>
155                        <li class="nav-item dropdown ms-lg-4">
156                            <a class="nav-link dropdown-toggle text-info" href="#" title="language" id="navbarDropdown5" role="button" data-bs-toggle="dropdown" aria-expanded="false">
157                              <i class="fas fa-language fa-2xl"></i>
158                            </a>
159                            <ul class="dropdown-menu" aria-labelledby="navbarDropdown5">
160                                <li><a class="dropdown-item text-success" href="/welcome-eng">English</a></li>
161                                <li><a class="dropdown-item text-success" href="/welcome-fr">Français</a></li>
162                                 <li><a class="dropdown-item text-success" href="/welcome-es">Español</a></li>
163                                  <li><a class="dropdown-item text-success" href="/welcome-de">
163Deutsch</a></li>
164                                 <li><a class="dropdown-item text-success" href="/welcome-ru">Русский</a></li>
165                                  <li><a class="dropdown-item text-success" href="/welcome-zh">中文</a></li>
166                            </ul>
167                        </li>
168
169</ul>
170
171 
172                    <form class="form-inline my-2 my-lg-0" method="GET" action="/cerca">
173                        <div class="input-group">
174                            <input type="search" class="form-control" placeholder="Cerca" aria-label="Search" aria-describedby="button-addon2" name="query">
175                            <button class="btn btn-primary bg-gradient" type="submit" id="button-addon2" aria-label="cerca"><i class="fas fa-search"></i></button>
176                        </div>
177                    </form>
178
179</div>
180</div>
181        </nav>
182
183    </header>
184</div>
185
186
187
188       <main class="mt-4" id="main">
189
190        <div class="bg-20437B pt-3 pb-3">
191
192            <div class="container bg-white p-3">
193
194                
195
196
197
198
199
200
201
202<nav style="--bs-breadcrumb-divider: '>';" aria-label="breadcrumb" class="">
203  <ol class="breadcrumb border border-warning rounded p-2">
204            <li class="breadcrumb-item"><a href="/" class="text-dark">Home</a></li>
205            <li class="breadcrumb-item"><a href="/info-studenti-unicas/" class="text-dark">Info studenti Unicas</a></li>
206        <li class="breadcrumb-item active" aria-current="page">App Unicas</li>
207  </ol>
208</nav>
209<div class="sharing">
210    
211    
212    <!-- AddToAny BEGIN -->
213<div class="a2a_kit a2a_kit_size_32 a2a_default_style" data-a2a-url="https://www.unicas.it/17636" data-a2a-title="Unicas - App Unicas">
214<a class="a2a_button_print"></a>
215
216<a class="a2a_button_facebook"></a>
217<a class="a2a_button_x"></a>
218<a class="a2a_button_linkedin"></a>
219<a class="a2a_button_whatsapp"></a>
220<a class="a2a_button_telegram"></a>
221</div>
222<script>
223var a2a_config = a2a_config || {};
224a2a_config.onclick = 1;
225a2a_config.locale = "it";
226</script>
vendor: 2 bytes, line 226
226
227<script async src="https://static.addtoany.com/menu/page.js"></script>
227
228<!-- AddToAny END -->
229
230    
231   
232</div>			    
233			    
234			    
235			    
236			    <div class="d-flex">
237    <h1 data-tts-root-title class="pe-3">App Unicas</h1>
238    
239
240<div data-tts-ignore class="controlli-tts d-flex align-content-center aligh-items-center">
241    <!-- step 1: Ascolta -->
242    <div class="align-content-center">
243        <button id="bottone-ascolta" class="btn btn-secondary btn-light btn-sm" title="Ascolta" style="padding-bottom:0!important"> <i class="fas fa-headphones"></i> Ascolta </button>
244    </div>
245    
246    <!-- step 3: Pausa / Stop / Chiudi -->
247    <div id="azioni-tts" class="d-inline-block align-content-center" hidden>
248        <!-- step 2: Play -->
249        <button id="bottone-play" class="btn btn-secondary btn-light btn-sm" title="Play" hidden> <i class="fas fa-play"></i> </button>
250        <button id="bottone-pausa" class="btn btn-secondary btn-light btn-sm" title="Pausa" hidden> <i class="fas fa-pause"></i> </button>
251        <button id="bottone-stop" class="btn btn-secondary btn-light btn-sm" title="Stop" hidden> <i class="fas fa-stop"></i> </button>
252        <button id="bottone-chiudi" class="btn btn-light btn-sm" title="Chiudi" hidden> <i class="fas fa-times"></i> </button>
253    </div>
254    <!-- selettore voce -->
255    <div id="containerVoce" class="align-content-center">
256        <select id="voce-tts" class="form-select form-select-sm w-auto ms-2"></select>
257    </div>
258</div>
259
260
261<!-- Live region accessibile -->
262<span id="stato-tts" role="status" aria-live="polite" class="visually-hidden"></span>
263
264<script>
265    let elencoVoci = [];                 // Elenco voci disponibili in speechSynthesis
266    let inPausa = false;                 // Stato: lettura in pausa?
267    const CHIAVE_VOCE = "voceTTS";       // Chiave usata per salvare la voce scelta in localStorage
268
269    let frasi = [];                      // Array di tutti gli elementi .tts-frase raccolti
270    let indiceFraseCorrente = 0;         // Indice della frase attualmente in lettura
271    const originaliPerRoot = new WeakMap(); // Salvataggio HTML originale di ciascun root
272
273    // --- Safety: interrompe la lettura in situazioni “di uscita” ---
274    window.addEventListener('beforeunload', stopLettura, { capture: true });
275    window.addEventListener('pagehide', stopLettura, { capture: true });
276    document.addEventListener('visibilitychange', () => { if (document.hidden) stopLettura(); }, { capture: true });
277    document.addEventListener('shown.bs.tab', () => { stopLettura(); }); // stop quando cambio tab
278
279    // Mostra i controlli dello step "play"
280    function mostraStep() {
281      document.getElementById("bottone-ascolta").hidden = true;
282      document.getElementById("bottone-play").hidden = false;
283      document.getElementById("azioni-tts").hidden = false;
284    }
285
286    // ---- Caricamento voci TTS ----
287    function trovaPerNome(voci, nomeParziale) {
288      // Ritorna la voce che contiene il nomeParziale
289      const n = (nomeParziale || "").toLowerCase();
290      return voci.find(v => (v.name || "").toLowerCase().includes(n)) || null;
291    }
292
293    // Ritorna la prima voce Italiana
294    function primaItaliana(voci) {
295      return voci.find(v => (v.lang || "").toLowerCase().startsWith("it")) || null;
296    }
297
298    //Seleziona le voci
299    function caricaVoci() {
300      if (!('speechSynthesis' in window)) return;
301
302      // 1) Carico voci
303      elencoVoci = speechSynthesis.getVoices();
304      const select = document.getElementById('voce-tts');
305      if (!select) return;
306
307      // Voci preferite
308      const isabella = trovaPerNome(elencoVoci, 'Microsoft Isabella Online (Natural) - Italian')
309        || trovaPerNome(elencoVoci, 'Isabella Online (Natural)')
310        || trovaPerNome(elencoVoci, 'Isabella');
311
312      const googleIt = trovaPerNome(elencoVoci, 'Google italiano')
313        || trovaPerNome(elencoVoci, 'Google Italian')
314        || (function () {
315          const g = trovaPerNome(elencoVoci, 'Google');
316          return g && (g.lang || '').toLowerCase().startsWith('it') ? g : null;
317        })();
318
319      const elsa = trovaPerNome(elencoVoci, 'Microsoft Elsa - Italian')
320        || trovaPerNome(elencoVoci, 'Microsoft Elsa')
321        || trovaPerNome(elencoVoci, 'Elsa');
322
323      const alice = trovaPerNome(elencoVoci, 'Alice (it-IT)')
324        || trovaPerNome(elencoVoci, 'Alice');
325
326      const preferite = [isabella, googleIt, elsa, alice].filter(Boolean);
327      const italiane = elencoVoci.filter(v => (v.lang || '').toLowerCase().startsWith('it'));
328      const fallback = elencoVoci.find(v => v.default) || elencoVoci[0];
329
330      // Prova a ripristinare la voce salvata (se esiste ed è ancora disponibile)
331      let voceSalvata = null;
332      try {
333        const nomeSalvato = localStorage.getItem(CHIAVE_VOCE);
334        if (nomeSalvato) voceSalvata = elencoVoci.find(v => v.name === nomeSalvato) || null;
335      } catch {}
336
337      // 2) Se esiste almeno una voce preferita -> NASCONDI la select
338      if (preferite.length > 0) {
339        // Scegli: salvata (se presente) altrimenti prima preferita, poi italiana, poi fallback
340        const scelta = voceSalvata || preferite[0] || italiane[0] || fallback;
341        if (scelta) {
342          select.hidden = true;
343          try { localStorage.setItem(CHIAVE_VOCE, scelta.name); } catch {}
344        } else {
345       // nessuna voce -> nascondi comunque
346          select.hidden = true;
347        }
348        return;
349      }
350
351      // 3) Nessuna voce preferita -> MOSTRA la select ma SOLO con voci italiane
352      select.innerHTML = '';
353      if (italiane.length > 0) {
354        italiane.forEach(voce => {
355          const opt = document.createElement('option');
356          opt.value = voce.name;
357          opt.textContent = `${voce.name} (${voce.lang})${voce.default ? ' *' : ''}`;
358          select.appendChild(opt);
359        });
360
361        // default: voce salvata se è italiana, altrimenti prima italiana
362        const sceltaIt = (voceSalvata && italiane.some(v => v.name === voceSalvata.name))
363          ? voceSalvata
364          : italiane[0];
365
366        select.value = sceltaIt.name;
367        select.hidden = false; // <-- visibile solo in questo caso
368        try { localStorage.setItem(CHIAVE_VOCE, select.value); } catch {}
369      } else {
370        // Non ho voci italiane da mostrare: nascondo select e scelgo fallback/salvata
371        const scelta = voceSalvata || fallback;
372        select.hidden = true;
373        try { localStorage.setItem(CHIAVE_VOCE, scelta?.name || ''); } catch {}
374      }
375    }
376
377
378
379    // caricamento voci
380    if ('speechSynthesis' in window) {
381      speechSynthesis.onvoiceschanged = caricaVoci;
382      document.addEventListener('DOMContentLoaded', caricaVoci);
383    }
384
385    //Nel caso di tab, legge solo gli attivi
386    function getActivePane() {
387      return document.querySelector('#nav-tabContent .tab-pane.show.active, #nav-tabContent .tab-pane.active');
388    }
389
390    // ---- Recupera tutti i root leggibili ----
391    function getRootElements() {
392      const paneAttivo = getActivePane();
393
394      // 1) Root globali (indipendenti dai tab)
395      const rootsGlobali = Array.from(
396        document.querySelectorAll(
397          '[data-tts-root-title]:not([hidden]):not([data-tts-ignore]), ' +
398          '[data-tts-root]:not([hidden]):not([data-tts-ignore])'
399        )
400      );
401
402      // 2) Root eventi (scopati al tab attivo se c’è, altrimenti su tutto il documento)
403      const scopeEventi = paneAttivo || document;
404      const rootsEventi = Array.from(
405        scopeEventi.querySelectorAll('[data-tts-root-eventi]:not([hidden]):not([data-tts-ignore])')
406      ).filter(el => !!el.querySelector('[aria-selected="true"]'));
407
408      // Unione senza duplicati
409      const unici = new Set([...rootsGlobali, ...rootsEventi]);
410      const tutti = Array.from(unici);
411
412      // Fallback: se non trovo nulla ma c’è un tab attivo, ritorno quel pane
413      if (tutti.length === 0 && paneAttivo) return [paneAttivo];
414
415      return tutti;
416    }
417
418    // ---- Wrappa frasi in <span class="tts-frase"> ----
419    function avvolgiFrasi(element) {
420      function processaNodi(node) {
421        if (node.nodeType === 1 && node.hasAttribute('data-tts-ignore')) return;
422
423        if (node.nodeType === 3) { // nodo di testo
424          const testo = node.nodeValue;
425          if (testo.trim().length > 0) {
426            const testoPulito = testo.replace(/\s+/g, ' ');
427            const frasiSemplici = testoPulito.split(/(?<=[.?!])\s+/);
428            const contenitore = document.createElement('span');
429
430            frasiSemplici.forEach(f => {
431              if (f.length > 0) {
432                const spanFrase = document.createElement('span');
433                spanFrase.className = 'tts-frase';
434                spanFrase.textContent = f;
435                contenitore.appendChild(spanFrase);
436              }
437            });
438
439            node.parentNode.replaceChild(contenitore, node);
440          }
441        } else if (node.nodeType === 1 && node.nodeName !== 'SCRIPT' && node.nodeName !== 'STYLE') {
442          Array.from(node.childNodes).forEach(processaNodi);
443        }
444      }
445      processaNodi(element);
446    }
447
448    // ---- Avvia o riprende la lettura ----
449    function avviaLettura() {
450      // Aggiorna pulsanti
451      document.getElementById("bottone-ascolta").hidden = true;
452      document.getElementById("bottone-play").hidden = true;
453      document.getElementById("bottone-pausa").hidden = false;
454      document.getElementById("bottone-stop").hidden = false;
455      document.getElementById("bottone-chiudi").hidden = false;
456      document.getElementById("azioni-tts").hidden = false;
457
458      const synth = window.speechSynthesis;
459
460      // Se era in pausa, riprendo
461      if (inPausa && synth.speaking) {
462        synth.resume();
463        inPausa = false;
464        return;
465      }
466
467      // Recupero root
468      const elementiDaLeggere = getRootElements();
469      if (elementiDaLeggere.length === 0) return;
470
471      // Ripristino e salvo HTML originale
472      elementiDaLeggere.forEach(el => {
473        if (originaliPerRoot.has(el)) el.innerHTML = originaliPerRoot.get(el);
474        else originaliPerRoot.set(el, el.innerHTML);
475        el.removeAttribute('data-tts-processed');
476      });
477
478      // Wrappo e raccolgo frasi
479      const raccolta = [];
480      elementiDaLeggere.forEach(el => {
481        const target = el.hasAttribute('data-tts-root-eventi')
482          ? (el.querySelector('[aria-selected="true"]') || el)
483          : el;
484
485        avvolgiFrasi(target);
486        raccolta.push(...target.querySelectorAll('.tts-frase:not([hidden]):not([data-tts-ignore])'));
487      });
488
489      frasi = raccolta;
490      if (frasi.length === 0) return;
491
492      // Reset e start
493      synth.cancel();
494      inPausa = false;
495      indiceFraseCorrente = 0;
496      frasi.forEach(f => f.classList.remove('tts-highlight'));
497      leggiProssimaFrase();
498    }
499
500    // ---- Lettura di una frase e ricorsione ----
501    function leggiProssimaFrase() {
502      const synth = window.speechSynthesis;
503      if (indiceFraseCorrente >= frasi.length) { stopLettura(); return; }
504
505      const fraseCorrente = frasi[indiceFraseCorrente];
506      const testo = fraseCorrente.textContent.trim();
507      if (!testo) { indiceFraseCorrente++; leggiProssimaFrase(); return; }
508
509      const utterance = new SpeechSynthesisUtterance(testo + ' ');
510      utterance.lang = document.documentElement.lang || "it-IT";
511
512      // Imposto la voce scelta
513      const select = document.getElementById("voce-tts");
514      if (select && elencoVoci.length) {
515        const scelta = elencoVoci.find(v => v.name === select.value);
516        if (scelta) utterance.voice = scelta;
517      }
518
519      // Highlight frase corrente
520      frasi.forEach(f => f.classList.remove('tts-highlight'));
521      fraseCorrente.classList.add('tts-highlight');
522
523      // Alla fine della frase passo alla successiva
524      utterance.onend = () => { indiceFraseCorrente++; leggiProssimaFrase(); };
525
526      synth.speak(utterance);
527    }
528
529    // ---- Pausa ----
530    function pausaLettura() {
531      const synth = window.speechSynthesis;
532      if (synth?.speaking && !synth.paused) {
533        synth.pause();
534        inPausa = true;
535        document.getElementById("bottone-pausa").hidden = true;
536        document.getElementById("bottone-play").hidden = false;
537      }
538    }
539
540    //Rprestina il DOM al html originale
541    function riprestinaDom (){
542      const synth = window.speechSynthesis;
543      if (synth) synth.cancel();
544      inPausa = false;
545      indiceFraseCorrente = 0;
546
547      const elementiDaRipristinare = getRootElements();
548      elementiDaRipristinare.forEach(el => {
549        if (originaliPerRoot.has(el)) el.innerHTML = originaliPerRoot.get(el);
550        el.removeAttribute("data-tts-processed");
551      });
552
553      frasi.forEach(f => f.classList.remove('tts-highlight'));
554    }
555
556    // ---- Stop completo ----
557    function stopLettura() {
558      // Reset pulsanti
559      document.getElementById("bottone-stop").hidden = false;
560      document.getElementById("bottone-play").hidden = false;
561      document.getElementById("bottone-pausa").hidden = true;
562      document.getElementById("bottone-chiudi").hidden = false;
563      document.getElementById("bottone-ascolta").hidden = true;
564
565      riprestinaDom();
566    }
567
568    //Ritorna all'icona di 'Ascolta'
569    function chiudiLettura() {
570
571     // Reset pulsanti
572      document.getElementById("bottone-stop").hidden = true;
573      document.getElementById("bottone-play").hidden = true;
574      document.getElementById("bottone-pausa").hidden = true;
575      document.getElementById("bottone-chiudi").hidden = true;
576      document.getElementById("bottone-ascolta").hidden = false;
577
578       riprestinaDom();
579    }
580
581    // ---- Eventi sui bottoni ----
582    document.addEventListener("DOMContentLoaded", () => {
583      document.getElementById("bottone-ascolta")?.addEventListener("click", avviaLettura);
584      document.getElementById("bottone-play")?.addEventListener("click", avviaLettura);
585      document.getElementById("bottone-pausa")?.addEventListener("click", pausaLettura);
586      document.getElementById("bottone-stop")?.addEventListener("click", stopLettura);
587      document.getElementById("bottone-chiudi")?.addEventListener("click", chiudiLettura);
588
589      const select = document.getElementById("voce-tts");
590      if (select) {
591        // Ripristina eventuale voce salvata
592        try {
593          const salvata = localStorage.getItem(CHIAVE_VOCE);
594          if (salvata) select.value = salvata;
595        } catch { }
596        // Al cambio voce, salvo e riavvio lettura se attiva
597        select.addEventListener("change", () => {
598          try { localStorage.setItem(CHIAVE_VOCE, select.value); } catch { }
599          if (speechSynthesis?.speaking && !speechSynthesis.paused) {
600            stopLettura();
601            avviaLettura();
602          }
603        });
604      }
605    });
606</script>
606
607
608
609
610
611
612
613
614
615</div>
616
617<div class="row" data-tts-root>
618
619
620
621
622    <div class="col-lg-9  col-auto border-end order-lg-1 mb-2">
623           
624            
625        <article>
626                
627
628    <div class="umb-grid">
629                <div class="grid-section">
630        <div >
631            <div class="row clearfix">
632                    <div class="col-md-12 column">
633                        <div >
634
635
636
637<p>Con l'App Unicas smart_edu puoi immatricolarti, controllare la tua carriera, prenotare esami, compilare un piano di studi e tutte le funzionalità previste dall'Ateneo.</p>
638<ul>
639<li><a href="https://apps.apple.com/it/app/smart-edu-mobile-studenti/id1344879229?ign-itscg=30200&amp;ign-itsct=apps_box_link" data-anchor="?ign-itscg=30200&amp;ign-itsct=apps_box_link">App Store</a></li>
640<li><a href="https://play.google.com/store/apps/details?id=studenti.test.besmart.it.mobilestudenti&amp;gl=IT&amp;pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1" data-anchor="?id=studenti.test.besmart.it.mobilestudenti&amp;gl=IT&amp;pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1">Google Play</a></li>
641</ul>
642
643                        </div>
644                    </div>
645            </div>
646        </div>
647                </div>
648    </div>
649
650
651
652                
653            </article>
654            
655        </div>
656        
657        
658        <div class="col-lg-2 col bg-light order-lg-0 mb-2">
659            <nav class="nav-bar nav-bar--list">
660                
661<ul class="list-group list-unstyled">
662   <li>
663       <a class="list-group-item" href="/orientamento-immatricolarsi/offerta-didattica/">Offerta didattica</a>
664</li>
665   <li>
666       <a class="list-group-item" href="/orientamento-immatricolarsi/guida-dello-studente/">Guida dello Studente</a>
667</li>
668   <li>
669       <a class="list-group-item" href="/didattica/calendario-accademico/">Calendario Accademico</a>
670</li>
671   <li>
672       <a class="list-group-item" href="/info-studenti-unicas/gomp-portale-studenti/">GOMP: Portale studenti</a>
673</li>
674   <li>
675       <a class="list-group-item" href="/info-studenti-unicas/aule-orario-lezioni-e-calendario-appelli/">Aule, Orario Lezioni e calendario appelli</a>
676</li>
677   <li>
678       <a class="list-group-item" href="https://unicas-public.gomp.it/PublicData?mode=findSpace&amp;iso=ita">Aule libere</a>
679</li>
680   <li>
681       <a class="list-group-item" href="/info-studenti-unicas/servizi-informatici-didattica-a-distanza/">Servizi informatici / Didattica a distanza</a>
682</li>
683   <li>
684       <a class="list-group-item" href="/servizio-di-counseling-psicologico-di-ateneo-scpa/">Servizio di Counseling Psicologico di Ateneo (SCPA)</a>
685</li>
686   <li>
687       <a class="list-group-item disabled bg-secondary text-white" href="/info-studenti-unicas/app-unicas/">App Unicas</a>
688</li>
689   <li>
690       <a class="list-group-item" href="/segreteriastudenti/">Segreteria Studenti</a>
691</li>
692   <li>
693       <a class="list-group-item" href="/didattica/segreterie-didattiche/">Segreterie didattiche</a>
694</li>
695   <li>
696       <a class="list-group-item" href="/cudir">Servizi per persone con disabilit&#xE0;</a>
697</li>
698   <li>
699       <a class="list-group-item" href="/info-studenti-unicas/calendario-sedute-di-laurea/">Calendario Sedute di Laurea</a>
700</li>
701   <li>
702       <a class="list-group-item" href="/segreteriastudenti/tasse-e-contributi/regolamento-tasse-e-contributi-aa-20232024/">Regolamento tasse e contributi</a>
703</li>
704   <li>
705       <a class="list-group-item" href="/sba">Biblioteche</a>
706</li>
707   <li>
708       <a class="list-group-item" href="/international-unicas/erasmus-office/">Erasmus (Italia - Estero)</a>
709</li>
710   <li>
711       <a class="list-group-item" href="http://www.laziodisco.it/servizi/borse-di-studio/">Borse di Studio</a>
712</li>
713   <li>
714       <a class="list-group-item" href="/info-studenti-unicas/residenze-e-trasporti/">Residenze e Trasporti</a>
715</li>
716   <li>
717       <a class="list-group-item" href="http://www.laziodisco.it/luoghi/sede-di-cassino/">Servizi diritto allo studio (DiSCo Lazio)</a>
718</li>
719   <li>
720       <a class="list-group-item" href="https://www.cuscassino.it/web/">Centro Universitario Sportivo (CUS)</a>
721</li>
722   <li>
723       <a class="list-group-item" href="http://www.laziodisco.it/servizi/ristorazione/">Mense</a>
724</li>
725   <li>
726       <a class="list-group-item" href="/info-studenti-unicas/dove-sono-le-sedi/">Dove sono le sedi</a>
727</li>
728   <li>
729       <a class="list-group-item" href="/info-studenti-unicas/elezioni-studentesche/">Elezioni studentesche</a>
730</li>
731   <li>
732       <a class="list-group-item" href="/info-studenti-unicas/associazioni-studentesche/">Associazioni Studentesche</a>
733</li>
734   <li>
735       <a class="list-group-item" href="/info-studenti-unicas/bandi-studenti/">Bandi Studenti</a>
736</li>
737   <li>
738       <a class="list-group-item" href="/cuori/il-centro/bandi/">Bandi (SOT, POT etc)</a>
739</li>
740   <li>
741       <a class="list-group-item" href="/info-studenti-unicas/garante-degli-studenti/">Garante degli Studenti</a>
742</li>
743   <li>
744       <a class="list-group-item" href="/ateneo/convenzioni/agevolazioni-territoriali-alla-comunita-unicas/">Agevolazioni territoriali alla Comunit&#xE0; Unicas</a>
745</li>
746   <li>
747       <a class="list-group-item" href="/info-studenti-unicas/erasmus-italia-italia/">Erasmus (Italia&#x2192;Italia)</a>
748</li>
749   <li>
750       <a class="list-group-item" href="/info-studenti-unicas/unicas2go/">Unicas2Go</a>
751</li>
752   <li>
753       <a class="list-group-item" href="https://www.casi.unicas.it/assistenza/faq">Servizi Informatici FAQ</a>
754</li>
755   <li>
756       <a class="list-group-item" href="/info-studenti-unicas/centro-antiviolenza/">Centro Antiviolenza</a>
757</li>
758</ul>
759
760
761
762            </nav>
763
764        </div>
765        
766                   
767             
768
769
770
771                <div class="col-lg-1 @*hiddenMobile*@ order-3 MenuIcon">
772
773                    <ul class="row  row-cols-4 row-cols-lg-1 list-unstyled list">
774                            <li class="col mb-1 menu">
775                                <a href="/iscrizione-e-orientamento/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="Iscrizione e Orientamento">
776                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="Iscrizione e Orientamento">
777                                        <i class="fa-solid fa-compass fa-2x text-20437B"></i>
778                                    </div>
779                                </a>
780                            </li>
781                            <li class="col mb-1 menu">
782                                <a href="/info-studenti-unicas/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="Info studenti Unicas">
783                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="Info studenti Unicas">
784                                        <i class="fa-solid fa-info-circle fa-2x text-20437B"></i>
785                                    </div>
786                                </a>
787                            </li>
788                            <li class="col mb-1 menu">
789                                <a href="/international-unicas/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="International @Unicas">
790                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="International @Unicas">
791                                        <i class="fa-solid fa-language fa-2x text-20437B"></i>
792                                    </div>
793                                </a>
794                            </li>
795                            <li class="col mb-1 menu">
796                                <a href="/info-laureati-job-placement/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="Info Laureati &amp; Job Placement-Career Service">
797                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="Info Laureati &amp; Job Placement-Career Service">
798                                        <i class="fa-solid fa-user-graduate fa-2x text-20437B"></i>
799                                    </div>
800                                </a>
801                            </li>
802                            <li class="col mb-1 menu">
803                                <a href="/unicas-per-le-scuole/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="UNICAS per le Scuole">
804                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="UNICAS per le Scuole">
805                                        <i class="fa-solid fa-school fa-2x text-20437B"></i>
806                                    </div>
807                                </a>
808                            </li>
809                            <li class="col mb-1 menu">
810                                <a href="https://www.unicas.it/trasferimento-tecnologico/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="Trasferimento Tecnologico">
811                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="Trasferimento Tecnologico">
812                                        <i class="fa-solid fa-gears fa-2x text-20437B"></i>
813                                    </div>
814                                </a>
815                            </li>
816                            <li class="col mb-1 menu">
817                                <a href="/info-personale/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="Info Personale">
818                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="Info Personale">
819                                        <i class="fa-solid fa-users fa-2x text-20437B"></i>
820                                    </div>
821                                </a>
822                            </li>
823                            <li class="col mb-1 menu">
824                                <a href="/web-tv-radio-magazine/" class="d-block text-dark text-decoration-none" data-bs-toggle="tooltip" data-bs-placement="left" title="Web TV/ Radio/ Magazine">
825                                    <div class="p-2 py-2 mb-2 text-center rounded border border-2 border-warning" title="Web TV/ Radio/ Magazine">
826                                        <i class="fa-solid fa-tv-music fa-2x text-20437B"></i>
827                                    </div>
828                                </a>
829                            </li>
830                    </ul>
831                </div>    
832
833
834
835
836
837    
838         
839     
840 
841			
842		
843
844
845
846
847            
848              </div>
849   
850
851
852            </div>
853        </div>
854
855    </main>
856
857    
858
859<footer class="bg-secondary text-white" id="footer">
860              <div class="container">
861			  
862			  
863                <div class="row mb-5" style="padding-top:20px;">
864                  <div class="col">
865                    <div class="logo-footer">
866                      <a href="/" title="Home page"><img src="/media/gizfxl2c/unicas_emblem.svg" alt="logo unicas" width="150" height="150"></a>
867                       <a href="https://www.univ-tech.eu/" title="European University of Technology">
868                      <img src="/media/j0lcnnz5/eutplus_footer.svg" width="131" height="65" class="ms-4" alt="Membro di European University of Technology">
869                      </a>
870                      <p class="h5">
871                       
872                        <span><strong>Universit&#xE0; degli studi di Cassino e del Lazio Meridionale</strong></span>
873                     
874                      </p>
875                    </div><!-- /logo-footer -->
876                  </div><!-- /col -->
877                </div><!-- /row -->
878				
879				
880                <div class="row mb-3">
881                  <div class="col">
882                    <h2 class="h3">Link esterni</h2>
883                    
884                    
885                            <ul class="nav flex-column">
886                                    <li class="nav-item"><a href="https://gomp.unicas.it/" class="text-white text-decoration-none">Portale studenti (accesso SPID)</a></li>
887                                    <li class="nav-item"><a href="/info-studenti-unicas/app-unicas/" class="text-white text-decoration-none">App Unicas</a></li>
888                                    <li class="nav-item"><a href="http://www.alaclam.unicas.it/about-us/" class="text-white text-decoration-none">Alumni</a></li>
889                                    <li class="nav-item"><a href="http://www.alaclam.unicas.it/merchandising/" class="text-white text-decoration-none">Merchandising di Ateneo</a></li>
890                                    <li class="nav-item"><a href="https://www.mur.gov.it/it" class="text-white text-decoration-none">Ministero dell&#x27;Universit&#xE0; e della Ricerca</a></li>
891                                    <li class="nav-item"><a href="https://www.universitaly.it/" class="text-white text-decoration-none">Universitaly</a></li>
892                            </ul>
893                  </div><!-- /col-lg-3 -->
894                  <div class="col">
895                    <h2 class="h3">Unicas</h2>
896                            <ul class="nav flex-column">
897                                    <li class="nav-item"><a href="/research/dipartimenti-e-laboratori/" class="text-white text-decoration-none">Dipartimenti e Laboratori</a></li>
898                                    <li class="nav-item"><a href="/ateneo/centri-di-servizio/" class="text-white text-decoration-none">Centri di servizio</a></li>
899                                    <li class="nav-item"><a href="https://www.univ-tech.eu/" class="text-white text-decoration-none">European University of Technology - EUt&#x2B;</a></li>
900                                    <li class="nav-item"><a href="/sba/" class="text-white text-decoration-none">Sistema Bibliotecario di Ateneo</a></li>
901                                    <li class="nav-item"><a href="/ateneo/amministrazione-trasparente/" class="text-white text-decoration-none">Amministrazione trasparente</a></li>
902                                    <li class="nav-item"><a href="https://archivio.unicas.it" class="text-white text-decoration-none">Archivio Unicas</a></li>
903                            </ul>
904                  </div><!-- /col-lg-3 -->
905                  <div class="col">
906                    
907                    <h2 class="h3">Didattica</h2>
908                            <ul class="nav flex-column">
909                                    <li class="nav-item"><a href="https://unicas-public.gomp.it/" class="text-white text-decoration-none">Catalogo corsi</a></li>
910                                    <li class="nav-item"><a href="https://unicas-public.gomp.it/PublicData?mode=findCatalog&amp;iso=ita" class="text-white text-decoration-none">
910Catalogo insegnamenti</a></li>
911                                    <li class="nav-item"><a href="/segreteriastudenti/" class="text-white text-decoration-none">Segreteria Studenti</a></li>
912                                    <li class="nav-item"><a href="/didattica/segreterie-didattiche/" class="text-white text-decoration-none">Segreterie didattiche</a></li>
913                                    <li class="nav-item"><a href="/international-unicas/" class="text-white text-decoration-none">International @Unicas (EN)</a></li>
914                                    <li class="nav-item"><a href="https://unicas-public.gomp.it/Calendar" class="text-white text-decoration-none">Aule e Orari</a></li>
915                            </ul>
916                  </div><!-- /col-lg-3 -->
917                  <div class="col">
918                    <h2 class="h3">#ComUnicas</h2>
919                            <ul class="nav flex-column">
920                                    <li class="nav-item"><a href="/ateneo/comunicazione-e-brand-identity/" class="text-white text-decoration-none">Comunicazione e brand identity</a></li>
921                                    <li class="nav-item"><a href="/notizie/" class="text-white text-decoration-none">In primo piano</a></li>
922                                    <li class="nav-item"><a href="/calendario-eventi/" class="text-white text-decoration-none">Calendario Eventi</a></li>
923                                    <li class="nav-item"><a href="/comunicati-stampa/" class="text-white text-decoration-none">Comunicati stampa</a></li>
924                                    <li class="nav-item"><a href="/web-tv-radio-magazine/magazine-unicaspiu/" class="text-white text-decoration-none">Magazine Unicaspi&#xF9;</a></li>
925                                    <li class="nav-item"><a href="/web-tv-radio-magazine/radiounicas/" class="text-white text-decoration-none">RadioUnicas</a></li>
926                                    <li class="nav-item"><a href="/unicas-per-il-pnrr/" class="text-white text-decoration-none">UNICAS per il PNRR</a></li>
927                                    <li class="nav-item"><a href="/notizie/newsletter-della-ricerca/" class="text-white text-decoration-none">Newsletter della Ricerca</a></li>
928                            </ul>
929                  </div><!-- /col-lg-3 -->
930                   <div class="col">
931                    <h2 class="h3">Servizi</h2>
932                            <ul class="nav flex-column">
933                                    <li class="nav-item"><a href="/cudir/" class="text-white text-decoration-none">CUDIR - Centro Universitario Disabilit&#xE0;, Inclusione, Ricerca</a></li>
934                                    <li class="nav-item"><a href="/info-studenti-unicas/servizi-informatici-didattica-a-distanza/" class="text-white text-decoration-none">Servizi informatici / Didattica a distanza</a></li>
935                                    <li class="nav-item"><a href="https://www.unicas.it/info-studenti-unicas/centro-antiviolenza/" class="text-white text-decoration-none">Centro Antiviolenza</a></li>
936                                    <li class="nav-item"><a href="https://www.unicas.it/servizio-di-counseling-psicologico-di-ateneo-scpa/" class="text-white text-decoration-none">Counseling pscicologico</a></li>
937                                    <li class="nav-item"><a href="https://www.unicas.it/sba/servizi-e-risorse/apertura-biblioteche-h24-potenziamento-servizi/" class="text-white text-decoration-none">Biblioteche H24</a></li>
938                                    <li class="nav-item"><a href="https://www.cuscassino.it/web/" class="text-white text-decoration-none">Centro Universitario Sportivo</a></li>
939                            </ul>
940                  </div><!-- /col-lg-3 -->
941                </div><!-- /row -->
942				
943				
944				
945				<div class="row" style="padding:30px 0">
946					<div class="col-sm-8" style="margin-left:0 !important; padding-left:0 !important">
947					  
948                           <ul class="nav justify-content">
949                                    <li class="nav-item"><a href="/note-legali/" class="nav-link text-white">Note legali</a></li>
950                                    <li class="nav-item"><a href="/privacy/" class="nav-link text-white">Privacy</a></li>
951                                    <li class="nav-item"><a href="/accessibilita/" class="nav-link text-white">Accessibilit&#xE0;</a></li>
952                                    <li class="nav-item"><a href="/crediti/" class="nav-link text-white">Crediti</a></li>
953                            </ul>
954					</div>
955					<div class="col-sm-4 text-white">
956					  <p style="text-align:right !important;padding-top:8px">Seguici su:
957									  
958										<a href="https://www.facebook.com/universitacassino/" class="text-white" title="Facebook Unicas"><i class="fab fa-facebook"></i></a>
959										  <a href="https://twitter.com/uni_cassino" class="text-white" title="X Unicas"><i class="fab fa-x-twitter"></i></a>
960										  <a href="/2200" class="text-white" title="Youtube Unicas"><i class="fab fa-youtube"></i></a>
961										   <a href="https://www.instagram.com/universitacassino/" class="text-white" title="Instagram Unicas"><i class="fab fa-instagram"></i></a>
962											<a href="https://www.apple.com/it/education/" class="text-white" title="apple"><i class="fab fa-apple"></i></a>
963											<a href="https://www.linkedin.com/school/universita-cassino" class="text-white" title="Linkedin Unicas"><i class="fab fa-linkedin"></i></a>
964											<a href="https://www.tiktok.com/@unicas_tiktok" class="text-white" title="Tiktok Unicas"><i class="fa-brands fa-tiktok"></i></a>
965											<a href="https://t.me/unicassino" class="text-white" title="Telegram Unicas"><i class="fab fa-telegram"></i></a>
966											<a href="https://whatsapp.com/channel/0029VaRpdRX0rGiF01yq6E2t" class="text-white" title="Whatsapp Unicas"><i class="fa-brands fa-whatsapp"></i></a>
967											<a href="https://application.unicas.it/PodcastGenerator/" class="text-white" title="Podcast Unicas"><i class="fa-light fa-podcast"></i></a>
968											<a href="https://www.threads.com/@universitacassino" class="text-white" title="Threads Unicas"><i class="fa-brands fa-threads"></i></a>
969
970	<a href="https://open.spotify.com/show/3NVcDosYtHtk5gY82gludM" class="text-white" title="Spotify Unicas"><i class="fa-brands fa-spotify"></i></a>
971
972				   </p>
973					
974				  </div>
975				
976				
977				
978				
979				
980               
981             
982                <div class="row mb-3 border-top border-bottom border-white">
983                  <div class="col-lg-12 text-left text-md-center" style="padding-top:10px">
984                    <p>
985                         Viale dell&#x27;Universit&#xE0; - Rettorato - (Campus Universitario) Loc. Folcara - 03043 CASSINO (FR) - Centralino 0776 2991 - Fax 0776 310562 - PEC: [email protected]
986						<br>
987						P.IVA 01730470604 - C.F. 81006500607 (5xmille) - SWIFT BIC: POCAIT3CXXX  - IBAN: IT75 B053 7274 3700 0001 0409 621</p>
988                  </div>
989                </div><!-- /row -->
990                <p class="text-center">
991    <a href="https://jigsaw.w3.org/css-validator/check/referer">
992        <img 
993            src="/media/ddcpfglj/vcss.png"
994            alt="CSS Valido!" width="88" height="31">
995    </a>
996    <a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.unicas.it">
997     <img 
998            src="/media/na5phie2/w3c_html5_certified.png"
999            alt="Markup Valido!" width="88" height="31">
1000            </a>
1001</p>
1002              </div>
1003              
1004              </div>
1005              <!-- /container -->
1006            </footer>  
1007
1008
1009    <button onclick="topFunction()" id="myBtn" data-bs-toggle="tooltip" title="Torna su"><i class="fas fa-arrow-circle-up fa-3x"></i></button>
1010    <!-- script -->
1011
1012    
1012<script integrity="sha384-oBqDVmMz9ATKxIep9tiCxS/Z9fNfEXiDAYTujMAeBAsjFuCZSmKbSSUnQlmh/jp3" crossorigin="anonymous" defer src="https://cdn.jsdelivr.net/npm/@popperjs/[email protected]/dist/umd/popper.min.js"></script>
vendor: 2 bytes, line 1012
1012
1013<script integrity="sha384-mQ93GR66B00ZXjt0YO5KlohRA5SY2XofN4zfuZxLkoj1gXtW8ANNCe9d5Y3eG5eD" crossorigin="anonymous" defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js"></script>
1013
1014    
1014<script>
1015        //Get the button
1016        var mybutton = document.getElementById("myBtn");
1017
1018        // When the user scrolls down 20px from the top of the document, show the button
1019        window.onscroll = function () { scrollFunction() };
1020
1021        function scrollFunction() {
1022            if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
1023                mybutton.style.display = "block";
1024            } else {
1025                mybutton.style.display = "none";
1026            }
1027        }
1028
1029        // When the user clicks on the button, scroll to the top of the document
1030        function topFunction() {
1031            document.body.scrollTop = 0;
1032            document.documentElement.scrollTop = 0;
1033        }
1034
1035        var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
1036        var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
1037            return new bootstrap.Tooltip(tooltipTriggerEl)
1038        })
1039    </script>
1039
1040
1041
1042<div class="social">
1043		<ul>
1044		
1045			
1046	 <li><a href="https://www.facebook.com/universita.cassino" title="Università degli Studi di Cassino e del Lazio Meridionale
1047è su Facebook."><i class="fa-brands fa-square-facebook fa-lg"></i></a></li>
1048                                <li><a href="https://twitter.com/uni_cassino" title="Segui uni_cassino"><i class="fa-brands fa-square-x-twitter fa-lg"></i></a></li>
1049                                <li><a href="/2200" title="Canali YouTube"><i class="fa-brands fa-square-youtube fa-lg"></i></a></li>
1050                                <li><a href="https://www.instagram.com/universitacassino/" title="Segui universitacassino su instagram"><i class="fa-brands fa-square-instagram fa-lg"></i></a></li>
1051                                 <li><a href="https://www.linkedin.com/school/universita-cassino" title="Linkedin unicas"><i class="fa-brands fa-linkedin fa-lg"></i></a></li>
1052                                  <li><a href="https://www.tiktok.com/@unicas_tiktok" title="Tiktok Unicas"><i class="fa-brands fa-tiktok fa-lg"></i></a></li>
1053                                  <li><a href="https://t.me/unicassino"><i class="fa-brands fa-telegram fa-lg" title="Canale Telegram Unicas"></i></a></li>
1054                                  <li><a href="https://whatsapp.com/channel/0029VaRpdRX0rGiF01yq6E2t" title="Whatsapp Unicas"><i class="fa-brands fa-whatsapp fa-lg"></i></a></li>
1055	 <li><a href="https://application.unicas.it/PodcastGenerator/" title="Podcast Unicas"><i class="fa-light fa-podcast fa-lg"></i></a></li>
1056	  <li><a href="https://www.threads.com/@universitacassino" title="Threads Unicas"><i class="fa-brands fa-threads fa-lg"></i></a></li>
1057<li><a href="https://open.spotify.com/show/3NVcDosYtHtk5gY82gludM" title="Spotify Unicas"><i class="fa-brands fa-spotify fa-lg"></i></a></li>
1058      		</ul>
1059	</div>
1060	 
1061<script defer src="https://cdn.customgpt.ai/js/chat.js"></script>
vendor: 2 bytes, line 1061
1061
1062<script defer>
1063    (function () {
1064        function init() {
1065            CustomGPT.init({
1066                p_id: '95883',
1067                p_key: 'ae507b94b64a9ab7ee57aa1df36c978a'
1068            });
1069        }
1070        document.readyState === 'complete' ? init() : window.addEventListener('load', init);
1071    })();
1072</script>
1072
1073
1074    <!-- Include cookiealert script -->
1075    
1075<script async src="https://cdn.jsdelivr.net/gh/Wruczek/Bootstrap-Cookie-Alert@gh-pages/cookiealert.js"></script>
1075
1076
1077</body>
1078</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.