- Модуль: sender
- Путь к файлу: ~/bitrix/modules/sender/lib/install/filetableinstaller.php
- Класс: Bitrix\Sender\Install\FileTableInstaller
- Вызов: FileTableInstaller::fillFileTableFromTemplates
static function fillFileTableFromTemplates(int $offset = 0):string
{
if ($offset === 0)
{
$templates = TemplateTable::getList([
'select' => [
'ID',
'CONTENT'
]
]);
while ($template = $templates->fetch())
{
FileTable::syncFiles(
$template['ID'],
FileTable::TYPES['TEMPLATE'],
$template['CONTENT'],
false
);
}
}
$letters = Letter::getList([
'select' => [
'ID',
],
'filter' => [
'=MESSAGE_CODE' => MessageMail::CODE
],
'offset' => $offset,
'limit' => 100,
'order' => [
'ID' => 'ASC'
]
]);
$counter = 0;
while ($letter = $letters->fetch())
{
$letter = Letter::createInstanceById($letter['ID']);
FileTable::syncFiles(
$letter->getId(),
FileTable::TYPES['LETTER'],
$letter->getMessage()->getConfiguration()->get('MESSAGE'),
false
);
$counter++;
}
$offset += $counter;
if ($counter < 100)
{
\COption::SetOptionInt('sender', 'sender_file_load_completed', 1);
return '';
}
return '\\Bitrix\\Sender\\Install\\FileTableInstaller::installAgent('.$offset.');';
}