$cache->EndDataCache($arVoteList); } } } } if (!function_exists("AddTableData")) { function AddTableData($source = array(), $data = array(), $data_name = "", $dataID = false) { global $APPLICATION; if ($dataID === false) { $dataID = 'data' . rand(1, 100000); } $source['data'][$dataID] = $data; $source['names'][$dataID] = (string) $data_name; return $source; } } $data = array(); if (!empty($arVoteList["items"])) { $arVoteList["items"] = array_values($arVoteList["items"]); $data = AddTableData(array(), $arVoteList["items"], "voting.current", "voters"); } $APPLICATION->RestartBuffer(); if (SITE_CHARSET != "utf-8") { $data = $APPLICATION->ConvertCharsetArray($data, SITE_CHARSET, "utf-8"); } header('Content-Type: application/x-javascript; charset=' . LANG_CHARSET); echo json_encode($data); define('PUBLIC_AJAX_MODE', true); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_after.php"; die;
continue; } // skip myself if (intval($userData["PERSONAL_PHOTO"]) > 0) { $arImage = CFile::ResizeImageGet($userData["PERSONAL_PHOTO"], array("width" => 64, "height" => 64), BX_RESIZE_IMAGE_EXACT, false, false, true); $img_src = $arImage["src"]; } else { $img_src = false; } $tmpData = array("NAME" => CUser::FormatName(CSite::GetNameFormat(false), $userData, true), "ID" => $userData["ID"], "IMAGE" => $img_src, "URL" => $detailurl . $userData["ID"], "TAGS" => ""); if ($withTags == "Y") { $tmpTags = array($userData["WORK_POSITION"]); for ($i = 0; $i < count($userData["UF_DEPARTMENT"]); $i++) { $tmpTags[] = $arDepartaments[$userData["UF_DEPARTMENT"][$i]]; } $tmpData["TAGS"] = implode(",", $tmpTags); } if (SITE_CHARSET != "utf-8") { $tmpData = $APPLICATION->ConvertCharsetArray($tmpData, SITE_CHARSET, "utf-8"); } $data[] = $tmpData; } $GLOBALS["CACHE_MANAGER"]->EndTagCache(); $tableType = "a_users"; if ($cache->StartDataCache()) { $cache->EndDataCache(array("DATA" => $data, "TYPE" => $tableType)); } } $tableTitle = GetMessage("MD_EMPLOYEES_TITLE"); $tableData = AddTableData($tableData, $data, $tableTitle, $tableType); return $tableData;
$arImage = CFile::ResizeImageGet($arVoter["PERSONAL_PHOTO"], array("width" => 64, "height" => 64), BX_RESIZE_IMAGE_EXACT, false, false, true); $img_src = $arImage["src"]; } else { $img_src = false; } $arTags = array(); if (array_key_exists("WORK_POSITION", $arVoter) && strlen($arVoter["WORK_POSITION"]) > 0) { $arTags[] = $arVoter["WORK_POSITION"]; } if (array_key_exists("UF_DEPARTMENT", $arVoter) && is_array($arVoter["UF_DEPARTMENT"]) && count($arVoter["UF_DEPARTMENT"]) > 0) { foreach ($arVoter["UF_DEPARTMENT"] as $user_department) { if (array_key_exists($user_department, $arDepartaments)) { $arTags[] = $arDepartaments[$user_department]; } } } $tmpVoter = array("NAME" => $arVoter["NAME"], "LAST_NAME" => $arVoter["LAST_NAME"], "SECOND_NAME" => $arVoter["SECOND_NAME"], "LOGIN" => $arVoter["LOGIN"]); $tmpData = array("NAME" => CUser::FormatName(CSite::GetNameFormat(false), $tmpVoter, true, false), "ID" => $arVoter["ID"], "IMAGE" => $img_src, "URL" => strpos($detailurl, "#user_id#") !== false || strpos($detailurl, "#USER_ID#") !== false ? str_replace(array("#user_id#", "#USER_ID#"), $arVoter["ID"], $detailurl) : $detailurl . $arVoter["ID"]); if (count($arTags) > 0) { $tmpData["TAGS"] = implode(",", $arTags); } if (SITE_CHARSET != "utf-8") { $tmpData = $GLOBALS["APPLICATION"]->ConvertCharsetArray($tmpData, SITE_CHARSET, "utf-8"); } $arResultData[] = $tmpData; } if (count($arResultData) > 0) { $data = AddTableData(array(), $arResultData, "xxx", "a_users"); } } return $data;