Zum Inhalt springen

Login redirect_url bleibt leer

Erstellt am 24. Juli 2012 · 4 Antworten · letzte Antwort am 30. Juli 2012

Tags: felogin, Frage

dfluess ·

Hallo,

nach stundenlangem Googeln und suchen in allen möglichen Quellen bin ich kein deut weiter.

Ich lasse geschützte Seiten im Menü trotzdem anzeigen mit:

1 {
    showAccessRestrictedPages = 28
    showAccessRestrictedPages.addParams = &return_url=###RETURN_URL###&pageId=###PAGE_ID### 
[...]

Klick auf einen geschützten Link leitet also automatisch auf die Login-Seite.
Nun soll der Benutzer aber nach dem Login auch wieder auf die alte Seite zurück springen. Das passiert lt. Doku normalerweise mit:

plugin.tx_felogin_pi1.redirectMode = referer
config {
        typolinkAccessRestrictedPages = 28 
        typolinkAccessRestrictedPages_addParams = &return_url=###RETURN_URL###
}

28 ist die Seiten-ID mit dem Login-Formular.

Das funktioniert ums verrecken nicht. Das Hidden-Field im Login-Formular ist und bleibt leer!
< input type="hidden" value="" name="redirect_url" >

Kennt jemand dieses Problem und weiß vielleicht Abhilfe?

Danke 🙂

Gruß, Detlef

dfluess ·

@EDIT
hab gerade noch gesehen, das im Quellcode weiteres steht. return_url fehlt sowohl im Action URL als auch in einem weiteren Hidden-Field.

<form onsubmit="tx_rsaauth_feencrypt(this);; return true;" method="post" target="_top" action="index.php?id=28&return_url=&pageId=97">

<input type="hidden" value="http://typo3.p144408.mittwaldserver.info/index.php?id=28&return_url=&pageId=97" name="referer">

Hat jemand eine Erklärung dafür? o.O

LuP ·

Hallo dfluess,

ich hatte auch dieses Problem und konnte es wie folgt lösen.

1) im TS habe ich auf return_url verzichtet (in der URL bleibt der Parameter bei zugriffsbeschränkten Seiten leer)

    # TMENU
  1.showAccessRestrictedPages = 123
  1.showAccessRestrictedPages.addParams = &pageId=###PAGE_ID###

2) zum Redirect Mode des felogin Plugins musste ich "Defined by GET/POST Parameters" hinfügen

3) in der class.tx_felogin_pi1.php musste ich zusätzlich Änderungen vornehmen, damit der redirect_url Parameter aus dem hidden field abgefragt wird

class tx_felogin_pi1 extends t3lib_pibase {
	...
	public function main($content,$conf)	{
		...

			// if config.typolinkLinkAccessRestrictedPages is set, the var is return_url
-		$returnUrl =  t3lib_div::_GP('return_url');
+		$returnUrl = $this->cObj->typoLink_URL(
+			array(
+				'parameter' => (int)t3lib_div::_GP('pageId'),
+				'linkAccessRestrictedPages' => TRUE
+			)
+		);

		...
		
		if ($this->piVars['forgot']) {
			$content .= $this->showForgot();
		} elseif ($this->piVars['forgothash']) {
			$content .= $this->changePassword();
		} else {
			if($this->userIsLoggedIn && !$this->logintype) {
				$content .= $this->showLogout();
+			} elseif ($this->userIsLoggedIn && $this->logintype && $this->redirectUrl){
+				// passthrough
			} else {
				$content .= $this->showLogin();
			}
		}

Mit diesen Änderungen funktioniert nun der Sprung auf die alte Seite zurück.

VG,
LuP

dfluess ·

Vielen Dank, das funktioniert nun!

Echt blöd, dass einige Bugs nicht behoben werden, so auch der, dass der Parameter "showAccessRestrictedPages" bei TMENU special=list noch immer nicht funktioniert.
Zum Glück steht im BugReport die Lösung.

Danke für den Tipp!

Gruß Detlef

LuP ·
dfluess schrieb

Echt blöd, dass einige Bugs nicht behoben werden, so auch der, dass der Parameter "showAccessRestrictedPages" bei TMENU special=list noch immer nicht funktioniert. Zum Glück steht im BugReport die Lösung.

Genau, der Bug brachte mich auch fast am Verzweifeln.

VG,
LuP