} elseif ($type == 'U') { $arResult["PostToShow"]["FEED_DESTINATION"]['SELECTED'][$ar2] = 'users'; $arDestUser[] = $value; } elseif ($type == 'SG') { $arResult["PostToShow"]["FEED_DESTINATION"]['SELECTED'][$ar2] = 'sonetgroups'; } elseif ($type == 'DR' || $type == 'D') { $arResult["PostToShow"]["FEED_DESTINATION"]['SELECTED'][$ar2] = 'department'; } } } } } } else { $arResult["PostToShow"]["FEED_DESTINATION"]['SELECTED']['UA'] = 'groups'; } // intranet structure $arStructure = CSocNetLogDestination::GetStucture(); $arResult["PostToShow"]["FEED_DESTINATION"]['DEPARTMENT'] = $arStructure['department']; $arResult["PostToShow"]["FEED_DESTINATION"]['DEPARTMENT_RELATION'] = $arStructure['department_relation']; if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { $arResult["PostToShow"]["FEED_DESTINATION"]['EXTRANET_USER'] = '******'; $arResult["PostToShow"]["FEED_DESTINATION"]['USERS'] = CSocNetLogDestination::GetExtranetUser(); } else { foreach ($arResult["PostToShow"]["FEED_DESTINATION"]['LAST']['USERS'] as $value) { $arDestUser[] = str_replace('U', '', $value); } $arResult["PostToShow"]["FEED_DESTINATION"]['EXTRANET_USER'] = '******'; $arResult["PostToShow"]["FEED_DESTINATION"]['USERS'] = CSocNetLogDestination::GetUsers(array('id' => $arDestUser)); } } $this->IncludeComponentTemplate();
?> "> <input type="text" value="" class="feed-add-destination-inp" id="sonet_group_create_popup_users_input_post_<?php echo $selectorName; ?> "> </span> <a href="#" class="feed-add-destination-link" id="sonet_group_create_popup_users_tag_post_<?php echo $selectorName; ?> "><?php echo GetMessage(IsModuleInstalled("intranet") ? "SONET_GCE_T_ADD_EMPLOYEE" : "SONET_GCE_T_ADD_USER"); ?> </a><?php $arValue = $arResult["POST"]["USER_CODES"] ? $arResult["POST"]["USER_CODES"] : array(); $arStructure = IsModuleInstalled('intranet') ? CSocNetLogDestination::GetStucture(array("LAZY_LOAD" => true, "DEPARTMENT_ID" => isset($arResult["siteDepartmentID"]) && intval($arResult["siteDepartmentID"]) > 0 ? intval($arResult["siteDepartmentID"]) : false)) : false; ?> <script type="text/javascript"> var department = <?php echo $arStructure && !empty($arStructure['department']) ? CUtil::PhpToJSObject($arStructure['department']) : '{}'; ?> ; var lastUsers = <?php echo empty($arResult["DEST_USERS_LAST"]) ? '{}' : CUtil::PhpToJSObject($arResult["DEST_USERS_LAST"]); ?> ; <?php if (!$arStructure || empty($arStructure['department_relation'])) { ?>
if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { if (!empty($arResult["FEED_DESTINATION"]['LAST']['SONETGROUPS'])) { foreach ($arResult["FEED_DESTINATION"]['LAST']['SONETGROUPS'] as $val) { $arResult["FEED_DESTINATION"]['SELECTED'][$val] = "sonetgroups"; } } else { foreach ($arResult["FEED_DESTINATION"]['SONETGROUPS'] as $k => $val) { $arResult["FEED_DESTINATION"]['SELECTED'][$k] = "sonetgroups"; } } } elseif ($bAllowToAll) { $arResult["FEED_DESTINATION"]['SELECTED']['UA'] = 'groups'; } // intranet structure $arStructure = CSocNetLogDestination::GetStucture(array("LAZY_LOAD" => true)); $arResult["FEED_DESTINATION"]['DEPARTMENT'] = $arStructure['department']; $arResult["FEED_DESTINATION"]['DEPARTMENT_RELATION'] = $arStructure['department_relation']; $arResult["FEED_DESTINATION"]['DEPARTMENT_RELATION_HEAD'] = $arStructure['department_relation_head']; if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { $arResult["FEED_DESTINATION"]['EXTRANET_USER'] = '******'; $arResult["FEED_DESTINATION"]['USERS'] = CSocNetLogDestination::GetExtranetUser(); } else { $arResult["FEED_DESTINATION"]['EXTRANET_USER'] = '******'; if (!empty($arResult["FEED_DESTINATION"]['LAST']['USERS'])) { foreach ($arResult["FEED_DESTINATION"]['LAST']['USERS'] as $value) { $arResult["dest_users"][] = str_replace('U', '', $value); } $arResult["FEED_DESTINATION"]['USERS'] = CSocNetLogDestination::GetUsers(array('id' => $arResult["dest_users"])); } } $arResult["FEED_DESTINATION"]["DENY_TOALL"] = !$bAllowToAll;
} else { $arResult["GROUP_ID"] = $arParams["GROUP_ID"]; } if ($arResult["ShowForm"] == "Input") { if (!array_key_exists("TAB", $arResult) || $arResult["TAB"] == "edit") { $arResult["Subjects"] = array(); $dbSubjects = CSocNetGroupSubject::GetList(array("SORT" => "ASC", "NAME" => "ASC"), array("SITE_ID" => SITE_ID), false, false, array("ID", "NAME")); while ($arSubject = $dbSubjects->GetNext()) { $arResult["Subjects"][$arSubject["ID"]] = $arSubject["NAME"]; } $arResult["InitiatePerms"] = array(SONET_ROLES_OWNER => GetMessage("SONET_GCE_IP_OWNER"), SONET_ROLES_MODERATOR => GetMessage("SONET_GCE_IP_MOD"), SONET_ROLES_USER => GetMessage("SONET_GCE_IP_USER")); $arResult["SpamPerms"] = array(SONET_ROLES_OWNER => GetMessage("SONET_GCE_IP_OWNER"), SONET_ROLES_MODERATOR => GetMessage("SONET_GCE_IP_MOD"), SONET_ROLES_USER => GetMessage("SONET_GCE_IP_USER"), SONET_ROLES_ALL => GetMessage("SONET_GCE_IP_ALL")); } } if (!array_key_exists("TAB", $arResult) || $arResult["TAB"] == "invite") { $arResult["DEST_USERS_LAST"] = CSocNetLogDestination::GetLastUser(); if (is_array($arResult["DEST_USERS_LAST"]) && !empty($arResult["DEST_USERS_LAST"])) { $arLastUserID = array(); foreach ($arResult["DEST_USERS_LAST"] as $user_code) { if (preg_match('/^U(\\d+)$/', $user_code, $match)) { $arLastUserID[] = $match[1]; } } $dbUsers = CUser::GetList($sort_by = array('last_name' => 'asc', 'IS_ONLINE' => 'desc'), $dummy = '', array("ID" => implode("|", $arLastUserID)), array("FIELDS" => array("ID", "LAST_NAME", "NAME", "SECOND_NAME", "LOGIN", "PERSONAL_PHOTO", "WORK_POSITION", "PERSONAL_PROFESSION"), "SELECT" => array("UF_DEPARTMENT"))); $arResult["siteDepartmentID"] = COption::GetOptionString("main", "wizard_departament", false, SITE_ID, true); if (intval($arResult["siteDepartmentID"]) > 0) { $acc = new CAccess(); } while ($arUser = $dbUsers->Fetch()) { if (is_object($acc)) { $acc->UpdateCodes(array("USER_ID" => $arUser["ID"]));
public static function addToManyEntities(array $data, array $entitiesToTask, ErrorCollection $errorCollection) { self::checkRequiredInputParams($data, array('FROM_ENTITY', 'CREATED_BY')); if (isset($data['REAL_OBJECT']) && $data['REAL_OBJECT'] instanceof BaseObject) { /** @noinspection PhpUndefinedMethodInspection */ $data['REAL_OBJECT_ID'] = $data['REAL_OBJECT']->getId(); } elseif (isset($data['REAL_OBJECT_ID'])) { $data['REAL_OBJECT'] = BaseObject::loadById($data['REAL_OBJECT_ID']); } else { $errorCollection->add(array(new Error(Loc::getMessage('DISK_SHARING_MODEL_ERROR_EMPTY_REAL_OBJECT'), self::ERROR_EMPTY_REAL_OBJECT))); return null; } /** @var \Bitrix\Disk\BaseObject $objectToSharing */ $objectToSharing = $data['REAL_OBJECT']; //resolve to last real object. In table we write only real (not link) id. $objectToSharing = $objectToSharing->getRealObject(); $data['REAL_OBJECT_ID'] = $objectToSharing->getId(); $data['REAL_STORAGE_ID'] = $objectToSharing->getStorageId(); $dataToInsert = $data; unset($dataToInsert['REAL_OBJECT']); //we don't have to connect object, which already exists in same storage $ownerUserId = null; if ($objectToSharing->getStorage()->getProxyType() instanceof ProxyType\User) { $ownerUserId = $objectToSharing->getStorage()->getEntityId(); } $rightManager = Driver::getInstance()->getRightsManager(); /** @var Sharing[] $successSharingByEntity */ $successSharingByEntity = array(); foreach ($entitiesToTask as $entity => $taskName) { list($type, ) = self::parseEntityValue($entity); if (!$type) { continue; } $dataToInsert['TO_ENTITY'] = $entity; $dataToInsert['TYPE'] = $type; $dataToInsert['TASK_NAME'] = $taskName; if ($type == SharingTable::TYPE_TO_DEPARTMENT) { $dataToInsert['STATUS'] = SharingTable::STATUS_IS_APPROVED; } $sharingModel = parent::add($dataToInsert, $errorCollection); if (!$sharingModel) { continue; } $successSharingByEntity[$entity] = $sharingModel->setAttributes(array('REAL_OBJECT' => $objectToSharing)); if ($type == SharingTable::TYPE_TO_DEPARTMENT && Loader::includeModule('socialnetwork')) { unset($dataToInsert['STATUS']); //todo expand access code DR to list of users. And for each user of list create Sharing $dataToInsertChild = $dataToInsert; $dataToInsertChild['PARENT_ID'] = $sharingModel->getId(); $dataToInsertChild['TYPE'] = SharingTable::TYPE_TO_USER; foreach (\CSocNetLogDestination::getDestinationUsers(array($entity)) as $userId) { if ($ownerUserId == $userId) { continue; } $dataToInsertChild['TO_ENTITY'] = self::CODE_USER . $userId; $sharingModel = parent::add($dataToInsertChild, $errorCollection); if (!$sharingModel) { continue; } //above we can already added sharing to this entity (user) and we should not overwrite that. DR-sharing has lower priority than another. if (!isset($successSharingByEntity[$dataToInsertChild['TO_ENTITY']])) { $successSharingByEntity[$dataToInsertChild['TO_ENTITY']] = $sharingModel->setAttributes(array('REAL_OBJECT' => $objectToSharing)); } } unset($userId); } elseif ($type == SharingTable::TYPE_TO_GROUP) { //if sharing to socnet group, we should approve invite at once, because it's not personal invite. $sharingModel->approve(); } } unset($entity, $dataToInsert); $forwardTaskId = !empty($data['CAN_FORWARD']) ? $rightManager->getTaskIdByName($rightManager::OP_SHARING) : null; $newRights = array(); foreach ($successSharingByEntity as $entity => $sharingModel) { if ($sharingModel->isToDepartmentChild()) { continue; } $sharingDomain = $rightManager->getSharingDomain($sharingModel->getId()); /** @var \Bitrix\Disk\Sharing $sharingModel */ $newRights[] = array('ACCESS_CODE' => $entity, 'TASK_ID' => $rightManager->getTaskIdByName($sharingModel->getTaskName()), 'DOMAIN' => $sharingDomain); if ($forwardTaskId) { $newRights[] = array('ACCESS_CODE' => $entity, 'TASK_ID' => $forwardTaskId, 'DOMAIN' => $sharingDomain); } } unset($entity); $rightManager->append($objectToSharing, $newRights); self::processConnectAndNotify($successSharingByEntity, $objectToSharing); return $successSharingByEntity; }
/** * Returns list users who have sharing on this object. * @return array * @throws \Bitrix\Main\ArgumentException * @throws \Bitrix\Main\LoaderException */ public function getMembersOfSharing() { $sharings = $this->getRealObject()->getSharingsAsReal(); $members = array(); $membersToSharing = array(); foreach ($sharings as $sharing) { if ($sharing->isToDepartmentChild()) { continue; } list($type, $id) = Sharing::parseEntityValue($sharing->getToEntity()); $members[$type][] = $id; $membersToSharing[$type . '|' . $id] = $sharing; } unset($sharing); $enabledSocialnetwork = Loader::includeModule('socialnetwork'); $entityList = array(); foreach (SharingTable::getListOfTypeValues() as $type) { if (empty($members[$type])) { continue; } if ($type == SharingTable::TYPE_TO_USER) { $query = \Bitrix\Main\UserTable::getList(array('select' => array('ID', 'PERSONAL_PHOTO', 'NAME', 'LOGIN', 'LAST_NAME', 'SECOND_NAME'), 'filter' => array('ID' => array_values($members[$type])))); while ($userRow = $query->fetch()) { /** @var Sharing $sharing */ $sharing = $membersToSharing[$type . '|' . $userRow['ID']]; $entityList[] = array('entityId' => Sharing::CODE_USER . $userRow['ID'], 'name' => \CUser::formatName('#NAME# #LAST_NAME#', array("NAME" => $userRow['NAME'], "LAST_NAME" => $userRow['LAST_NAME'], "SECOND_NAME" => $userRow['SECOND_NAME'], "LOGIN" => $userRow['LOGIN']), false), 'right' => $sharing->getTaskName(), 'avatar' => Avatar::getPerson($userRow['PERSONAL_PHOTO']), 'type' => 'users'); } } elseif ($type == SharingTable::TYPE_TO_GROUP && $enabledSocialnetwork) { $query = \CSocNetGroup::getList(array(), array('ID' => array_values($members[$type])), false, false, array('ID', 'IMAGE_ID', 'NAME')); while ($query && ($groupRow = $query->fetch())) { /** @var Sharing $sharing */ $sharing = $membersToSharing[$type . '|' . $groupRow['ID']]; $entityList[] = array('entityId' => Sharing::CODE_SOCNET_GROUP . $groupRow['ID'], 'name' => $groupRow['NAME'], 'right' => $sharing->getTaskName(), 'avatar' => Avatar::getGroup($groupRow['IMAGE_ID']), 'type' => 'groups'); } } elseif ($type == SharingTable::TYPE_TO_DEPARTMENT && $enabledSocialnetwork) { // intranet structure $structure = \CSocNetLogDestination::getStucture(); foreach (array_values($members[$type]) as $departmentId) { if (empty($structure['department']['DR' . $departmentId])) { continue; } /** @var Sharing $sharing */ $sharing = $membersToSharing[$type . '|' . $departmentId]; $entityList[] = array('entityId' => Sharing::CODE_DEPARTMENT . $departmentId, 'name' => $structure['department']['DR' . $departmentId]['name'], 'right' => $sharing->getTaskName(), 'avatar' => Avatar::getDefaultGroup(), 'type' => 'department'); } unset($departmentId); } } unset($type); return $entityList; }
'name' => htmlspecialcharsbx($arDeal['TITLE']), 'desc' => htmlspecialcharsbx(implode(', ', $arDesc)) ); } $searchResults['CONTACTS'] = $arContacts; $searchResults['COMPANIES'] = $arCompanies; $searchResults['LEADS'] = $arLeads; $searchResults['DEALS'] = $arDeals; } echo CUtil::PhpToJsObject($searchResults); } elseif ($_POST['LD_DEPARTMENT_RELATION'] == 'Y') { echo CUtil::PhpToJsObject(Array( 'USERS' => CSocNetLogDestination::GetUsers(Array('deportament_id' => $_POST['DEPARTMENT_ID'], "NAME_TEMPLATE" => $nameTemplate)), )); } else { echo CUtil::PhpToJsObject(Array('ERROR' => 'UNKNOWN_ERROR')); } } } else { echo CUtil::PhpToJsObject(Array('ERROR' => 'SESSION_ERROR')); } require($_SERVER["DOCUMENT_ROOT"]."/freetrix/modules/main/include/epilog_after.php"); ?>
public static function GetUsersAll($arParams) { global $DB, $USER; static $arFields = array("ID" => array("FIELD" => "U.ID", "TYPE" => "int"), "ACTIVE" => array("FIELD" => "U.ACTIVE", "TYPE" => "string"), "NAME" => array("FIELD" => "U.NAME", "TYPE" => "string"), "LAST_NAME" => array("FIELD" => "U.LAST_NAME", "TYPE" => "string"), "SECOND_NAME" => array("FIELD" => "U.SECOND_NAME", "TYPE" => "string"), "LOGIN" => array("FIELD" => "U.LOGIN", "TYPE" => "string"), "PERSONAL_PHOTO" => array("FIELD" => "U.PERSONAL_PHOTO", "TYPE" => "int"), "WORK_POSITION" => array("FIELD" => "U.WORK_POSITION", "TYPE" => "string"), "CONFIRM_CODE" => array("FIELD" => "U.CONFIRM_CODE", "TYPE" => "string"), "PERSONAL_PROFESSION" => array("FIELD" => "U.PERSONAL_PROFESSION", "TYPE" => "string")); $currentUserId = $USER->GetId(); if (!$currentUserId) { return array(); } $bExtranetEnabled = CModule::IncludeModule("extranet"); $bExtranetUser = $bExtranetEnabled && !CExtranet::IsIntranetUser(); $rsData = CUserTypeEntity::GetList(array("ID" => "ASC"), array("FIELD_NAME" => "UF_DEPARTMENT", "ENTITY_ID" => "USER")); if ($arRes = $rsData->Fetch()) { $UFId = intval($arRes["ID"]); } else { return array(); } $arOrder = array("ID" => "ASC"); $arFilter = array('ACTIVE' => 'Y'); if (IsModuleInstalled("intranet") || COption::GetOptionString("main", "new_user_registration_email_confirmation", "N") == "Y") { $arFilter["CONFIRM_CODE"] = false; } $arGroupBy = false; $arSelectFields = array("ID", "NAME", "LAST_NAME", "SECOND_NAME", "LOGIN", "PERSONAL_PHOTO", "WORK_POSITION", "PERSONAL_PROFESSION"); $arSqls = CSocNetGroup::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields); $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "DISTINCT", $arSqls["SELECT"]); if (!$bExtranetUser) { $strJoin = "\n\t\t\t\tLEFT JOIN b_utm_user UM ON UM.VALUE_ID = U.ID and FIELD_ID = " . intval($UFId) . "\n\t\t\t\tLEFT JOIN b_sonet_user2group UG ON UG.USER_ID = U.ID\n\t\t\t\tLEFT JOIN b_sonet_user2group UG_MY ON UG_MY.GROUP_ID = UG.GROUP_ID AND UG_MY.USER_ID = " . intval($currentUserId) . "\n\t\t\t"; $arSqls["WHERE"] .= (strlen($arSqls["WHERE"]) > 0 ? " AND " : "") . "\n\t\t\t\t(\n\t\t\t\t\tUM.VALUE_ID > 0\n\t\t\t\t\tOR UG_MY.ID IS NOT NULL\n\t\t\t\t)"; } else { $strJoin = "\n\t\t\t\tINNER JOIN b_sonet_user2group UG ON UG.USER_ID = U.ID\n\t\t\t\tINNER JOIN b_sonet_user2group UG_MY ON UG_MY.GROUP_ID = UG.GROUP_ID AND UG_MY.USER_ID = " . intval($currentUserId) . "\n\t\t\t"; } $strSql = "SELECT\n\t\t\t\t" . $arSqls["SELECT"] . "\n\t\t\tFROM b_user U\n\t\t\t\t" . $arSqls["FROM"] . " "; $strSql .= $strJoin . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["ORDERBY"]) > 0) { $strSql .= "ORDER BY " . $arSqls["ORDERBY"] . " "; } //echo "!1!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); $maxCount = IsModuleInstalled('bitrix24') ? 200 : 500; $resultCount = 0; if ($bExtranetEnabled) { CSocNetTools::InitGlobalExtranetArrays(); } while ($arUser = $dbRes->GetNext()) { if ($resultCount > $maxCount) { $countExceeded = true; break; } $sName = trim(CUser::FormatName(empty($arParams["NAME_TEMPLATE"]) ? CSite::GetNameFormat(false) : $arParams["NAME_TEMPLATE"], $arUser, true, false)); if (empty($sName)) { $sName = $arUser["~LOGIN"]; } $arFileTmp = CFile::ResizeImageGet($arUser["PERSONAL_PHOTO"], array('width' => 32, 'height' => 32), BX_RESIZE_IMAGE_EXACT, false); $arUsers['U' . $arUser["ID"]] = array('id' => 'U' . $arUser["ID"], 'entityId' => $arUser["ID"], 'name' => $sName, 'avatar' => empty($arFileTmp['src']) ? '' : $arFileTmp['src'], 'desc' => $arUser['WORK_POSITION'] ? $arUser['WORK_POSITION'] : ($arUser['PERSONAL_PROFESSION'] ? $arUser['PERSONAL_PROFESSION'] : ' '), 'isExtranet' => isset($GLOBALS["arExtranetUserID"]) && is_array($GLOBALS["arExtranetUserID"]) && in_array($arUser["ID"], $GLOBALS["arExtranetUserID"]) ? "Y" : "N"); $arUsers['U' . $arUser["ID"]]['checksum'] = md5(serialize($arUsers['U' . $arUser["ID"]])); $resultCount++; } if ($countExceeded) { return CSocNetLogDestination::GetUsers(array("id" => array($currentUserId)), true); } return $arUsers; }
$arLeads = array(); while ($dbLeads && ($arLead = $dbLeads->fetch())) { $arLeads['CRMLEAD' . $arLead['ID']] = array('id' => 'CRMLEAD' . $arLead['ID'], 'entityId' => $arLead['ID'], 'entityType' => 'leads', 'name' => htmlspecialcharsbx($arLead['TITLE']), 'desc' => htmlspecialcharsbx(CUser::FormatName($siteNameFormat, array('LOGIN' => '', 'NAME' => $arLead['NAME'], 'SECOND_NAME' => $arLead['SECOND_NAME'], 'LAST_NAME' => $arLead['LAST_NAME']), false, false))); } $dbDeals = CCrmDeal::GetListEx($arOrder = array(), $arFilter = array('%TITLE' => $search), $arGroupBy = false, $arNavStartParams = array('nTopCount' => 20), $arSelectFields = array('ID', 'TITLE', 'COMPANY_TITLE', 'CONTACT_NAME', 'CONTACT_SECOND_NAME', 'CONTACT_LAST_NAME')); $arDeals = array(); while ($dbDeals && ($arDeal = $dbDeals->fetch())) { $arDesc = array(); if ($arDeal['COMPANY_TITLE'] != '') { $arDesc[] = $arDeal['COMPANY_TITLE']; } $arDesc[] = CUser::FormatName($siteNameFormat, array('LOGIN' => '', 'NAME' => $arDeal['CONTACT_NAME'], 'SECOND_NAME' => $arDeal['CONTACT_SECOND_NAME'], 'LAST_NAME' => $arDeal['CONTACT_LAST_NAME']), false, false); $arDeals['CRMDEAL' . $arDeal['ID']] = array('id' => 'CRMDEAL' . $arDeal['ID'], 'entityId' => $arDeal['ID'], 'entityType' => 'deals', 'name' => htmlspecialcharsbx($arDeal['TITLE']), 'desc' => htmlspecialcharsbx(implode(', ', $arDesc))); } $searchResults['CONTACTS'] = $arContacts; $searchResults['COMPANIES'] = $arCompanies; $searchResults['LEADS'] = $arLeads; $searchResults['DEALS'] = $arDeals; } echo CUtil::PhpToJsObject($searchResults); } elseif ($_POST['LD_DEPARTMENT_RELATION'] == 'Y') { echo CUtil::PhpToJsObject(array('USERS' => CSocNetLogDestination::GetUsers(array('deportament_id' => $_POST['DEPARTMENT_ID'], "NAME_TEMPLATE" => $nameTemplate)))); } elseif ($_POST['LD_ALL'] == 'Y') { echo CUtil::PhpToJsObject(array('USERS' => CSocNetLogDestination::GetUsers(array('all' => 'Y', "NAME_TEMPLATE" => $nameTemplate)))); } else { echo CUtil::PhpToJsObject(array('ERROR' => 'UNKNOWN_ERROR')); } } else { echo CUtil::PhpToJsObject(array('ERROR' => 'SESSION_ERROR')); } require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_after.php";
$arResult['FEED_DESTINATION']['HIDDEN_GROUPS'][$group_code]['NAME'] = GetMessage('CRM_SL_EVENT_EDIT_HIDDEN_GROUP'); } } } } // intranet structure $arStructure = CSocNetLogDestination::GetStucture(array('LAZY_LOAD' => true)); $arResult['FEED_DESTINATION']['DEPARTMENT'] = $arStructure['department']; $arResult['FEED_DESTINATION']['DEPARTMENT_RELATION'] = $arStructure['department_relation']; $arResult['FEED_DESTINATION']['DEPARTMENT_RELATION_HEAD'] = $arStructure['department_relation_head']; //$arResult['FEED_DESTINATION']['LAST']['DEPARTMENT'] = CSocNetLogDestination::GetLastDepartment(); // users //$arResult['FEED_DESTINATION']['LAST']['USERS'] = CSocNetLogDestination::GetLastUser(); if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { $arResult['FEED_DESTINATION']['EXTRANET_USER'] = '******'; $arResult['FEED_DESTINATION']['USERS'] = CSocNetLogDestination::GetExtranetUser(); } else { // $destUsers = array(); // foreach($arResult['FEED_DESTINATION']['LAST']['USERS'] as $value) // $destUsers[] = str_replace('U', '', $value); // $arResult['FEED_DESTINATION']['EXTRANET_USER'] = '******'; // $arResult['FEED_DESTINATION']['USERS'] = CSocNetLogDestination::GetUsers(array('id' => $destUsers)); } $crmLogDestination = CUserOptions::GetOption('crm', 'log_destination'); $crmLogDestinationItems = isset($crmLogDestination['items']) ? explode(',', $crmLogDestination['items']) : false; if (!empty($crmLogDestinationItems)) { $lastContactIds = array(); $lastCompanyIds = array(); $lastLeadIds = array(); $lastDealIds = array();
} $obCache->EndDataCache(array("SONET_GROUPS" => $arSonetGroups, "SONET_GROUPS_EXTRANET" => $arSonetGroupsExtranet)); } if (is_array($arSonetGroupsExtranet) && !empty($arSonetGroupsExtranet)) { $arExtranetGroupID = array(); foreach ($arSonetGroupsExtranet as $arSonetGroupTmp) { if (is_array($arSonetGroupTmp) && array_key_exists("entityId", $arSonetGroupTmp) && intval($arSonetGroupTmp["entityId"]) > 0) { $arExtranetGroupID[] = intval($arSonetGroupTmp["entityId"]); } } } if (method_exists('CSocNetLogDestination', 'GetDestinationSort')) { $arSonetGroupsLast = array("DEST_SORT" => CSocNetLogDestination::GetDestinationSort(array("DEST_CONTEXT" => "USER_INVITE", "CODE_TYPE" => 'SG')), "LAST" => array()); CSocNetLogDestination::fillLastDestination($arSonetGroupsLast["DEST_SORT"], $arSonetGroupsLast["LAST"]); } else { $arSonetGroupsLast = array("LAST" => array('SONETGROUPS' => CSocNetLogDestination::GetLastSocnetGroup())); } $APPLICATION->IncludeComponent("bitrix:intranet.user.selector.new", ".default", array("MULTIPLE" => "N", "NAME" => "INVITE_DEPARTMENT", "VALUE" => 0, "POPUP" => "Y", "INPUT_NAME" => "UF_DEPARTMENT", "ON_SECTION_SELECT" => "onInviteDialogSectionsSelect", "SITE_ID" => $SITE_ID, "SHOW_STRUCTURE_ONLY" => "Y", "SHOW_EXTRANET_USERS" => "NONE"), null, array("HIDE_ICONS" => "Y")); ?> <div class="intranet-tabs-box" id="intranet-dialog-tabs"><?php ?> <div class="webform-round-corners webform-error-block" id="invite-dialog-error-block" style="display: none;"> <div class="webform-corners-top"><div class="webform-left-corner"></div><div class="webform-right-corner"></div></div> <div class="webform-content" id="invite-dialog-error-content"><?php echo $strError; ?> </div> <div class="webform-corners-bottom"><div class="webform-left-corner"></div><div class="webform-right-corner"></div></div> </div><?php ?> <div class="intranet-tabs">
$tableTitle = GetMessage("MD_EMPLOYEES_TITLE"); $tableData = AddTableData($tableData, $data, $tableTitle, $tableType); } if (in_array($action, array("get_group_list", "get_usergroup_list"))) { $cache_id = "mobileAction|get_groups|" . $GLOBALS["USER"]->GetID() . "|" . $detailurl; if ($cache->InitCache($cache_time, $cache_id, $cache_path)) { $cachedData = $cache->GetVars(); $data = $cachedData["DATA"]; $tableType = $cachedData["TYPE"]; } else { if (CModule::IncludeModule("socialnetwork")) { $GLOBALS["CACHE_MANAGER"]->StartTagCache($cache_path); $GLOBALS["CACHE_MANAGER"]->RegisterTag("sonet_user2group_U" . $GLOBALS["USER"]->GetID()); $GLOBALS["CACHE_MANAGER"]->RegisterTag("sonet_group"); $data = array(); $arSonetGroups = CSocNetLogDestination::GetSocnetGroup(array("features" => array("blog", array("premoderate_post", "moderate_post", "write_post", "full_post")), "THUMBNAIL_SIZE_WIDTH" => 64, "THUMBNAIL_SIZE_HEIGHT" => 64)); foreach ($arSonetGroups as $arSocnetGroup) { $tmpData = array("NAME" => htmlspecialcharsback($arSocnetGroup["name"]), "ID" => $arSocnetGroup["entityId"], "IMAGE" => $arSocnetGroup["avatar"], "bubble_background_color" => "#FFD5D5", "bubble_text_color" => "#B54827"); if (ToUpper(SITE_CHARSET) != "UTF-8") { $tmpData = $APPLICATION->ConvertCharsetArray($tmpData, SITE_CHARSET, "utf-8"); } $data[] = $tmpData; } $GLOBALS["CACHE_MANAGER"]->EndTagCache(); $tableType = "b_groups"; if ($cache->StartDataCache()) { $cache->EndDataCache(array("DATA" => $data, "TYPE" => $tableType)); } } } $tableTitle = GetMessage("MD_GROUPS_TITLE");
} if (in_array("MentionUser", $arParams["BUTTONS"])) { if (CModule::IncludeModule("socialnetwork") && method_exists('CSocNetLogDestination', 'GetDestinationSort')) { $arResult["MENTION_DEST_SORT"] = CSocNetLogDestination::GetDestinationSort(array("DEST_CONTEXT" => "MENTION")); } else { $arResult["MENTION_DEST_SORT"] = array(); } $arParams["DESTINATION"]['LAST']['MENTION_USERS'] = array(); $arDestUser = array(); foreach ($arResult["MENTION_DEST_SORT"] as $code => $sortInfo) { if (preg_match('/^U(\\d+)$/i', $code, $matches)) { $arParams["DESTINATION"]['LAST']['MENTION_USERS'][$code] = $code; $arDestUser[] = str_replace('U', '', $code); } } $arParams["DESTINATION"]['MENTION_USERS'] = CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser() ? $arParams["DESTINATION"]['USERS'] : (!empty($arDestUser) ? CSocNetLogDestination::GetUsers(array('id' => $arDestUser)) : array()); } $arParams["TAGS"] = is_array($arParams["TAGS"]) ? $arParams["TAGS"] : array(); if (!empty($arParams["TAGS"])) { $arParams["TAGS"]["VALUE"] = is_array($arParams["TAGS"]["VALUE"]) ? $arParams["TAGS"]["VALUE"] : array(); } $arResult["SMILES"] = array("VALUE" => array(), "SETS" => array()); if (array_key_exists("SMILES", $arParams)) { if (!in_array("SmileList", $arParams["PARSER"])) { $arParams["PARSER"][] = "SmileList"; } if (is_array($arParams["SMILES"]) && array_key_exists("VALUE", $arParams["SMILES"])) { $arResult["SMILES"] = $arParams["SMILES"]; } else { if (!is_array($arParams["SMILES"]) && ($res = CSmileGallery::getSmilesWithSets($arParams["SMILES"]))) { $arResult["SMILES"] = array("VALUE" => array(), "SETS" => array());
$arParams["DESTINATION_SHOW"] = array_key_exists("SHOW", $arParams["DESTINATION"]) ? $arParams["DESTINATION"]["SHOW"] : $arParams["DESTINATION_SHOW"]; $arParams["DESTINATION_SHOW"] = $arParams["DESTINATION_SHOW"] == "Y" ? "Y" : "N"; $arParams["DESTINATION"] = array_key_exists("VALUE", $arParams["DESTINATION"]) ? $arParams["DESTINATION"]["VALUE"] : $arParams["DESTINATION"]; if (empty($arParams["DESTINATION"]) && in_array("MentionUser", $arParams["BUTTONS"]) && CModule::IncludeModule("socialnetwork")) { $arStructure = CSocNetLogDestination::GetStucture(array("LAZY_LOAD" => true)); $arParams["DESTINATION"] = array("LAST" => array("USERS" => CSocNetLogDestination::GetLastUser()), "DEPARTMENT" => $arStructure['department'], "DEPARTMENT_RELATION" => $arStructure['department_relation']); if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { $arParams["DESTINATION"]['EXTRANET_USER'] = '******'; $arParams["DESTINATION"]['USERS'] = CSocNetLogDestination::GetExtranetUser(); } else { $arDestUser = array(); foreach ($arParams["DESTINATION"]['LAST']['USERS'] as $value) { $arDestUser[] = str_replace('U', '', $value); } $arParams["DESTINATION"]['EXTRANET_USER'] = '******'; $arParams["DESTINATION"]['USERS'] = CSocNetLogDestination::GetUsers(array('id' => $arDestUser)); } } $arParams["TAGS"] = is_array($arParams["TAGS"]) ? $arParams["TAGS"] : array(); if (!empty($arParams["TAGS"])) { $arParams["TAGS"]["VALUE"] = is_array($arParams["TAGS"]["VALUE"]) ? $arParams["TAGS"]["VALUE"] : array(); } $arParams["SMILES_COUNT"] = intVal($arParams["SMILES_COUNT"]); $arParams["SMILES"] = is_array($arParams["SMILES"]) ? $arParams["SMILES"] : array(); if (!empty($arParams["SMILES"]) && !in_array("SmileList", $arParams["PARSER"])) { $arParams["PARSER"][] = "SmileList"; } $arParams["CUSTOM_TEXT"] = is_array($arParams["CUSTOM_TEXT"]) ? $arParams["CUSTOM_TEXT"] : array(); $arParams["CUSTOM_TEXT_HASH"] = !empty($arParams["CUSTOM_TEXT"]) ? md5(implode("", $arParams["CUSTOM_TEXT"])) : ""; $arParams["IMAGE_THUMB"] = array("WIDTH" => 90, "HEIGHT" => 90); $arParams["IMAGE"] = array("WIDTH" => 90, "HEIGHT" => 90);
} } if ($GLOBALS["USER"]->IsAuthorized() && $arParams["USE_FOLLOW"] == "Y") { $rsFollow = CSocNetLogFollow::GetList(array("USER_ID" => $GLOBALS["USER"]->GetID(), "CODE" => "**"), array("TYPE")); if ($arFollow = $rsFollow->Fetch()) { $arResult["FOLLOW_DEFAULT"] = $arFollow["TYPE"]; } else { $arResult["FOLLOW_DEFAULT"] = COption::GetOptionString("socialnetwork", "follow_default_type", "Y"); } } $bAllowToAll = COption::GetOptionString("socialnetwork", "allow_livefeed_toall", "Y") == "Y"; if ($bAllowToAll) { $arToAllRights = unserialize(COption::GetOptionString("socialnetwork", "livefeed_toall_rights", 'a:1:{i:0;s:2:"AU";}')); if (!$arToAllRights) { $arToAllRights = array("AU"); } $arUserGroupCode = array_merge(array("AU"), CAccess::GetUserCodesArray($GLOBALS["USER"]->GetID())); if (count(array_intersect($arToAllRights, $arUserGroupCode)) <= 0) { $bAllowToAll = false; } } $arResult["bExtranetSite"] = CModule::IncludeModule("extranet") && CExtranet::IsExtranetSite(); $arResult["bDenyToAll"] = $arResult["bExtranetSite"] || !$bAllowToAll; $arResult["bDefaultToAll"] = $bAllowToAll ? COption::GetOptionString("socialnetwork", "default_livefeed_toall", "Y") == "Y" : false; if ($arResult["bExtranetSite"]) { $arResult["arAvailableGroup"] = CSocNetLogDestination::GetSocnetGroup(array('features' => array("blog", array("premoderate_post", "moderate_post", "write_post", "full_post")))); } $arResult["bDiskInstalled"] = \Bitrix\Main\Config\Option::get('disk', 'successfully_converted', false) && IsModuleInstalled('disk'); $arResult["bWebDavInstalled"] = IsModuleInstalled('webdav'); $arResult["postFormUFCode"] = $arResult["bDiskInstalled"] || IsModuleInstalled('webdav') ? "UF_BLOG_POST_FILE" : "UF_BLOG_POST_DOC"; $this->IncludeComponentTemplate();
protected function processActionDetailUserShare() { $this->arResult = $this->dispatcher->processActionDetailUserShare($this->arParams); if (\Bitrix\Main\Loader::includeModule('socialnetwork')) { // socialnetwork $this->arResult["FEED_DESTINATION"] = array('LAST' => array()); $this->arResult["FEED_DESTINATION"]['LAST']['SONETGROUPS'] = array(); $this->arResult["FEED_DESTINATION"]['SONETGROUPS'] = array(); $this->arResult["FEED_DESTINATION"]['SELECTED'] = array(); // intranet structure $arStructure = CSocNetLogDestination::GetStucture(array("LAZY_LOAD" => true)); $this->arResult["FEED_DESTINATION"]['DEPARTMENT'] = $arStructure['department']; $this->arResult["FEED_DESTINATION"]['DEPARTMENT_RELATION'] = $arStructure['department_relation']; $this->arResult["FEED_DESTINATION"]['DEPARTMENT_RELATION_HEAD'] = $arStructure['department_relation_head']; $this->arResult["FEED_DESTINATION"]['LAST']['DEPARTMENT'] = CSocNetLogDestination::GetLastDepartment(); // users $this->arResult["FEED_DESTINATION"]['LAST']['USERS'] = CSocNetLogDestination::GetLastUser(); foreach ($this->arResult["FEED_DESTINATION"]['LAST']['USERS'] as $value) { $this->arResult["dest_users"][] = str_replace('U', '', $value); } $this->arResult["FEED_DESTINATION"]['EXTRANET_USER'] = '******'; $this->arResult["FEED_DESTINATION"]['USERS'] = CSocNetLogDestination::GetUsers(array('id' => $this->arResult["dest_users"])); $this->arResult["FEED_DESTINATION"]["DENY_TOALL"] = true; } $this->includeComponentTemplate('ajax_user'); }
<?php require $_SERVER["DOCUMENT_ROOT"] . "/mobile/headers.php"; require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php"; if (IsModuleInstalled("bitrix24")) { GetGlobalID(); } $arPostProperty = array("UF_BLOG_POST_DOC"); if (IsModuleInstalled("webdav")) { $arPostProperty[] = "UF_BLOG_POST_FILE"; } if (CModule::IncludeModule("extranet") && CExtranet::IsExtranetSite() && CModule::IncludeModule("socialnetwork")) { $arSonetGroups = CSocNetLogDestination::GetSocnetGroup(array('features' => array("blog", array("premoderate_post", "moderate_post", "write_post", "full_post")))); if (count($arSonetGroups) == 1) { foreach ($arSonetGroups as $key => $arGroupTmp) { $group_id = intval($arGroupTmp['entityId']); } } } if (!$group_id) { $group_id = intval($_REQUEST["group_id"]); } $group_id = intval($group_id); $APPLICATION->IncludeComponent("bitrix:main.post.form", "mobile", array("FORM_ACTION_URL" => SITE_DIR . "mobile/log/" . ($group_id > 0 ? "?group_id=" . $group_id : ""), "SOCNET_GROUP_ID" => $group_id, "POST_PROPERTY" => $arPostProperty, "FORM_ID" => "blogPostForm", "FORM_TARGET" => "_self", "IS_EXTRANET" => "Y"), false, array("HIDE_ICONS" => "Y")); require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php";
public static function GetSocNetDestination($user_id = false, $selected = array()) { global $CACHE_MANAGER; if (!is_array($selected)) { $selected = array(); } $DESTINATION = array('LAST' => array('SONETGROUPS' => CSocNetLogDestination::GetLastSocnetGroup())); if (!$user_id) { $user_id = CCalendar::GetCurUserId(); } $DESTINATION['LAST']['SONETGROUPS'] = CSocNetLogDestination::GetLastSocnetGroup(); $cacheTtl = defined("BX_COMP_MANAGED_CACHE") ? 3153600 : 3600 * 4; $cacheId = 'blog_post_form_dest_' . $user_id; $cacheDir = '/blog/form/dest/' . SITE_ID . '/' . $user_id; $obCache = new CPHPCache(); if ($obCache->InitCache($cacheTtl, $cacheId, $cacheDir)) { $DESTINATION['SONETGROUPS'] = $obCache->GetVars(); } else { $obCache->StartDataCache(); $DESTINATION['SONETGROUPS'] = CSocNetLogDestination::GetSocnetGroup(array('features' => array("blog", array("premoderate_post", "moderate_post", "write_post", "full_post")))); if (defined("BX_COMP_MANAGED_CACHE")) { $CACHE_MANAGER->StartTagCache($cacheDir); foreach ($DESTINATION['SONETGROUPS'] as $val) { $CACHE_MANAGER->RegisterTag("sonet_features_G_" . $val["entityId"]); $CACHE_MANAGER->RegisterTag("sonet_group_" . $val["entityId"]); } $CACHE_MANAGER->RegisterTag("sonet_user2group_U" . $user_id); $CACHE_MANAGER->EndTagCache(); } $obCache->EndDataCache($DESTINATION['SONETGROUPS']); } $arDestUser = array(); $DESTINATION['SELECTED'] = array(); foreach ($selected as $ind => $code) { if (substr($code, 0, 2) == 'DR') { $DESTINATION['SELECTED'][$code] = "department"; } elseif (substr($code, 0, 2) == 'UA') { $DESTINATION['SELECTED'][$code] = "groups"; } elseif (substr($code, 0, 2) == 'SG') { $DESTINATION['SELECTED'][$code] = "sonetgroups"; } elseif (substr($code, 0, 1) == 'U') { $DESTINATION['SELECTED'][$code] = "users"; $arDestUser[] = str_replace('U', '', $code); } } // intranet structure $arStructure = CSocNetLogDestination::GetStucture(); //$arStructure = CSocNetLogDestination::GetStucture(array("LAZY_LOAD" => true)); $DESTINATION['DEPARTMENT'] = $arStructure['department']; $DESTINATION['DEPARTMENT_RELATION'] = $arStructure['department_relation']; $DESTINATION['DEPARTMENT_RELATION_HEAD'] = $arStructure['department_relation_head']; $DESTINATION['LAST']['DEPARTMENT'] = CSocNetLogDestination::GetLastDepartment(); // users $DESTINATION['LAST']['USERS'] = CSocNetLogDestination::GetLastUser(); if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { $DESTINATION['EXTRANET_USER'] = '******'; $DESTINATION['USERS'] = CSocNetLogDestination::GetExtranetUser(); } else { foreach ($DESTINATION['LAST']['USERS'] as $value) { $arDestUser[] = str_replace('U', '', $value); } $DESTINATION['EXTRANET_USER'] = '******'; $DESTINATION['USERS'] = CSocNetLogDestination::GetUsers(array('id' => $arDestUser)); } $users = array(); foreach ($DESTINATION['USERS'] as $key => $entry) { if ($entry['isExtranet'] == 'N') { $users[$key] = $entry; } } $DESTINATION['USERS'] = $users; return $DESTINATION; }
} if ($arResult["ShowForm"] == "Input") { if (!array_key_exists("TAB", $arResult) || $arResult["TAB"] == "edit") { $arResult["Subjects"] = array(); $dbSubjects = CSocNetGroupSubject::GetList(array("SORT" => "ASC", "NAME" => "ASC"), array("SITE_ID" => SITE_ID), false, false, array("ID", "NAME")); while ($arSubject = $dbSubjects->GetNext()) { $arResult["Subjects"][$arSubject["ID"]] = $arSubject["NAME"]; } $arResult["InitiatePerms"] = array(SONET_ROLES_OWNER => GetMessage("SONET_GCE_IP_OWNER"), SONET_ROLES_MODERATOR => GetMessage("SONET_GCE_IP_MOD"), SONET_ROLES_USER => GetMessage("SONET_GCE_IP_USER")); $arResult["SpamPerms"] = array(SONET_ROLES_OWNER => GetMessage("SONET_GCE_IP_OWNER"), SONET_ROLES_MODERATOR => GetMessage("SONET_GCE_IP_MOD"), SONET_ROLES_USER => GetMessage("SONET_GCE_IP_USER"), SONET_ROLES_ALL => GetMessage("SONET_GCE_IP_ALL")); } } if (!array_key_exists("TAB", $arResult) || $arResult["TAB"] == "invite") { $arResult["DEST_SORT"] = CSocNetLogDestination::GetDestinationSort(array("DEST_CONTEXT" => "GROUP_INVITE", "CODE_TYPE" => 'U')); $arResult["DEST_USERS_LAST"] = array(); CSocNetLogDestination::fillLastDestination($arResult["DEST_SORT"], $arResult["DEST_USERS_LAST"]); if (isset($arResult["DEST_USERS_LAST"]['USERS'])) { $arResult["DEST_USERS_LAST"] = $arResult["DEST_USERS_LAST"]['USERS']; } if (is_array($arResult["DEST_USERS_LAST"]) && !empty($arResult["DEST_USERS_LAST"])) { $arLastUserID = array(); foreach ($arResult["DEST_USERS_LAST"] as $user_code) { if (preg_match('/^U(\\d+)$/', $user_code, $match)) { $arLastUserID[] = $match[1]; } } $dbUsers = CUser::GetList($sort_by = array('last_name' => 'asc', 'IS_ONLINE' => 'desc'), $dummy = '', array("ID" => implode("|", $arLastUserID)), array("FIELDS" => array("ID", "LAST_NAME", "NAME", "SECOND_NAME", "LOGIN", "PERSONAL_PHOTO", "WORK_POSITION", "PERSONAL_PROFESSION"), "SELECT" => array("UF_DEPARTMENT"))); $arResult["siteDepartmentID"] = COption::GetOptionString("main", "wizard_departament", false, SITE_ID, true); while ($arUser = $dbUsers->Fetch()) { if (intval($arResult["siteDepartmentID"]) > 0) { $arUserGroupCode = CAccess::GetUserCodesArray($arUser["ID"]);
} if (check_bitrix_sessid()) { if (CModule::IncludeModule('extranet') && !CExtranet::IsIntranetUser()) { echo CUtil::PhpToJsObject(array('ERROR' => 'EXTRANET_USER')); } else { if (isset($_POST["nt"])) { preg_match_all("/(#NAME#)|(#LAST_NAME#)|(#SECOND_NAME#)|(#NAME_SHORT#)|(#SECOND_NAME_SHORT#)|\\s|\\,/", urldecode($_REQUEST["nt"]), $matches); $nameTemplate = implode("", $matches[0]); } else { $nameTemplate = CSite::GetNameFormat(false); } if ($_POST['LD_SEARCH'] == 'Y') { CUtil::decodeURIComponent($_POST); echo CUtil::PhpToJsObject(array('USERS' => CSocNetLogDestination::SearchUsers($_POST['SEARCH'], $nameTemplate, false, IsModuleInstalled("extranet")))); } elseif ($_POST['LD_DEPARTMENT_RELATION'] == 'Y' && IsModuleInstalled("intranet")) { echo CUtil::PhpToJsObject(array('USERS' => CSocNetLogDestination::GetUsers(array('deportament_id' => $_POST['DEPARTMENT_ID'], "NAME_TEMPLATE" => $nameTemplate), false))); } elseif (isset($_POST["bitrix_processes"])) { if (CModule::IncludeModule('lists')) { IncludeModuleLangFile(__FILE__); global $USER; $listsPerm = CListPermissions::CheckAccess($USER, COption::GetOptionString("lists", "livefeed_iblock_type_id"), false); if ($listsPerm < 0) { switch ($listsPerm) { case CListPermissions::WRONG_IBLOCK_TYPE: echo CUtil::PhpToJsObject(array('success' => false, 'error' => GetMessage("CC_BLL_WRONG_IBLOCK_TYPE"))); die; case CListPermissions::WRONG_IBLOCK: echo CUtil::PhpToJsObject(array('success' => false, 'error' => GetMessage("CC_BLL_WRONG_IBLOCK"))); die; case CListPermissions::LISTS_FOR_SONET_GROUP_DISABLED: echo CUtil::PhpToJsObject(array('success' => false, 'error' => GetMessage("CC_BLL_LISTS_FOR_SONET_GROUP_DISABLED")));
$GLOBALS["CACHE_MANAGER"]->RegisterTag("sonet_group_" . $val["entityId"]); } $GLOBALS["CACHE_MANAGER"]->RegisterTag("sonet_user2group_U" . $GLOBALS["USER"]->GetID()); $GLOBALS["CACHE_MANAGER"]->EndTagCache(); } $obCache->EndDataCache(array("SONET_GROUPS" => $arSonetGroups, "SONET_GROUPS_EXTRANET" => $arSonetGroupsExtranet)); } if (is_array($arSonetGroupsExtranet) && !empty($arSonetGroupsExtranet)) { $arExtranetGroupID = array(); foreach ($arSonetGroupsExtranet as $arSonetGroupTmp) { if (is_array($arSonetGroupTmp) && array_key_exists("entityId", $arSonetGroupTmp) && intval($arSonetGroupTmp["entityId"]) > 0) { $arExtranetGroupID[] = intval($arSonetGroupTmp["entityId"]); } } } $arSonetGroupsLast = CSocNetLogDestination::GetLastSocnetGroup(); $APPLICATION->IncludeComponent("bitrix:intranet.user.selector.new", ".default", array("MULTIPLE" => "N", "NAME" => "INVITE_DEPARTMENT", "VALUE" => 0, "POPUP" => "Y", "INPUT_NAME" => "UF_DEPARTMENT", "ON_SECTION_SELECT" => "onInviteDialogSectionsSelect", "SITE_ID" => $SITE_ID, "SHOW_STRUCTURE_ONLY" => "Y", "SHOW_EXTRANET_USERS" => "NONE"), null, array("HIDE_ICONS" => "Y")); ?> <div class="intranet-tabs-box" id="intranet-dialog-tabs"><?php ?> <div class="webform-round-corners webform-error-block" id="invite-dialog-error-block" style="display: none;"> <div class="webform-corners-top"><div class="webform-left-corner"></div><div class="webform-right-corner"></div></div> <div class="webform-content" id="invite-dialog-error-content"><?php echo $strError; ?> </div> <div class="webform-corners-bottom"><div class="webform-left-corner"></div><div class="webform-right-corner"></div></div> </div><?php ?> <div class="intranet-tabs"> <span class="intranet-tab<?php