- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/util/replicator/task/fromtemplate.php
- Класс: BitrixTasksUtilReplicatorTaskFromTemplate
- Вызов: FromTemplate::reInstallAgent
static function reInstallAgent($templateId, array $templateData)
{
// todo: get rid of use of CTasks one day...
$name = 'CTasks::RepeatTaskByTemplateId('.$templateId.');';
// First, remove all agents for this template
self::unInstallAgent($templateId);
// Set up new agent
if ($templateData['REPLICATE'] === 'Y')
{
$nextTimeResult = static::getNextTime($templateData);
if ($nextTimeResult->isSuccess())
{
$nextTimeData = $nextTimeResult->getData();
$nextTime = $nextTimeData['TIME'];
if($nextTime)
{
CAgent::addAgent(
$name,
'tasks',
'N', // is periodic?
86400, // interval
$nextTime, // datecheck
'Y', // is active?
$nextTime // next_exec
);
}
else
{
static::sendToSysLog(
$templateId,
0,
Loc::getMessage('TASKS_REPLICATOR_PROCESS_STOPPED'). ' '.Loc::getMessage('TASKS_REPLICATOR_PROCESS_ERROR')
);
}
}
}
}