181 if($settingsOld && $settingsOld->isClosedTrigger())
185 $settingsOld->getEventModuleId(),
186 $settingsOld->getEventType(),
190 $agent = new \CAgent;
191 $agentListDb = $agent->GetList(
array(),
array(
'MODULE_ID' =>
'sender',
'NAME' => $agentName));
192 while($agentItem = $agentListDb->Fetch())
193 $agent->Delete($agentItem[
'ID']);
198 if($settingsNew && $settingsNew->isClosedTrigger())
202 'select' =>
array(
'ID'),
203 'filter' =>
array(
'=ID' => $chainId,
'=MAILING.ACTIVE' =>
'Y')
205 if(!$chainDb->fetch())
210 $settingsNew->getEventModuleId(),
211 $settingsNew->getEventType(),
216 $agentTime = $settingsNew->getClosedTriggerTime();
217 $agentInterval = $settingsNew->getClosedTriggerInterval();
218 if($agentInterval <= 0) $agentInterval = 1440;
220 $agentTimeArray = explode(
":", $agentTime);
222 $agentDate->
setTime((
int)$agentTimeArray[0], (
int)$agentTimeArray[1]);
225 if($agentDate->getTimestamp() < time())
226 $agentDate->add(
"1 days");
229 $agent = new \CAgent;
230 $agent->AddAgent($agentName,
'sender',
'N', $agentInterval*60,
'',
'Y', $agentDate->toString());
236 if($settingsOld && !$settingsOld->isClosedTrigger() && $settingsOld->getFullEventType())
240 if(!$settingsNew || $settingsOld->getFullEventType() != $settingsNew->getFullEventType())
243 'MODULE_ID' => $settingsOld->getEventModuleId(),
244 'EVENT_TYPE' => $settingsOld->getEventType(),
245 'CALLED_BEFORE_CHANGE' =>
true
251 if($settingsNew && $settingsNew->getFullEventType())
253 $calledBeforeChange = ($fieldsOld ?
false :
true);
255 'MODULE_ID' => $settingsNew->getEventModuleId(),
256 'EVENT_TYPE' => $settingsNew->getEventType(),
257 'CALLED_BEFORE_CHANGE' => $calledBeforeChange