Posteingang sperren, wenn voll

In diesem moderierten Forum werden Code-Schnipsel, die zu klein sind, um richtige Mods zu sein, abgelegt.
Bei Fragen oder Problemen benutze bitte das Forum phpBB 2.0: Mod Support.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Posteingang sperren, wenn voll

Beitrag von Acid »

Beschreibung: Normalerweise werden beim Empfänger einer privaten Nachricht, die ältesten Nachrichten gelöscht, wenn bei ihm die Maximalkapazität des Posteinganges erreicht wurde.
Mit der folgenden Codeänderung werden diese Nachrichten nicht mehr gelöscht, sondern der Posteingang "gesperrt", so das der User erst wieder Nachrichten empfangen kann, wenn er sein Posteingang (zumindest teilweise) geleert hat.
phpBB Version: 2.0.x

Code: Alles auswählen

#
#--------- [ DATEI ÖFFNEN ] -----------------------------
#
# /privmsg.php
#
#------[ FINDE ]------------------
#
			$sql = "SELECT user_id, user_notify_pm, user_email, user_lang, user_active 
#
#------[ MIT FOLGENDEM ERSETZEN ]------------------
#
			$sql = "SELECT username, user_id, user_notify_pm, user_email, user_lang, user_active 

#
#------[ FINDE ]------------------
#
				if ( $inbox_info['inbox_items'] >= $board_config['max_inbox_privmsgs'] )
				{
					$sql = "SELECT privmsgs_id FROM " . PRIVMSGS_TABLE . " 
#
#------[ MIT FOLGENDEM ERSETZEN ]------------------
#
				if ( $inbox_info['inbox_items'] >= $board_config['max_inbox_privmsgs'] )
				{
				/*	$sql = "SELECT privmsgs_id FROM " . PRIVMSGS_TABLE . " 

#
#------[ FINDE ]------------------
#
						message_die(GENERAL_ERROR, 'Could not delete oldest privmsgs text (inbox)', '', __LINE__, __FILE__, $sql);
					}
				}
#
#------[ MIT FOLGENDEM ERSETZEN ]------------------
#
						message_die(GENERAL_ERROR, 'Could not delete oldest privmsgs text (inbox)', '', __LINE__, __FILE__, $sql);
					}*/
				$message = sprintf($lang['Full_inbox'], $to_userdata['username']). '<br /><br />' . sprintf($lang['Click_return_inbox'], '<a href="' . append_sid("privmsg.$phpEx?folder=inbox") . '">', '</a> ') . '<br /><br />' . sprintf($lang['Click_return_index'], '<a href="' . append_sid("index.$phpEx") . '">', '</a>');
				message_die(GENERAL_MESSAGE, $message);
				}

#
#--------- [ DATEI ÖFFNEN ] -----------------------------
#
# /language/lang_german/lang_main.php
#
#------[ FINDE (nur ein Auszug) ]------------------
#
$lang['Private_Messaging'] =

#
#--------- [ DARUNTER EINFÜGEN ] -------------------------
#
$lang['Full_inbox'] = 'Der Posteingang von %s hat die maximale Kapazität erreicht. Solange er nicht sein Postfach leert, kann man ihm keine privaten Nachrichten mehr schicken.'; // %s = Username
Keywords: posteingang+postfach+sperren+zuviele+private+nachrichten
Antworten

Zurück zu „phpBB 2.0: Snippets“