PM uitschakelen ?? Is dat mogelijk ?

Hulp nodig bij een modificaties of op zoek naar een MOD? Bekijk ons archief. Support wordt helaas niet meer verleend.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
jongeren
Berichten: 5
Lid geworden op: 23 jun 2006, 21:19

PM uitschakelen ?? Is dat mogelijk ?

Bericht door jongeren » 23 jun 2006, 21:23

Is er een mogelijkheid of een MOD om bij een gebruiker de PM button (of de code er achter) uit te schakelen.

Het is namelijk zo dat 1 van de leden enorm veel PM berichten krijgt en van hem wordt verwacht dat hij ze beantwoord. Zodra de mensen door hebben dat zijn PM mogelijkheid er niet meer (mogelijk) is, wordt die verwachting ook niet meer gewekt.

Ik ben zeer benieuwd

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 23 jun 2006, 21:32

Hij kan wel beperkt worden dat hij geen pb's mag sturen, maar niet dat hij niet mag ontvangen. Heb je ook al gezocht op een mod, of?
... Maar ik modereer (nog) niet.

jongeren
Berichten: 5
Lid geworden op: 23 jun 2006, 21:19

Bericht door jongeren » 23 jun 2006, 22:32

Inderdaad daar heb ik al op gezocht, maar ik kon niets vinden tussen de MOD's. Maar je weet nooit..... Soms weet iemand wel weer een MOD of een andere oplossing, vandaar dit onderwerp.

Ik ben zeer benieuwd of iemand een oplossing heeft.

Gebruikersavatar
Derky
Berichten: 4466
Lid geworden op: 07 apr 2005, 16:24
Locatie: Nederland
Contacteer:

Bericht door Derky » 23 jun 2006, 22:47

Ik heb zelf iets aangepast zodat je de gebruiker Bot geen privé berichten kan sturen.

OPEN

Code: Selecteer alles

privmsg.php
FIND

Code: Selecteer alles

$to_username = phpbb_clean_username($HTTP_POST_VARS['username']);
AFTER, ADD

Code: Selecteer alles

			// No PMs to Bot MOD begin
			if (strtolower($to_username) == strtolower("GEBRUIKERSNAAM"))
			{
			$error = TRUE;
			$error_msg .= ( ( !empty($error_msg) ) ? '<br />' : '' ) . $lang['No_to_this_user'];
			}
			// No PMs to Bot MOD end
OPEN

Code: Selecteer alles

language/lang_dutch/lang_main.php
FIND

Code: Selecteer alles

$lang['No_to_user'] =
AFTER, ADD

Code: Selecteer alles

$lang['No_to_this_user'] = 'Je kan deze gebruiker geen privé berichten sturen.'
En verander dan GEBRUIKERSNAAM in de naam van diegene die geen privé berichten meer mag krijgen.

Succes ;)

Nymphy
Berichten: 1504
Lid geworden op: 28 mar 2003, 18:00
Locatie: Grevenbicht

Bericht door Nymphy » 24 jun 2006, 02:04

als beheerder van een forum zijnde heb je bij iedere gebruiker zowieso al deze mogelijkheden in het admin paneel :

Speciale alleen-beheerder velden
Deze velden kunnen niet worden aangepast door gebruikers. Hier kun je hun status instellen en andere opties die niet beschikbaar zijn voor gebruikers.

Gebruiker is actief Ja Nee

Kan prive berichten versturen Ja Nee

Kan avatar weergeven Ja Nee

dus als het je enkel daarom gaat kun je dit gewoon instellen in de admin :) bij user management

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 24 jun 2006, 09:40

Nymphy, daarmee kan hij nog wel privéberichten ontvangen :wink: Dat had ik al gezegd
... Maar ik modereer (nog) niet.

Insomnia
Berichten: 277
Lid geworden op: 15 apr 2006, 20:52
Contacteer:

Bericht door Insomnia » 24 jun 2006, 14:29

ik denk dat nyhmpy de boos doeners wilt uitzetten

jongeren
Berichten: 5
Lid geworden op: 23 jun 2006, 21:19

Bericht door jongeren » 25 jun 2006, 18:59

Volgens mij gaat het niet meer over de oorspronkelijke vraag. De vraag is dat iemand GEEN PM KAN ONTVANGEN.

Heeft iemand daar een oplossing voor!

Gebruikersavatar
N_Perfors
Berichten: 38
Lid geworden op: 03 apr 2006, 22:08
Locatie: BK

Bericht door N_Perfors » 25 jun 2006, 19:47

Derky schreef:Ik heb zelf iets aangepast zodat je de gebruiker Bot geen privé berichten kan sturen.
Volgens mij kun je dat ook zeggen als:

