Notification Mod: Nachricht nur bei neuem Thema
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.
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.
Notification Mod: Nachricht nur bei neuem Thema
Hallo,
bezugnehmend auch auf
http://www.phpbb.de/viewtopic.php?p=75998#75998
hier noch einmal:
Wenn ich mir die Dateien des Notification-Mod ansehe, stelle ich fest, daß eine Benachrichtigung bei Erstellung eines neuen Themas und bei allen Antworten erfolgt.
Das wünsche ich nicht. Vielmehr soll nur bei einem neuen Thema eine Mail kommen, aber nicht automatisch bei jeder Antwort, da dies eine zu große Mail-Flut wäre. Wenn jemanden das Thema interessiert, kann er ja immer noch (wie auch ohne Mod möglich) den "Bei Antworten zu diesem Thema benachrichtigen"-Link anklicken.
Deshalb meine Frage:
a) hat irgendwer den Notification-Mod auf einem Board installiert, wo man sich mal ansehen kann, wie der funktioniert?
b) kann man das oben Geschilderte einstellen bzw. den Mod so umbauen?
bezugnehmend auch auf
http://www.phpbb.de/viewtopic.php?p=75998#75998
hier noch einmal:
Wenn ich mir die Dateien des Notification-Mod ansehe, stelle ich fest, daß eine Benachrichtigung bei Erstellung eines neuen Themas und bei allen Antworten erfolgt.
Das wünsche ich nicht. Vielmehr soll nur bei einem neuen Thema eine Mail kommen, aber nicht automatisch bei jeder Antwort, da dies eine zu große Mail-Flut wäre. Wenn jemanden das Thema interessiert, kann er ja immer noch (wie auch ohne Mod möglich) den "Bei Antworten zu diesem Thema benachrichtigen"-Link anklicken.
Deshalb meine Frage:
a) hat irgendwer den Notification-Mod auf einem Board installiert, wo man sich mal ansehen kann, wie der funktioniert?
b) kann man das oben Geschilderte einstellen bzw. den Mod so umbauen?
wie? was? wo?
Ich versteh' nur Bahnhof.
Und wie geht denn das:
Ich versteh' nur Bahnhof.
Und wie geht denn das:
Code: Alles auswählen
Do not forget to run the following commands on your sql database (replace phpbb2_ with your db prefix):
##
## CREATE TABLE phpbb2_forums_watch (
## forum_id smallint(5) unsigned NOT NULL default '0',
## user_id mediumint(8) NOT NULL default '0',
## notify_status tinyint(1) NOT NULL default '0',
## KEY forum_id (forum_id),
## KEY user_id (user_id),
## KEY notify_status (notify_status)
## )
##
## ALTER TABLE phpbb2_forums
## ADD forum_notify TINYINT(1) UNSIGNED DEFAULT '1' NOT NULL
## AFTER forum_last_post_id
also ich kopiere den Code und füge ihn in das Feld "SQL-Befehle ausführen..." ein, dann OK drücke. Richtig so?saerdnaer hat geschrieben:wenn du phpmyadmin hast trägst du das einfach in die query ein wobei du dein prefix ersetzen musst... also in diesem falls z.b. phpbb2_ durch phpbb_
Aber ich weiß immer noch nicht, welche Dateien ich dann noch ändern muß, damit die Benachrichtigung NUR bei neuem Thema kommt.
ja. aber wie gesagt das prefix nicht vergessen...hmueller hat geschrieben: also ich kopiere den Code und füge ihn in das Feld "SQL-Befehle ausführen..." ein, dann OK drücke. Richtig so?´
den satz verseh ich jetzt nicht ganz... der hack schick einem doch nur bei einem neuem thema einen mail...hmueller hat geschrieben:Aber ich weiß immer noch nicht, welche Dateien ich dann noch ändern muß, damit die Benachrichtigung NUR bei neuem Thema kommt.
ah
- itst
- Ehrenadmin
- Beiträge: 7418
- Registriert: 21.08.2001 02:00
- Wohnort: Büttelborn bei Darmstadt
- Kontaktdaten:
Äh, OK, das war nicht wirklich verständlich. Sorry.itst hat geschrieben:0-Prob.
Die posting.php hat verschiedene Modi. Einer von denen ist "newtopic". Es gibt da ein swicth, das die auswertett. Da haust Du Den Notification rein. Das wars.
Also, die Datei posting.php ist zuständig für das Erstellen eines neuen Themas oder einer Antwort auf ein Thema. Um das unterscheiden zu können, benutzt phpBB einen Paramter naems "mode". der kann unter anderen den Wert "newtopic" für ein neues Thema oder "reply" für eine Antwort auf ein bestehendes Thema haben.
In der posting.php gibt es eine "switch"-Anweisung (das ist ein PHP-Befehl, Doku hier: www.php.net/switch ). Und darunter gibt es für jeden Wert von "mode" spezielle Anweisungen.
Und da könntest Du...
Äh, Du hast nicht so viel Ahnung von PHP oder? Sag bitte bescheid, weil jetzt wirds ein bißchen komplexer und ich möchte Dich nicht wieder mit unverständlichem Kram zuschreiben

