Wie kann ich die E-Mail-Adresse eines Trac-Benutzers entfernen?

7

Wir haben einige Benutzer, die das Unternehmen verlassen haben, und wir haben ihre E-Mail-Adresse gesperrt, aber trac sendet weiterhin Benachrichtigungen an diese Adressen. Wie kann ich die E-Mail-Adresse aus ihrem Trac-Profil entfernen?

g.
quelle

Antworten:

7

Keine Plugins erforderlich, wenn Sie mit der Befehlszeile vertraut sind. TracAdmin ist dein Freund.

Listen Sie den Namen und die E-Mail-Adresse für die angegebenen Seiten (Benutzername) auf:

trac-admin /usr/local/share/trac/test session list

SID      Auth  Last Visit  Name            Email            
------------------------------------------------------------
bob      1     1970-01-01  Bob Smith       [email protected]

Wo /usr/local/share/trac/testist der Weg zu Ihrem Projekt?

Senden Sie jetzt einfach die leere Zeichenfolge, um die E-Mail-Adresse zu löschen:

trac-admin /usr/local/share/trac/test session set email bob ""

Überprüfen Sie, ob es funktioniert hat:

trac-admin /usr/local/share/trac/test session list

SID      Auth  Last Visit  Name            Email            
------------------------------------------------------------
bob      1     1970-01-01  Bob Smith                        

Müssen Sie es auf etwas anderes einstellen? Kein Problem:

trac-admin /usr/local/share/trac/test session set email bob "[email protected]"

trac-admin /usr/local/share/trac/test session list

SID      Auth  Last Visit  Name            Email            
------------------------------------------------------------
bob      1     1970-01-01  Bob Smith       [email protected] 
Matthew Orstad
quelle
3

Sie können in die Datenbank gehen und den Datensatz aktualisieren:

 DELETE FROM session_attribute WHERE name = 'email' AND value = '[email protected]';

Wenn Sie sqlite verwenden, ist dies etwa "sqlite3 trac.db", wobei sich trac.db irgendwo in Ihrem trac-Verzeichnis befindet.

Darüber hinaus gibt es in trac.ini Einstellungen für das automatische Versenden von Änderungen und Tickets per E-Mail.

always_notify_owner = true
always_notify_reporter = true
always_notify_updater = true

Wenn sich die Person noch als eine dieser drei Personen auf Tickets befindet, erhält sie weiterhin E-Mails, wenn der Trac-Benutzername der erste Teil ihrer E-Mail-Adresse ist und die Einstellung "smtp_default_domain" mit dem Domain-Teil übereinstimmt.

Gavin M. Roy
quelle
Ich sehe die trac.db, aber sqlite3 ist keine ausführbare Datei - ich habe nur eine sqlite3.dll. Wie führe ich die Abfrage aus?
g.
1
Laden Sie den Windows-Client unter sqlite.org/download.html herunter
Gavin M. Roy
2

Ein anderer Ansatz, den ich gefunden habe, ist die Verwendung des UserManagerPlugin . Das "User Session Management" bietet die Funktionalität, alte Benutzer aus dem System zu entfernen.

Nach der Installation des Plugins

  1. Wählen Sie Admin -> Benutzer -> Sitzungsverwaltung
  2. Aktivieren Sie die Kontrollkästchen der zu entfernenden Benutzer und klicken Sie auf "Ausgewählte löschen".
g.
quelle