protected function getDestinations() { $isExtranetInstalled = Loader::includeModule("extranet"); $members = array(); if ($this->blogPostData["HAS_SOCNET_ALL"] != "Y") { /** @noinspection PhpDynamicAsStaticMethodCallInspection */ $perm = \CBlogPost::getSocnetPermsName($this->entityId); foreach ($perm as $type => $v) { foreach ($v as $vv) { if ($type == "SG") { /** @noinspection PhpDynamicAsStaticMethodCallInspection */ if ($socNetGroup = \CSocNetGroup::getByID($vv["ENTITY_ID"])) { $name = $socNetGroup["~NAME"]; $link = \CComponentEngine::makePathFromTemplate($this->getPathToGroup(), array("group_id" => $vv["ENTITY_ID"])); $groupSiteID = false; /** @noinspection PhpDynamicAsStaticMethodCallInspection */ $queryGroupSite = \CSocNetGroup::getSite($vv["ENTITY_ID"]); while ($groupSite = $queryGroupSite->fetch()) { /** @noinspection PhpDynamicAsStaticMethodCallInspection */ if (!$isExtranetInstalled || $groupSite["LID"] != \CExtranet::getExtranetSiteID()) { $groupSiteID = $groupSite["LID"]; break; } } if ($groupSiteID) { /** @noinspection PhpDynamicAsStaticMethodCallInspection */ $tmp = \CSocNetLogTools::processPath(array("GROUP_URL" => $link), $this->getUser()->getId(), $groupSiteID); // user_id is not important parameter $link = strlen($tmp["URLS"]["GROUP_URL"]) > 0 ? $tmp["URLS"]["GROUP_URL"] : $link; } $isExtranet = is_array($GLOBALS["arExtranetGroupID"]) && in_array($vv["ENTITY_ID"], $GLOBALS["arExtranetGroupID"]); $members[] = array("NAME" => $name, "LINK" => $link, 'AVATAR_SRC' => Ui\Avatar::getGroup($socNetGroup['IMAGE_ID']), "IS_EXTRANET" => $isExtranet ? "Y" : "N"); } } elseif ($type == "U") { if (in_array("US" . $vv["ENTITY_ID"], $vv["ENTITY"])) { array_unshift($members, array("NAME" => Loc::getMessage('DISK_UF_BLOG_POST_CONNECTOR_MEMBERS_ALL'), "LINK" => null, 'AVATAR_SRC' => Ui\Avatar::getDefaultGroup(), "IS_EXTRANET" => "N")); } else { $name = \CUser::formatName('#NAME# #LAST_NAME#', array("NAME" => $vv["~U_NAME"], "LAST_NAME" => $vv["~U_LAST_NAME"], "SECOND_NAME" => $vv["~U_SECOND_NAME"], "LOGIN" => $vv["~U_LOGIN"], "NAME_LIST_FORMATTED" => ""), false); $isExtranet = is_array($GLOBALS["arExtranetUserID"]) && in_array($vv["ENTITY_ID"], $GLOBALS["arExtranetUserID"]); $members[] = array("NAME" => $name, "LINK" => \CComponentEngine::makePathFromTemplate($this->getPathToUser(), array("user_id" => $vv["ENTITY_ID"])), 'AVATAR_SRC' => Ui\Avatar::getPerson($vv['U_PERSONAL_PHOTO']), "IS_EXTRANET" => $isExtranet ? "Y" : "N"); } } elseif ($type == "DR") { $members[] = array("NAME" => $vv["EL_NAME"], "LINK" => null, 'AVATAR_SRC' => Ui\Avatar::getDefaultGroup(), "IS_EXTRANET" => "N"); } } } } else { $members[] = array("NAME" => Loc::getMessage('DISK_UF_BLOG_POST_CONNECTOR_MEMBERS_ALL'), "LINK" => null, 'AVATAR_SRC' => Ui\Avatar::getDefaultGroup(), "IS_EXTRANET" => "N"); } return $members; }