В google нашел коды для ручной авторизации пользователя:
PHP код:
$check = FALSE;
$loginData = array(
'username' => "user",
'uident_text' => "pass",
'status' => 'login',
);
$GLOBALS['TSFE']->fe_user->checkPid = ''; //do not use a particular pid
$info = $GLOBALS['TSFE']->fe_user->getAuthInfoArray();
$info['db_user']['checkPidList'] = 1;
$info['db_user']['check_pid_clause'] = 'AND pid IN(362)';
$user = $GLOBALS['TSFE']->fe_user->fetchUserRecord($info['db_user'], $loginData['username']);
$login_success = $GLOBALS['TSFE']->fe_user->compareUident($user,$loginData);
#Если пользователь найден
if($login_success){
$GLOBALS['TSFE']->fe_user->createUserSession($user);
$GLOBALS["TSFE"]->fe_user->loginSessionStarted = TRUE;
$GLOBALS ["TSFE"] ->fe_user->start();
}
В результате его работы он находим у меня пользователя с заданными логином и паролем и заносит данные в mysql-таблицу fe_sessions
Но почему при перезагрузке страницы $GLOBALS["TSFE"]->loginUser = 0;
Как работать с концепцией авторизации пользователь на основе API typo3.
И правильно ли понимаю что $GLOBALS["TSFE"]->loginUser в единицу нужно устанавливать самостоятельно,
через постоянную проверку где-то вверху кода программы, а также группу пользователя также необходимо проверять каждый раз при перезагрузке страницы?
Также пробовал на Wininstaller typo3 пакет Inducation.
Авторизовался в системе - авторизация прошла успешно - но $GLOBALS["TSFE"]->loginUser упорно равен 0!