- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/lib/component/loglist/param.php
- Класс: BitrixSocialnetworkComponentLogListParam
- Вызов: Param::prepareRequestParams
public function prepareRequestParams(&$componentParams): void
{
$request = $this->getRequest();
Util::checkEmptyParamInteger($componentParams, 'GROUP_ID', 0);
if ($componentParams['GROUP_ID'] <= 0)
{
if (
!empty($request->get('TO_CODE'))
&& !empty($request->get('TO_CODE')['SG'])
&& is_array($request->get('TO_CODE')['SG'])
)
{
preg_match('/^SG(d+)$/', $request->get('TO_CODE')['SG'][0], $matches);
if (!empty($matches))
{
$componentParams['GROUP_ID'] = $matches[1];
}
}
elseif (!empty($request->get('flt_group_id')))
{
$componentParams['GROUP_ID'] = (int)$request->get('flt_group_id');
}
}
if (empty($componentParams['DESTINATION']))
{
$componentParams['DESTINATION'] = [];
if (
!empty($request->get('TO_CODE'))
&& is_array($request->get('TO_CODE'))
)
{
foreach($request->get('TO_CODE') as $codeList)
{
if (is_array($codeList))
{
foreach($codeList as $code)
{
$componentParams['DESTINATION'][] = $code;
}
}
}
}
}
$componentParams['ENTITY_TYPE'] = '';
$componentParams['TO_USER_ID'] = 0;
if ($componentParams['GROUP_ID'] > 0)
{
$componentParams['ENTITY_TYPE'] = SONET_ENTITY_GROUP;
}
elseif (
!empty($request->get('TO_CODE'))
&& is_array($request->get('TO_CODE'))
&& !empty($request->get('TO_CODE')['U'])
&& is_array($request->get('TO_CODE')['U'])
)
{
preg_match('/^U(d+)$/', $request->get('TO_CODE')['U'][0], $matches);
if (!empty($matches))
{
$componentParams['TO_USER_ID'] = (int)$matches[1];
}
}
else
{
$componentParams['TO_USER_ID'] = (int)$request->get('flt_to_user_id');
}
if (
$componentParams['ENTITY_TYPE'] == ''
&& $request->get('flt_entity_type') <> ''
)
{
$componentParams['ENTITY_TYPE'] = trim($request->get('flt_entity_type'));
}
Util::checkEmptyParamInteger($componentParams, 'USER_ID', 0);
if (
$componentParams['USER_ID'] <= 0
&& !empty($request->get('flt_user_id'))
)
{
$componentParams['USER_ID'] = (int)$request->get('flt_user_id');
}
$componentParams['CREATED_BY_ID'] = 0;
if (
!empty($request->get('CREATED_BY_CODE'))
&& is_array($request->get('CREATED_BY_CODE'))
&& !empty($request->get('CREATED_BY_CODE')['U'])
&& is_array($request->get('CREATED_BY_CODE')['U'])
)
{
preg_match('/^U(d+)$/', $request->get('CREATED_BY_CODE')['U'][0], $matches);
if (!empty($matches))
{
$componentParams['CREATED_BY_ID'] = (int)$matches[1];
}
}
elseif (!empty($request->get('flt_created_by_id')))
{
$createdByIdValue = $request->get('flt_created_by_id');
if (is_array($createdByIdValue))
{
$createdByIdValue = $createdByIdValue[0];
}
if (!is_array($createdByIdValue))
{
if (preg_match('/^(d+)$/', $createdByIdValue, $matches))
{
$componentParams['CREATED_BY_ID'] = $createdByIdValue;
}
else
{
$userList = CSocNetUser::searchUser($createdByIdValue, false);
if (
is_array($userList)
&& !empty($userList)
)
{
$componentParams['CREATED_BY_ID'] = key($userList);
}
}
}
}
$componentParams['TAG'] = ($request->get('TAG') ? trim($request->get('TAG')) : '');
$componentParams['FIND'] = ($request->get('FIND') ? trim($request->get('FIND')) : '');
}