[3.3] IF Variabel Unterschied

In diesem Forum gibt es Starthilfe zum neuen Extension-System von phpBB 3.1/3.2. Fragen zur Entwicklung von Extensions und zur Konvertierung von phpBB 3.0.x MODs sind ebenfalls willkommen.
Antworten
Benutzeravatar
chris1278
Mitglied
Beiträge: 3535
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

[3.3] IF Variabel Unterschied

Beitrag von chris1278 »

Ich hätte mal eine Frage. Worin liegt der Unterschied zwischen

<!-- IF S_USER_LOGGED_IN -->

und

<!-- IF S_REGISTERED_USER -->

Für mich prüft beides das Gleiche ab. Weil einloggen kann man, nur wenn man registriert ist.
vfrblue
Ehemaliges Teammitglied
Beiträge: 1994
Registriert: 22.11.2016 18:46

Re: [3.3] IF Variabel Unterschied

Beitrag von vfrblue »

Da gibt es Unterschiede.
<!-- IF S_USER_LOGGED_IN --> bedeutet, dass der User momentan eingeloggt sein muss.

<!-- IF S_REGISTERED_USER --> bedeutet, dass es registrierte User sein müssen.

https://wiki.phpbb.com/Global_Template_Variables
Benutzeravatar
chris1278
Mitglied
Beiträge: 3535
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [3.3] IF Variabel Unterschied

Beitrag von chris1278 »

Klar das hab ich schon so verstanden.

Die Frage ist aber warum gerade doppelt. Weil ohne Registrierung kein einloggen und kein einloggen ohne Registrierung. Daher läuft nach meiner Ansicht beides auf dasselbe raus. Heißt 2 Variablen mit der gleichen Wirkung.
Benutzeravatar
Kirk
Supporter
Supporter
Beiträge: 7874
Registriert: 24.05.2010 08:31
Kontaktdaten:

Re: [3.3] IF Variabel Unterschied

Beitrag von Kirk »

Hallo
Hier findest du die Erklärung: http://phpbb3-support.square7.ch/viewto ... f=11&t=302
Verschoben von Support-Forum nach Extension Bastelstube am 24.05.2020 12:00 durch LukeWCS

Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2125
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.3] IF Variabel Unterschied

Beitrag von LukeWCS »

Da es bei der Template Sprache - insbesondere bei Twig - um Programmierung geht, passt das in der Bastelstube besser.
chris1278 hat geschrieben: 24.05.2020 02:09 Für mich prüft beides das Gleiche ab. Weil einloggen kann man, nur wenn man registriert ist.
chris1278 hat geschrieben: 24.05.2020 04:09 Weil ohne Registrierung kein einloggen und kein einloggen ohne Registrierung.
Deine Gedankengänge sind schon richtig. Die offizielle Doku ist in dem Fall bei S_REGISTERED_USER nicht selbsterklärend, da ist Mahonys Auflistung schon hilfreicher. Insbesondere die folgende Erklärung, das Wichtige ist dabei unterstrichen:
<!-- IF S_REGISTERED_USER --> Wenn der Benutzer angemeldet/eingeloggt ist und kein Bot
Das Ganze wird erst verständlich, wenn man noch eine dritte Variable dazunimmt: S_IS_BOT.

S_USER_LOGGED_IN: ist 1 (TRUE), wenn der aktuelle "Benutzer" kein Gast (sondern Benutzer oder Bot) ist. Ansonsten leer (FALSE).
S_REGISTERED_USER: ist 1 (TRUE), wenn der aktuelle "Benutzer" ein registriertes Mitglied ist (kein Bot). Ansonsten leer (FALSE).
S_IS_BOT: ist 1 (TRUE), wenn der aktuelle "Benutzer" ein Bot ist (kein registriertes Mitglied). Ansonsten leer (FALSE).

Ergänzung: Auch ein Bot ist grundsätzlich ein angemeldeter "Benutzer" für phpBB, denn auch für Bots gibt es Accounts. Der Unterschied ist nur: ein registriertes Mitglied (also ein Mensch) muss sich mit Benutzername und Passwort anmelden. Ein Bot wird anhand seiner Kennung automatisch "angemeldet".
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Benutzeravatar
chris1278
Mitglied
Beiträge: 3535
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [3.3] IF Variabel Unterschied

Beitrag von chris1278 »

OK Luke mit deiner Erklärung kann ich jetzt was anfangen. Und ja dann ergibt es einen Sinn mit beiden Variablen.

Danke jetzt hab ich das Verstanden.
Antworten

Zurück zu „Extension Bastelstube“