[3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Fragen rund um die Installation, Administration und Benutzung von phpBB 3.1.x und höher und die Konvertierung zu phpBB 3.2.x.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version [3.1.x] oder [3.2.x] angeben.
Jochen104
Mitglied
Beiträge: 33
Registriert: 04.12.2016 15:41
Kontaktdaten:

[3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Jochen104 » 13.12.2016 19:06

Hallo zusammen,

ich mochte, dass in einem Unterforum die Gäste nur die Titel des Threads lesen können.
Dazu habe ich im Unterforum zu 3.0.x schon eine Lösung(viewtopic.php?f=74&t=175653&start=50) entdeckt, allerdings funktioniert diese unter 3.1.10 leider nicht.

Den Code

Code: Alles auswählen

if ((!$user->data['is_registered'] && $forum_id != && $forum_id != 4))
   
{
   
// Setup user environment so we can process lang string
   
$user->setup('viewtopic');
        
login_box(''$user->lang['LOGIN_VIEWTOPIC']);

hatte ich unter

Code: Alles auswählen

$sort_dir    request_var('sd'$default_sort_dir); 
eingefügt.
Leider wird dann gar keine Seite mehr angezeigt.

Kann mir jemand helfen? Vielen Dank!
Viele Grüße, Jochen
Forum: https://www.bauhilfe-forum.de/

Benutzeravatar
Mahony
Ehemaliger
Beiträge: 10992
Registriert: 17.11.2005 22:33
Wohnort: Esslingen (Neckar)
Kontaktdaten:

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum l

Beitragvon Mahony » 13.12.2016 21:09

Hallo
Vergib das Forenrecht, kann Forum sehen und kann Forum lesen, für Gäste (im entsprechenden Forum) und mache folgendes:

Suche in der viewtopic.php

Code: Alles auswählen

$default_sort_dir    = (!empty($user->data['user_post_sortby_dir'])) ? $user->data['user_post_sortby_dir'] : 'a'


Füge danach ein

Code: Alles auswählen

if ((!$user->data['is_registered'] && $forum_id == xxx) || ($user->data['is_bot'] && $forum_id == xxx))
    {
       trigger_error('NOT_AUTHORISED');
    


Damit werden sowohl Gäste als auch Bots vom lesen der eigentlichen Beiträge abgehalten.
xxx muss mit der Foren ID des Forums ersetzt werden, dessen Überschrift der Gast und der Bot lesen können soll. Es erscheint dann die Meldung Du hast keine Berechtigung, diesen Bereich zu betreten..

mit

Code: Alles auswählen

{
      // Setup user environment so we can process lang string
      $user->setup('viewtopic');
      login_box('', $user->lang['LOGIN_VIEWTOPIC']);
    }

bekommst du die Loginbox angezeigt mit dem Text Du musst registriert und angemeldet sein, um dieses Thema anzusehen. über der Loginbox.

also so

Code: Alles auswählen

if ((!$user->data['is_registered'] && $forum_id == xxx) || ($user->data['is_bot'] && $forum_id == xxx))
    {
      // Setup user environment so we can process lang string
      $user->setup('viewtopic');
      login_box('', $user->lang['LOGIN_VIEWTOPIC']);
    }



In deinem Fall sollte der Code dann so aussehen

Code: Alles auswählen

if ((!$user->data['is_registered'] && ($forum_id != 3 || $forum_id != 4)))
       
    
{
       // Setup user environment so we can process lang string
       $user->setup('viewtopic');
            login_box('', $user->lang['LOGIN_VIEWTOPIC']);
    }


Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.

Jochen104
Mitglied
Beiträge: 33
Registriert: 04.12.2016 15:41
Kontaktdaten:

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum l

Beitragvon Jochen104 » 14.12.2016 12:54

Danke, das hat funktioniert.
Ich hatte den Code wohl einige Zeilen zu tief eingefügt und zudem die abschließende Klammer vergessen :(

Vielen Dank für deine Hilfe!
Viele Grüße, Jochen
Forum: https://www.bauhilfe-forum.de/

Kenaschon
Mitglied
Beiträge: 98
Registriert: 07.02.2017 10:10

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Kenaschon » 15.06.2017 12:41

Hallo Mahony,

geht das auch genau anders herum? Ich hätte in meinem Forum nur zwei feste Bereiche die von Gästen eingesehen werden sollen. Alle anderen Beiträge sind nur durch Anmeldung einzusehen.

Grüße
Manfred

Benutzeravatar
Mahony
Ehemaliger
Beiträge: 10992
Registriert: 17.11.2005 22:33
Wohnort: Esslingen (Neckar)
Kontaktdaten:

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Mahony » 15.06.2017 13:51

Hallo Manfred
Kenaschon hat geschrieben:Ich hätte in meinem Forum nur zwei feste Bereiche die von Gästen eingesehen werden sollen. Alle anderen Beiträge sind nur durch Anmeldung einzusehen.

Ja, das geht natürlich auch.


YY = Forum-Id, die NICHT gesperrt werden soll (Beispiel für 2 foren)

Code: Alles auswählen

if ((!$user->data['is_registered'] && ($forum_id != YY || $forum_id != YY)) || ($user->data['is_bot'] && ($forum_id != YY || $forum_id != YY)))
       
    {
       // Setup user environment so we can process lang string
       $user->setup('viewtopic');
            login_box('', $user->lang['LOGIN_VIEWTOPIC']);
    }


Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.

Kenaschon
Mitglied
Beiträge: 98
Registriert: 07.02.2017 10:10

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Kenaschon » 15.06.2017 17:37

Danke für die Hilfe.

So muß ich nicht so viele Foren auflisten.

Annika
Mitglied
Beiträge: 20
Registriert: 11.05.2017 17:50

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Annika » 17.06.2017 16:00

Hallo,

ich habe gerade auch den Code von Mahony ausprobiert, da wir nur zwei Foren öffnen wollen.
Die anderen Foren lassen sich nun aber leider auch nicht öffnen, also im Grunde sind die Gäste da einen Step zu früh raus.
Beim Anklicken des Forums kommt schon die Aufforderung zum Login.

Was muss man denn machen, dass sie das Forum noch anwählen können und erst beim Klicken auf eine Beitragsüberschrift das Loginfenster kommt?

Vielen Dank!

Nachtrag: habe gerade gemerkt, dass das mit den Überschriften lesen in den beiden Foren möglich ist, die eigentlich ganz zu lesen sein sollen.
Hab gerade irgendwie ein Brett vorm Kopf...... Also in den zwei speziellen Foren sollen Gäste Beiträge lesen können, in allen anderen Foren sollen sie nur die Überschriften lesen können.... :oops: Was muss ich denn jetzt wie rum machen?
Könnt ihr mir mal beim Gedanken sortieren helfen? :-?
Zuletzt geändert von Annika am 17.06.2017 16:47, insgesamt 1-mal geändert.

Benutzeravatar
Mahony
Ehemaliger
Beiträge: 10992
Registriert: 17.11.2005 22:33
Wohnort: Esslingen (Neckar)
Kontaktdaten:

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Mahony » 17.06.2017 16:46

Hallo
Annika hat geschrieben:Was muss man denn machen, dass sie das Forum noch anwählen können und erst beim Klicken auf eine Beitragsüberschrift das Loginfenster kommt?

Die richtigen Foren-IDs angeben und ansonsten das Forenrecht, kann Forum sehen und kann Forum lesen, für Gäste (im entsprechenden Forum) vergeben.

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.

Annika
Mitglied
Beiträge: 20
Registriert: 11.05.2017 17:50

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Annika » 17.06.2017 22:35

Aaarrrgh... Ich werde noch irre.... :cry:

Erstmal vorweg: Forenrechte sind jetzt überprüft und so eingestellt, wie Mahony in der letzten Antwort schrieb.(sehen + lesen für Gäste) Seitdem kann man in allen entsprechenden Foren die Überschriften lesen. SUPER! Ein Schritt geschafft....

Aber in beiden Foren, in denen die Gäste die Beiträge auch komplett lesen können sollen (ID 27 & 14) , ist jetzt auch nur das Lesen der Überschriften möglich.

So sieht der Code bei mir aktuell aus:

Code: Alles auswählen

$default_sort_dir   = (!empty($user->data['user_post_sortby_dir'])) ? $user->data['user_post_sortby_dir'] : 'a';
if ((!$user->data['is_registered'] && ($forum_id != 27 || $forum_id != 14)) || ($user->data['is_bot'] && ($forum_id != 27 || $forum_id != 14)))
       
    {
       // Setup user environment so we can process lang string
       $user->setup('viewtopic');
            login_box('', $user->lang['LOGIN_VIEWTOPIC']);
    }
$sort_days   = request_var('st', $default_sort_days);


Ich hoffe ihr könnt mir hier nochmal weiter helfen.... :-?


PS: Hier auch mal der Link zum Forum, es sollen "über das Forum" und "Pflanzen" zugänglich sein.... http://hortus-netzwerk.info

Kenaschon
Mitglied
Beiträge: 98
Registriert: 07.02.2017 10:10

Re: [3.1.x]Gäste sollen nur den Threadtitel in einem Forum lesen

Beitragvon Kenaschon » 17.07.2017 20:53

Ich habe mal gerade etwas probiert.

Hier mit kann ich einen einzelnen Topic "zu" machen

Code: Alles auswählen

if ((!$user->data['is_registered'] && ($topic_id == XX)))
       
    {
       // Setup user environment so we can process lang string
       $user->setup('viewtopic');
            login_box('', $user->lang['LOGIN_VIEWTOPIC']);
    }


Bis jetzt funktioniert es. Ist das auch richtig?

Grüße
Manfred


Zurück zu „Support-Forum“