MyBB.de Forum

Normale Version: Leseberechtigung nur für den ersten Post in einzelnen Threads
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Smile

Das Plugin First Post Only ist eigentlich das, was ich suche, nur brauche ich es auf einzelne Threads bezogen und eben nicht auf ganze Foren.

Wäre sowas machbar? Und wie?
Prinzipiell könnte das schon möglich sein. Man muss halt den Code so umwandeln, dass statt der Foren-ID die Thread-ID maßgeblich ist.....


Nachtrag: Du kannst ja mal angehängte Plugin-Datei ausprobieren....
Vielen Dank, dass du das Plugin umgeschrieben hast Smile

Soweit funktioniert das auch mit der Thread-ID.. zwei Probleme gibt es aber:
  1. Klickt man auf "Antworten" sieht man unten in der Übersicht der letzten Beiträge den Inhalt dennoch.
  2. Bei den angegebenen Usergruppen werden Gruppen, die die Berechtigung hätten, sich den Inhalt anzusehen, nicht berücksichtigt.
    Ich als Administrator gehöre der Gruppe Administrator (sekundäre Gruppe) und On The Road (primäre Gruppe mit weniger Berechtigungen, die auch normale Mitglieder bekommen) an, gebe ich nun aber die ID der On The Road Gruppe an, habe ich als Administrator keine Einsicht in den Inhalt.
hmmm, das hatte ich nicht überprüft. Aber jetzt und das Original-Plugin scheint da bei den selben beiden Punkten auch seine Schwächen zu haben.

Prinzipiell sollte aber auch das zu lösen sein. Mal sehen, wann ich das mal angehen kann....

Zu Punkt 1: da stellt sich ja generell die Frage, wie das ablaufen soll. Wenn jemand in dem Thread die Möglichkeit hat zu antworten, sollte er dann nicht auch die vorherigen Beiträge lesen können?
In dem Thread, für den ich das Plugin verwenden würde, geht es darum, dass es Beiträge mit Kontaktdaten sind, die bloss das Team sehen können soll, auch wenn Gäste und andere Mitglieder antworten können.
Zumindest mal zu Punkt 1:

ersetze in der Plugin-Datei
PHP-Code:
$plugins->add_hook("postbit""firstpostonly_post"); 
durch
PHP-Code:
$plugins->add_hook("postbit""firstpostonly_post");
$plugins->add_hook("newreply_end""firstpostonly_newreply"); 
und setze am Ende der Datei folgende Funktion ein
PHP-Code:
function firstpostonly_newreply()
{
  global 
$mybb$threadreview$tid;
  
  
$check_my_threads explode(','$mybb->settings['firstpostonly_forums']);
  
  if (
firstpostonly_check_permissions($mybb->settings['firstpostonly_groups']) && in_array($tid$check_my_threads)){  
     
$threadreview "";
   }

Danke für deine Hilfe Smile

Da ist eine } zu viel am Schluss.. und wenn ich das so einfüge, werden die vorherigen Beiträge zwar nicht mehr angezeigt beim Antworten, allerdings auch bei allen anderen Threads und nicht nur bei dem spezifisch angegebenen.
Ich habe die Funktion in dem obigen Beitrag korrigert. Probiere es damit noch einmal.
So funktionierts einwandfrei Smile Vielen Dank.