Personal tools

Luca Fabbri

May 07, 2013

Analisi (e modifica) di come Plone genera link ai File - seconda parte

La rete è fatta di URL: meglio se leggibili!

Analisi (e modifica) di come Plone genera link ai File - seconda parte

Continua il viaggio e l'analisi dei prodotti per rendere Plone compatibile con software di statistiche

Nella prima parte dell'articolo abbiamo risolto solo una parte del problema per rendere gli URL di Plone più "parlanti".

Vediamo ora come affrontare i problemi restanti.

Fase 2: come trattare il pregresso

Infatti è solo ora che le cose si fanno interessanti...

Ci siamo trovati di fronte a un grosso problema: come "bonificare" la situazione creatasi negli anni precedenti alle modifiche sopra descritte?

Sarebbe stato possibile scrivere una procedura automatica che sistemasse automaticamente tutti i link generati tramite TinyMCE dalla forma canonica alla forma di download modificata?
La risposta per noi è stata "forse... ma meglio di no". Si parlava di centinaia (migliaia) di link, per decine di siti Plone.

L'eventualità di eseguire qualcosa senza un intervento umano era a dir poco terrificante, col rischio di trovare contenuti rovinati dall'operazione dopo mesi.
Molto meglio aiutare l'utente a sistemare il problema, cercando per lui i potenziali link da sistemare ma chiedendo conferma dell'operazione: un lavoro di certo più lungo ma che dà la sicurezza del risultato.

read more

May 03, 2013

Analisi (e modifica) di come Plone genera link ai File: una storia vera (parte 1)

La rete è fatta di URL: meglio se leggibili!

Analisi (e modifica) di come Plone genera link ai File: una storia vera (parte 1)

L'esigenza: rendere i link ai file generati in Plone compatibili con software di statistiche e come una serie di prodotti riutilizzabili abbiamo risolto il problema

C'era una volta il File in Plone

Questa Storia parte da un Cliente non molto contento del modo in cui Plone gestisce i file.
Nel caso non lo sappiate, c'è una certa confusione a riguardo.

Se nel vostro sito Plone vi collegate all'indirizzo diretto a un file, nella forma...

http://vostro-host.com/percorso/al/file.pdf

...il file in questione viene "aperto direttamente": gli header inviati da Plone scatenano l'apertura del file "inline", quindi sfruttando eventuali plugin del browser, se presenti.
Questo tipo di comportamento ha problemi di usabilità: utenti che non capiscono di essere ancora "dentro al browser" potrebbero chiudere il browser pensando che si tratti di un programma esterno. Se l'utente poi vuole scaricare il file dal plugin, deve trovarne la funzione all'interno dello stesso.

Eppure se arrivate allo stesso file dall'interfaccia Plone (dal navigatore del sito, da una delle viste, ...) vi troverete a un URL diverso:

http://vostro-host.com/percorso/al/file.pdf/view

Questo è l'indirizzo della vista del contenuto file (file_view) da cui potete vedere alcune informazioni sul file e da dove viene mostrato il link per scaricarlo, che assume invece questa forma:

http://vostro-host.com/percorso/al/file.pdf/at_download/file

read more

Mar 12, 2013

Quando la sicurezza in Plone è importante: reindexObjectSecurity

Plone e la sicurezza via catalogo

Quando la sicurezza in Plone è importante: reindexObjectSecurity

Quando gli indici introdotti da prodotti aggiuntivi hanno a che fare con la sicurezza del sito, è meglio prendere alcune precauzioni per evitare problemi

Per chiunque sviluppi con Plone, diventa presto chiara l'importanza del catalogo e, contemporaneamente, la necessità di mantenere il catalogo del sito aggiornato.

L'API principale a cui si fa riferimento per aggiornare lo stato di un contenuto nel catalogo Plone è la chiamata a reindexObject:

>>> context.setTitle('Nuovo titolo')
>>> context.reindexObject()
>>> context.title()
'Nuovo titolo'

Fin qui, nulla di nuovo.

read more

Feb 08, 2013

Come gestire e distribuire i vostri prodotti Plone?

Gestire il proprio codice in... relax!

Come gestire e distribuire i vostri prodotti Plone?

Un'esplorazione di tutti i (bizzarri) metodi con cui ho visto gestire il codice Plone (ma non solo), alla ricerca di una soluzione per ogni problema

Come gestire e distribuire i vostri prodotti Plone?

Sarà perché nella mia esperienza ho affrontato vari corsi di formazione per sviluppatori Plone, sarà perché non tutto il codice è sempre pronto per essere rilasciato, una cosa è certa: il rapporto tra il neofita e il codice da lui sviluppato è piuttosto combattuto.

Partiamo con una carrellata di quello che potete fare (ma in gran parte non dovete) fino ad arrivare alla soluzione dei casi più delicati.

read more

Dec 06, 2012

Breve analisi della ricerca di Plone: SearchableText

I Predatori del Parametro Perduto

Breve analisi della ricerca di Plone: SearchableText

Un semplice parametro Plone: SearchableText. Eppure il suo uso scatena vari comportamenti e ci permetterà di analizzare alcune funzionalità nascoste del nostro CMS

In questo articolo mi concedo una semplice analisi del parametro SearchableText, che può far parte di una qualunque query string delle chiamate al CMS Plone e che ha funzioni diverse in base alla pagina richiamata.

Questo parametro può anche impattare sull'efficienza dello strato di cache del vostro sito (Varnish) e ci apre la strada a qualche interessante analisi dei JavaScript di Plone 4.

read more