Zum Inhalt springen

felogin - "Redirect" zu aktueller Seite

Erstellt am 4. Juni 2010 · 2 Antworten · letzte Antwort am 30. Oktober 2010

Tags: felogin, Frage

sebastian_wr ·

Hallo zusammen,

wär es möglich, felogin so zu konfigurieren (habs via TS eingebunden), dass es nach einem erfolgreichen Login zu der Seite "weiterleitet", auf der man das Formular abgeschickt hat?

Ziel des ganzen ist, die "Welcome-Message" zu überspringen und direkt(!) nach dem Einloggen das Ausloggen-Formular präsentiert zu bekommen.

Hat jemand eine Idee?

Viele Grüße,
Sebastian

sebastian_wr ·

So, habe das ganze nun über einen Hook gelöst. Im Anhang die passende Extension dazu.

Aus dem Template muss man das Hidden-Feld "redirect_url" entfernen, dies generiert die Extension mit der URL der gerade aufgerufenen Seite. Felogin muss man dann natürlich so konfigurieren, dass ein get/post-Redirect stattfindet.

plugin.tx_felogin_pi1 {  
  redirectMode = getpost
  redirectFirstMethod = 1
}

Resultat ist, dass die Welcome-Message nicht mehr angezeigt wird. D.h. der Ablauf ist jetzt:

Login-Formular <-- absenden --> Logout-Formular.

Hoffe, es interessiert jemanden. 😉

Viele Grüße,
Sebastian

ce_felogin_redirect.0.2.0.t3x
2kB
Obstel ·

so ich habe lange Zeit gesucht und mir die Extension angeschaut und bei mir eingebaut.

Der Redirect klappte, aber nur bei statischen Seiten. Wenn man in einem Thread in mm_forum war, hat er mich wieder auf die Forumindexseite geschmissen.

function replaceRedirect($params, $pObj)
	{
		$pageLink = $pObj->pi_getPageLink(intval($GLOBALS['TSFE']->page['uid']), array(),TRUE);		
		$hiddenField = '<input type="hidden" name="redirect_url" value="' . $pageLink . '" />';
		
		return array('',$hiddenField);
	}

was der Code ja auch macht.

Ich habe den Code ein wenig angepasst und den Funktionsaufruf verändert zu

function replaceRedirect($params, $pObj)
	{
		$pageLink = $pObj->pi_getPageLink(intval($GLOBALS['TSFE']->page['uid']), '', $_GET);		
		$hiddenField = '<input type="hidden" name="redirect_url" value="' . $pageLink . '" />';
		
		return array('',$hiddenField);
	}

Wichtig ist hier der dritte Parameter, den muss man auf $_GET setzen. Jetzt wird man immer auf die Seite weitergeleitet, von der man das Formular aus aufruft.

Hoffe geholfen zu haben.

gefunden hab ich die Lösung hier http://lists.typo3.org/pipermail/typo3-german/2005-November/006975.html