Button 'antworten' soll bei Gästen nicht erscheinen

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Assa1004
Mitglied
Beiträge: 6
Registriert: 19.05.2009 19:49

Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von Assa1004 »

Hallo phpBB'ler,

ich versuche bisher leider vergeblich, folgendes umzusetzen:

In zwei Foren sollen alle außer den Admins nur Leserechte haben.

Das bedeutet, die Buttons 'neues Thema' oder 'anntworten' sollen bei Gästen und Registrierten Benutzern erst gar nicht erscheinen.
Eigenartiger Weise funktioniert es bei Registrierten Benutzern, nicht aber bei Gästen!? Gäste sehen diese Buttons, kommen bei Klick darauf zum Loginformular und erhalten nach Login (wenn sie dann also registrierter Benutzer sind) den Hinweis, dass sie in diesem Forum keine Beiträge/Antworten erstellen können.

Frage ist also: wie kriege ich diese Buttons bei den Gästen weg? In den gruppenspezifischen Forenrechten habe ich bereits die Standardberechtigung 'Nur lesender Zugriff' versucht oder bei den erweiterten Berechtigungen alles bis auf 'Kann Forum sehen' und 'Kann Forum lesen' auf 'Nie' gestellt...
Beide Varianten bringen nicht das gewünschte Ziel.

Gibt es noch eine Stellschraube, die ich nicht kenne? Ich sehe auch keinen Unterschied zu den Registrierten Benutzern (bei denen steht die Berechtigung übrigens auf 'Nur lesender Zugriff' und es funktioniert wie gesagt).

Bin für jeden Tipp dankbar!

Ich nutze diesen Style: http://www.phpbb3styles.net/db/style/610nm
Meine Version: 3.0.4 (ich weiß, werde bald updaten)
Assa1004
Mitglied
Beiträge: 6
Registriert: 19.05.2009 19:49

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von Assa1004 »

Ach schade, kann mir da wirklich niemand helfen? Habe ich das Problem nicht zutreffend beschrieben?
Im Forum habe ich natürlich auch schon nach diesem Thema gesucht, allerdings nichts gefunden... Hat sonst niemand dieses Problem?
Benutzeravatar
redbull254
Ehemaliges Teammitglied
Beiträge: 10379
Registriert: 05.01.2006 13:01
Kontaktdaten:

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von redbull254 »

Hallo erstmal,

bei erweiterte Gruppenspezifische Forenrechte :

Kann neue Themen im Forum starten

auf „Nein“ setzen.

KB:rechtesystem
KB:rechte_verfolgen
Schnelleinstieg phpBB3
Beste Grüße
Walter
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von forant »

redbull254 hat geschrieben:bei erweiterte Gruppenspezifische Forenrechte :
Kann neue Themen im Forum starten
auf „Nein“ setzen.
Dies bedeutet nur, das z.B. Gast keine Rechte hat, aber die Anzeige erscheint trotzdem.

Bei mir steht dies auf Nein, es wird Neues Thema und Antworten angezeigt. Klickt man jeweils darauf, wird der Hinweis gebracht das keine Berechtigung vorhanden ist (das ist ok und entspricht Deiner Ausführung). Wie unterbindet man aber - bereits im Vorfeld - für Gäste die Anzeige Neues Thema und Antworten wenn sie sowieso keine Rechte dazu haben?
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
redbull254
Ehemaliges Teammitglied
Beiträge: 10379
Registriert: 05.01.2006 13:01
Kontaktdaten:

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von redbull254 »

Du konntest die Button mit einem Switch ausblenden.

Code: Alles auswählen

<!-- IF S_USER_LOGGED_IN -->
....Code....
<!-- ENDIF -->
In der „viewtopic.html“

Code: Alles auswählen

<!-- IF S_USER_LOGGED_IN -->
<div class="topic-actions">
	<div class="buttons">
	<!-- IF not S_IS_BOT and S_DISPLAY_REPLY_INFO -->
		<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->reply-icon<!-- ENDIF -->"><a href="{U_POST_REPLY_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED_SHORT}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF --></a></div>
	<!-- ENDIF -->
	</div>
<!-- ENDIF -->
Das müsste zwei mal gemacht werden, einmal für den Button über und einmal für den Button unter dem Beitrag.

Ich habe das jetzt in einem frisch installierten Forum mit einem Beitrag probiert, da klappt es ohne Probleme damit.

Aber vielleicht hat noch jemand eine andere Idee.;-)
Beste Grüße
Walter
Toppek
Mitglied
Beiträge: 19
Registriert: 11.03.2010 08:03

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von Toppek »

Hi,
mich hat das Thema auch bewegt; ich hab´s gelöst, indem ich das Forum gesperrt habe, dann war der Button "Neues Thema" erstmal in "Gesperrt" umgewandelt, was optisch den Hinweis gibt, dass hier nichts geht.

Der Weg von redbull254 ist natürlich deutlich eleganter, vielen Dank dafür! :grin:


grtz
toppek
Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von forant »

@redbull254

Danke für Deine Bemühungen.

Leider blicke ich dies jetzt nicht :oops: (Du setzt zuviel Wissen vorraus) :wink:

Würdest Du netterweise dies mal - für beide Buttons - als Step-by-Step Anleitung - schreiben?

Button 1 = Neues Thema: Suche / Finde / Ersetze / Ergänze
Button 2 = Antworten: Suche / Finde / Ersetze / Ergänze

damit würdest Du allen phpBB3-Benutzern wahrlich eine große Freude bereiten. :P

