Spoiler für eine Benutzergruppe unsichtbar machen?

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.
Buchwurm
Mitglied
Beiträge: 270
Registriert: 12.02.2013 17:31

Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von Buchwurm »

Naben allerseits,
ich versuche es nochmal.
Ich habe einen BBC Code Spoiler in meinem Forum eingebaut, und nun möcht ich das dieser Spoiler von einer Benutzergruppe (Gäste) nicht gesehen oder besser nicht geöffnet werden kann, ansonsten macht ja ein Spoiler keinen Sinn wenn Ihn jeder öffnen kann braucht man ja keinen.

BlackHawk87 hatte mir mal einen Link gegeben viewtopic.php?f=87&t=224586
wie man es für Altersbeschrenkung machen kann, hilft mir aber leider nicht weiter da ich nicht die Kenntnis habe es so zu ändern das es für meine Vorstellung dann passen würde.

Hoffe nun hier nochmal das mir einer helfen kann da sonst wie gesagt der Spoiler keinen Sinn macht.

Mfg
Buchwurm
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von BNa »

Edit: Falscher Link..
Zuletzt geändert von BNa am 26.03.2013 18:57, insgesamt 1-mal geändert.
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von HabNurNeFrage »

Buchwurm hat geschrieben:BlackHawk87 hatte mir mal einen Link gegeben viewtopic.php?f=87&t=224586
wie man es für Altersbeschrenkung machen kann, hilft mir aber leider nicht weiter da ich nicht die Kenntnis habe es so zu ändern das es für meine Vorstellung dann passen würde.
Hi, ich beziehe mich mal komplett auf das zitierte Posting von Miriam:

Punkt 1.
Alles genau so machen und den letzten Codeblock (den vierten unter 1.) ersetzen durch:

Code: Alles auswählen

if (($user->data['user_id'] == ANONYMOUS) or $user->data['is_bot'])
    {
    $text = preg_replace('/\[intern(.*)\].*\[\/intern(.*)\]/', "<br /><span style=\"color:red;\">Nur Mitglieder sehen diese Inhalte.</span><br />", $text);
    } 
Punkt 2. entfällt (Du benötigst für die Gastabfrage keine neue Funktion)

Punkt 3. entfällt (den Umweg über die Sprachvariable kannst Du "Quick'n'Dirty" auch noch umgehen)

Punkt 4:
bbCode -> Nutzung: [intern]{TEXT}[/intern] | Ersetzung: <span>{TEXT}</span>

Grad bei mir getestet, für gut befunden und bei uns im Board online gestellt...
Hier wird nur die Ersetzung für Gäste rot gefärbt und alle Inhalte, die man stattdessen eingeloggt zu sehen bekommt, bleiben unverändert.

LG

edit: Ich hab den Code nochmal etwas geändert, sodass die Inhalte auch für Bots nicht sichtbar sind...
| 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; };
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von BNa »

Funktioniert das auch beim [quote], senden eines Beitrags per PM, Suche etc.?
Ich meine für Gruppen, weil für Gäste ist ja easy..
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von HabNurNeFrage »

Hi,

funktioniert in [ quote ], man kann [ code ] bla bla [ /code ] damit umschließen und in PN sowie autoquoted PN, wenn man die Schaltfläche "PN" in viewtopic anklickt.
(Anm.: Leider nicht zu testen ist, ob die Ausblendung in PN funktioniert, da weder Gäste noch Bots PN sehen können :wink: )

Vom neuen bb-Code umschlossene Begriffe werden in der Suche (sofern eingeloggt gesucht wird) gefunden.

Folgendes ist reine, ungetestete Theorie:

[theorie_start]
Wenn man das für Gruppen machen möchte, müsste man eventuell vorher noch die functions_user.php inkludieren, sofern die Funktion in der includes/functions_content.php nicht bereits present ist. Vielleicht reicht auch die globale $user Variable.
Habe es nicht getestet. Könnte man eventuell so machen:

Code: Alles auswählen

if ( !function_exists('group_memberships') )
 {
 include($phpbb_root_path . 'includes/functions_user.'.$phpEx);
 }
Danach könnte man dann anstelle von
if ($user->data['user_id'] == ANONYMOUS)
dann vielleicht
if ($user->data['group_id'] == 'xx')
abfragen. xx wäre dabei die ID der Gruppe.

Ob das funktioniert müsste man mal tesen. Fragt sich auch, inwieweit die Performance daurch beeinträchtigt wird...
[/theorie_end]

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; };
Benutzeravatar
Talk19zehn
Ehemaliges Teammitglied
Beiträge: 5018
Registriert: 08.06.2009 12:03

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von Talk19zehn »

