If Bedingungen in Templates

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
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.
Benutzeravatar
WileCoyote
Mitglied
Beiträge: 901
Registriert: 13.07.2011 07:38
Wohnort: Österreich

Re: If Bedingungen in Templates

Beitrag von WileCoyote »

Ich kann mir im Moment nicht vorstellen, warum gerade nur bei ungelesenen Beiträgen ein Script ausgeführt werden sollte. Das tut aber auch nichts zur Sache. Man müßte eine eventuelle Lösung an die Funktion für ungelesene Beiträge knüpfen. Einen Link zum Einlesen kann ich dir dafür nicht anbieten. Du müßtest die Funktion schon analysieren. Wenn du von Programmieren keine Ahnung hast, würde ich an deiner Stelle aber die Finger davon lassen.
Gruß WileCoyote
timotheus
Mitglied
Beiträge: 42
Registriert: 27.01.2010 18:14

Re: If Bedingungen in Templates

Beitrag von timotheus »

Ne das Script soll bei ungelesenen Beiträgen nicht ausgeführt werden. Aber gut bisher ist erstmal alle gut. Ich würde aber auch sagen, dass ich nicht gänzlich unerfahren bin und anfangen mit was auch immer musste und muss jeder ;)


Schönen Abend euch noch.

EDIT:
Einen hab ich noch ;)

Code: Alles auswählen

<!-- IF not S_UNREAD_POST -->
funktioniert auch nicht obwohl es doch müsste oder?

Kann ich nicht auch irgendwie mit der Variable arbeiten

Code: Alles auswählen

U_VIEW_UNREAD_POST
gefunden hier - Danke Miriam :)

Edit2:

Einen Vergleichsoperator "enthält" gibts ja, so wie ich gelesen habe nicht. Ich müsste ja nur daraufhin überprüfen, ob der aufgerufenen URL viewtopic.php ein #unread anhängt, das wärs ja schon?!
Wie ich bereits sagte, ich wiederhole mich nie!
Benutzeravatar
WileCoyote
Mitglied
Beiträge: 901
Registriert: 13.07.2011 07:38
Wohnort: Österreich

Re: If Bedingungen in Templates

Beitrag von WileCoyote »

timotheus hat geschrieben:EDIT:
Einen hab ich noch ;)

Code: Alles auswählen

<!-- IF not S_UNREAD_POST -->
funktioniert auch nicht obwohl es doch müsste oder?
Bei dieser Bedingung wird das Script ausgeführt, wenn S_UNREAD_POST auf der Seite, auf der du dich gerade befindest, nicht vorhanden ist.

Code: Alles auswählen

<!-- IF S_UNREAD_POST -->
Könnte eventuell funktionieren, weil die Variable beim Aufruf der viewtopic.php vorhanden ist und die Variable prüft, ob ein ungelesener Beitrag vorhanden ist. Ganz überzeugt bin ich davon aber nicht

Versuche also folgende Abfrage:

Code: Alles auswählen

<!-- IF $_SERVER['SCRIPT_NAME'] == '/index.php' or $_SERVER['SCRIPT_NAME'] == '/neueSeite.php' or S_UNREAD_POST -->
timotheus hat geschrieben:Kann ich nicht auch irgendwie mit der Variable arbeiten

Code: Alles auswählen

U_VIEW_UNREAD_POST
gefunden hier - Danke Miriam :)
Bei dieser Abfrage

Code: Alles auswählen

<!-- IF U_VIEW_UNREAD_POST -->
wird überprüft, ob beim Seitenaufruf der viewtopic.php U_VIEW_UNREAD_POST vorhanden ist. Das würde nicht zum gewünschten erfolg führen, weil U_VIEW_UNREAD_POST verschiedene Werte/Zustände haben kann.

Bei dieser Abfrage

Code: Alles auswählen

<!-- IF not U_VIEW_UNREAD_POST -->
wird das Script nicht ausgeführt, weil die Bedingung beim Aufruf der viewtopic.php nicht erfüllt ist (U_VIEW_UNREAD_POST ist vorhanden!)
Beides führt also nicht zum gewünschten Erfolg.
Gruß WileCoyote
timotheus
Mitglied
Beiträge: 42
Registriert: 27.01.2010 18:14

Re: If Bedingungen in Templates

Beitrag von timotheus »

WileCoyote hat geschrieben:
timotheus hat geschrieben:EDIT:
Einen hab ich noch ;)

Code: Alles auswählen

<!-- IF not S_UNREAD_POST -->
funktioniert auch nicht obwohl es doch müsste oder?
Bei dieser Bedingung wird das Script ausgeführt, wenn S_UNREAD_POST auf der Seite, auf der du dich gerade befindest, nicht vorhanden ist.
Genauso soll es ja. Also ausführen wenn in der URL viewtopic.php nicht "#unread" angefügt ist. Wenn "#unread" angefügt dann nicht ausführen. Leider funktioniert das so aber nicht :(.
Wie ich bereits sagte, ich wiederhole mich nie!
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: If Bedingungen in Templates

Beitrag von Miriam »

Es klappt deshalb nicht, weil Du es wahrscheinlich an der falschen Stelle eingefügt hast.

Was soll eigentlich passieren, wenn Du auf eine Seite mit ungelesenen Nachrichten kommst? Aber ohne den Link mit dem unread-Anker zu benutzen?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
timotheus
Mitglied
Beiträge: 42
Registriert: 27.01.2010 18:14

Re: If Bedingungen in Templates

Beitrag von timotheus »

Hi Miriam,

es soll gar nix passieren. Der Grund ist das die URLs auf den Seiten wo das Script greifen soll weiterverwendet werden sollen aber eben keine URL's die #unread angehangen haben, daher wollte ich das Script auf diesen Seiten gar nicht erst ausführen lassen.

Code: Alles auswählen

<!-- IF not S_IS_BOT -->
<!-- IF not S_UNREAD_POST -->
<!-- IF ($_SERVER['SCRIPT_NAME'] == '/index.php' or $_SERVER['SCRIPT_NAME'] == '/viewtopic.php' ) -->
<script type="text/javascript">
blablabla
</script>
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
So hab ich es gemacht und es geht nicht.
Wie ich bereits sagte, ich wiederhole mich nie!
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: If Bedingungen in Templates

Beitrag von Miriam »

finde in der viewtopic.php
  • Code: Alles auswählen

        'S_ENABLE_FEEDS_TOPIC'    => ($config['feed_topic'] && !phpbb_optionget(FORUM_OPTION_FEED_EXCLUDE, $topic_data['forum_options'])) ? true : false, 
danach füge ein:
  • Code: Alles auswählen

        'S_SHOW_SCRIPT'            => (request_var('view', '') !== 'unread') ? true : false, 
dann in deiner overall_footer, dort, wo Du es haben möchtest:
  • Code: Alles auswählen

    <!-- IF S_SHOW_SCRIPT -->
        <Dein Script Code>
    <!-- ENDIF --> 
Lies auch: KB:tippstyles
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
timotheus
Mitglied
Beiträge: 42
Registriert: 27.01.2010 18:14

Re: If Bedingungen in Templates

Beitrag von timotheus »

Hi Miriam,

danke für deine Hilfe. Werde es mal zu Testzwecken später ausprobieren.

Da die URL's nun um das "#unread" gekürzt werden, ist alles gut. :)
Wie ich bereits sagte, ich wiederhole mich nie!
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: If Bedingungen in Templates

Beitrag von Miriam »

Sie werden nicht gekürzt, aber es wird auch per GET der Parameter view mit dem Wert unread übergeben.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“