Spoiler BBCode

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
mücheln
Mitglied
Beiträge: 22
Registriert: 29.06.2006 14:19

Spoiler BBCode

Beitrag von mücheln »

Ja Hallo,
ich habe in mein Forum den Spoiler BBCode von hier
=> http://phpbbhacks.com/download/4620
eingefügt.
Der Mod geht gut. Was mich stört, auch nicht Registrierte (nicht Eingelogt) können den Spoiler einsehen.
Kann der Code so verändert werden, das nur Leute die Eingelogt sind, den Spoiler einsehen können?
Wenn ja, gibt es einen netten Menschen der mir sagt wie und was?
Wäre sehr Nett.

THX
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Spoiler BBCode

Beitrag von Mahony »

Hallo
mücheln hat geschrieben:Was mich stört, auch nicht Registrierte (nicht Eingelogt) können den Spoiler einsehen.
Kann der Code so verändert werden, das nur Leute die Eingelogt sind, den Spoiler einsehen können?
Wenn ja, gibt es einen netten Menschen der mir sagt wie und was?
Wäre sehr Nett.

THX
Das hier sollte dir weiterhelfen >>>switches in bbcode.tpl? [snippet]<<<

P.S. Eine andere Möglichkeit, wäre dieser MOD >>>user_level_hidden_msgs_1.0.1.a<<<


Beschreibung:
This allows users to hide messages inside posts that only
certain user levels can read such as ADMIN, MOD, USER

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.
Benutzeravatar
mücheln
Mitglied
Beiträge: 22
Registriert: 29.06.2006 14:19

Beitrag von mücheln »

@ Mahony
Danke für deine hilfe. Werde beides mal versuchen.
Eine frage zu deiner ersten Antwort.
"switches in bbcode.tpl? [snippet]" Verstehe ich das richtig, wenn ich diese änderung vornehme,
das generell kein BB Code mehr angezeigt wird wenn man Ausgelogt ist?
Also auch kein [img], [quote],

Code: Alles auswählen

, ... ?
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Beitrag von Mahony »

Hallo
mücheln hat geschrieben: Eine frage zu deiner ersten Antwort.
"switches in bbcode.tpl? [snippet]" Verstehe ich das richtig, wenn ich diese änderung vornehme,
das generell kein BB Code mehr angezeigt wird wenn man Ausgelogt ist?
Nein - es kommt halt darauf an was du in der bbcode_logged_out.tpl erlaubst (was da eingetragen ist).



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.
Benutzeravatar
mücheln
Mitglied
Beiträge: 22
Registriert: 29.06.2006 14:19

Beitrag von mücheln »

Gut.
Was müßte ich dann in bbcode_logget_out.tpl verändern, damit der Spoiler nicht angezeigt wird?
Ich sehe ja nicht mal in bbcode.tpl was erlaubt ist, wie soll ich wissen was ich bei bbcode_logget_out.tpl verändern muß damit es nicht angezeigt wird.

Oh man, ich bin nun wieder an dem Punkt, wo ich mich dafür Hasse Zimmermann gelernt zu haben. :-?
Benutzeravatar
Elvis
Mitglied
Beiträge: 3373
Registriert: 26.05.2003 22:39

Beitrag von Elvis »

um es ganz einfach zu machen löscht Du in der bbcode_logged_out.tpl den HTML Code für den Button "Show" und "Hide".

Code: Alles auswählen

<input class="liteoption" type="button" value="Show"  onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Hide'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Show'; }">
und dafür schreibste einfach deinen Text hin zb"

Code: Alles auswählen

um diesen Text zu sehen mußt Du dich registrieren oder einlogen
Ergebnis würde so dann ausehen
Spoiler: um diesen Text zu sehen mußt Du dich registrieren oder einlogen
Benutzeravatar
mücheln
Mitglied
Beiträge: 22
Registriert: 29.06.2006 14:19

Beitrag von mücheln »

Also, ich habe wie hier => http://www.phpbb.de/viewtopic.php?t=133111
beschrieben die bbcode.php geändert.
Dann habe ich bbcode.tpl kopiert und in bbcode_logged_out.tpl umbenannt.
Diesen Code

Code: Alles auswählen

<input class="liteoption" type="button" value="Show"  onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Hide'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Show'; }">
habe ich nicht gehabt, bei mir sieht der so aus

Code: Alles auswählen

<input type="button" value="Show" style="width:45px;font-size:10px;margin:0px;padding:0px;" onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Hide'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Show'; }">
Diesen habe ich, wenn ich dich richtig verstanden habe komplett gelöscht, und mit dem ersetzt

Code: Alles auswählen

Um diesen Text zu sehen mußt Du dich Registrieren oder Einlogen
Und nun sieht das ergebniss im Forum, egal ob Eingelogt oder nicht, so aus

Code: Alles auswählen

[spoiler:e29b89fba4]Test versteckter Text[/spoiler:e29b89fba4]
Da ist etwas nicht wie es werden sollte. Ich Tippe, das ich wieder mal zu dumm bin und deine vorgehensweise falsch interpretiert habe.

EDIT:/
Ok., ich habe alles wieder rückgängig gemacht.
Dafür habe ich den user_level_hidden_msgs_1.0.1.a Mod eingebaut. In verbindung mit dem Spoiler Mod passt das nun recht gut.
Danke für die Hilfe.

Dickes THX
Benutzeravatar
Elvis
Mitglied
Beiträge: 3373
Registriert: 26.05.2003 22:39

Beitrag von Elvis »

dann wirste woll ein switch fehlen oder du ahst beim einbau was falsch gemacht.

ich habs gerade getestet und funktioniert.

Code: Alles auswählen

suche und finde
includes/bbcode.php 

	global $template


direkt dahinter
	, $userdata


suche
	$tpl_filename = $template->make_filename('bbcode.tpl');

	
ersetzten mit
	if ( $userdata['session_logged_in'] )
	{
	$tpl_filename = $template->make_filename('bbcode.tpl');
   	}
   	else
   	{   
 	$tpl_filename = $template->make_filename('bbcode_logged_out.tpl');
   	}
dann die bbcode.tpl kopieren "nichts vorher ändern" und in bbcode_logged_out.tpl umbenennen. Dann den Teil mit dem INPUT löschen und dafür deinen Text einfügen.

Denke aber drann das man den versteckten Text trotzdem sieht wenn man auf ZITAT drückt.
Antworten

Zurück zu „phpBB 2.0: Mod Support“