• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/mp_notifications.php
  • Класс: CMpNotifications
  • Вызов: CMpNotifications::OnAdminInformerInsertItemsHandlerMP
static function OnAdminInformerInsertItemsHandlerMP()
{
	global $USER;
	if(BitrixMainApplication::getInstance()->getLicense()->isDemoKey())
	{
		return false;
	}
	if(!$USER->CanDoOperation('install_updates'))
	{
		return false;
	}
	$daysCheck = intval(COption::GetOptionString('main', 'update_autocheck', '1'));
	if($daysCheck > 0)
	{
		$arModulesResult = unserialize(COption::GetOptionString("main", "last_mp_modules_result"), ['allowed_classes' => false]);
		if(!is_array($arModulesResult))
		{
			$arModulesResult = array("check_date" => 0);
		}

		if ($arModulesResult["check_date"] + 86400*$daysCheck < time())
		{
			$arInstalledModules = self::getClientInstalledModules();
			$arModulesUpdates = ($arInstalledModules ? self::checkUpdates($arInstalledModules, 2, $daysCheck) : array());
			$arDateEndModules = ($arInstalledModules ? self::checkModulesEndDate($arInstalledModules, $daysCheck) : array());
			$arNewPartnersModules = ($arInstalledModules ? self::checkUpdates($arInstalledModules, 1, $daysCheck) : array());
			$arModulesResult = array(
				"check_date" => time(),
				'update_module' => $arModulesUpdates,
				'end_update' => $arDateEndModules,
				'new_module' => $arNewPartnersModules,
			);
			COption::SetOptionString(
				'main',
				'last_mp_modules_result',
				serialize($arModulesResult)
			);
		}
		self::addMpNotifications($arModulesResult);
	}
	else
	{
		return false;
	}
}