[TYPO3-german] tcemain hook delete "abfangen"

Henning Heyne heyne at redroot.de
Thu Jun 12 16:11:07 CEST 2008


So, ich habe es selber gefunden. Falls jemand selber danach suchen sollte...

processCmdmap_postProcess ist der Hook der am besten geeignet ist um nach
einem Delete etwas zu machen.

Ich habe in der ext_localconf.php folgendes eingetragen:

$GLOBALS
['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass'][]
=
'EXT:plancom_news/class.tx_plancomnews_tcemainprocdm.php:&tx_plancomnews_tcemainprocdm';

und in der Klasse class.tx_plancomnews_tcemainprocdm.php
class tx_plancomnews_tcemainprocdm {

    function processCmdmap_postProcess ($command,$table,$id,$value,$this) {
        if ($command == 'delete' && $table == 'tx_plancomnews_news') {
            t3lib_div::debug($command);
            t3lib_div::debug($id);
            //t3lib_div::debug($fieldArray);
        }
        //die();
    }

So kann ich darauf reagieren wenn jemand in meiner Extension einen Datensatz
löscht.

Viel Spaß bei Kroation gegen Deutschland..

Henning

Am 12. Juni 2008 13:04 schrieb Henning Heyne <heyne at redroot.de>:

> Hallo Leute,
>
> ich habe eine Frage bezüglich Hooks im Zusammenhang mit dem Löschen von
> Datensätzen. Den Status update und new kann ich abfangen aber
> ich komme irgendwie nicht an den Status delete dran. Hintergrund: Wenn
> Benutzer im Backend Daten ändern soll eine Datei erstellt werden aus den
> eingegebenen Daten. Wenn der Benutzer den Datensatz löscht, soll dieser
> Datensatz aus der Datei entfernt werden.
>
> Ich habe folgende Konstrukte probiert:
>
> function processDatamap_postProcessFieldArray
> ($status,$table,$id,&$fieldArray,&$reference) {
>         if ($status == 'update' && $table == 'tx_plancomnews_news') {
>             t3lib_div::debug($status);
>             t3lib_div::debug($id);
>             //t3lib_div::debug($fieldArray);
>         }
>     }
>
>     function processDatamap_afterDatabaseOperations
> ($status,$table,$id,&$fieldArray,&$reference) {
>         if ($status == 'new' && $table == 'tx_plancomnews_news') {
>             t3lib_div::debug($status);
>             t3lib_div::debug($id);
>         }
>         t3lib_div::debug($status);
>         t3lib_div::writeFile("/tmp/dump",$status);
>     }
>
>     function processCmdmap_postProcess
> ($command,$table,$id,$value,$reference) {
>         if ($status == 'delete' && $table == 'tx_plancomnews_news') {
>             t3lib_div::debug($command);
>             t3lib_div::debug($id);
>         }
>
>     }
>
> Welcher Hook und welcher Status kann genutzt werden um das Ereignis
> "abzufangen" wenn ein Benutzer im Backend
> einen Datensatz löscht?
>
> Vielen Dank
>
> Henning Heyne
>
>
>


More information about the TYPO3-german mailing list