Come rendere Joomla 1.5 accessibile con la FAP Intervento di Valerio Sichi Roma 21.11.2009 Cosa significa JoomlaFAP Joomla FAP è una versione di Joomla ottimizzata per l'accessibilità come definita in base alla legge italiana (legge ”Stanca”) legge 9 gennaio 2004, n. 4: "Disposizioni per favorire l'accesso dei soggetti disabili agli strumenti informatici” Joomla! FAP For All People Perchè JoomlaFAP ? Per un principio etico e di solidarietà Ogni persona ha diritto di accedere alle fonti di informazione Un dovere della nostra comunità Per uno strumento come il nostro che si chiama Joomla! che significa "tutti insieme" o "come un'unica entità" JoomlaFAP è un atto dovuto Quadro di riferimento normativo Legge 9 gennaio 2004, n. 4 (Legge Stanca) D.P.R. 1 marzo 2005, n. 75 (Regolamento) Decreto Ministeriale 8 luglio 2005 (Requisiti tecnici) La legge Legge 9 gennaio 2004, n. 4 (Stanca) Disposizioni per favorire l'accesso dei soggetti disabili agli strumenti informatici http://www.pubbliaccesso.it/ Obiettivi e finalità della legge Art. 1 (Obiettivi e finalità) 1. La Repubblica riconosce e tutela il diritto di ogni persona ad accedere a tutte le fonti di informazione e ai relativi servizi, ivi compresi quelli che si articolano attraverso gli strumenti informatici e telematici. 2. È tutelato e garantito, in particolare, il diritto di accesso ai servizi informatici e telematici della pubblica amministrazione e ai servizi di pubblica utilità da parte delle persone disabili, in ottemperanza al principio di uguaglianza ai sensi dell'articolo 3 della Costituzione. Definizioni della legge Art. 2 (Definizioni) 1. Ai fini della presente legge, si intende per: a) «accessibilità»: la capacità dei sistemi informatici, nelle forme e nei limiti consentiti dalle conoscenze tecnologiche, di erogare servizi e fornire informazioni fruibili, senza discriminazioni, anche da parte di coloro che a causa di disabilità necessitano di tecnologie assistive o configurazioni particolari; b) «tecnologie assistive»: gli strumenti e le soluzioni tecniche, hardware e software, che permettono alla persona disabile, superando o riducendo le condizioni di svantaggio, di accedere alle informazioni e ai servizi erogati dai sistemi informatici. Regolamento criteri e principi Art. 2 Regolamento Criteri e principi generali per l’accessibilità 1. Sono accessibili i servizi realizzati tramite sistemi informatici che presentano i seguenti requisiti: a) accessibilità al contenuto del servizio da parte dell’utente; b) fruibilità delle informazioni offerte, caratterizzata anche da: 1) facilità e semplicità d’uso, assicurando, fra l’altro, che le azioni da compiere per ottenere servizi e informazioni siano sempre uniformi tra loro; 2) efficienza nell’uso, assicurando, fra l’altro, la separazione tra contenuto, presentazione e modalità di funzionamento delle interfacce, nonché la possibilità di rendere disponibile l’informazione attraverso differenti canali sensoriali; Regolamento criteri e principi Art. 2 Regolamento Criteri e principi generali per l’accessibilità 3) efficacia nell’uso e rispondenza alle esigenze dell’utente, assicurando, fra l’altro, che le azioni da compiere per ottenere in modo corretto servizi e informazioni siano indipendenti dal dispositivo utilizzato per l’accesso; 4) soddisfazione nell’uso, assicurando, fra l’altro, l’accesso al servizio e all’informazione senza ingiustificati disagi o vincoli per l’utente; c) compatibilità con le linee guida indicate nelle comunicazioni, nelle raccomandazioni e nelle direttive sull’accessibilità dell’Unione europea, nonché nelle normative internazionalmente riconosciute quali l’International Organization for Standardization (ISO) e il World Wide Web Consortium (W3C). Cosa prevede la normativa Il regolamento ed il decreto attuativo in sintesi dispongono che un sito internet accessibile debba rispondere a 22 requisiti http://www.pubbliaccesso.gov.it/normative/DM080705-A.htm I 22 requisiti I criteri oggettivi sono obbligatori per le PPAA Elenco dei criteri oggettivi (liberamente semplificati) (X)HTML Strict (preferenza per XHTML 1.0 strict) No tabelle per il layout, si CSS No apertura nuove finestre No marcatori presentazionali (font ecc.), si CSS No frame I 22 requisiti Immagini e multimedia con testi alternativi No uso semantico del colore (oppure ALT) No blink Si alto contrasto No mappe immagini lato server (oppure ALT) Tabelle solo per contenuto tabellare e con intestazioni chiaramente associate alle righe/colonne (id negli header TH e attributo header nei TD) I 22 requisiti Usabile anche senza CSS Layout fluido e/o ”resistente” a modifiche nella dimensione dei font Form con etichette associate ai campi Usabile senza script e applet Gestori eventi script e applet: indipendenza dai dispositivi di input Link comprensibili anche senza contesto oppure title esplicativi I 22 requisiti Sistemi per saltare direttamente al contenuto (evitando di dover sempre scorrere i menu) No servizi ”a scadere” oppure avvisare l'utente Collegamenti attivabili da tastiera o da sistemi di puntamento diversi dal mouse (access key, padding >= 1em) Scappatoia: versione accessibile della pagina (no sito parallelo) Storia del progetto FAP Nato nel 2004, si basa sulla release 1.0.8 versione italiana Autore originale: Vamba (M. Bertolini) Maintainer dal 2006: ItOpen Nel 2007 parte il progetto FAP 1.5 Nel 2009 si giunge alla FAP 1.5 V 1.4 stabile Installazioni in produzione e altre in arrivo da cosa è composto JoomlaFAP Ultima versione di Joomla! 1) il componente accesskeys 2) il template accessible 3) il gruppo dei file del core modificati chiamati in gergo corepatches 4) il plugin htmlpurifier Chi ha sviluppato le estensioni Joomla FAP: iI CMS accessibile Accesskeys, template e file corepatches Alessandro Pasotti www.itopen.it Chi ha sviluppato le estensioni Joomla FAP: iI CMS accessibile plugin htmlpurifier Federico Capoano http://www.joomlashow.it/ Dove sono le estensioni com_accesskeys, template e files corepatch qui http://joomlacode.org/gf/project/joomlafap1_5/frs/ Dove sono i file del corepatch files corepatch qui http://joomlacode.org/svn/joomlafap1_5/ Dove sono le estensioni Plugin htmlpurifier qui http://extensions.joomla.org/extensions/4094/detai ls oppure http://develop.joomlashow.it/italian/plugins/htmlpurifier.html Dwonload htmlpurifier Download htmlpurifier Download accesskeys e template Scaricare i files del corepatch I file del corepatch si trovano depositati in un Repository SVN (Subversion) e non sono scaricabili direttamente con il download. Per scaricarli sul nostro computer dobbiamo procurarci alcuni strumenti di lavoro idonei a questo scopo. Sotto windows uno degli strumenti più popolari è Tortoise http://tortoisesvn.net/downloads Procurarsi ed installare Tortoise Procurarsi ed installare Tortoise Procurarsi ed installare Tortoise Usare Tortoise Usare Tortoise Tasto destro del mouse sulla cartella SVN Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Usare Tortoise Trasferire i file del corepatch Caricare le estensioni Con le procedure normali di Joomla! si procede al caricamento delle estensioni. 1) com_accesskeys 2) plugin htmlpurifier 3) template accessible Il componente accesskeys Il componente accesskeys permette di assegnare alle voci di menù una combinanzione di tasti che quando sarà premuta attiverà la voce di menù stessa. Le combinazioni sono: Alt + lettera o numero con Internet Explorer Alt + shift + lettera o numero con Firefox Il componente accesskeys Il componente accesskeys Il componente accesskeys Il componente accesskeys Il componente accesskeys Il componente accesskeys Il plugin htmlpurifier Htmlpurifier è un plugin che consente di utilizzare l'omonima libreria scritta in PHP, la quale agisce sul codice HTML, generato da Joomla, e lo mantiene pulito, conforme agli standard e alle specifiche W3C ed anche libero da eventuali codici maligni. Il plugin htmlpurifier Il plugin htmlpurifier Il template accessible Il template accessible Il template accessible Il template accessible Il template accessible Il template accessible la validazione http://validator.w3c.org La validazione Ringraziamenti agli sviluppatori in modo particolare ad Alessandro Pasotti moderatore del forum JoomlaFAP di joomla.it alla comunità di Joomla che con la partecipazione sul forum consente il test continuo, il mantenimento e lo sviluppo di queste importanti creazioni