mirror of
https://github.com/YunoHost-Apps/z-push_ynh.git
synced 2024-09-03 18:05:58 +02:00
commit
95dd98a0c9
5 changed files with 46 additions and 30 deletions
|
@ -2,4 +2,7 @@ REQUIREMENTS:
|
|||
php-curl
|
||||
libawl-php
|
||||
|
||||
CalDAV server (DAViCal, Sabredav, Sogo, Owncloud...)
|
||||
INSTALL:
|
||||
Add your awl folder to the include_path variable (/etc/php.ini or similar)
|
||||
|
||||
CalDAV server (DAViCal, Sabredav, Sogo, Owncloud...)
|
||||
|
|
|
@ -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") {
|
||||
|
|
|
@ -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);
|
||||
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);
|
|
@ -389,13 +389,13 @@ class BackendIMAP extends BackendDiff implements ISearchProvider {
|
|||
}
|
||||
if (strlen($plainBody) > 0) {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->addTextParts(): The message has PLAIN body"));
|
||||
if (strlen($htmlSource) > 0) {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->addTextParts(): The original message had HTML body, we cast new PLAIN to HTML"));
|
||||
$altEmail->addSubPart('<html><body><p>' . str_replace("\n", "<br/>", str_replace("\r\n", "\n", $plainBody)) . "</p>" . $separatorHtml . $htmlSource . $separatorHtmlEnd, array('content_type' => 'text/html; charset=utf-8', 'encoding' => 'base64'));
|
||||
}
|
||||
if (strlen($plainSource) > 0) {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->addTextParts(): The original message had PLAIN body"));
|
||||
$altEmail->addSubPart($plainBody . $separator . str_replace("\n", "\n> ", "> ".$plainSource), array('content_type' => 'text/plain; charset=utf-8', 'encoding' => 'base64'));
|
||||
$altEmail->addSubPart($plainBody . $separator . str_replace("\n", "\n> ", "> " . $plainSource), array('content_type' => 'text/plain; charset=utf-8', 'encoding' => 'base64'));
|
||||
}
|
||||
else {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->addTextParts(): The original message had not PLAIN body, we use original HTML body to create PLAIN"));
|
||||
$altEmail->addSubPart($plainBody . $separator . str_replace("\n", "\n> ", "> " . Utils::ConvertHtmlToText($htmlSource)), array('content_type' => 'text/plain; charset=utf-8', 'encoding' => 'base64'));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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 */
|
||||
|
@ -2066,30 +2073,31 @@ class BackendIMAP extends BackendDiff implements ISearchProvider {
|
|||
protected function getFolderIdFromImapId($imapid, $case_sensitive = true) {
|
||||
$this->InitializePermanentStorage();
|
||||
|
||||
if (!isset($this->permanentStorage->fmFimapFid)) {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s') IMAP cache folder not found, creating one", $imapid));
|
||||
$this->GetFolderList();
|
||||
}
|
||||
|
||||
if ($case_sensitive) {
|
||||
if (isset($this->permanentStorage->fmFimapFid)) {
|
||||
if (isset($this->permanentStorage->fmFimapFid[$imapid])) {
|
||||
$folderid = $this->permanentStorage->fmFimapFid[$imapid];
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s') = %s", $imapid, $folderid));
|
||||
return $folderid;
|
||||
}
|
||||
else {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s') = %s", $imapid, 'not found'));
|
||||
return false;
|
||||
}
|
||||
if (isset($this->permanentStorage->fmFimapFid[$imapid])) {
|
||||
$folderid = $this->permanentStorage->fmFimapFid[$imapid];
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s') = %s", $imapid, $folderid));
|
||||
return $folderid;
|
||||
}
|
||||
else {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s') = %s", $imapid, 'not found'));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (isset($this->permanentStorage->fmFimapFidLowercase)) {
|
||||
if (isset($this->permanentStorage->fmFimapFidLowercase[strtolower($imapid)])) {
|
||||
$folderid = $this->permanentStorage->fmFimapFidLowercase[strtolower($imapid)];
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s', false) = %s", $imapid, $folderid));
|
||||
return $folderid;
|
||||
}
|
||||
else {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s', false) = %s", $imapid, 'not found'));
|
||||
return false;
|
||||
}
|
||||
if (isset($this->permanentStorage->fmFimapFidLowercase[strtolower($imapid)])) {
|
||||
$folderid = $this->permanentStorage->fmFimapFidLowercase[strtolower($imapid)];
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s', false) = %s", $imapid, $folderid));
|
||||
return $folderid;
|
||||
}
|
||||
else {
|
||||
ZLog::Write(LOGLEVEL_DEBUG, sprintf("BackendIMAP->getFolderIdFromImapId('%s', false) = %s", $imapid, 'not found'));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue