Twig Media: come ricavare i campi Media in Drupal

Se in un template Twig (Drupal 8 o superiore) vogliamo trovare i campi relativi al media basta seguire le semplici istruzioni sotto.

Ipotizziamo di esser in un template e che "node" restituisca il nodo attuale e che “fieldname” sia il nome (il machine name) del campo da analizzare.

Se il campo è multiplo bisognerà considerare l'elemento giusto dell'array che lo definisce. Qui prendiamo in considerazione solo il primo elemento e cioè l'elemento 0 del suo array.

(altro…)

Lazy loading plugin: img con wordpress utilizzando un plugin apposito

Come già scritto nella FAQ precedente su WordPress e su "lazy loading" per far in modo che in WordPress le immagini si carichino in maniera asincrona in base all'attuale viewport del browser non è possibile farlo tramite l'editor integrato ma bisogna utilizzare appositi temi o plugin.

Ora vediamo lo stesso funzionamento della FAQ precedente utilizzando un plugin (un lazy loading plugin) invece che scrivere una funzione direttamente nel tema.

(altro…)

Lazy loading img con wordpress utilizzando il tema

Fino ad oggi con WordPress, senza aggiungere plugin, non è possibile avere un caricamento delle immagini di tipo "lazy" (lazy loading), ovvero in maniera asincrona cioè solo se l'immagine rientra o sta per rientrare nella viewport del browser.

Solo così i tempi di caricamento della pagina si riducono di molto e quindi è importante sia conoscere che abilitare il caricamento "lazy".

Perché il browser carichi le immagini in modalità "lazy" bisogna utilizzare il tag html onloading="lazy" nell'elemento "img".

(altro…)

Come convertire una netmask IPV4 in CIDR

Per passare da una netmask IPV4 a l'equivalente CIDR potrebbe venir in mente di fare la cosa più semplice ovvero utilizzare un blocco case o degli if annidati per ottenere il CIDR equivalente tanto i netmask o CIDR disponibili sono solo 32 e cioè

(altro…)

Convertire da Bash un numero decimale in esadecimale

Come per la faq con la conversione in binario anche in questa facciamo utilizzo delle fantastiche estensioni bash sulle parentisi graffe per convertire in esadecimale.

Quindi, considerando sempre la faq bash sul binario partiamo inizialmente con il convertire un numero decimale tra 0 e 255 che corrisponde ad una cifra esadecimale tra 0 ed FF:

hex=({{0..9},{a..f}}{{0..9},{a..f}})
echo ${hex[*]}
(altro…)

Convertire da Bash un numero decimale in binario

Supponiamo di star lavorando su uno script bash e che per qualche esigenza, nemmeno troppo difficile dalla realtà, sia indispensabile dover convertire un numero o una variabile decimale in numero binario.

Ci sono naturalmente diverse soluzioni ma quella che vi propongo non fa utilizzo di programmi esterni ma è bash a tutti gli effetti.

Per prima cosa dobbiamo sapere il valore massimo del numero binario da ottenere in Bash ovvero in quanti bit potrà essere compreso.

(altro…)

Generazione password casuale con Ruby

Supponiamo di voler generare una password casuale, robusta ed abbastanza sicura utilizzando Ruby allora creiamo un funzione "random_password" che restituisce una password con 12 caratteri oppure se ne vogliamo una con più o meno dobbiamo passare questo valore come parametro.

Innanzi tutto definiamo il range dei caratteri ammissibili per la password

$CHARS = ('0'..'9').to_a + ('A'..'Z').to_a + ('a'..'z').to_a + ('#'..'&').to_a + (':'..'?').to_a
(altro…)

Trust certificate authority per firma digitale

Se si tenta di verificare la firma di un file p7m senza il certificato dell'ente certificatore (la CA), la verifica fallisce ("unable to load certificate") perché non abbiamo i certificati di fiducia della CA (i cosiddetti Trust).
Tali Certificate Authority sono state definite per legge italiana e sono registrati sul CNIPA, che dal dicembre 2009 è diventato DigitPA, come portafoglio di certificati XML e li ho trovati sullo stesso sito all'indirizzo https://applicazioni.cnipa.gov.it/TSL/_IT_TSL_signed.xml.
Per far in modo che openssl li gestisca bisogna metterli nel suo formato quindi:

(altro…)

Verifica della firma di un documento p7m

Consideriamo il caso in cui il documento firmato sia un pdf (documento.pdf.p7m).

Per verificare la firma ed estrarre il file contenuto utilizziamo il comando openssl con il parametro smime per la verifica della firma (-verify)

openssl smime -in documento.pdf.p7m -inform DER -verify -CAfile CA.pem -out documento.pdf
(altro…)

Estrazione del certificato di un file firmato digitalmente (p7m)

Consideriamo il caso in cui il documento firmato sia un pdf (documento.pdf.p7m).

Per estrarre il certificato utilizzato per firmare il p7m utilizziamo il comando openssl con il parametro pkcs

openssl pkcs7 -inform DER -in documento.pdf.p7m -print_certs -out cert.pem
(altro…)