Hinweis nur für bestimmte Benutzergruppen

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt, um einen neuen Mod zu entwickeln, geht's in [3.0.x] Mods in Entwicklung weiter.
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.
Antworten
Andreas1823
Mitglied
Beiträge: 185
Registriert: 22.05.2012 20:04

Hinweis nur für bestimmte Benutzergruppen

Beitrag von Andreas1823 »

Hallo,

ich habe mal eine Frage:
Ich nutze ein Unterforum als Marktplatz, in dem man erst etwas anbieten kann wenn man min. 10 Beiträge geschrieben hat.
Damit neue Benutzer bis auch mitbekommen, habe ich dies in die Forenregeln (siehe Bild auch hineingeschrieben)

[ externes Bild ]

Ab 10 Beiträge rutscht das Mitglied von der Gruppe "Kürzlich registrierte Benutzer" in "Registrierte Benutzer".

Ist es irgendwie möglich nur der Gruppe "Kürzlich registrierte Benutzer" und Gästen diese Forenregel anzuzeigen ??

Grüße
Andreas
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Hinweis nur für bestimmte Benutzergruppen

Beitrag von HabNurNeFrage »

Hi,

um die Regeln in diesem Forum sowohl in der Forumübersicht und auch in der Anzeigenansicht nur für diejenigen anzuzeigen, die dort keine Schreibrechte haben:

Vorbereitung:
Forum-ID dieses (Unter-)Forums herausfinden - in der URL die Zahl hinter f=XX (XX ist die Forum-ID, hier jetzt z.B ist es 87).

Öffnen:
styles/prosilver/template/viewforum_body.html
und
styles/prosilver/template/viewtopic_body.html

In beiden folgende Stelle suchen:

Code: Alles auswählen

<!-- IF S_FORUM_RULES -->
    <div class="rules">
        <div class="inner"><span class="corners-top"><span></span></span>

        <!-- IF U_FORUM_RULES -->
            <a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a>
        <!-- ELSE -->
            <strong>{L_FORUM_RULES}</strong><br />
            {FORUM_RULES}
        <!-- ENDIF -->

        <span class="corners-bottom"><span></span></span></div>
    </div>
<!-- ENDIF --> 
In beiden ersetzen duch:

Code: Alles auswählen

<!-- IF not S_USER_CAN_POST and FORUM_ID == XX -->
<!-- IF S_FORUM_RULES -->
    <div class="rules">
        <div class="inner"><span class="corners-top"><span></span></span>

        <!-- IF U_FORUM_RULES -->
            <a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a>
        <!-- ELSE -->
            <strong>{L_FORUM_RULES}</strong><br />
            {FORUM_RULES}
        <!-- ENDIF -->

        <span class="corners-bottom"><span></span></span></div>
    </div>
<!-- ENDIF -->
<!-- ENDIF -->

<!-- IF FORUM_ID != XX -->
<!-- IF S_FORUM_RULES -->
    <div class="rules">
        <div class="inner"><span class="corners-top"><span></span></span>

        <!-- IF U_FORUM_RULES -->
            <a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a>
        <!-- ELSE -->
            <strong>{L_FORUM_RULES}</strong><br />
            {FORUM_RULES}
        <!-- ENDIF -->

        <span class="corners-bottom"><span></span></span></div>
    </div>
<!-- ENDIF -->
<!-- ENDIF --> 
In beiden Ersetzungen jeweils an zwei Stellen das XX mit der zuvor ermittelten Forum-ID ersetzen.

Danach im ACP den Board-Cache leeren.

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
Andreas1823
Mitglied
Beiträge: 185
Registriert: 22.05.2012 20:04

Re: Hinweis nur für bestimmte Benutzergruppen

Beitrag von Andreas1823 »

Hey,

als bei der viewforum funktioniert es schon fantastisch. Danke schonmal dafür.