Hi, eine ähnliche Anfrage, die u.U. noch immer ergänzend weiterhilft:
viewtopic.php?p=1143403#p1143403
Adventereigniskalender für phpBB 3.3.x,
Meine persönliche Meinung im Jahr 2024: Im Zenit seiner Popularität wirkt KI zunächst wie eine Blaupause und lässt sich aufgrund der Vielschichtigkeit nicht auf eine einzige Botschaft reduzieren. Präteritum, Perfekt, Präsens, Futur & Plusquamperfekt werden nicht fehlerfrei genutzt, gar missverstanden.
Buchwurm
Mitglied
Beiträge: 270
Registriert: 12.02.2013 17:31

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von Buchwurm »

Hi,
hab ich soweit erledigt nur der Punkt 4 weiss ich nicht was ich da machen soll ?

Punkt 4:
bbCode -> Nutzung: [intern]{TEXT}[/intern] | Ersetzung: <span>{TEXT}</span>

Muss ich den BBC Code Spoiler verändern denn der soll ja bleiben ?

[intern]{TEXT}[/intern] <-- finde ich gar nicht

Mfg

Edit:
hab ganz vergessen das ich den Style supsilver2 benutze Sorry
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von HabNurNeFrage »

Hi,

die Beschreibungen in diesem Thread beziehen sich auf die Erstellung eines zusätzlichen bbCodes.
Admin-Bereich => Beiträge => bbCodes => bbCode hinzufügen

Danach hast Du dann sowohl Deinen jetzigen bbCode [spoiler] als auch den neuen [intern] :cookie:

Der neue bbCode [intern] bewirkt, dass damit umschlossene Inhalte nicht für Gäste und Bots zu sehen sind.
Diesen wird stattdessen ein anderer Text angezeigt.

Wenn Du das Ganze dann auch noch als Spoiler haben willst, müsstest Du beide Codes verschachtelt nutzen,
also im Beitrag dann: [spoiler][intern] bla bla bla, was man nur eingeloggt sehen soll [/intern][/spoiler]

Um das Ganze zu kombinieren, also beide bbCodes in einem bbCode zusammenzufassen,
müsstest Du mal den Inhalt Deiner HTML-Ersetzung aus dem Spoiler-Code hier rein kopieren.

Dazu müsste Dein jetziger [spoiler] bbCode angepasst werden, sodass alle Beiträge auch weiterhin korrekt funktionieren,
in denen der bbCode bereits verwendet wird.

ich hoffe, dass war jetzt verständlich erklärt :o

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; };
Buchwurm
Mitglied
Beiträge: 270
Registriert: 12.02.2013 17:31

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von Buchwurm »

Hi,
danke für die Erklärung funktioniert soweit nur ein problem bleibt.

Und zwar wird es nur dann unsichtbar wenn man jede Zeile in Intern stellt

Beispiel:
[intern]Klick Hier [/intern] so ist es unsichtbar wenn ich aber mehere Zeilen einstellen will

[intern]Klick Hier

Klick Hier

Klick Hier[/interm]
wird es so sichbar ?

Ich müste dann jede eineln also so

[intern]Klick Hier [/intern]

[intern]Klick Hier [/intern]

[intern]Klick Hier [/intern]

gibt es da noch ne Lösung mehere Zeilen (Reihen) mit einer Makierung intern zu setzen ?

Mfg
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Spoiler für eine Benutzergruppe unsichtbar machen?

Beitrag von HabNurNeFrage »

Hi,

schnapp Dir nochmal den Code in der functions_content.php und lösche darin die beiden <br />
Du kannst auch das erste <br /> durch <p> und das zweite durch </p> ersetzen...

Im Falle des Löschens der <br /> wird der rote Text im normalen Textfluss angezeigt und mit <p></p> umschlossen zu einem eigenen Absatz.

Innerhalb von Spoiler funktioniert das Ganze bei mir nicht.
Es wird dann auch für Gäste der Inhalt angezeigt, da der Spoiler-Code die Inhalte nicht erneut an das Gesamtscript sendet.
Sofern sich HTML im preg_replace () befindet, wird der spoiler-Code gar nicht mehr geparst.
Ich empfehle den neuen Code nicht in Verbindung mit Javascript-Konstrukten, die onclick ein und ausblenden.

Um das Ganze Spoilerfähig zu machen, müsste man die if-Abfrage direkt für den Spoiler-Code umschreiben.
Dafür einfach die Ausdrücke im preg_replace auf Deinen Code anpassen, also wo jetzt intern steht, mit spoiler ersetzen.
(oder wie auch immer der bbCode benannt ist, auf den sich die if-Bedingung auswirken soll)

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] Administration, Benutzung und Betrieb“