Sascha A. Carlin,
phpBB.de Ehrenadministrator
phpBB.de Ehrenadministrator

-
- Mitglied
- Beiträge: 216
- Registriert: 12.11.2001 01:00
Hallo,
Hierbei dachte ich, das lässt sich "einfach" so lösen, indem man beim Einbau des Mod bestimmte Code-Abschnitte wegläßt.
Richtg, mit PHP kenne ich mich nicht so gut aus. Ich muß also irgendwo in der posting.php was einbauen, damit zwischen neuem Thema und neuem Beitrag unterschieden wird?
Soweit ich weiß, schickt der Mod sowohl bei einem neuen Thema als auch bei einen neuen Beitrag eine Mail. Und das wäre eine zu große Mail-Flut, deshalb sollte es so sein, daß die Mail nur bei Erstellung eines neuen Themas kommt.den satz verseh ich jetzt nicht ganz... der hack schick einem doch nur bei einem neuem thema einen mail...
Hierbei dachte ich, das lässt sich "einfach" so lösen, indem man beim Einbau des Mod bestimmte Code-Abschnitte wegläßt.
Richtg, mit PHP kenne ich mich nicht so gut aus. Ich muß also irgendwo in der posting.php was einbauen, damit zwischen neuem Thema und neuem Beitrag unterschieden wird?
- itst
- Ehrenadmin
- Beiträge: 7418
- Registriert: 21.08.2001 02:00
- Wohnort: Büttelborn bei Darmstadt
- Kontaktdaten:
Nein. In der Posting.php wird schon unterschieden... Hier mal der Code-Abschnitt, der wichtig ist:
Zu finden ist das ab Zeile 528 bei einem phpBB 2.0.2.
Hier könnte man jetzt die Benachrichtig einbauen:
Das könnte dann so aussehen, um nur bei neuen Nachrichtigen eine Mail zu bekommen:
Code: Alles auswählen
switch ( $mode )
{
case 'editpost':
case 'newtopic':
case 'reply':
$username = ( !empty($HTTP_POST_VARS['username']) ) ? $HTTP_POST_VARS['username'] : '';
$subject = ( !empty($HTTP_POST_VARS['subject']) ) ? trim($HTTP_POST_VARS['subject']) : '';
$message = ( !empty($HTTP_POST_VARS['message']) ) ? $HTTP_POST_VARS['message'] : '';
$poll_title = ( isset($HTTP_POST_VARS['poll_title']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_title'] : '';
$poll_options = ( isset($HTTP_POST_VARS['poll_option_text']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_option_text'] : '';
$poll_length = ( isset($HTTP_POST_VARS['poll_length']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_length'] : '';
$bbcode_uid = '';
prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $poll_length);
if ( $error_msg == '' )
{
$topic_type = ( $topic_type != $post_data['topic_type'] && !$is_auth['auth_sticky'] && !$is_auth['auth_announce'] ) ? $post_data['topic_type'] : $topic_type;
submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length);
if ( $error_msg == '' )
{
user_notification($mode, $post_data, $forum_id, $topic_id, $post_id, $notify_user);
}
}
break;
case 'delete':
case 'poll_delete':
delete_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id);
break;
}
Hier könnte man jetzt die Benachrichtig einbauen:
Code: Alles auswählen
@mail("e-mail-adresse", "Beitrag in FORUM: $subject", "Thema: $subject\nAutor: $username\nBeitrag: http://www.domain.de/viewtopic.php?t=$topic_id#$post_id");
Code: Alles auswählen
switch ( $mode )
{
case 'editpost':
case 'newtopic':
@mail("e-mail-adresse", "Beitrag in FORUM: $subject", "Thema: $subject\nAutor: $username\nBeitrag: http://www.domain.de/viewtopic.php?t=$topic_id#$post_id");
case 'reply':
$username = ( !empty($HTTP_POST_VARS['username']) ) ? $HTTP_POST_VARS['username'] : '';
$subject = ( !empty($HTTP_POST_VARS['subject']) ) ? trim($HTTP_POST_VARS['subject']) : '';
$message = ( !empty($HTTP_POST_VARS['message']) ) ? $HTTP_POST_VARS['message'] : '';
$poll_title = ( isset($HTTP_POST_VARS['poll_title']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_title'] : '';
$poll_options = ( isset($HTTP_POST_VARS['poll_option_text']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_option_text'] : '';
$poll_length = ( isset($HTTP_POST_VARS['poll_length']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_length'] : '';
$bbcode_uid = '';
prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $poll_length);
if ( $error_msg == '' )
{
$topic_type = ( $topic_type != $post_data['topic_type'] && !$is_auth['auth_sticky'] && !$is_auth['auth_announce'] ) ? $post_data['topic_type'] : $topic_type;
submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length);
if ( $error_msg == '' )
{
user_notification($mode, $post_data, $forum_id, $topic_id, $post_id, $notify_user);
}
}
break;
case 'delete':
case 'poll_delete':
delete_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id);
break;
}
Sascha A. Carlin,
phpBB.de Ehrenadministrator
phpBB.de Ehrenadministrator
