Seite 1 von 2

Hilfe bei veränderter MOD

Verfasst: 13.06.2009 08:28
von Tim
Hallo,

ich habe hier auf phpBB.de eine Jobausschreibung gemacht, gesucht wurde jemand, der mir eine MOD bastelt, mit der User sich selbst deaktivieren können. Vorher hatte ich die MOD Unsubcribe User von Tobi Schäfer, damit konnten sich User selbt löschen, allerdings waren dann alle Daten weg.

Der User TheRenegate hat sich dann gemeldet und den Job bekommen, er hat die MOD Unsubcribe User ein wenig umgeschrieben damit sie die von mir gewünschte Funktion erfüllt. Leider habe ich, nachdem er das Geld kassiert hat und ich ein Problem mit der MOD hatte, nichts mehr von ihm gehört, zahllose PNs blieben unbeantwortet und die letzten PNs wurden seit über einen Monat (trotz neuerlichem Logins) nicht gelesen.

Deswegen habe ich, so gut ich konnte, aus dem Nachrichtenverlauf mit den Anweisungen von ihm ein Installationspacket erstellt, die Install ist dabei leider nur eine txt-Datei.

Das Installationspacket (also die Dateien und die install.txt) könnt ihr hier downloaden: http://www.fo-to-run.de/User-selbst-deaktivieren.rar

Mein Problem mit der MOD ist:
Bei der MOD Unsubcribe User wurden die Aktionen protokolliert und man konnte im ACP nachsehen, wer sich gelöscht hat.
Bei der umgebauten MOD steht unter Wartung > Benutzerprotokoll lediglich Username: Anonymous Vorgang: {Anonymous}

Ich kann also nicht nachsehen, wer sein Profil deaktiviert hat.
Der letzte Lösungsversuch, der von TheRenegate noch kam, war dieser:
In der Datei: includes/ucp/ucp_unsubscribe.php

Suche

add_log('user', 'LOG_USER_DELETED', $user->data['username']);

Änder in

add_log('user', Deaktiviert durch User', $user->data['username']);
Diese Änderung brachte aber leider keinen Erfolg.
Es steht weiterhin, auch bei neuen Usern, die ihren Account deaktivieren nur dieses Anonymus im Benutzerprotokoll.

Ich hoffe, dass sich jemand von euch die Zeit nimmt und mir hilft.
Vielen Dank, liebe Grüße, Tim

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 08:26
von Dr.Death
Hallo,

die Funktion "add_log();" erwartet beim Modus "user" einer "user_id", keinen "username".

FINDE:

Code: Alles auswählen

add_log('user', 'LOG_USER_DELETED', $user->data['username']);
ERSETZE MIT:

Code: Alles auswählen

add_log('user', 'LOG_USER_DELETED', $user->data['user_id']);

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 10:03
von Tim
Hallo Dr. Death,

wenn ich das so ändere wie von dir geschrieben dann steht im Benutzerprotokoll Username: Anonymous und Vorgang: {1}

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 10:28
von Helmut
Hallo Tim,

ich vermute mal, dass das Log erst nach der Löschung des Users erstellt wird und dann ist auch klar warum da nur Anonymous drinnen steht. Der Eintrag für den Log muss daher vor dem Löschen des Users passieren damit auch noch die user_id vorhanden ist, welche in das Log geschrieben werden soll. Also prüfe mal, ob die Funktion "add_log();" vor der Löschanweisung steht oder erst danach.

Gruß Helmut

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 11:23
von Tim
Hallo Helmut,

das weiß ich leider nicht genau, ich kenne mich damit nicht so gut aus.
Habe hier mal den Quelltext von der ucp_unsubcribe.php: http://www.phpbb.de/support/pastebin.php?mode=view&s=91

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 13:46
von Dr.Death
Alles klar,

die Session wird vor dem Loggen gekillt.

Tausche einfach dieses:

Code: Alles auswählen

                        $user->session_kill();
                        add_log('user', 'LOG_USER_DELETED', $user->data['user_id']);
gegen dieses:

Code: Alles auswählen

							add_log('user', 'LOG_USER_DELETED', $user->data['user_id']);
							$user->session_kill();

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 16:05
von Tim
Hallo Dr.Death,

die Änderung habe ich gemacht, im Protokoll steht nun auch der Username, beim Vorgang steht jetzt {3739}
Wo kann ich das noch ändern? Vielen Dank für eure Hilfe.

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 16:41
von Dr.Death
Anscheinend wird die Übersetzung von 'LOG_USER_DELETED' nicht gefunden.

Glaskugelbeschwörung:

In der Datei:

language / de / mods / unsubcribe.php

Sollte so etwas vorhanden sein:

Code: Alles auswählen

	'LOG_USER_DELETED' 			=> 'User hat sich selbst deaktiviert',
Bitte auch das hier dazu lesen: KB:166

Re: Hilfe bei veränderter MOD

Verfasst: 15.06.2009 18:19
von Tim
Genau das ist vorhanden in der Datei:

Code: Alles auswählen

	'LOG_USER_DELETED'		=> 'Der Benutzer hat seinen Account deaktiviert',

Re: Hilfe bei veränderter MOD

Verfasst: 16.06.2009 10:50
von Dr.Death
Füge die Sprachvariablen mal in die Datei: language\de\acp\common.php ein.

ÖFFNE:
language\de\acp\common.php

SUCHE:

Code: Alles auswählen

	'LOG_WORD_EDIT'			=> '<strong>Zensiertes Wort geändert</strong><br />» %s',
DANACH EINFÜGEN:

Code: Alles auswählen

	'LOG_USER_DELETED'      => 'Der Benutzer hat seinen Account deaktiviert',
KB:166