Add Relationship Event

Deutschsprachiges Forum für Diskussionen und Fragen zu MantisBT

Moderators: Developer, Contributor

Post Reply
bluescreenterror
Posts: 20
Joined: 16 Jan 2020, 11:19

Add Relationship Event

Post by bluescreenterror »

Moin,

ich schreibe gerade an einem Plugin, welches in 3 Spalten in der Filter Übersicht darstellt, wieviele Abhängigkeiten/Beziehungen ein Ticket hat.
Image

Um das ganze mittels der Methode sortquery sortierbar zu machen, habe ich eine Tabelle angelegt in der die aktuellen "Abhängigkeitscounts" gespeichert werden, die Tabelle wird beim Installieren des PlugIns gefüllt. Nun würde ich gerne den Eintrag für ein Ticket aktualisieren, wenn eine neue Abhängigkeit hinzugefügt wird. Leider habe ich noch kein Event gefunden was wirklich passt.

EVENT_UPDATE_BUG_DATA wird beim hinzufügen von Abhängigkeiten/Beziehungen nicht ausgelöst
EVENT_VIEW_BUG_EXTRA wird zwar ausgelöst, aber auch in verschiedenen anderen Szenarien.Zu dem fehlt mir hier die Angabe welches weitere Ticket betroffen ist (Source_bug_id/Destination_bug_id)

Gibt es ein passendes Event hierfür ? Muss man sich eventuell eine Krücke über Javascript bauen ? Kann ich mittels Plugin so ein Event hinzufügen ?

Ich wäre für jede Hilfe/Tipps dankbar.

Viele Grüße,

Bluescreenterror


PS. Unser Support benötigt diese Funktion damit er die Ticket besser priorisieren kann.
Mantis: 2.23.0
XAMPP: v.3.2.4
PHP Version: 7.1.33
Windows Server 2016
bluescreenterror
Posts: 20
Joined: 16 Jan 2020, 11:19

Re: Add Relationship Event

Post by bluescreenterror »

Ok in einem Post in der Rubrik PlugIns habe ich den entsprechenden Hinweis gefunden...
Über das Plugin direkt geht es nicht..man muss schon am Core ein wenig Manipulieren, leider sind die Änderungen dann nach jedem Update weg :(.

In events_inc.php kann ein Eintrag hinzugefügt werden, das Event lässt sich dann mit Hilfe von event_signal('EventName', params) aufrufen.
Mantis: 2.23.0
XAMPP: v.3.2.4
PHP Version: 7.1.33
Windows Server 2016
cas
Posts: 1581
Joined: 11 Mar 2006, 16:08
Contact:

Re: Add Relationship Event

Post by cas »

das geht auch in den Plugin.
Man muss nur hinzu fügen:
function init() {
event_declare('EVENT_MYVIEW');
bluescreenterror
Posts: 20
Joined: 16 Jan 2020, 11:19

Re: Add Relationship Event

Post by bluescreenterror »

Hallo CAS,

vielen Dank für deinen Hinweis, der mich auf den richtigen Pfad gebracht hat. Leider kann man die events nicht in der init() Methode deklarieren, da init erst nach den Hooks aufgerufen wird und es dann knallt. Hier ein Bild von der Funktion:
Image

Hier durch kam ich aber auf die Methode events(), die ein Array zurückgibt in welchen sich die jeweiligen Events befinden.

Code: Select all

function events(){
  return array(
  'EVENT_RELATIONSHIP_ADDED' => EVENT_TYPE_EXECUTE,
  'EVENT_RELATIONSHIP_DELETE' => EVENT_TYPE_EXECUTE,
  );
}
Um bei Anlegen einer Beziehung das Event zu feuern komme ich aber leider immer noch nicht an Manipulation am Core vorbei.


AH ich hätte statt dem scrennshot auch einfach den Code, hierein kopieren können :roll: :roll: :roll:
Die aktuelle Version von dem Plugin gibt es hier:https://github.com/Selonka/RelationshipCol
Mantis: 2.23.0
XAMPP: v.3.2.4
PHP Version: 7.1.33
Windows Server 2016
cas
Posts: 1581
Joined: 11 Mar 2006, 16:08
Contact:

Re: Add Relationship Event

Post by cas »

Im Vergangenheit hat das schon functioniert bei einer meine Plugins. Gut zu wissen wie ich das sollte lösen wenn es nicht mehr geht :mrgreen:
Post Reply