Fix display of S/MIME signature validation

This commit is contained in:
Francis Lachapelle
2015-12-08 11:56:01 -05:00
parent 5289079d67
commit 7b1febe841
3 changed files with 27 additions and 6 deletions
+3 -3
View File
@@ -233,9 +233,9 @@
return [NSDictionary dictionaryWithObjectsAndKeys:
[self className], @"type",
@"supports-smime", [NSNumber numberWithBool: [self supportsSMIME]],
@"valid", [NSNumber numberWithBool: [self validSignature]],
@"error", [self validationMessage],
[NSNumber numberWithBool: [self supportsSMIME]], @"supports-smime",
[NSNumber numberWithBool: [self validSignature]], @"valid",
[self validationMessage], @"error",
renderedParts, @"content",
nil];
}
+14 -2
View File
@@ -162,8 +162,18 @@
</md-autocomplete>
</md-chips>
</div>
<md-divider><!-- end of headers --></md-divider>
<div>
<!-- S/MIME Signature -->
<md-whiteframe class="md-whiteframe-z2" layout="row" layout-align="space-between center"
ng-show="::viewer.message.$smime.message">
<div layout="row" layout-align="start center">
<div class="md-tile-left">
<md-icon ng-hide="::viewer.message.$smime.validSignature" class="md-warn">error</md-icon>
<md-icon ng-show="::viewer.message.$smime.validSignature" class="md-accent">check</md-icon>
</div>
<p ng-bind-html="::viewer.message.$smime.message"><!-- message --></p>
</div>
</md-whiteframe>
<!-- Load external images -->
<md-whiteframe class="md-whiteframe-z2" layout="row" layout-align="space-between center"
@@ -200,6 +210,8 @@
</div>
</md-whiteframe>
<md-divider><!-- end of headers --></md-divider>
<div>
<div class="msg-body">
<div layout="row" layout-wrap="layout-wrap">
<div class="mailer_mailcontent" layout="row" layout-wrap="layout-wrap"
@@ -263,8 +263,17 @@
return part.preferredPart == alternatePart.contentType;
}));
}
// Can be used for UIxMailPartMixedViewer and UIxMailPartMessageViewer
// Can be used for UIxMailPartMixedViewer, UIxMailPartMessageViewer, and UIxMailPartSignedViewer
else if (angular.isArray(part.content)) {
if (part.type == 'UIxMailPartSignedViewer' && part['supports-smime'] === 1) {
// First line in a h1, others each in a p
var formattedMessage = "<p>" + part.error.replace(/\n/, "</p><p class=\"md-caption\">");
formattedMessage = formattedMessage.replace(/\n/g, "</p><p class=\"md-caption\">") + "</p>";
_this.$smime = {
validSignature: part.valid,
message: formattedMessage
};
}
_.each(part.content, function(mixedPart) {
_visit(mixedPart);
});