Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
E-Mail bei externem Link im Beitrag
#1
Hallo zusammen,

ich würde gerne den MyBB-Code um eine Funktion erweitern oder ggf. ein Plugin erstellen. Dabei soll nach dem Absenden eines neuen Threads oder eines Beitrags die Nachricht nach externen Links durchsucht und wenn vorhanden, eine Mail an den Admin geschickt werden.

Bin ich da auf dem richtigen Weg, das in der class_parser.php (Funktion parse_message) unterzubringen?

Wenn ich das als Plugin ausführen wollte, müsste ich mich wohl in entsprechende Hooks einklinken. Ist es richtig, dass diese hier in Betracht kommen würden?
Zitat:./newreply.php
545 newreply_do_newreply_end
1210 newreply_end
./newthread.php
445 newthread_do_newthread_end
921 newthread_end

Was ist denn eigentlich z.B. der Unterschied zwischen dem Hook "newreply_do_newreply_end" und "newreply_end"?

Vielen Dank schon mal im Voraus für Eure Antworten. Smile
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#2
Ich verstehe deinen Wunsch nicht ganz. Wink
newreply_end wird am Ende der newreply.php ausgeführt, also vor dem Abschicken, bei der Vorschau etc.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#3
Die class_parser.php wird beim erstellen eines Beitrags glaube ich nicht unbedingt aufgerufen (niemand zwingt dich, dein Posting anschließend auch zu lesen). Dafür wird es dann jedes Mal aufgerufen wenn einer das Posting aufmacht. Der class_parser ist somit die falsche Stelle zum einklinken (wenn auch die richtige Stelle um herauszufinden, ob Links im Posting sind).

Dir bleibt also nichts anderes als dich direkt im Antwort-, und vollständigkeitshalber auch Edit-Prozess für nachträglich eingefügte Links, einzuklinken. Vielleicht hab ich dich aber auch falsch verstanden und du wolltest es sowieso richtig machen, da du ja die Reply Hooks erwähnst.

Zitat:Was ist denn eigentlich z.B. der Unterschied zwischen dem Hook "newreply_do_newreply_end" und "newreply_end"?

newreply_do_newreply_end wird aufgerufen, relativ direkt nachdem der Post in die Datenbank gesetzt wurde. Das ist wahrscheinlich der Hook den du willst denn dann ist der Beitrag geschrieben.

newreply_end wird am Ende der Antwortseite aufgerufen (die Seite die kommt wenn du auf antworten klickst). Da du da noch keine Mail schicken kannst / willst, ist das nicht das was du suchst.
Zitieren
#4
(01.12.2010, 20:10)StefanT schrieb: Ich verstehe deinen Wunsch nicht ganz. Wink
Kann passieren... Toungue

Wenn ein User einen Beitrag schreibt (entweder über "Antworten" oder "Neuer Thread") oder editiert (Danke für den Hinweis, frostschutz!) und in der Nachricht einen Link zu einer Webseite außerhalb unseres Forums enthalten ist, soll der Beitragslink per E-Mail an mich versendet werden. Idealerweise könnte die E-Mail auch noch den entsprechenden Link aus der Nachricht enthalten.

@frostschutz: hm, das soll natürlich nicht passieren, dass bei jedem Aufruf eines Beitrages eine Mail losgeschickt wird. Wink Das ist ein guter Punkt.

Demnach müsste ich mich eher an die newreply.php, newthread.php, editpost.php und xmlhttp.php halten und daraus die parse_message-Fkt. ausführen, oder?


Danke für Erklärungen zu den Hooks. Demnach wäre ich wohl mit den Hooks
  • newreply_do_newreply_end
  • newthread_do_newthread_end
  • editpost_do_editpost_end (funktioniert dieser Hook auch über die Inlinebearbeitung?)
gut beraten?



viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#5
Du kannst auch die Hooks im Datahandler verwenden, da kannst du auch leicht auf die Eingaben zugreifen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#6
Du sprichst vom post.php Datahandler? Wird der in den Fällen verwendet, die ich oben beschrieben habe oder kommt der auch bei der bloßen Ansicht eines Beitrages zur Anwendung?
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#7
Der kommt nur beim Erstellen und Bearbeiten von Beiträgen zum Einsatz. Die Verifikation läuft auch darüber, aber die Funktionen sind von einander getrennt.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#8
Dann werde ich mir das mal zu Gemüte führen. Wenn ich irgendwo hänge, dann melde ich mich ganz sicher wieder.... Wink
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#9
Sowas wäre echt Prakisch, so kann man jedenfalls das Impressum immer richtig halten!

Nur ich würde es als PM nehmen, so kriegt nen Moderator und Admin sofort die PM mit nen selbstgemachten Satz und den Link, den man dann kontrollieren kann ob da nichts schlimmes ist und evt. dagegen vorgehen
Zitieren
#10
Naja, mir ist eine E-Mail lieber, dann muss ich nicht online gehen. Aber prinzipiell ist eine PM statt einer E-Mail dann auch kein Problem.

Jetzt kommt ja bald der Weihnachtsurlaub und dann werde ich dafür hoffentlich Zeit haben.... Wink
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  E-Mail Nachricht bei neuem Beitrag /Thema dengmert 0 3.946 01.10.2007, 23:01
Letzter Beitrag: dengmert