This is my configuration part. Nothing more.
plugin.tx_felogin_pi1 {
storagePid = 26
newPasswordMinLength = 3
showPermaLogin = 1
exposeNonexistentUserInForgotPasswordDialog = 1
}
I've make some modifications in the file /typo3/sysext/felogin/Classes/Controller/FrontendLoginController.php in my test installation. Then its working fine.
Line number 743 to 753 posted here and my changes are highlighted.
protected function getPageLink($label, $piVars, $returnUrl = FALSE, $noPreserve=1) {
$additionalParams = '';
if (count($piVars)) {
foreach ($piVars as $key => $val) {
$additionalParams .= '&' . $key . '=' . $val;
}
}
// Should GETvars be preserved?
if ($this->conf['preserveGETvars'] && $noPreserve) {
$additionalParams .= $this->getPreserveGetVars();
}
And also $markerArray['###BACKLINK_LOGIN###'] is empty in several cases.
So that I've added the following code in line number 214 of the same file.
$markerArray['###BACKLINK_LOGIN###'] = $this->getPageLink($this->pi_getLL('ll_forgot_header_backToLogin', '', 1), array(),FALSE,0);
I've noted one more issue, if we login with invalid username and password, the form does not shows the error message. From my investigations, i can understood this is because of \TYPO3\CMS\Core\Utility\HttpUtility::redirect($this->redirectUrl); in the line number 162 of the controller file.
I've changed that code like this (see the code below), and that issue is fixed.
if( $this->userIsLoggedIn ){
\TYPO3\CMS\Core\Utility\HttpUtility::redirect($this->redirectUrl);
}
Please check.