Example #1
0
            $arSections[$arRes['ID']] = $arRes;
        }
        $CACHE_MANAGER->EndTagCache();
        $obCache->EndDataCache(array("SECTIONS" => $arSections, "STRUCTURE" => $arStructure));
    }
}
if (CModule::IncludeModule('extranet')) {
    $arStructure[0][] = "extranet";
    $arSections["extranet"] = array("ID" => "extranet", "NAME" => GetMessage("TASKS_EMP_EXTRANET"));
}
$arResult["STRUCTURE"] = $arStructure;
$arResult["SECTIONS"] = $arSections;
//last selected users
$arResult["LAST_USERS"] = tasksGetLastSelected($arManagers, $bSubordinateOnly, $arParams["NAME_TEMPLATE"]);
$arResult["LAST_USERS_IDS"] = is_array($arResult["LAST_USERS"]) ? array_slice(array_keys($arResult["LAST_USERS"]), 0, 10) : array();
$arResult['ROOT_DEP_USER'] = CUtil::PhpToJsObject(TasksGetDepartmentUsers($arResult["STRUCTURE"][0][0], $arParams['SITE_ID'], $arSubDeps, $arManagers, $arParams['SHOW_INACTIVE_USERS'], $arParams["NAME_TEMPLATE"]));
// current users
if (!is_array($arParams['VALUE'])) {
    $arParams['VALUE'] = explode(',', $arParams['VALUE']);
}
foreach ($arParams['VALUE'] as $key => $ID) {
    $arParams['VALUE'][$key] = intval(trim($ID));
}
$arParams['VALUE'] = array_unique(array_filter($arParams['VALUE']));
$arResult["CURRENT_USERS"] = array();
if (sizeof($arParams["VALUE"])) {
    $arListedUsers = array();
    $arFilter['!UF_DEPARTMENT'] = false;
    $arFilter['ID'] = implode('|', $arParams['VALUE']);
    // Prevent using users, that doesn't activate it's account
    // http://jabber.bx/view.php?id=29118
Example #2
0
$arManagers = array();
if (($arRes = $dbRes->Fetch()) && is_array($arRes['UF_DEPARTMENT']) && count($arRes['UF_DEPARTMENT']) > 0) {
    $arManagers = array_keys(CTasks::GetDepartmentManagers($arRes['UF_DEPARTMENT'], $USER->GetID()));
}
$bSubordinateOnly = isset($_GET["S_ONLY"]) && $_GET["S_ONLY"] == "Y";
if (isset($_REQUEST["nt"])) {
    preg_match_all("/(#NAME#)|(#NOBR#)|(#\\/NOBR#)|(#LAST_NAME#)|(#SECOND_NAME#)|(#NAME_SHORT#)|(#SECOND_NAME_SHORT#)|\\s|\\,/", urldecode($_REQUEST["nt"]), $matches);
    $nameTemplate = implode("", $matches[0]);
} else {
    $nameTemplate = CSite::GetNameFormat(false);
}
if ($_REQUEST['MODE'] == 'EMPLOYEES' && (!CModule::IncludeModule('extranet') || CExtranet::IsIntranetUser() || $SECTION_ID == 'extranet')) {
    if ($SECTION_ID != 'extranet') {
        $SECTION_ID = intval($_REQUEST['SECTION_ID']);
    }
    $arUsers = TasksGetDepartmentUsers($SECTION_ID, $SITE_ID, $arSubDeps, $arManagers, $_REQUEST['SHOW_INACTIVE_USERS'], $nameTemplate);
    $APPLICATION->RestartBuffer();
    Header('Content-Type: application/x-javascript; charset=' . LANG_CHARSET);
    echo CUtil::PhpToJsObject($arUsers);
    CMain::FinalActions();
    // to make events work on bitrix24
    die;
} elseif ($_REQUEST['MODE'] == 'SEARCH') {
    CUtil::JSPostUnescape();
    $APPLICATION->RestartBuffer();
    $search = $_REQUEST['SEARCH_STRING'];
    $arUsers = array();
    $arFilter = array("ACTIVE" => isset($_REQUEST["SHOW_INACTIVE_USERS"]) && $_REQUEST["SHOW_INACTIVE_USERS"] === "Y" ? "" : "Y", "NAME_SEARCH" => $search);
    if (!isset($_REQUEST["SHOW_INACTIVE_USERS"]) || $_REQUEST["SHOW_INACTIVE_USERS"] !== "Y") {
        $arFilter["CONFIRM_CODE"] = false;
    }