# 🧰 GAIA Swissknife **Tampermonkey script per il portale GAIA (CRI)** Versione attuale: **1.1.011** Autore: [Luigi D'Acunto](https://luigidacunto.com) --- ## 📦 Cos'è GAIA Swissknife? Uno script sviluppato per **Tampermonkey** che migliora l'usabilità del portale [https://gaia.cri.it](https://gaia.cri.it), introducendo strumenti automatici, ottimizzazioni visive e utilità per gli operatori CRI. --- ## 🚀 Installazione ### 1. Requisiti - Estensione **[Tampermonkey](https://www.tampermonkey.net/)** installata su: - Chrome / Edge / Brave / Opera - Firefox (supportato, ma con piccole differenze di UI) ### 2. Installazione dello script 🔗 [**Clicca qui per installare GAIA Swissknife**](https://luigidacunto.com/scripts/gaia-swissknife/tampermonkey-script/GAIA-Swissknife.user.js) Oppure: 1. Apri Tampermonkey 2. Clicca su **"Crea nuovo script"** 3. Incolla il contenuto dello script 4. Salva e assicurati che sia **attivo** --- ## 🛠️ Funzionalità principali ### ✅ Su `/termina/` - Pulsante **"Tutti Ammessi / Esito Positivo"** - Compila automaticamente tutti i campi con "AM" e "P" --- ### ✅ Su `/iscritti/` - Pulsante **"Apri tutte le schede"** - Apre in nuove schede tutti i profili presenti nella pagina --- ### ✅ Su `/autorizzazioni/` - Modale mobile "Richieste Iscrizione" - Mostra un **riepilogo dei corsi richiesti** - Permette di selezionare un corso per evidenziare i blocchi e aprire i profili corrispondenti - Ottimizzazione **menu laterale** - Rimuove duplicati e aggrega per tipo richiesta - Modale **mobile, comprimibile e spostabile** --- ### ✅ Su `/aspirante/corso-base/` - Pulsante **"Copia per LURCH (JSON)"** - Copia in clipboard un JSON con i dati del corso, pronto per essere importato da LURCH **Schema del JSON:** | Campo | Tipo | Formato / Esempio | Note | |---|---|---|---| | `direttore` | string | `"Mario Rossi"` | Vuoto se nessun direttore assegnato | | `quota` | boolean | `true` / `false` | `true` se è prevista una quota di iscrizione | | `quotaValore` | number | `60` | Valore in euro, `0` se gratuito | | `corso` | string | `"Corso per Monitore CRI..."` | Titolo del corso | | `protocollo` | string | `"TOS/2026/MON-PS/6170"` | Codice corso estratto dal titolo pagina | | `linkGaia` | string (URL) | `"https://gaia.cri.it/aspirante/corso-base/66398/"` | Link diretto alla pagina corso | | `dataInizio` | string (ISO 8601) | `"2026-09-27T09:00:00"` | Data/ora di inizio corso, `null` se assente | | `dataEsame` | string (ISO 8601) | `"2026-11-22T09:00:00"` | Data/ora dell'esame finale, `null` se assente | | `scadenzaDomande` | string (ISO 8601) | `"2026-08-15T16:00:00"` | Termine ultimo per le domande di ammissione, `null` se assente | Le date sono in formato **ISO 8601 senza timezone** (`YYYY-MM-DDTHH:MM:SS`), direttamente parsabile con `Carbon::parse()` lato Laravel. --- ### ✅ Su `/courses/catalog/` - Pulsante **"Copia catalogo corsi (JSON)"** - Estrae tutti i corsi con nome, codice, livello, tipo, obiettivo e copia in clipboard --- ### ✅ Su `/us/elenchi/volontari/` - Pulsante **"Copia struttura sedi (JSON)"** - Estrae la gerarchia Regionale > Locale > Sottosedi e copia in clipboard --- ### ✅ Su pagine con selezione sedi - Tool **"Sede preferita"** - Select persistente per salvare la sede preferita, pulsante "Solo preferito" e "Seleziona tutto" --- ### ✅ Su `/curriculum/` - Trasformazione della tabella curriculum in **DataTable** - Ricerca e ordinamento attivo - Colorazione riga per tipo di qualifica - Evidenziazione rossa per corsi **Respinti** - Ricostruzione visuale colonna "Dettagli" - Icone ordinate - Nomi di file lunghi tagliati con ellissi e tooltip --- ## 🧩 Note tecniche - Lo script attiva automaticamente le funzioni **solo sulle pagine dove sono necessarie** - Non altera il comportamento del portale originario - Funzioni modulari facilmente estendibili --- ## 🧪 Changelog 📖 [Visualizza changelog completo](https://gitlab.luigidacunto.com/consultant/gaia-swissknife/-/blob/main/CHANGELOG.md) Ultima versione: **v1.1.011** - Aggiunti al JSON "Copia per LURCH" i campi `dataInizio`, `dataEsame` e `scadenzaDomande` (formato ISO 8601) v1.1.010: - Nuovo pulsante "Copia per LURCH (JSON)" nella sidebar delle pagine corso - Estrae Direttore, Quota, Protocollo, nome corso e link GAIA in un unico JSON pronto per LURCH --- ## 🙌 Autore **Luigi D'Acunto** 💻 [luigidacunto.com](https://luigidacunto.com) 📫 info@luigidacunto.com --- ## 📄 Licenza Distribuito sotto licenza **MIT** – Open Source. Puoi leggere il testo completo qui: [LICENSE](https://opensource.org/licenses/MIT) > **Attenzione:** questo script non è uno strumento ufficiale del portale GAIA o della Croce Rossa Italiana. Lo script **non altera in alcun modo dati, privacy o integrità del portale**. Tutte le modifiche sono **locali, lato browser dell'utente** e vengono applicate solo se: - Tampermonkey è installato - Lo script GAIA Swissknife è attivo In qualsiasi momento l’utente può **disattivarlo o rimuoverlo**. Le modifiche migliorano solo l'interfaccia utente e l'esperienza di utilizzo, **senza interferire con le funzionalità originali del portale**.