Sono riuscito a darci una rapida occhiata, quindi questo è quello che posso dirti:

Riga 48-86: sì, in pratica fa quello che hai detto tu, però crea un Mime con tali dati, decodificando prima il file, e salva il tutto in cache per un anno!

Riga 89-130: più o meno quello che dici tu, però fa anche un controllo di sicurezza sull’input e sull’estensione del file, per prevenire eventuali attacchi informatici (una buona cosa).

Riga 134-181: fa una passaggio strano, ma, come fa notare lui stesso, che permette di diminuire la grandezza totale del codice e di inserire tutto in unico file (il nostro “index”, appunto). In pratica, esegue l’equivalente di un “include” php (anche html) di JQuery, Thickbox (http://jquery.com/demo/thickbox/ ), il suo file css e due player (uno per le immagini, l’altro penso per i video). Un trucco simpatico, mi sa che lo riutilizzerò.

Riga 271-368: function php_multisort: permette di ordinare un array multidimensionale, cioè il risultato del suo database Sql (http://us.php.net/manual/en/function...sort.php#83117 ). function bytes_to_string: semplicemente prende le dimensioni di un file, espresse in bytes, e restituisce una stringa rappresentante lo stesso valore, ma leggibile (es. 1024 bytes diventano 1 kb). function time_ago: restituisce il tempo passato da adesso (per l’esecuzione del programma) e il “timestamp” inserito nella funzione. function isDL: permette di non concedere il download di file troppo grandi.

Riga 527-584: qui mette il codice per associare ad ogni richiesta di visualizzazione (cioè quando clicchi sul file nella finestra principale del programma) il giusto “player” (quelli che ha decodificato e allegato prima). Il risultato è che se hai un file video cercherà di aprirtelo con il lettore video e così via.

Ah, ti ringrazio molto per avermi fatto conoscere questo bel programmino, che mi ha permesso di conoscere alcune soluzioni decisamente molto interessanti.

Mi sembra davvero un bel codice, scritto molto bene