Seite 1 von 2

Benutzer zur Beobachtung "Zwingen"

Verfasst: 06.11.2009 02:22
von NBOne
Hallo,

ich habe in meinem Forum einen "Wichtige News" Bereich, den ich gerne nutzen würde, um Bekanntmachungen meine Seite betreffend zu posten. Wenn ich was in diesem Forum poste, möchte ich, dass jeder Board Benutzer über den neuen Eintrag per E-Mail informiert wird.

Ist das möglich? Kann ich im Administrationsbereich irgendwo festlegen, dass ein Forum von allen Benutzern immer beobachtet werden soll?

Danke für eure Hilfe!

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 06.11.2009 08:13
von tarner
Hallo NBOne

mit so einer Funktion würdest du die Benutzer bevormunden. Mit Sicherheit würde das schlecht ankommen bei deinen Mitgliedern. Jeder User hat die Möglichkeit selber einzustellen, ob er das besagte Forum beobachten will. Dann bekommt er eine Meldung, dass ein neuer Beitrag geschrieben wurde. Oder falls das nicht geht kannst du schauen, ob du ein sogenanntes RSS-Feed einbaust. Damit kann der User das auch abonnieren. Jemanden zu zwingen deine News zu lesen wirkt sich sehr negativ aus.

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 06.11.2009 10:53
von NBOne
Hallo,

da hast du für ein öffentliches Forum sicherlich recht, da würde ich auch nicht auf die Idee kommen, das wäre ja quasi Spam. Bei mir geht es aber um ein geschlossenes Forum mit ca. 30 Mitgliedern zur Koordinierung der Nutzung eines Raums, und abundzu gibt es Neuigkeiten, die jeder mitbekommen sollte.

Deswegen hatte ich mit überlegt, ein Forum zu machen, für das nur Administratoren Schreibrechte haben, und was dann Quasi als News Verteiler fungiert.

Ist so etwas denn möglich? Oder muss ich mir da selber was coden? Wäre halt echt super, wenn ich irgendwo einstellen könnte, wer welches Forum beobachtet...

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 06.11.2009 12:19
von tarner
Hallo NBOne

Ah, gute Idee :) Ich schliesse mich dieser Frage gern an. Ich habe hier im Forum recherchiert und
Themen gefunden, die mich nicht weiter gebracht haben:

http://www.phpbb.de/community/viewtopic.php?t=172124
http://www.phpbbhacks.com/viewhack.php?id=293

Beim letzteren: Vielleicht schaust du mal dort nach unter der Version, die du einsetzt?
Ich kann leider noch nicht weiter helfen, da mein Forum derzeit gerade entwickelt wird.
Aber vielleicht hat einer der Moderatoren oder Administratoren einen Tipp, worauf wir
bei der Lösung achten könnten? Vielen Dank für die Zeit die ihr euch dafür nehmt.

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 19.11.2009 14:23
von NBOne
Hallo,

hat jemand noch eine Idee? Was ich eigentlich einfach machen möchte ist, in der Administration festlegen können, dass ein Benutzer ein bestimmtes Forum beobachtet.

Oder was auch eine Möglichkeit wäre: Ich möchte als Administrator beim Erstellen eines Beitrags ein Häkchen für: "Benutzer über diesen Beitrag benachrichtigen" Button haben. Dann bekommen alle Benutzer eine Mail wenn ich den Beitrag angelegt habe.
Gibt es für sowas villeicht ein Plugin/Hack?

Danke!

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 19.11.2009 14:53
von tarner
Hallo Johannes

Ich habe es als "Krücke" bei mir so gelöst:

Wenn ich ein wichtiges Thema habe, bei dem ich sicherstellen will, dass es möglichst alle Mitglieder sehen (was natürlich nicht heisst, dass sie es auch lesen), klicke ich unten beim Thema auf "Globale Bekanntmachung". Dann erscheint das Thema in jedem Forum ganz oben (gekenntzeichnet als "Bekanntmachungen") sowie im "Persönlicher Bereich" auf der ersten Seite gkennzeichnet als "Wichtige Bekanntmachungen". Damit kann ich persönlich sehr gut leben :) Wäre das was für dich?

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 19.11.2009 16:06
von NBOne
Erstmal danke für deine Antwort:

Die globalen Bekanntmachungen habe ich mir auch schon angesehen. Das reicht mir aber leider nicht.

