[TYPO3-UG Italy] Eseguire codice PHP in un (proprio) plugin in "edit mode"

Mauro Lorenzutti mauro.lorenzutti at webformat.com
Mon Apr 3 09:31:03 CEST 2006


Ciao Francesco,

> Ho realizzato un plugin con il kickstater, funzia benissimo ma ho la
> necessita' che ogni qual volta un utente modifica o crea un nuovo record
> realizzato con tale plugin, all'atto del salvatagggio (del record..)
> venga realizzato un mio script in PHP (il plugin gestisce una lista di
> pubblicazioni universitarie e ad ogni modifica di un record di questa
> lista, deve lanciare un task (in PHP) e sincronizzare il tutto con altre
> universita' per mantenere coerente questa lista di pubblicazioni..).

> So che il file class...php che si trova nella cartella "pi1" del plugin
> e' relativo al FE (ovvero alla generazione del contenuto Web che viene
> visitato), ma a me serve soltanto in fase di editazione dei dati 
> (sicronizzare la lista ad ogni click della pagina mi farebbe sedere il
> server e la rete :-( ).

> Non so quale altro file (PHP?) toccare nel plugin (senza realizzare 
> disastri in Typo3)...

Per fare quello che chiedi non è sufficiente configurare il plugin in
quanto in TYPO3 non è previsto un funzionamento come quello a te
necessario. In altre parole non è possibile richiamare una propria
funzione al momento dell'aggiornamento/inserimento/cancellazione di nu
record attraverso le form di TYPO3.

Dato che anch'io ho avuto questa esigneza ho fatto una modifica al
file typo3/t3lib/class.t3lib_tcemain.php per richiamare una funzione
nei seguenti casi:

- Prima dell'aggiornamento di un record (input dalle funzione: i dati
della form compilata - output della funzione: i dati da inserire nel
DB)
- Dopo l'aggiornamento del record (input della funzione: i dati
inseriti nel DB - output della funzione: vero/falso)

- Prima dell'inserimento di un nuovo record (input dalle funzione: i dati
della form compilata - output della funzione: i dati da inserire nel
DB)
- Dopo l'inserimento del nuovo record (input della funzione: i dati
inseriti nel DB e l'uid generato - output della funzione: vero/falso)

- Prima della cancellazione di un record (input dalle funzione: l'uid
del record da cancellare - output: vero/falso)
- Dopo la cancellazione del record (input della funzione: l'uid del
record cancellato - output della funzione: vero/falso)

Le funzioni da richiamare in ognuno di questi sei eventi sono
configurabili nel file ext_tables.php dell'estensione.

Questa modifica che ho fatto ha richiesto la modifica dei sorgenti di
TYPO3, con tutti i problemi del caso (problemi riguardanti
l'aggiornamento a versioni superiori). Inoltre l'ho testata solamente
sulla versione 3.8.1 e non ho ancora apportato le modifiche alla 4.0.

Se ti interessa ti posso mandare il codice (magari anche solo per
farti un'idea).

Saluti,
 Mauro Lorenzutti


e-mail:  mauro.lorenzutti at webformat.com

---------------------------------------------------------
WEBFORMAT srl | Corte Europa, 12 | I-33097 SPILIMBERGO PN
     Tel +39-0427-926.389  --  Fax +39-0427-927.653
       info at webformat.com  --  www.webformat.com
---------------------------------------------------------




More information about the TYPO3-UG-italy mailing list