We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 26657
    • 13 Posts
    Hallo, ich erstelle gerade ein Plugin das die Dokumentstruktur incl. title, content u. TVs in ein XML-File schreibt. Als System Events kommen "OnDocFormSave" und "OnDocFormDelete" zum Einsatz. Wird ein Dokument mit "Delete document" gelöscht, verschwindet es also auch aus dem XML-File.

    Problem: Für die Aktion "Undelete document" gibt es keinen System Event - im MODx Dokumentenbaum erscheint das Dokument als veröffentlicht, im XML-File ist es aber nichtmehr enthalten.

    Eine mögliche Lösung ist natürlich das Dokument zu öffnen und zu sichern, dann greift "OnDocFormSave" wieder. Das ist leider eine potentielle Fehlerquelle und wenig elegant.

    Ideen?
    Danke und Gruss
      • 17883
      • 1,039 Posts
      Nun, normales Vorgehen: Im Bugtracker einen Feature Request veröffentlichen (zusätzlich noch im Forum unter Wishlist). Bis dahin den Core selbst erweitern. Die Events sind ja recht einfach eingebunden in den Processors. An der betreffenden Stelle (undelete) Deine Geschichte einbauen bis der Event eingeführt wird oder eben gleich alles fertig machen (also richtig als Event einbauen und den Event im Manager selbst anlegen, danach den fertigen Code posten). Wenn Du das auch gut erklärst, warum das Sinn macht (und das macht es!), kann das bis zur 0.97 drin sein...

      Andere Vorgehensweise fällt mir nicht ein.
        • 26657
        • 13 Posts
        Genial, Vielen Dank für das Feedback, funktioniert einwandfrei!

        Ich habe in der Datenbank unter "modx_system_eventnames" eine neue Zeile (OnDocFormUndelete) eingefügt und in undelete_content.processor.php an der entsprechenden Stelle folgenden code:
        $modx->invokeEvent("OnDocFormUndelete",
        							array(
        								"id"=>$id,
        								"children"=>$children
        							));

        den array hab ich so von OnDocFormDelete übernommen.

        Ist das wirklich so einfach oder hab ich da noch was übersehen?
          • 17883
          • 1,039 Posts
          Habe es selbst noch nie gemacht. Aber MODx ist eben einfach. Und wenn es funktioniert, dann soll es wohl so sein. Vive la modx ;-)

          Kannst ja in die Wishlist sowie in den Bugtracker posten. Thx.