Für meine Homepage ist das PhpBB Forum nicht die Hauptseite, sondern lediglich ein Teil der Seite. Ich kann mir also nicht sicher sein, dass alle Benutzer halbwegs regelmäßig im Forum vorbeischauen. Ich würde das halt gerne mit PHPBB lösen, weil ich sonst noch einen extra News Bereich einrichten müsste, was eigentlich überflüssig ist, und mir ein "Allgemeine News" Forum vollkommen ausreichen würde.

Kann mir vielleicht jemand sagen, wie die Beobachtungen in der Datenbank organisiert sind? Zur Not richte ich halt einfach in meinem eigenen Administrationsbereich noch eine Seite ein, welche die benötigten Datenbankeinträge einfach anlegt...

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 20.11.2009 02:04
von gn#36
Das wichtigste zuerst: Das folgende ist weitestgehend ungetestet, mach also bitte vorher ein komplettes Backup von Dateien und vor allem der Datenbank.

Man könnte natürlich das Foren Abonnement bei der Registrierung jedes neuen Users automatisch mit einstellen. Für alle bisherigen User kannst du einfach folgende Queries ausführen (wenn deine Mysql Version zu alt ist wird der zweite nicht gehen):

Code: Alles auswählen

DELETE FROM phpbb_forums_watch WHERE forum_id = <hier deine Foren ID>;
INSERT INTO phpbb_forums_watch (user_id, forum_id, notify_status) SELECT user_id, <hier deine Foren ID> as forum_id, 0 as notify_status FROM phpbb_users WHERE user_type IN (0, 1, 3);
Wenn sich deine User nicht so häufig ändern kannst du es natürlich auch einfach dabei belassen, das einmal ausführen und dann noch mal wenn wieder wer dazu kommt. Wenn du das nicht so häufig manuell machen möchtest weil du zu viele neue User hast, dann kannst du das auch bei jeder Neuregistrierung wieder ausführen, oder du packst es mit in die Cronjobs so dass es einfach immer mal wieder ausgeführt wird.

Ersteres kannst du in der includes/functions_user.php machen indem du in der Funktion user_add am Ende vor return $user_id; folgendes einfügst:

Code: Alles auswählen

$sql = "INSERT INTO ". FORUMS_WATCH_TABLE."(user_id, forum_id, notify_status) VALUES ($user_id, <hier deine Foren ID>, 0);";
$db->sql_query($sql); 
Du musst dann nur noch vorher oder nachher obige SQL Befehle ausführen und das ganze sollte erledigt sein. Ich weiß allerdings nicht ob solche Dinge im Cache abgelegt werden, du solltest diesen also nach der Abfrage ggf. mal löschen.

Das ganze verhält sich dann natürlich ganz genau so wie eine normale Forum Antwortbenachrichtigung, sprich wenn der User trotzdem nicht ins Forum schaut gibt's keine weiteren Mails mehr. Wenn du das doch möchtest (also bei jedem Post im Forum eine Mail, in diesem Fall ist beschrieben wie das für eine externe Mailingliste geht, das ließe sich aber erweitern) kannst du das mit der hier beschriebenen Änderung tun.

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 25.11.2009 00:27
von NBOne
Erstmal vielen Dank für deine Hilfe, ich berichte dann ob es funktioniert hat...

Re: Benutzer zur Beobachtung "Zwingen"

Verfasst: 27.01.2010 22:14
von mpiet
Hi - danke für die einfache MySQL Query, sie hat bei mir bestens funktioniert (phpBB3, v.3.0.6, nur wenige simple MODS)! :)

Eine Frage noch:
Gibt es eine Möglichkeit, die Abos für ausgewählte User wieder auf 'null' zu stellen, sollten sich diese nach der o.a. 'Zwangsabonnierung' beschweren?
Ich könnte mir vorstellen, daß man in der MySQL Query die 'user id' des betroffenen Benutzers eingibt, wüßte aber nicht
- woher ich die User ID bekomme bzw. wie genau man die Query modifizieren müßte.

Nur zur Klarheit: auch ich betreibe ein kleines, geschlossenes Forum, dessen Benutzer aber nicht wirklich fit im Umgang mit Diskussionforen sind. Daher will ich sicherstellen, daß sie über Neuigkeiten aus dem Forum immer informiert sind. Ich werde also zusätzlich ein MOD installieren, welches in den Benachrichtigungen auch den Nachrichtentext inkludiert.

Danke jedenfalls soweit!!

lg, Piet