Move Autocrypt parsing to JavaScript

This commit is contained in:
the-djmaze 2024-01-23 10:38:54 +01:00
parent b726400f42
commit 29f6b2b743
2 changed files with 10 additions and 16 deletions

View file

@ -74,7 +74,7 @@ export class MessageModel extends AbstractModel {
this.messageId = ''; this.messageId = '';
this.inReplyTo = ''; this.inReplyTo = '';
this.references = ''; this.references = '';
this.autocrypt = {}; this.autocrypt = {/*addr:'', 'prefer-encrypt':'nopreference', keydata:'BASE64'*/};
addObservablesTo(this, { addObservablesTo(this, {
subject: '', subject: '',
@ -277,8 +277,15 @@ export class MessageModel extends AbstractModel {
if (value = headers.valueByName('X-Virus-Scanned')) { if (value = headers.valueByName('X-Virus-Scanned')) {
this.virusScanned(value); this.virusScanned(value);
} }
*/
// https://autocrypt.org/level1.html#the-autocrypt-header
if (value = headers.valueByName('Autocrypt')) {
value.split(';').forEach(entry => {
entry = entry.trim().split('=', 2);
json.autocrypt[entry[0]] = entry[1];
});
}
*/
return true; return true;
} }
} }

View file

@ -42,9 +42,7 @@ class Message implements \JsonSerializable
/** /**
* https://www.rfc-editor.org/rfc/rfc8970 * https://www.rfc-editor.org/rfc/rfc8970
*/ */
$sPreview = null, $sPreview = null;
// https://autocrypt.org/level1.html#the-autocrypt-header
$sAutocrypt = '';
private int private int
$Uid = 0, $Uid = 0,
@ -291,8 +289,6 @@ class Message implements \JsonSerializable
} }
} }
} }
$oMessage->sAutocrypt = $oHeaders->ValueByName(MimeHeader::AUTOCRYPT);
} }
else if ($oFetchResponse->GetEnvelope()) else if ($oFetchResponse->GetEnvelope())
{ {
@ -466,14 +462,6 @@ class Message implements \JsonSerializable
$this->aFlagsLowerCase $this->aFlagsLowerCase
), true); ), true);
*/ */
$aAutocrypt = [];
if ($this->sAutocrypt) {
foreach (\explode(';', $this->sAutocrypt) as $entry) {
$entry = \explode('=', \trim($entry), 2);
$aAutocrypt[$entry[0]] = $entry[1];
}
}
$result = array( $result = array(
'@Object' => 'Object/Message', '@Object' => 'Object/Message',
'folder' => $this->sFolder, 'folder' => $this->sFolder,
@ -498,7 +486,6 @@ class Message implements \JsonSerializable
'deliveredTo' => $this->oDeliveredTo, 'deliveredTo' => $this->oDeliveredTo,
'readReceipt' => $this->ReadReceipt, 'readReceipt' => $this->ReadReceipt,
'autocrypt' => $aAutocrypt ?: null,
'attachments' => $this->Attachments, 'attachments' => $this->Attachments,