mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-22 14:41:29 +01:00
fixed not show attachments by using mimesupport and not bodypreference, also removed wrong Change FOUND! message
This commit is contained in:
parent
f1c7fc9656
commit
a639f2a8fb
@ -257,6 +257,8 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
header("HTTP/1.1 503 Service Unavailable");
|
header("HTTP/1.1 503 Service Unavailable");
|
||||||
$hL = $waitOnFailure[self::$profileID][$this->backend->_devid]['lastattempt']+$waitOnFailure[self::$profileID][$this->backend->_devid]['howlong']-$hereandnow;
|
$hL = $waitOnFailure[self::$profileID][$this->backend->_devid]['lastattempt']+$waitOnFailure[self::$profileID][$this->backend->_devid]['howlong']-$hereandnow;
|
||||||
header("Retry-After: ".$hL);
|
header("Retry-After: ".$hL);
|
||||||
|
$ethrown = new egw_exception_not_found(__METHOD__.__LINE__."($account) still waiting for Profile #".self::$profileID."!".$errorMessage.' for Instance='.$GLOBALS['egw_info']['user']['domain'].', User='.$GLOBALS['egw_info']['user']['account_lid'].', Device:'.$this->backend->_devid." Should wait for:".$waitaslongasthis.'(s)'.' WaitInfoStored2Cache:'.array2string($waitOnFailure));
|
||||||
|
_egw_log_exception($ethrown);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -905,9 +907,10 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
public function GetMessage($folderid, $id, $contentparameters)
|
public function GetMessage($folderid, $id, $contentparameters)
|
||||||
{
|
{
|
||||||
//$this->debugLevel=4;
|
//$this->debugLevel=4;
|
||||||
debugLog(__METHOD__.__LINE__.' FolderID:'.$folderid.' ID:'.$id);
|
debugLog(__METHOD__.__LINE__.' FolderID:'.$folderid.' ID:'.$id.' ContentParams='.array2string($contentparameters));
|
||||||
$truncsize = Utils::GetTruncSize($contentparameters->GetTruncation());
|
$truncsize = Utils::GetTruncSize($contentparameters->GetTruncation());
|
||||||
$mimesupport = $contentparameters->GetMimeSupport();
|
$mimesupport = $contentparameters->GetMimeSupport();
|
||||||
|
debugLog(__METHOD__."() truncsize=$truncsize, mimeSupport=".array2string($mimesupport));
|
||||||
$bodypreference = $contentparameters->GetBodyPreference(); /* fmbiete's contribution r1528, ZP-320 */
|
$bodypreference = $contentparameters->GetBodyPreference(); /* fmbiete's contribution r1528, ZP-320 */
|
||||||
|
|
||||||
//$this->debugLevel=4;
|
//$this->debugLevel=4;
|
||||||
@ -954,14 +957,6 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
}
|
}
|
||||||
else // style with bodypreferences
|
else // style with bodypreferences
|
||||||
{
|
{
|
||||||
if (isset($bodypreference[1]) && !isset($truncsize))
|
|
||||||
$truncsize = 1024*1024;
|
|
||||||
if (isset($bodypreference[2]) && !isset($truncsize))
|
|
||||||
$truncsize = 1024*1024;
|
|
||||||
if (isset($bodypreference[3]) && !isset($truncsize))
|
|
||||||
$truncsize = 1024*1024;
|
|
||||||
if (isset($bodypreference[4]) && !isset($truncsize))
|
|
||||||
$truncsize = 1024*1024;
|
|
||||||
// set the protocoll class
|
// set the protocoll class
|
||||||
$output->asbody = new SyncBaseBody();
|
$output->asbody = new SyncBaseBody();
|
||||||
// fetch the body (try to gather data only once)
|
// fetch the body (try to gather data only once)
|
||||||
@ -1007,7 +1002,7 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
$plainBody = strip_tags($plainBody);
|
$plainBody = strip_tags($plainBody);
|
||||||
if ($this->debugLevel>3 && $output->nativebodytype==1) debugLog(__METHOD__.__LINE__.' Plain Text:'.$plainBody);
|
if ($this->debugLevel>3 && $output->nativebodytype==1) debugLog(__METHOD__.__LINE__.' Plain Text:'.$plainBody);
|
||||||
//$body = str_replace("\n","\r\n", str_replace("\r","",$body)); // do we need that?
|
//$body = str_replace("\n","\r\n", str_replace("\r","",$body)); // do we need that?
|
||||||
if (isset($bodypreference[4]) && ($mimesupport==2 || ($mimesupport ==1 && stristr($headers['CONTENT-TYPE'],'signed') !== false)))
|
if ($mimesupport==2 || $mimesupport ==1 && stristr($headers['CONTENT-TYPE'],'signed') !== false)
|
||||||
{
|
{
|
||||||
debugLog(__METHOD__.__LINE__." bodypreference 4 requested");
|
debugLog(__METHOD__.__LINE__." bodypreference 4 requested");
|
||||||
$output->asbody->type = 4;
|
$output->asbody->type = 4;
|
||||||
@ -1098,7 +1093,6 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
foreach((array)$attachments as $key => $attachment)
|
foreach((array)$attachments as $key => $attachment)
|
||||||
{
|
{
|
||||||
if ($this->debugLevel>0) debugLog(__METHOD__.__LINE__.' Key:'.$key.'->'.array2string($attachment));
|
if ($this->debugLevel>0) debugLog(__METHOD__.__LINE__.' Key:'.$key.'->'.array2string($attachment));
|
||||||
$attachmentData = '';
|
|
||||||
$attachmentData = $this->mail->getAttachment($id, $attachment['partID'],0,false,false,$_folderName);
|
$attachmentData = $this->mail->getAttachment($id, $attachment['partID'],0,false,false,$_folderName);
|
||||||
$mailObject->AddStringAttachment($attachmentData['attachment'], $mailObject->EncodeHeader($attachment['name']), $attachment['mimeType']);
|
$mailObject->AddStringAttachment($attachmentData['attachment'], $mailObject->EncodeHeader($attachment['name']), $attachment['mimeType']);
|
||||||
}
|
}
|
||||||
@ -1432,7 +1426,7 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
$rv = $this->mail->flagMessages("unflagged", $id,$folder);
|
$rv = $this->mail->flagMessages("unflagged", $id,$folder);
|
||||||
debugLog(__METHOD__." -> set ".array2string($id).' in Folder '.$folder." as " . "unflagged" . "-->". $rv);
|
debugLog(__METHOD__." -> set ".array2string($id).' in Folder '.$folder." as " . "unflagged" . "-->". $rv);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $this->StatMessage($folderid, $id);
|
return $this->StatMessage($folderid, $id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1801,7 +1795,6 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
*/
|
*/
|
||||||
function AlterPingChanges($folderid, &$syncstate)
|
function AlterPingChanges($folderid, &$syncstate)
|
||||||
{
|
{
|
||||||
debugLog(__METHOD__.' called with '.$folderid);
|
|
||||||
$account = $folder = null;
|
$account = $folder = null;
|
||||||
$this->splitID($folderid, $account, $folder);
|
$this->splitID($folderid, $account, $folder);
|
||||||
if (is_numeric($account)) $type = 'mail';
|
if (is_numeric($account)) $type = 'mail';
|
||||||
@ -1818,17 +1811,9 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
debugLog("AlterPingChanges: could not stat folder $folder ");
|
debugLog("AlterPingChanges: could not stat folder $folder ");
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
$newstate = "M:". $status['messages'] ."-R:". $status['recent'] ."-U:". $status['unseen']."-NUID:".$status['uidnext']."-UIDV:".$status['uidvalidity'];
|
$syncstate = "M:". $status['messages'] ."-R:". $status['recent'] ."-U:". $status['unseen']."-NUID:".$status['uidnext']."-UIDV:".$status['uidvalidity'];
|
||||||
|
|
||||||
// message number is different - change occured
|
|
||||||
if ($syncstate != $newstate) {
|
|
||||||
$syncstate = $newstate;
|
|
||||||
debugLog("AlterPingChanges: Change FOUND!");
|
|
||||||
// build a dummy change
|
|
||||||
$changes = array(array("type" => "fakeChange"));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//error_log(__METHOD__."('$folderid','$syncstate_was') syncstate='$syncstate' returning ".array2string($changes));
|
debugLog(__METHOD__.' called with ('.$folderid.', ....) returning '.array2string($syncstate));
|
||||||
return $changes;
|
return $changes;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1840,11 +1825,10 @@ class mail_zpush implements activesync_plugin_write, activesync_plugin_sendmail,
|
|||||||
*/
|
*/
|
||||||
function GetWasteBasket()
|
function GetWasteBasket()
|
||||||
{
|
{
|
||||||
debugLog(__METHOD__.__LINE__.' called.');
|
|
||||||
$this->_connect($this->account);
|
$this->_connect($this->account);
|
||||||
$rv = $this->createID($this->account,$this->_wasteID);
|
$id = $this->createID($account=0, $this->_wasteID);
|
||||||
debugLog(__METHOD__.__LINE__.': Account:'.$this->account.", WasteID:".$this->_wasteID.'->'.$rv);
|
debugLog(__METHOD__.__LINE__."() account=$this->account returned $id for folder $this->_wasteID");
|
||||||
return $rv;
|
return $id;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user