Ik heb zelf iets aangepast zodat de gebruiker Bot geen prive berichten kan ontvatvangen. :wink:
Greetz,
NIRO
If you have tried everything.
READ THE F***ING MANUAL!!

Gebruikersavatar
Derky
Berichten: 4466
Lid geworden op: 07 apr 2005, 16:24
Locatie: Nederland
Contacteer:

Bericht door Derky » 25 jun 2006, 20:33

N_Perfors schreef:Ik heb zelf iets aangepast zodat de gebruiker Bot geen prive berichten kan ontvatvangen. :wink:
Ja wat jij wil joh. :wink:

ontvatvangen? :P

Gebruikersavatar
N_Perfors
Berichten: 38
Lid geworden op: 03 apr 2006, 22:08
Locatie: BK

Bericht door N_Perfors » 25 jun 2006, 20:43

jah ik las daarvoor een post van iemand die dronken was toen hij typte...

Ik waande me ook in die zin :lol:
Greetz,
NIRO
If you have tried everything.
READ THE F***ING MANUAL!!

Gebruikersavatar
Derky
Berichten: 4466
Lid geworden op: 07 apr 2005, 16:24
Locatie: Nederland
Contacteer:

Bericht door Derky » 25 jun 2006, 20:50

Whaha :bier:

Maar snapt de topicstarter het nou eigenlijk? :P

Gebruikersavatar
N_Perfors
Berichten: 38
Lid geworden op: 03 apr 2006, 22:08
Locatie: BK

Bericht door N_Perfors » 25 jun 2006, 21:34

hij reageert niet..... :bier:
Greetz,
NIRO
If you have tried everything.
READ THE F***ING MANUAL!!

jongeren
Berichten: 5
Lid geworden op: 23 jun 2006, 21:19

Bericht door jongeren » 25 jun 2006, 22:06

De code werkt. Super!

Heeft iemand ook een idee, dat je de code kan plaatsen zodra iemand op de knop "send PM" klikt. Nu typt iemand het volledige bericht in, en daarna krijg je pas de melding.

Gebruikersavatar
Derky
Berichten: 4466
Lid geworden op: 07 apr 2005, 16:24
Locatie: Nederland
Contacteer:

Bericht door Derky » 25 jun 2006, 22:09

jongeren schreef:De code werkt. Super!

Heeft iemand ook een idee, dat je de code kan plaatsen zodra iemand op de knop "send PM" klikt. Nu typt iemand het volledige bericht in, en daarna krijg je pas de melding.
Das leuk toch? :twisted:

Maar als je dat wilt, moet je volgens mij op aardig wat bestanden wijzigingen toepassen. :?

Gebruikersavatar
N_Perfors
Berichten: 38
Lid geworden op: 03 apr 2006, 22:08
Locatie: BK

Bericht door N_Perfors » 25 jun 2006, 22:45

Dat denk ik ook,

Die knop is namelijk op vele manieren te vinden dus je zal het overal moeten aanpassen.

Maar goed, iemand idee??

Ik wil het ook wel weten....
Greetz,
NIRO
If you have tried everything.
READ THE F***ING MANUAL!!

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 26 jun 2006, 16:45

Zoiets als

Code: Selecteer alles

if ($poster_id != XX)
{
$temp_url = append_sid("privmsg.$phpEx?mode=post&" . POST_USERS_URL . "=$poster_id");
		$pm_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_pm'] . '" alt="' . $lang['Send_private_message'] . '" title="' . $lang['Send_private_message'] . '" border="0" /></a>';
		$pm = '<a href="' . $temp_url . '">' . $lang['Send_private_message'] . '</a>';
}
else
{
$pm_img = '';
$pm = '';
}
Dit werkt waarschijnlijk alleen in viewtopic.php, en dan nog ben ik niet zeker!
... Maar ik modereer (nog) niet.

klaask
Berichten: 1
Lid geworden op: 28 jun 2006, 13:55

Bericht door klaask » 28 jun 2006, 14:06

Ik heb het als volgt opgelost:

Voeg allereerst aan de database in de tabel phpbb_user het veld user_DisablePM - tinyint(1) toe, met als standaardwaarde = 0.

Vervolgens moeten op alle linken, waarmee een gebruiker een PM gestuurd kan worden, afgevangen worden dat er geen bericht naar een gebruiker met een ‘disabledPM’ verzonden kan worden. De knoppen blijven wel zichtbaar, maar wanneer hier op geklikt wordt krijgt de bezoeker een melding.

Ook bij het daadwerkelijk verzenden van een bericht wordt het nog een keer gecontroleerd, zodat langs geen enkele manier een bericht verzonden kan worden.

