I have a site that requires users to register, which is pretty standard. On registration the user is sent an email with a registration link. They're fully registered when they click it and they can log in, but they're not logged in when they're directed back to the site by the link. Is there a way to automatically log in the user when the click the registration link? If it's relevant, the log in form was made with Chronoforms.
2 Answers
I'm not real familiar with Chronoforms anymore, but if you can get this code in there somewhere, the user should be logged in:
$credentials = Array('username' => 'MyUsername', 'password' => 'MyPassword');
JFactory::getApplication()->login($credentials);
In theory, you can develop an authorization plug-in to authenticate the user with a confirmation link, detecting the change onUserBeforeSave / onUserAfterSave.
However, you have to be very careful to avoid multiple logins based on a generic string sent by mail. Remember, there is no stored plain password in Joomla.