Allerdings funktioniert es nicht in der viewtopic :-?
Die Regel wird nachwievor angezeigt bei der Themenansicht.
Was muss ich da noch korregieren ??

Grüße
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Hinweis nur für bestimmte Benutzergruppen

Beitrag von HabNurNeFrage »

Hi,

dann versuche dort mal anstelle der ersten Ersetzung folgende:

Code: Alles auswählen

<!-- IF not S_USER_CAN_POST -->
<!-- IF S_FORUM_RULES -->
    <div class="rules">
        <div class="inner"><span class="corners-top"><span></span></span>

        <!-- IF U_FORUM_RULES -->
            <a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a>
        <!-- ELSE -->
            <strong>{L_FORUM_RULES}</strong><br />
            {FORUM_RULES}
        <!-- ENDIF -->

        <span class="corners-bottom"><span></span></span></div>
    </div>
<!-- ENDIF -->
<!-- ENDIF --> 
Dadurch werden in allen Topics, wenn ein User nicht posten kann, Regeln angezeigt, sonst gar nicht.
Wenn Du irgendwo Regeln in Topics anzeigen willst, auch wenn User dort schreiben darf, müssen wir nochmal dran arbeiten...

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
Andreas1823
Mitglied
Beiträge: 185
Registriert: 22.05.2012 20:04

Re: Hinweis nur für bestimmte Benutzergruppen

Beitrag von Andreas1823 »

Hey,

das ganze sollte sicher funktionieren.
Ich denke aber das ganze geht bei mir deswegen nicht weil "kürzlich registrierte Mitglieder" auf Themen antworten dürfen nur eben nicht eigene Themen eröffnen können.

Ich habe hier https://wiki.phpbb.com/Viewforum_Template_Variables grad mal nach einer entsprechenden Anwesiung gesucht aber leider nicht gefunden
sowas wie <!-- IF not S_USERGROUP == "hier die GruppenID rein (wenn es das überhaupt gibt)" and FORUM_ID == XX -->

Frage 1: Gibt es eine entsprechende Variable welche nach der Usergruppe filtern kann ?
Frage 2: Die Standardgruppe "kürzlich registrierte Mitglieder" , welche ID hat diese Gruppe ?

Vielen dank für eure Hilfe

Grüße
Andreas
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Hinweis nur für bestimmte Benutzergruppen

Beitrag von HabNurNeFrage »

Hi,

dazu musst Du noch einen Schnipsel in die viewtopic.php eintragen:

Finde:

Code: Alles auswählen

unset($rowset, $user_cache);
Füge in neuer, leerer Zeile DANACH ein:

Code: Alles auswählen

if (!function_exists('group_memberships'))
{
    include_once($phpbb_root_path . 'includes/functions_user.'.$phpEx);
}

$groups = group_memberships(false,$user->data['user_id']);
foreach ($groups as $grouprec)
{
    $template->assign_vars(array(
    'S_IN_GROUP_' . $grouprec['group_id'] => true
    ));
}
Nun in viewtopic_body.html die Fundstelle

Code: Alles auswählen

<!-- IF S_FORUM_RULES -->
    <div class="rules">
        <div class="inner"><span class="corners-top"><span></span></span>

        <!-- IF U_FORUM_RULES -->
            <a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a>
        <!-- ELSE -->
            <strong>{L_FORUM_RULES}</strong><br />
            {FORUM_RULES}
        <!-- ENDIF -->

        <span class="corners-bottom"><span></span></span></div>
    </div>
<!-- ENDIF -->
umschließen mit:

Code: Alles auswählen

<!-- IF not S_IN_GROUP_XX  --> Fundstelle <!-- ENDIF -->
XX darin ersetzen mit der Gruppen-ID der registrierten Benutzer...

Das sollte es dann sein. In viewforum funktioniert es wie gewünscht?
Wenn nicht, kannst Du dort ähnlich vorgehen.

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
Antworten

Zurück zu „[3.0.x] Mod Suche/Anfragen“