Seite 1 von 1
User für NachrichtenEMPFANG sperren
Verfasst: 20.05.2003 18:21
von TheRisingHope
Hallo zusammen,
eine Frage an die schlauen Supporter und Allwissenden <g>:
Einem Mitglied zu verbieten, Nachrichten zu versenden, ist möglich.
Doch trotzdem ist es dann noch möglich, diesem Mitglied Nachrichten zu schicken.
Wie kann ich es hinbekommen, dass ein User XY KEINE Nachrichten mehr BEKOMMEN kann UND der Versender das auch gleich sieht!
Danke!
Verfasst: 20.05.2003 19:31
von Mister_X
privmsg.php
suche nach
Code: Alles auswählen
$sql = "SELECT user_id, user_notify_pm, user_email, user_lang, user_active
und füge nach "user_active" noch folgendes ein:
suche nach
und füge
davor ein:
Code: Alles auswählen
if ($to_userdata['user_allow_pm']=='0')
{
message_die(GENERAL_MESSAGE, 'nix da');
}
Verfasst: 21.10.2004 09:50
von theonlyrobi
Hallo,
wie schwierig ist es denn, die Meldung dass der User keine Nachrichten emprfangen darf, schon dann auszugeben wenn eigentlich die Eingabemaske kommt für den Nchrichtentext? Denn es ist uU schon ein wenig frustrierend für nen User, wenn er einen langen Text verfasst und dann erst beim losschicken merkt dass er ihn nicht senden kann.
Robert
Verfasst: 21.10.2004 18:21
von theonlyrobi
Hallo,
kann ich das denn folgendermaßen lösen oder gibts da irgend welche Probleme die ich nicht sehe? Dieses If-Statemant wüde ich einfach an den Anfang der privmsg.php setzen. Hier würde dann halt der User mit der ID 129 gesperrt:
Code: Alles auswählen
if ($user_id == 129)
{
message_die(GENERAL_MESSAGE, 'Nachrichten gehen bei diesem User nicht');
}
Robert
edit: hhhm das klappt schon mal nicht, da wird es für alle User gesperrt ...
Verfasst: 21.10.2004 20:30
von Christian_W
Erst wenn die Nachricht abgesendet wird steht endgültig fest an wen sie geschickt werden soll. Daher kann auch erst dann das versenden verhindert werden.
Wenn Du die ID überprüfen willst die beim Klick auf den PN-Button übergeben wird kannst Du das so machen:
Code: Alles auswählen
----- finde -----
$template->assign_block_vars('switch_signature_checkbox', array());
}
if ( $mode == 'post' )
{
----- füge danach ein -----
if ( isset ($HTTP_GET_VARS[POST_USERS_URL]))
{
if ($HTTP_GET_VARS[POST_USERS_URL] == 3) // hier die User-ID
{
message_die(GENERAL_MESSAGE, 'Nachrichten gehen bei diesem User nicht');
}
}
Gruß Christian
Verfasst: 21.10.2004 21:27
von theonlyrobi
Super, danke! Jetzt funktioniert es!
Verfasst: 03.02.2005 09:46
von Brakus
merci auch von mir f.d. Hilfe

Re: User für NachrichtenEMPFANG sperren
Verfasst: 21.09.2009 22:43
von regie 510
Hallo,
ich grabe diesen uralten Thread mal aus der Versenkung. Mit dem letzten obengenannten Snippet klappt es sehr gut, wenn ein User keine PN empfangen möchte. Macht man es so:
Code: Alles auswählen
if (( isset ($HTTP_GET_VARS[POST_USERS_URL])) && ($userdata['user_level'] != ADMIN) && ($userdata['user_level'] != MOD))
{
if ($HTTP_GET_VARS[POST_USERS_URL] == 31) // hier die User-ID
{
message_die(GENERAL_MESSAGE, 'Private Nachrichten sind bei diesem User nicht möglich.');
}
}
können Admins und Moderatoren diesem User trotzdem beim Anklicken des PN-Buttons Nachrichten schicken.
Weiß jemand wie man es hinbekommt, daß der betreffende User auch unter seinem Usernamen keine PN empfangen kann, wenn man ihn direkt aus dem PN-Posteingang anschreibt? Dann muß man zwar erst die Nachricht schreiben, aber nach dem Absenden kommt die Info-Meldung: "Private Nachrichten sind bei diesem User nicht möglich".
Danke im voraus.