summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2012-12-28 15:33:48 +0100
committerAleksander Machniak <alec@alec.pl>2012-12-28 15:33:48 +0100
commit830fd2ecbb67c395617e1cc38f343d12af0a2861 (patch)
tree705d0a6aefadb843f1244cbc2e8c7f39d40061a4
parentbe72fb3597c21ca3aaa058adf41bb72d53d197c7 (diff)
Display PGP/MIME signature attachments as "Digital Signature" (#1488570)
-rw-r--r--CHANGELOG1
-rw-r--r--program/localization/en_US/labels.inc1
-rw-r--r--program/steps/mail/func.inc9
-rw-r--r--program/steps/mail/show.inc2
4 files changed, 11 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 5f010acb3..687fd8929 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
+- Display PGP/MIME signature attachments as "Digital Signature" (#1488570)
- Workaround UW-IMAP bug where hierarchy separator is added to the shared folder name (#1488879)
- Fix version comparisons with -stable suffix (#1488876)
- Add unsupported alternative parts to attachments list (#1488870)
diff --git a/program/localization/en_US/labels.inc b/program/localization/en_US/labels.inc
index fa8f33d6d..b5fcee496 100644
--- a/program/localization/en_US/labels.inc
+++ b/program/localization/en_US/labels.inc
@@ -378,6 +378,7 @@ $labels['preferhtml'] = 'Display HTML';
$labels['defaultcharset'] = 'Default Character Set';
$labels['htmlmessage'] = 'HTML Message';
$labels['messagepart'] = 'Part';
+$labels['digitalsig'] = 'Digital Signature';
$labels['dateformat'] = 'Date format';
$labels['timeformat'] = 'Time format';
$labels['prettydate'] = 'Pretty dates';
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index bedd3e8ea..44a1557c3 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -1838,7 +1838,7 @@ function rcmail_fix_mimetype($name)
}
// return attachment filename, handle empty filename case
-function rcmail_attachment_name($attachment)
+function rcmail_attachment_name($attachment, $display = false)
{
$filename = $attachment->filename;
@@ -1858,6 +1858,13 @@ function rcmail_attachment_name($attachment)
$filename = preg_replace('[\r\n]', '', $filename);
+ // Display smart names for some known mimetypes
+ if ($display) {
+ if (preg_match('/application\/(pgp|pkcs7)-signature/i', $attachment->mimetype)) {
+ $filename = rcube_label('digitalsig');
+ }
+ }
+
return $filename;
}
diff --git a/program/steps/mail/show.inc b/program/steps/mail/show.inc
index 22f4ff4c2..64e628880 100644
--- a/program/steps/mail/show.inc
+++ b/program/steps/mail/show.inc
@@ -150,7 +150,7 @@ function rcmail_message_attachments($attrib)
if (sizeof($MESSAGE->attachments)) {
foreach ($MESSAGE->attachments as $attach_prop) {
- $filename = rcmail_attachment_name($attach_prop);
+ $filename = rcmail_attachment_name($attach_prop, true);
if ($PRINT_MODE) {
$size = $RCMAIL->message_part_size($attach_prop);