Seite 1 von 1

wie funktioniert new-pn notification?

Verfasst: 25.10.2004 00:17
von Lord Potassium
hi
wie funktioniert, die benachrichtung (popUP) wenn man eine neue nachricht erhällt. und wie wird das erneute "aufpoppen" verhindert?
wo finde ich diesen code (datei(en)).
mfg
Potassium

Verfasst: 25.10.2004 11:46
von Leuchte
includes/page_header.php

Code: Alles auswählen

	if ( $userdata['user_new_privmsg'] ) // Wenn der User eine neue PN hat
	{
...
..
.
			$s_privmsg_new = 1; // Dann 1 (sonst 0)

Code: Alles auswählen

// Templatevariable
$template->assign_vars(array(
..
.
	'PRIVATE_MESSAGE_NEW_FLAG' => $s_privmsg_new,
templates/xxx/overall_header.tpl

Code: Alles auswählen

	if ( {PRIVATE_MESSAGE_NEW_FLAG} ) // Also wenn $s_privmsg_new = 1
	{
		window.open('{U_PRIVATEMSGS_POPUP}', '_phpbbprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400');;
	}
In der privmsg.php wird dann der Counter wieder zurückgesetzt

Code: Alles auswählen

			case PRIVMSGS_NEW_MAIL:
				$sql = "user_new_privmsg = user_new_privmsg - 1";
				break;
			case PRIVMSGS_UNREAD_MAIL:
				$sql = "user_unread_privmsg = user_unread_privmsg - 1";
				break;
		}

		$sql = "UPDATE " . USERS_TABLE . " 
			SET $sql 
			WHERE user_id = " . $userdata['user_id'];
Ab dann ist $s_privmsg_new wieder 0

Verfasst: 25.10.2004 11:50
von Lord Potassium
und wo wird $userdata['user_new_privmsg'] definiert? session.php´?

Verfasst: 25.10.2004 11:52
von Leuchte
$userdata ist ein Array was alle Felder der Tabelle phpbb_users ausgibt. Bspw. $userdata['username'] oder $userdata['user_id']

Verfasst: 25.10.2004 11:59
von Lord Potassium
oh. im usertable hätt ich es nicht erwartet.
damit erweitert sich meine frage :D
wann hat das feld den wert eins und wann 0 bzw wo wird das gesteuert?

Verfasst: 25.10.2004 12:08
von Leuchte
privmsg.php u.a.

Code: Alles auswählen

			//
			// Add to the users new pm counter
			//
			$sql = "UPDATE " . USERS_TABLE . "
				SET user_new_privmsg = user_new_privmsg + 1, user_last_privmsg = " . time() . "  
				WHERE user_id = " . $to_userdata['user_id'];
Wie es auf 0 gesetzt wird, bzw. -1 bei gelesen steht in meinem ersten Post (privmsg.php)

Verfasst: 25.10.2004 13:09
von Lord Potassium
thx. das hilft mir schon ordentlich weiter. :)

Verfasst: 25.10.2004 19:19
von Lord Potassium
edit:
was ist der unterschied zwischen PRIVMSGS_NEW_MAIL und PRIVMSGS_UNREAD_MAIL
????