Ergebnis 1 bis 4 von 4

Thema: Ausgabe der globalen Variable für lastLogin und currentLogin

  1. #1
    Contao-Nutzer Avatar von GeorgDerks
    Registriert seit
    20.01.2010.
    Ort
    47906 Kempen
    Beiträge
    70
    Partner-ID
    6516

    Standard Ausgabe der globalen Variable für lastLogin und currentLogin

    Hallo zusammen!

    Möchte gerne in einem Modul den Wert der globalen Variable für lastLogin und currentLogin (s. Code unten) auswerten. Habe mir dazu die globalen Variablen mittels
    PHP-Code:
    <?php print_r($GLOBALS); ?>
    ausgeben lassen und schon ziemlich viel probiert (Trial & Error ), komme jedoch nicht auf die richtige Syntax. Habe z.B. $GLOBALS['controller']['User']['lastLogin'] probiert.

    Code:
        [controller] => Contao\FrontendIndex Object
            (
                ...
                [arrObjects:protected] => Array
                    (
                        [User] => Contao\FrontendUser Object
                            (
                                [strTable:protected] => tl_member
                                [strCookie:protected] => FE_USER_AUTH
                                [strLoginPage:protected] => 
                                [arrGroups:protected] => a:1:{i:0;s:1:"1";}
                                [intId:protected] => 8
                                [strIp:protected] => 93.239.177.89
                                [strHash:protected] => 8290ea00ffb08af5bcc209df65ccfba133da9991
                                [arrData:protected] => Array
                                    (
                                        [id] => 8
                                        [tstamp] => 1455780581
                                        ...
                                        [lastLogin] => 1456775021
                                        [currentLogin] => 1456838398
                                        ...
    Wäre schön, wenn jemand Bescheid wüsste (und mir's auch postet ;-)).
    Geändert von GeorgDerks (01.03.2016 um 21:40 Uhr)
    Herzlichen Gruß,

  2. #2
    Contao-Fan
    Registriert seit
    16.05.2014.
    Beiträge
    295

    Standard

    Stellt sich erstmal die Frage wo du das brauchst?

    Einige der globalen Variablen bekommt man über
    PHP-Code:
    global $objPage;
    objPage->pageTitle
    lastLogin ist als Variable beispielsweise auch im Logout-Template vorhanden.
    Das könnte auch schon reichen, man kann das ja entsprechend positionieren auch über eine Template bearbeitung anders oder nochmals ausgeben.

    Dann sollte man dran kommen, wenn man sich eine
    PHP-Code:
    $user FrontendUser::getInstance(); 
    Instanz der FrontendUser-Klasse holt.

    Manches geht auch übers $GLOBALS Array.
    Ob man irgendwie an die Daten in Controller kommt kann ich grad aber auch nicht sagen.

  3. #3
    Contao-Nutzer Avatar von GeorgDerks
    Registriert seit
    20.01.2010.
    Ort
    47906 Kempen
    Beiträge
    70
    Partner-ID
    6516

    Standard

    Vielen Dank, Znrl!

    Deine Überlegungen haben mich auf die richtige Fährte gebracht. Habe im Forum mal nach
    PHP-Code:
    FrontendUser::getInstance() 
    gesucht und den Thread unter
    https://community.contao.org/de/show...ll=1#post37460
    gefunden, in dem folgender Workaround genannt war:
    PHP-Code:
    $this->import('FrontendUser','User');
    $name $this->User->username
    Das habe ich dann umgemünzt auf das lastLogin:
    PHP-Code:
    $this->User->lastLogin 
    Hat funktioniert!!

    Und jetzt verrate ich Dir, wofür ich's brauche ;-): Eine öffentliche Terminliste soll nach dem Einloggen zu jedem Termin zusätzliche interne Infos für angemeldete Mitglieder ausgeben. Ein Termin soll dann optisch hervorgehoben sein, wenn die letzte Änderung später als das letzte jeweilige Login erfolgt ist. Der Zeitpunkt des letzten Logins sollte daher im event_teaser.html5 und nicht im Logout-Template ausgewertet werden. Die ganze Abfrage lautet nun:
    PHP-Code:
    <p<?php if ($this->tstamp $this->User->lastLogin) : ?> class="neu"<?php endif; ?>>
    blabla
    </p>
    Herzlichen Dank für Ihre Hinweise, gelöst!
    Geändert von GeorgDerks (01.03.2016 um 21:41 Uhr)
    Herzlichen Gruß,

  4. #4
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Znrl hatte dir die neue Variante gezeigt, die geht so:
    PHP-Code:
    $user FrontendUser::getInstance();  
    echo 
    $user->lastLogin;
    // oder direkt
    echo FrontendUser::getInstance()->lastLogin
    ps: PHP-Code hier im Forum bitten in PHP-Code wrappen.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •