- Модуль: socialservices
- Путь к файлу: ~/bitrix/modules/socialservices/lib/network.php
- Класс: BitrixSocialservicesNetwork
- Вызов: Network::addUser
public function addUser($params)
{
$password = md5($params['XML_ID'].'|'.$params['CLIENT_DOMAIN'].'|'.rand(1000,9999).'|'.time().'|'.uniqid());
$photo = CFile::MakeFileArray($params['PERSONAL_PHOTO_ORIGINAL']);
$groups = Array();
if(Loader::includeModule('extranet'))
{
$groups[] = CExtranet::GetExtranetUserGroupID();
}
$addParams = Array(
'LOGIN' => $params['NETWORK_USER_ID'].'@'.$params['CLIENT_DOMAIN'],
'NAME' => $params['NAME'],
'EMAIL' => $params['EMAIL'],
'LAST_NAME' => $params['LAST_NAME'],
'SECOND_NAME' => $params['SECOND_NAME'],
'PERSONAL_GENDER' => $params['PERSONAL_GENDER'],
'PERSONAL_PHOTO' => $photo,
'WORK_POSITION' => $params['CLIENT_DOMAIN'],
'XML_ID' => $params['XML_ID'],
'EXTERNAL_AUTH_ID' => self::EXTERNAL_AUTH_ID,
"ACTIVE" => "Y",
"PASSWORD" => $password,
"CONFIRM_PASSWORD" => $password,
"GROUP_ID" => $groups
);
if (isset($params['EMAIL']))
{
$addParams['EMAIL'] = $params['EMAIL'];
}
$user = new CUser;
$userId = $user->Add($addParams);
if (intval($userId) <= 0)
{
$this->errorCollection[] = new Error($user->LAST_ERROR, self::ERROR_REGISTER_USER);
return false;
}
$event = new Event("socialservices", "OnAfterRegisterUserByNetwork", array($userId, $params['NETWORK_USER_ID'], $params['CLIENT_DOMAIN']));
$event->send();
return $userId;
}