- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/archive/manager.php
- Класс: BitrixSaleArchiveManager
- Вызов: Manager::archiveOnAgent
static function archiveOnAgent($limit, $maxTime = null)
{
global $USER;
$agentId = null;
$limit = (int)$limit ? (int)$limit : 10;
$maxTime = (int)$maxTime ? (int)$maxTime : null;
$agentsList = CAgent::GetList(array("ID"=>"DESC"), array(
"MODULE_ID" => "sale",
"NAME" => "\Bitrix\Sale\Archive\Manager::archiveOnAgent(%",
));
while($agent = $agentsList->Fetch())
{
$agentId = $agent["ID"];
}
if ($agentId)
{
if (!(isset($USER) && $USER instanceof CUser))
{
$USER = new CUser();
}
$result = static::archiveByOptions($limit, $maxTime);
$resultData = $result->getData();
if ($resultData['count'])
{
CAgent::Update($agentId, array("AGENT_INTERVAL" => 60*5));
}
else
{
CAgent::Update($agentId, array("AGENT_INTERVAL" => 24*60*60));
}
}
else
{
CAgent::AddAgent("\Bitrix\Sale\Archive\Manager::archiveOnAgent(".$limit.",".$maxTime.");", "sale", "N", 24*60*60, "", "Y");
}
return "\Bitrix\Sale\Archive\Manager::archiveOnAgent(".$limit.",".$maxTime.");";
}