chdemko / joomla-external-login

The External Login project allows Joomla! to manage external Authentication Servers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Redirected to component/users/profile.html?Itemid=xxx

shteevy opened this issue · comments

Hello,

Since the update of Joomla to version 3.8.10, our users are redirected after a good login to https://our-domain.tld/component/users/profile.html?Itemid=xxx

We did not change anything in the External login and CAS config before the update of Joomla.

We are using the last version of plugin 3.1.2.0 and the problem is still present on our 3 websites.

Thank you for your help,
Steve

You can now precise the login url for each CAS server.

Hello Christophe, this answer is not helping :( Even if a page is choosed, we are redirected to the profile page. I experience it again on a fresh install of Joomla. I think something has changed in the routing method in Joomla 3.8.9 release.

Steve.

Unfortunatély, I cannot fix this issue for now. You are welcome to propose a Pull Request

Thank you Christophe. I'm not a coder but i have some friends that are good but not familiar with Joomla Framework. We search for two days without result. Do you have an advise or some explanation for them ?

Hello,

We fix this using this code : ..\plugins\system\caslogin\caslogin.php (line 447)

Replace :

$input->set('option', 'com_users');
$input->set('task', 'user.login');
$input->set('Itemid', 0);
$input->post->set(JSession::getFormToken(), 1);

// We are forced to encode the url in base64 as com_users uses this encoding

$input->post->set('return', base64_encode($return));

By :

$input->set('option', 'com_users');
$input->set('task', 'user.login');
$fix = JFactory::getApplication()
->input
->getInputForRequestMethod();
$fix->set('Itemid', 0);
$input->post->set(JSession::getFormToken(), 1);
														
// We are forced to encode the url in base64 as com_users uses this encoding
$fix->set('return', base64_encode($return));

Is it correct for you ?

Steve