- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/document/documenteditoruser.php
- Класс: BitrixDiskDocumentDocumentEditorUser
- Вызов: DocumentEditorUser::create
static function create(array $fields = []): ?EO_User
{
$name = $fields['NAME'] ?? 'Guest';
$lastName = $fields['LAST_NAME'] ?? '';
$login = 'disk_document_editor_' . rand(1000, 9999) . SecurityRandom::getString(8);
$password = md5($login . '|' . rand(1000, 9999) . '|' . time());
$xmlId = self::EXTERNAL_AUTH_ID . '|' . md5(time() . $login . $password . uniqid());
$userManager = new CUser;
$userId = $userManager->add([
'NAME' => $name,
'LAST_NAME' => $lastName,
'LOGIN' => $login,
'PASSWORD' => $password,
'CONFIRM_PASSWORD' => $password,
'EXTERNAL_AUTH_ID' => self::EXTERNAL_AUTH_ID,
'XML_ID' => $xmlId,
'ACTIVE' => 'Y',
]);
return (
$userId > 0
? UserTable::getById($userId)->fetchObject()
: null
);
}