• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/classes/general/calendar_sync.php
  • Класс: CCalendarSync
  • Вызов: CCalendarSync::GetExchangeEmailForUser
static function GetExchangeEmailForUser($idList = [])
{
	global $DB;

	$users = [];

	if (CCalendar::IsSocNet())
	{
		if(is_array($idList))
		{
			$idList = array_unique($idList);
		}
		else
		{
			$idList = array($idList);
		}

		$strIdList = "";
		foreach($idList as $id)
		{
			if((int)$id > 0)
			{
				$strIdList .= ','.(int)$id;
			}
		}
		$strIdList = trim($strIdList, ', ');

		if($strIdList != '')
		{
			$exchangeMailbox = COption::GetOptionString("dav", "exchange_mailbox", "");
			$exchangeUseLogin = COption::GetOptionString("dav", "exchange_use_login", "Y");

			$strSql = "SELECT U.ID, U.LOGIN, U.EMAIL, BUF.UF_BXDAVEX_MAILBOX
				FROM b_user U
				LEFT JOIN b_uts_user BUF ON (BUF.VALUE_ID = U.ID)
				WHERE
					U.ACTIVE = 'Y' AND
					U.ID in (".$strIdList.")";

			$res = $DB->Query($strSql, false, "File: ".__FILE__."
Line: ".__LINE__); while($entry = $res->Fetch()) { $users[$entry['ID']] = (($exchangeUseLogin === "Y") ? $entry["LOGIN"].$exchangeMailbox : $entry["UF_BXDAVEX_MAILBOX"]) ; if (empty($users[$entry['ID']])) { $users[$entry['ID']] = $entry['EMAIL']; } } } } return $users; }