• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/lib/helper.php
  • Класс: BitrixMailHelper
  • Вызов: Helper::cleanupMailboxAgent
static function cleanupMailboxAgent($id)
{
	$mailboxHelper = HelperMailbox::rawInstance($id, false);

	if (empty($mailboxHelper))
	{
		return '';
	}

	$mailboxHelper->setCheckpoint();

	MailMessageUidTable::deleteList(
		[
			'=MAILBOX_ID' => $id,
			'=IS_OLD' => 'R',
		]
	);

	$stage1 = $mailboxHelper->dismissOldMessages();
	$stage2 = $mailboxHelper->dismissDeletedUidMessages();
	$stage3 = $mailboxHelper->cleanup();

	global $pPERIOD;

	$pPERIOD = min($pPERIOD, max($stage1 && $stage2 && $stage3 ? $pPERIOD : 600, 60));

	if ($pPERIOD === null)
	{
		$pPERIOD = 60;
	}

	return sprintf('BitrixMailHelper::cleanupMailboxAgent(%u);', $id);
}