- Модуль: sender
- Путь к файлу: ~/bitrix/modules/sender/lib/mailingmanager.php
- Класс: BitrixSenderMailingManager
- Вызов: MailingManager::getDateExecute
static function getDateExecute(
DateTime $date,
?string $daysOfMonth = '',
?string $dayOfWeek = '',
?string $timesOfDay = '',
?string $monthsOfYear = ''
)
{
$timeOfExecute = null;
$months = MethodSchedule::parseMonthsOfYear($monthsOfYear);
$arDay = MethodSchedule::parseDaysOfMonth($daysOfMonth);
$arWeek = MethodSchedule::parseDaysOfWeek($dayOfWeek);
$arTime = MethodSchedule::parseTimesOfDay($timesOfDay);
if(!$arTime)
$arTime = array(0,0);
$day = $date->format('j');
$week = $date->format('N');
$month = $date->format('n');
if( (!$arDay || in_array($day, $arDay)) && (!$arWeek || in_array($week, $arWeek)) && (!$months || in_array($month, $months)) )
$timeOfExecute = $date->setTime($arTime[0], $arTime[1]);
return $timeOfExecute;
}