• Модуль: timeman
  • Путь к файлу: ~/bitrix/modules/timeman/classes/general/timeman_report_full.php
  • Класс: CReportNotifications
  • Вызов: CReportNotifications::NotifyIm
static function NotifyIm($arReport)
{
	if(!CModule::IncludeModule("im"))
		return;

	$arMessageFields = array(
		"MESSAGE_TYPE" => IM_MESSAGE_SYSTEM,
		"FROM_USER_ID" => $arReport["USER_ID"],
		"NOTIFY_TYPE" => IM_NOTIFY_FROM,
		"NOTIFY_MODULE" => "timeman",
		"NOTIFY_EVENT" => "report",
		"LOG_ID" => $arReport["LOG_ID"],
		"NOTIFY_TAG" => "TIMEMAN|REPORT|".$arReport["ID"],
	);

	$reports_page = COption::GetOptionString("timeman","WORK_REPORT_PATH","/timeman/work_report.php");

	switch ($arReport["USER_GENDER"])
	{
		case "M":
			$gender_suffix = "_M";
			break;
		case "F":
			$gender_suffix = "_F";
				break;
		default:
			$gender_suffix = "";
	}

	$arManagers = CTimeMan::GetUserManagers($arReport["USER_ID"]);
	if (is_array($arManagers) && count($arManagers) > 0)
	{
		foreach($arManagers as $managerID)
		{
			$arMessageFields["TO_USER_ID"] = $managerID;
			$arTmp = CSocNetLogTools::ProcessPath(array("REPORTS_PAGE" => $reports_page), $managerID);

			$arMessageFields["NOTIFY_MESSAGE"] = GetMessage("REPORT_FULL_IM_ADD".$gender_suffix, Array(
				"#period#" => "".htmlspecialcharsbx($arReport["PERIOD_TEXT"])."",
			));

			$arMessageFields["NOTIFY_MESSAGE_OUT"] = GetMessage("REPORT_FULL_IM_ADD".$gender_suffix, Array(
				"#period#" => htmlspecialcharsbx($arReport["PERIOD_TEXT"]),
			))." ( ".$arTmp["SERVER_NAME"].$arTmp["URLS"]["REPORTS_PAGE"]."#user_id=".$arReport["USER_ID"]."&report=".$arReport["ID"]." )";

			CIMNotify::Add($arMessageFields);
		}
	}

	return true;
}