I have posted this to the main boards then discovered this thread. Some WebloginPE events are broken (for SMF connector anyway) and I have fixed them as below:
I have a large site with and smf forum and at least 80 different user groups. More of that in another post. Each one has to login and I like the features of WebloginPE. So you can imagine my consternation when logging in appeared to work...but didnt. I was logged in to the Modx side but not the SMF side where I was a blank. It took me a while to find this one..
WebloginPE like weblogin invokes an OnWebLogin event. The SMF Connector uses it. Bit unlike Weblogin, WebloginPE passed an array of arrays. SMF was expecting an array with username in it. I dont know why WebloginPE is different but nomatter. I just tacked username onto the array like so. File is assets/snippets/webloginpe/webloginpe.class.php
About 2996
function OnWebLogin()
{
global $modx;
$parameters = array('user' => $this->User,'username' => $this->User['username']);
$modx->invokeEvent('OnWebLogin', $parameters);
}
Then came OnWebLogout...in this case WebloginPE got it completely wrong. It destroyed the session variables before trying to pass them in OnWebLogout.
So I added this to function logout
about 292
function Logout($type, $loHomeId = '')
{
$logoutparameters = array(
'username' => $_SESSION['webShortname'],
'internalKey' => $_SESSION['webInternalKey'],
'userid' => $_SESSION['webShortname']
);
And this for the OnWebLogout function (old code commented out)
about 3098
function OnWebLogout($logoutparameters)
{
global $modx;
//$paramaters = array(
//'userid' => $_SESSION['webInternalKey'],
//'internalKey' => $_SESSION['webInternalKey'],
//'username' => $_SESSION['webShortname']
// );
$modx->invokeEvent('OnWebLogout', $logoutparameters);
}
Good Luck