$arParams["AVATAR_SIZE_COMMENT"] = isset($arParams["AVATAR_SIZE_COMMENT"]) ? intval($arParams["AVATAR_SIZE_COMMENT"]) : 58; $arParams["DESTINATION_LIMIT"] = isset($arParams["DESTINATION_LIMIT"]) ? intval($arParams["DESTINATION_LIMIT"]) : 3; $arParams["COMMENTS_IN_EVENT"] = isset($arParams["COMMENTS_IN_EVENT"]) && intval($arParams["COMMENTS_IN_EVENT"]) > 0 ? $arParams["COMMENTS_IN_EVENT"] : "3"; $arResult["FOLLOW_DEFAULT"] = $arParams["FOLLOW_DEFAULT"] == "N" ? "N" : "Y"; if (intval($arParams["PHOTO_COUNT"]) <= 0) { $arParams["PHOTO_COUNT"] = 5; } if (intval($arParams["PHOTO_THUMBNAIL_SIZE"]) <= 0) { $arParams["PHOTO_THUMBNAIL_SIZE"] = 76; } $arResult["TZ_OFFSET"] = CTimeZone::GetOffset(); $arResult["WORKGROUPS_PAGE"] = COption::GetOptionString("socialnetwork", "workgroups_page", "/workgroups/", SITE_ID); if (isset($arParams["CURRENT_PAGE_DATE"])) { $current_page_date = $arParams["CURRENT_PAGE_DATE"]; } $arEvent = __SLMGetLogRecord($arParams["LOG_ID"], $arParams, $current_page_date); if ($arEvent) { if (isset($arEvent["HAS_COMMENTS"]) && $arEvent["HAS_COMMENTS"] == "Y") { $cache_time = 31536000; $cache = new CPHPCache(); $arCacheID = array(); $arKeys = array("AVATAR_SIZE_COMMENT", "NAME_TEMPLATE", "NAME_TEMPLATE_WO_NOBR", "SHOW_LOGIN", "DATE_TIME_FORMAT", "PATH_TO_USER", "PATH_TO_GROUP", "PATH_TO_CONPANY_DEPARTMENT"); foreach ($arKeys as $param_key) { if (array_key_exists($param_key, $arParams)) { $arCacheID[$param_key] = $arParams[$param_key]; } else { $arCacheID[$param_key] = false; } } $nTopCount = 20; $cache_id = "log_comments_" . $arParams["LOG_ID"] . "_" . md5(serialize($arCacheID)) . "_" . SITE_TEMPLATE_ID . "_" . SITE_ID . "_" . LANGUAGE_ID . "_" . FORMAT_DATETIME . "_" . CTimeZone::GetOffset() . "_" . $nTopCount;
$arResult["PAGE_NAVCOUNT"] = 1000000; } elseif ($dbEventsInit) { $arResult["PAGE_NUMBER"] = $dbEventsInit->NavPageNomer; $arResult["PAGE_NAVNUM"] = $dbEventsInit->NavNum; $arResult["PAGE_NAVCOUNT"] = $dbEventsInit->NavPageCount; } elseif ($dbEvents) { $arResult["PAGE_NUMBER"] = $dbEvents->NavPageNomer; $arResult["PAGE_NAVNUM"] = $dbEvents->NavNum; $arResult["PAGE_NAVCOUNT"] = $dbEvents->NavPageCount; } } $arLogTmpID = array(); if ($dbEvents) { while ($arEvents = $dbEvents->GetNext()) { $arLogTmpID[] = $arEvents["TMP_ID"] > 0 ? $arEvents["TMP_ID"] : $arEvents["ID"]; __SLMGetLogRecord($arEvents, $arParams, $arCurrentUserSubscribe, $arMyEntities, $arTmpEventsNew); } } // get comments if (intval($arParams["NEW_LOG_ID"]) <= 0 && ($arParams["LOG_ID"] > 0 && count($arLogTmpID) == 1 && !in_array($arEvents["EVENT_ID"], array("blog_post", "blog_post_micro")) || $arParams["LOG_ID"] <= 0 && strlen($counterLastDate) > 0)) { $arListParams = array("CHECK_RIGHTS" => "Y"); if ($arParams["LOG_ID"] > 0) { $arFilter = array("LOG_ID" => $arParams["LOG_ID"]); $arSelect = array("ID", "LOG_ID", "SOURCE_ID", "ENTITY_TYPE", "ENTITY_ID", "USER_ID", "EVENT_ID", "LOG_DATE", "MESSAGE", "TEXT_MESSAGE", "URL", "MODULE_ID", "GROUP_NAME", "GROUP_OWNER_ID", "GROUP_VISIBLE", "GROUP_OPENED", "GROUP_IMAGE_ID", "USER_NAME", "USER_LAST_NAME", "USER_SECOND_NAME", "USER_LOGIN", "USER_PERSONAL_PHOTO", "USER_PERSONAL_GENDER", "CREATED_BY_NAME", "CREATED_BY_LAST_NAME", "CREATED_BY_SECOND_NAME", "CREATED_BY_LOGIN", "CREATED_BY_PERSONAL_PHOTO", "CREATED_BY_PERSONAL_GENDER", "LOG_SITE_ID", "LOG_SOURCE_ID", "RATING_TYPE_ID", "RATING_ENTITY_ID", "RATING_TOTAL_VALUE", "RATING_TOTAL_VOTES", "RATING_TOTAL_POSITIVE_VOTES", "RATING_TOTAL_NEGATIVE_VOTES", "RATING_USER_VOTE_VALUE"); $arListParams["USE_SUBSCRIBE"] = "N"; } else { $arFilter = array(">LOG_DATE" => $counterLastDate, "!USER_ID" => $GLOBALS["USER"]->GetID()); $arSelect = array("ID", "LOG_ID", "LOG_DATE"); $arListParams["USE_SUBSCRIBE"] = $arParams["SUBSCRIBE_ONLY"]; } $dbComments = CSocNetLogComments::GetList(array("LOG_DATE" => "ASC"), $arFilter, false, false, $arSelect, $arListParams);