redaxo / redaxo4

REDAXO 4

Home Page:https://redaxo.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EP MEDIA_DELETED kriegt unvollständige Parameter /weitere Parameter gewünscht

christophboecker opened this issue · comments

Hallo zusamen, ich wollte über den EP MEDIA_DELETED nach dem Löschen der Media-Datei nachgelagerte Aktionen in meinem Addon laufen lassen. Zwei Probleme:

  1. Bug: An die Extension-Point-Funktion wird keine Information über die gelöschte Datei übergeben.

laut Source-Code ist der Aufruf in class.oomedia.inc.php bei Zeile 775 dieser:
rex_register_extension_point('MEDIA_DELETED', '',
array(
'filename' => $filename
)
);
Die Kontrollausgabe für $params liefert:
(
[filename] =>
[extension_point] => MEDIA_DELETED
[subject] =>
)

Aus was für Gründen auch immer ist $filename leer. Kurz vorher wird
require_once $REX['INCLUDE_PATH'] . '/functions/function_rex_generate.inc.php';
aufgerufen; möglicherweise überschreibt sich da was. Mit $this->getFileName()) klappt es:
rex_register_extension_point('MEDIA_DELETED', '',
array(
'filename' => $this->getFileName()
)
);
Die Kontrollausgabe für $params liefert jetzt:
(
[filename] => img-20130606-00205.jpg
[extension_point] => MEDIA_DELETED
[subject] =>
)

  1. Ich schlage vor, an den EP nicht nur den Dateinamen zu übergeben, sondern auch die Satznummer der Medienpool-Zeile (file_id). Da ja der Satz gelöscht ist, kann man die Nummer nicht mehr in MEDIA_DELETED über den Dateinamen abrufen. In meinem konkreten Fall mache ich Cross-Referenzen halt über die Satznummer - und die ist jetzt weg. Als Workaround kann ich (um Anpassungen im Core zu vermeiden) die file_id per Session von OOMEDIA_IS_IN_USE an MEDIA_DELETED transferieren , aber toll ist das nicht :-)
    Daher mein Vorschlag:
        rex_register_extension_point('MEDIA_DELETED', '',
            array(
                'filename' => $this->getFileName(),
                'file_id' => $this->getId()
            )
        );

Redaxo 4.6.1

Danke und Gruß
Christoph

Danke, Thomas

das ging ja fix.

Viele Grüße
Christoph

Am 04.12.2014 um 09:18 schrieb Thomas Blum notifications@github.com:

Closed #375 via b668efb.


Reply to this email directly or view it on GitHub.