- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/lib/component/loglist.php
- Класс: BitrixSocialnetworkComponentLogList
- Вызов: LogList::processLogFormComments
protected function processLogFormComments(&$result): void
{
global $USER_FIELD_MANAGER;
$params = $this->arParams;
if (
!$result['AJAX_CALL']
&& empty($this->getErrors())
&& Util::checkUserAuthorized()
)
{
$cache = new CPHPCache;
$cacheId = 'log_form_comments'.serialize($params['COMMENT_PROPERTY']);
$cachePath = '/sonet/log_form/comments';
$ttl = (defined('BX_COMP_MANAGED_CACHE') ? 2592000 : 600);
if ($cache->initCache($ttl, $cacheId, $cachePath))
{
$cacheVars = $cache->getVars();
$result['COMMENT_PROPERTIES'] = $cacheVars['comment_props'];
$cache->output();
}
else
{
$cache->startDataCache($ttl, $cacheId, $cachePath);
$result['COMMENT_PROPERTIES'] = [ 'SHOW' => 'N' ];
if (
!empty($params['COMMENT_PROPERTY'])
&& is_array($params['COMMENT_PROPERTY'])
)
{
$arPostFields = $USER_FIELD_MANAGER->getUserFields('SONET_COMMENT', 0, LANGUAGE_ID);
foreach ($arPostFields as $fieldName => $fieldData)
{
if (!in_array($fieldName, $params['COMMENT_PROPERTY'], true))
{
continue;
}
$fieldData['EDIT_FORM_LABEL'] = $fieldData['EDIT_FORM_LABEL'] <> '' ? $fieldData['EDIT_FORM_LABEL'] : $fieldData['FIELD_NAME'];
$fieldData['~EDIT_FORM_LABEL'] = $fieldData['EDIT_FORM_LABEL'];
$fieldData['EDIT_FORM_LABEL'] = htmlspecialcharsEx($fieldData['EDIT_FORM_LABEL']);
$result['COMMENT_PROPERTIES']['DATA'][$fieldName] = $fieldData;
}
if (!empty($result['COMMENT_PROPERTIES']['DATA']))
{
$result['COMMENT_PROPERTIES']['SHOW'] = 'Y';
}
}
$cache->endDataCache([ 'comment_props' => $result['COMMENT_PROPERTIES'] ]);
}
}
}