- Модуль: mail
- Путь к файлу: ~/bitrix/modules/mail/lib/helper/mailbox/imap.php
- Класс: BitrixMailHelperMailboxImap
- Вызов: Imap::getSyncStatus
public function getSyncStatus()
{
if (!empty($this->syncParams['currentDir']))
{
$currentSyncDir = $this->getDirsHelper()->getDirByPath($this->syncParams['currentDir']);
}
if (!empty($currentSyncDir))
{
$currentSyncDirMessages = MailMailMessageUidTable::getList([
'select' => [
new MainEntityExpressionField('TOTAL', 'COUNT(1)'),
],
'filter' => [
'=MAILBOX_ID' => $this->mailbox['ID'],
'=DIR_MD5' => $currentSyncDir->getDirMd5(),
'==DELETE_TIME' => 0,
],
])->fetch();
$currentSyncDirMessagesCount = (int) $currentSyncDirMessages['TOTAL'];
$currentSyncDirMessagesAll = (int) $currentSyncDir->getMessageCount();
if ($currentSyncDirMessagesAll > 0)
{
return ($currentSyncDirMessagesCount / $currentSyncDirMessagesAll);
}
}
return 1;
}