[Frage] felogin per XCLASS erweitern

  • Flexmex Flexmex
    TYPO3-Anwärter
    0 x
    4 Beiträge
    0 Hilfreiche Beiträge
    13. 02. 2014, 14:33

    Ich stehe gerade vor der Situation, dass ich ein bestehendes Loginsystem auf 6.1.x Basis erweitern muss um einen Vergleich mit einer internen Datenbank...

    Dachte ich mir kein Problem, war schon früher einfach per Auth Service ... Denkste ;)

    Ich kriege es leider nicht wirklich hin.

    Die alte Weise funktioniert nicht mehr, habe ich bereits mit gerechnet. Bevor ich mich jetzt aber auf die felogin selbst stürze, frage ich hier mal nach, was ich falsch mache... Oder wo ich eine völlig falsche Idee habe.

    ext_localconf.php

    1. $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Felogin\\Controller\\FrontendLoginController'] = array(
    2. 'className' => 'Flex\\FooAuth\\Felogin\\Controller;\\Tx_FooAuth_Controller_FooAuthController',
    3. );

    FooAuthController.php

    1. namespace Flex\FooAuth\Felogin\Controller;
    2. # [...]
    3. class Tx_FooAuth_Controller_FooAuthController extends TYPO3\CMS\Felogin\Controller\FrontendLoginController {
    4. /**
    5.   * Shows login form
    6.   *
    7.   * @return string Content
    8.   */
    9. protected function showLogin() {
    10. return '';
    11. }
    12.  
    13. }

    Leider zeigt sich nichts... Der Login Controller zeigt sich völlig unbeindruckt von meinen Versuchen.


  • 1
  • Julian.Hofmann Julian.Ho...
    Flash Gordon
    0 x
    3079 Beiträge
    132 Hilfreiche Beiträge
    18. 02. 2014, 09:21

    Hallo.

    Zitiert von: Flexmex
    Die alte Weise funktioniert nicht mehr,

    Das kann ich [u]nicht[/u] bestätigen. Wir haben gerade erst ein Projekt an den Start gebracht, das auf TYPO3 CMS 6.1.7 läuft und bei dem das FE-Login via Service erweitert wurde.

    Wie äußert sich denn "funktioniert nicht mehr" bei Dir? Vielleicht ist nur irgendwo noch der Wurm drin...

    Viele Grüße
    Julian

  • CrashOverride CrashOver...
    Padawan
    0 x
    59 Beiträge
    0 Hilfreiche Beiträge
    04. 03. 2014, 17:22

    Ich habe genau dasselbe Problem.
    Ich würde gerne den Authentifizierungsprozess von TYPO3 auf eine andere Tabelle "umbiegen". Bislang habe ich das mittels einer XCLASS gemacht, die Einbindung ist aber ab TYPO3 6.x anders - und siehe da, ich bekomms auch nicht zum Laufen!

    Mein Aufbau ist nahezu identisch mit dem im ersten Post, gibt es hierzu vielleicht schon irgendeine Lösung außer ggf. mit einem Service zu arbeiten?

    Viele Grüße,
    Thomas

  • CrashOverride CrashOver...
    Padawan
    0 x
    59 Beiträge
    0 Hilfreiche Beiträge
    05. 03. 2014, 11:49

    Ich hab die Lösung gefunden... Sollte es jemanden auf diese Seite verschlagen, kann ich damit vielleicht helfen :-)

    Die XCLASS muss in der ext_localconf.php wie folgt registriert werden:

    1. // XCLASS
    2. $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Felogin\\Controller\\FrontendLoginController'] = array(
    3. 'className' => 'Foo\\FooExt\\Xclass\\FrontendLoginController',
    4. );
    5. $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['tx_felogin_pi1'] = $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Felogin\\Controller\\FrontendLoginController'];

    Man beachte die letzte Zeile. Felogin ist noch als pi_base Extension vorhanden und das muss irgendwie überschrieben werden und ab dann greift die XCLASS so wie sie soll!

  • daFalk daFalk
    Padawan
    0 x
    62 Beiträge
    0 Hilfreiche Beiträge
    22. 05. 2015, 13:18

    Hi, ich grabe mal aus:

    Ich stehe leider vor 'nem ähnlichen Problem. Mit der Lösung von CrashOverride tut sich zwar endlich was, aber das einzige was passiert ist: die Seite bleibt weiß.

    extKey: feloginPwchange
    mein ext_localconf:

    1. <?php
    2. $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Felogin\\Controller\\FrontendLoginController'] = array(
    3. 'className' => 'Roeder\\FeloginPwchange\\Xclass\\FrontendLoginController'
    4. );
    5.  
    6.  
    7. $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['tx_felogin_pi1'] = $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Felogin\\Controller\\FrontendLoginController'];

    meine Klasse (liegt in ext/feloginPwchange/Classes/Xclass und heisst FrontendLoginController.php):

    1. <?php
    2. namespace Roeder\FeloginPwchange\Xclass;
    3.  
    4.  
    5.  
    6. /**
    7.  * XCLASS of 'frontendLoginControler'
    8.  *
    9.  * @author Falk Röder
    10.  */
    11. class FrontendLoginController extends \TYPO3\CMS\Felogin\Controller\FrontendLoginController {
    12.  
    13. /**
    14. * Shows the forgot password form
    15. *
    16. * @return string Content
    17. */
    18. protected function showForgot() {
    19. echo ('blubb');
    20. }
    21.  
    22.  
    23. }

    Weiß hier jemand Rat? :)

  • CrashOverride CrashOver...
    Padawan
    0 x
    59 Beiträge
    0 Hilfreiche Beiträge
    09. 06. 2015, 09:22

    die Seite bleibt weiß.

    Was steht denn in den Error-Logs? Hast du das Error-Reporting angeschalten?

    Oder bin ich viel zu spät dran und du hast den Fehler schon entdeckt? :)

  • 1