OPEN language/lang_dutch/lang_main.php

FIND

Code: Selecteer alles

$lang['No_to_user'] =


AFTER, ADD

Code: Selecteer alles

$lang['No_PM_to_this_user'] = 'Je kan deze gebruiker geen privé berichten sturen. Stuur eventueel een e-mail naar deze gebruiker.';

OPEN privmsg.php

-> Wanneer een bezoeker klikt op de knop PM van een gebruiker, dan wordt er gecontroleerd of er wel een bericht naar deze gebruiker gestuurd mag worden. Zo nee, dan verschint er een melding.

query aanpassen:
FIND

Code: Selecteer alles

$sql = "SELECT username
				FROM " . USERS_TABLE . "
				WHERE user_id = $user_id
					AND user_id <> " . ANONYMOUS;


REPLACE

Code: Selecteer alles

$sql = "SELECT username, user_DisablePM
				FROM " . USERS_TABLE . "
				WHERE user_id = $user_id
					AND user_id <> " . ANONYMOUS;	

Toon eventueel melding bij klikken op PM:

FIND

Code: Selecteer alles

if ( $row = $db->sql_fetchrow($result) )
			{
				$to_username = $row['username'];
			}


REPLACE

Code: Selecteer alles

if ( $row = $db->sql_fetchrow($result) )
			{
				//uitschakelen PM, bij klikken op ‘PM’
				if ($row['user_DisablePM'])
				{
					$message = $lang['No_PM_to_this_user'];
					message_die(GENERAL_MESSAGE, $message);
				}
				//end uitschakelen PM
				else
				{
					$to_username = $row['username'];
				}	
			}



-> Ook bij het klikken op ‘quote’ bij berichten die al eerder verzonden zijn krijgt de gebruiker een melding

Query aanpassen
FIND

Code: Selecteer alles

$sql = "SELECT pm.privmsgs_subject, pm.privmsgs_date, pmt.privmsgs_bbcode_uid, pmt.privmsgs_text, u.username, u.user_id
				FROM " . PRIVMSGS_TABLE . " pm, " . PRIVMSGS_TEXT_TABLE . " pmt, " . USERS_TABLE . " u
				WHERE pm.privmsgs_id = $privmsg_id
					AND pmt.privmsgs_text_id = pm.privmsgs_id
					AND pm.privmsgs_to_userid = " . $userdata['user_id'] . "
					AND u.user_id = pm.privmsgs_from_userid";


REPLACE

Code: Selecteer alles

$sql = "SELECT pm.privmsgs_subject, pm.privmsgs_date, pmt.privmsgs_bbcode_uid, pmt.privmsgs_text, u.username, u.user_DisablePM, u.user_id
				FROM " . PRIVMSGS_TABLE . " pm, " . PRIVMSGS_TEXT_TABLE . " pmt, " . USERS_TABLE . " u
				WHERE pm.privmsgs_id = $privmsg_id
					AND pmt.privmsgs_text_id = pm.privmsgs_id
					AND pm.privmsgs_to_userid = " . $userdata['user_id'] . "
					AND u.user_id = pm.privmsgs_from_userid";



Bij klikken op “ quote” een melding
FIND

Code: Selecteer alles

$privmsg_subject = ( ( !preg_match('/^Re:/', $privmsg['privmsgs_subject']) ) ? 'Re: ' : '' ) . $privmsg['privmsgs_subject'];


BEFORE, ADD

Code: Selecteer alles

//uitschakelen PM, bij klikken op ‘quote’
			if ( ($privmsg['user_DisablePM']) )
			{
				$message = $lang['No_PM_to_this_user'];
				message_die(GENERAL_MESSAGE, $message);
			}
			//end uitschakelen PM



-> Afvangen van het daadwerkelijk versturen. Dit is een extra controle. Als het goed is komt hij hier niet als de gebruiker geen berichten mag ontvangen.

FIND

Code: Selecteer alles

if (!($to_userdata = $db->sql_fetchrow($result)))
			{
				$error = TRUE;
				$error_msg = $lang['No_such_user'];
			}


AFTER, ADD

Code: Selecteer alles

			//uitschakelen PM, controle bij versturen
			if ($to_userdata['user_DisablePM'])
						{
							$error = TRUE;
							$error_msg .= ( ( !empty($error_msg) ) ? '<br />' : '' ) . $lang['No_PM_to_this_user'];
						}
			//end uitschakelen PM

jongeren
Berichten: 5
Lid geworden op: 23 jun 2006, 21:19

Bericht door jongeren » 28 jun 2006, 22:35

Super!!!! Je hebt een geweldig antwoord. Werkt ook perfect!!!!!

Gesloten