Ну вроде я разобрался. Поправте меня, если я ошибаюсь. Нет ничего у MODx в ядре для авторизации веб-пользователей. Все это дело полностью организуется сниппетом. Стандартно это
Weblogin - файл:
assets/snippets/weblogin/weblogin.processor.inc.php Мне представлялось, что должна существовать какая-то общая функция для автоизации менеджеров и пользователей, но это не так. Потому в weblogin.processor.inc.php вызываются события
OnBeforeWebLogin,
OnWebAuthentication,
OnWebLogin, хотя в
Wiki API:invokeEvent http://wiki.modxcms.com/index.php/API:invokeEvent и не рекомендуется использовать эту функцию в сниппетах. И лог о том что кто-то авторизировался пишется тоже
weblogin.processor.inc.php .
Для самой автоизации минимально достаточно
1)поместить в сессию:
$_SESSION['webShortname']=$username;
$_SESSION['webFullname']=$fullname;
$_SESSION['webEmail']=$email;
$_SESSION['webValidated']=1;
$_SESSION['webInternalKey']=$internalKey;
$_SESSION['webValid']=base64_encode($givenPassword);
$_SESSION['webUser']=base64_encode($username);
$_SESSION['webFailedlogins']=$failedlogins;
$_SESSION['webLastlogin']=$lastlogin;
$_SESSION['webnrlogins']=$nrlogins;
$_SESSION['webUserGroupNames'] = '';
2) найти группу документов которые доступны пользователю
3) обновить значения таблицы
web_user_attributes и таблицы
active_users
Вывод тот, что если придется писать что-то свое по авторизации веб-пользователей, то надо, наверно, не забыть вызвать в своем коде события ну и не забыть про лог. Всё