• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/classes/general/yandex.php
  • Класс: CMailYandex
  • Вызов: CMailYandex::getDomainUsers
static function getDomainUsers($token, $per_page = 30, $page = 0, &$error)
{
	$result = self::query('https://pddimp.yandex.ru/get_domain_users.xml', array(
		'token'   => $token,
		'on_page' => $per_page,
		'page'    => $page
	));

	if ($domainNode = $result->selectNodes('/page/domains/domain'))
	{
		$domainInfo = array();
		foreach ($domainNode->children() as $domainFieldNode)
		{
			if (in_array($domainFieldNode->name(), array('name', 'status')))
				$domainInfo[$domainFieldNode->name()] = $domainFieldNode->textContent();
			if (in_array($domainFieldNode->name(), array('emails-max-count')))
				$domainInfo[$domainFieldNode->name()] = intval($domainFieldNode->textContent());
			if ($domainFieldNode->name() == 'emails')
			{
				$domainInfo['emails'] = array();
				foreach ($domainFieldNode->children() as $domainEmailsNode)
				{
					if (in_array($domainEmailsNode->name(), array('found', 'total')))
						$domainInfo['emails_'.$domainEmailsNode->name()] = $domainEmailsNode->textContent();
					if ($domainEmailsNode->name() == 'email')
					{
						$key = count($domainInfo['emails']);
						foreach ($domainEmailsNode->children() as $emailNode)
							$domainInfo['emails'][$key][$emailNode->name()] = $emailNode->textContent();
					}
				}
			}
		}

		return $domainInfo;
	}

	self::setError($result, $error);
	return false;
}