Ich Danke Dir vorab für Deine Bemühungen im Namen aller phpBB3-Benutzer. :cookie:

Greatings

Martin
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
redbull254
Ehemaliges Teammitglied
Beiträge: 10379
Registriert: 05.01.2006 13:01
Kontaktdaten:

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von redbull254 »

Suche in der viewtopic.html

Code: Alles auswählen

<div class="topic-actions">
	<div class="buttons">
	<!-- IF not S_IS_BOT and S_DISPLAY_REPLY_INFO -->
		<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->reply-icon<!-- ENDIF -->"><a href="{U_POST_REPLY_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED_SHORT}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF --></a></div>
	<!-- ENDIF -->
	</div>
Ersetze durch:

Code: Alles auswählen

    <!-- IF S_USER_LOGGED_IN -->
    <div class="topic-actions">
       <div class="buttons">
       <!-- IF not S_IS_BOT and S_DISPLAY_REPLY_INFO -->
          <div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->reply-icon<!-- ENDIF -->"><a href="{U_POST_REPLY_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED_SHORT}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF --></a></div>
       <!-- ENDIF -->
       </div>
    <!-- ENDIF -->

Das Ganze musst Du 2X machen, wie oben schon geschrieben.
Beste Grüße
Walter
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von forant »

Vielen Dank, hat perfekt geklappt. :P

Mache ich dies auch in der viewforum_body.html wird für Gäste als auch für registrierte Benutzer der untere Button (neues Thema) - damit kann man leben- gleichfalls ausblenden können. Mache ich dies jedoch auch beim oberen Button, erhalte ich einen Parse-Fehler.

Das Original oben lautet:

Code: Alles auswählen

<!-- IF S_DISPLAY_POST_INFO or PAGINATION or TOTAL_POSTS or TOTAL_TOPICS -->
	<div class="topic-actions" <!-- IF S_HAS_SUBFORUM -->style="margin-top: 2em;"<!-- ENDIF -->>
Wie kann man hier nur für Gäste den Button "Neues Thema" ausblenden?

das Origial unten lautet:

Code: Alles auswählen

<!-- IF .topicrow and not S_DISPLAY_ACTIVE -->
	<div class="topic-actions">
		<!-- IF not S_IS_BOT and S_DISPLAY_POST_INFO -->
		<div class="buttons">
			<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->post-icon<!-- ENDIF -->" title="<!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF -->"><a href="{U_POST_NEW_TOPIC}"><span></span><!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF --></a></div>
		</div>
		<!-- ENDIF -->
Wie kann man hier nur für Gäste den Button "Neues Thema" ausblenden?

Greatings

Martin
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
franki
Ehemaliges Teammitglied
Beiträge: 2823
Registriert: 21.10.2007 14:02
Wohnort: Sonsbeck
Kontaktdaten:

Re: Button 'antworten' soll bei Gästen nicht erscheinen

Beitrag von franki »

Hallo mdietrich

Da müsstest Du schon etwas tiefer greifen, z.B. über Gruppenrechte.
Template Variable zur Prüfung der Gruppen Mitgliedschaft hat geschrieben:Manchmal möchte man diverse Dinge im Template nur bestimmten Gruppen zur Verfügung stellen (also für bestimmte Gruppen sichtbar oder unsichtbar machen).

Aus diesem Grunde stelle ich hier mal die Anleitung zur Erstellung einer Template Variable zur Prüfung der Gruppen Mitgliedschaft zur Verfügung.

Öffne includes/functions.php
Suche

Code: Alles auswählen

'SITE_LOGO_IMG'            => $user->img('site_logo'),

        'A_COOKIE_SETTINGS'        => addslashes('; path=' . $config['cookie_path'] . ((!$config['cookie_domain'] || $config['cookie_domain'] == 'localhost' || $config['cookie_domain'] == '127.0.0.1') ? '' : '; domain=' . $config['cookie_domain']) . ((!$config['cookie_secure']) ? '' : '; secure')),
    ));
Füge danach ein

Code: Alles auswählen

if ( !function_exists('group_memberships') )
    {
        include($phpbb_root_path . 'includes/functions_user.'.$phpEx);
    }
    $groups = group_memberships(false,$user->data['user_id']);
    foreach ($groups as $grouprec)
    {
        $template->assign_vars(array(
        'S_GROUP_' . $grouprec['group_id'] => true
        ));
    }
Jetzt kannst du S_GROUP_x im Template verwenden, wobei x mit der Gruppen ID zu ersetzen ist.

<!-- IF not S_GROUP_2 and not S_GROUP_6 -->dein Code hier<!-- ENDIF -->

oder
<!-- IF S_GROUP_2 or S_GROUP_6 -->dein Code hier<!-- ENDIF -->

Hier noch einmal die Auflistung der Systemgruppen-IDs

•1. Guest - Gäste (Anonymous)
•2. Registered Users - Normale registrierter Benutzer
•3. Registered COPPA Users - registrierte Coppa Benutzer
•4. Global Moderators - Globale Moderatoren
•5. Administrators - Administratoren
•6. BOTs
•8. NEWLY_REGISTERED - Kürzlich registrierte Benutzer (neu ab phpBB3.0.6)
(Leider weis ich nicht mehr wo ich das her habe :( )
Deine aktuellen Systemgruppen-IDs müsstest Du dir aus der Tabelle phpbb_user herausholen
[OT]
Sorry Martin, hatte die Woche viel um die Ohren :-?
Ich melde mich auf jeden Fall
[/OT]
LG Franki
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“