mailbox-component icon indicating copy to clipboard operation
mailbox-component copied to clipboard

Console options for days instead of timestamp

Open silviuchingaru opened this issue 3 years ago • 1 comments

Because RefreshMailboxCommand::refreshMailbox() uses imap_search() with 'SINCE "' . $timestamp->format('d F Y') . '"' which is 'SINCE "28 December 2021"', for example, so as not to mislead users that only message from one hour ago are fetched when using -t 60, instead of ~~timestamp~~ option we could use a days option for uvdesk:refresh-mailbox command.

So instead of running something like php bin/console uvdesk:refresh-mailbox -t 2 [email protected]

they could run something like php bin/console uvdesk:refresh-mailbox -d 1 [email protected] to fetch emails since yesterday until now or php bin/console uvdesk:refresh-mailbox -d 0 [email protected] to fetch only emails of curent day.

If you agree with this enhachment, i could post a pull request with this implementation.

silviuchingaru avatar Dec 28 '21 17:12 silviuchingaru

For better approach for performance reasons on large mailboxes will be to use imap_search($stream, 'UID ' . $latest_uid . ':*', SE_UID);.

@see https://stackoverflow.com/questions/32698415/php-imap-search-unseen-since-date-with-time

silviuchingaru avatar Apr 15 '22 12:04 silviuchingaru