From ce0dd6bd1bbe5a0570110484d11d6756f516c751 Mon Sep 17 00:00:00 2001 From: polytan02 Date: Sun, 27 Sep 2015 19:10:18 +0200 Subject: [PATCH] Update to latest sources --- sources/backend/caldav/caldav.php | 2 +- sources/backend/caldav/config.php | 7 ++++++- sources/backend/imap/imap.php | 9 ++++++++- sources/testing/testing-caldav.php | 2 +- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/sources/backend/caldav/caldav.php b/sources/backend/caldav/caldav.php index 9a3c19c..811c798 100644 --- a/sources/backend/caldav/caldav.php +++ b/sources/backend/caldav/caldav.php @@ -227,7 +227,7 @@ class BackendCalDAV extends BackendDiff { /* Calculating the range of events we want to sync */ $begin = gmdate("Ymd\THis\Z", $cutoffdate); - $finish = gmdate("Ymd\THis\Z", 2147483647); + $finish = gmdate("Ymd\THis\Z", CALDAV_MAX_SYNC_PERIOD); $path = $this->_caldav_path . substr($folderid, 1) . "/"; if ($folderid[0] == "C") { diff --git a/sources/backend/caldav/config.php b/sources/backend/caldav/config.php index c42419c..1257443 100644 --- a/sources/backend/caldav/config.php +++ b/sources/backend/caldav/config.php @@ -64,4 +64,9 @@ define('CALDAV_PERSONAL', 'PRINCIPAL'); // DAViCal, SOGo and SabreDav support it // SabreDav version must be at least 1.9.0, otherwise set this to false // Setting this to false will work with most servers, but it will be slower -define('CALDAV_SUPPORTS_SYNC', false); \ No newline at end of file +define('CALDAV_SUPPORTS_SYNC', false); + + +// Maximum period to sync. +// Some servers don't support more than 10 years so you will need to change this +define('CALDAV_MAX_SYNC_PERIOD', 2147483647); \ No newline at end of file diff --git a/sources/backend/imap/imap.php b/sources/backend/imap/imap.php index 42e04f0..58ff36c 100644 --- a/sources/backend/imap/imap.php +++ b/sources/backend/imap/imap.php @@ -1144,7 +1144,14 @@ class BackendIMAP extends BackendDiff implements ISearchProvider { $bpo = $contentparameters->BodyPreference($output->asbody->type); if (Request::GetProtocolVersion() >= 14.0 && $bpo->GetPreview()) { - $output->asbody->preview = Utils::Utf8_truncate(Utils::ConvertHtmlToText($textBody), $bpo->GetPreview()); + // Preview must be always plaintext + $previewText = ""; + Mail_mimeDecode::getBodyRecursive($message, "plain", $previewText, true); + if (strlen($previewText) == 0) { + Mail_mimeDecode::getBodyRecursive($message, "html", $previewText, true); + $previewText = Utils::ConvertHtmlToText($previewText); + } + $output->asbody->preview = Utils::Utf8_truncate($previewText, $bpo->GetPreview()); } } /* END fmbiete's contribution r1528, ZP-320 */ diff --git a/sources/testing/testing-caldav.php b/sources/testing/testing-caldav.php index ec3f250..7fede51 100644 --- a/sources/testing/testing-caldav.php +++ b/sources/testing/testing-caldav.php @@ -34,7 +34,7 @@ $val = $caldav->GetCalendarDetails($path); print_r($val); $begin = gmdate("Ymd\THis\Z", time() - 24*7*60*60); -$finish = gmdate("Ymd\THis\Z", 2147483647); +$finish = gmdate("Ymd\THis\Z", CALDAV_MAX_SYNC_PERIOD); $msgs = $caldav->GetEvents($begin, $finish, $path); print_r($msgs);