From 71f92289d2770926670d4503325eb50276a28751 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 6 Jun 2011 21:00:23 +0000 Subject: [PATCH] See ChangeLog Monotone-Parent: fb3ae1be0d4c0ad6fd7491bea70eefa829243ad4 Monotone-Revision: a92e5913badf5a71e06b1253bb3137e83d7ad34e Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2011-06-06T21:00:23 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 6 ++++++ UI/WebServerResources/MailerUI.js | 21 +++++++++++++++------ 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 66365e807..15905b05f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2011-06-06 Francis Lachapelle + + * UI/WebServerResources/MailerUI.js (configureLinksInMessage): + when a link has the attribute moz-do-not-send set to true, remove + it and force a new mailto href. + 2011-06-03 Wolfgang Sourdeau * OpenChange/MAPIStoreSOGo.m (sogo_op_opendir): op_opendir no diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index d3a6de192..e2b8f3700 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -1319,13 +1319,21 @@ function configureLinksInMessage() { mailContentDiv.observe("contextmenu", onMessageContentMenu); var anchors = messageDiv.getElementsByTagName('a'); - for (var i = 0; i < anchors.length; i++) - if (anchors[i].href.substring(0,7) == "mailto:") { - $(anchors[i]).observe("click", onEmailTo); - $(anchors[i]).observe("contextmenu", onEmailAddressClick); + for (var i = 0; i < anchors.length; i++) { + var anchor = $(anchors[i]); + if (!anchor.href && anchor.readAttribute("moz-do-not-send")) { + anchor.writeAttribute("moz-do-not-send", false); + anchor.removeClassName("moz-txt-link-abbreviated"); + anchor.href = "mailto:" + anchors[i].innerHTML; + } + if (anchor.href.substring(0,7) == "mailto:") { + anchor.observe("click", onEmailTo); + anchor.observe("contextmenu", onEmailAddressClick); + anchor.writeAttribute("moz-do-not-send", false); } else - $(anchors[i]).observe("click", onMessageAnchorClick); + anchor.observe("click", onMessageAnchorClick); + } var attachments = messageDiv.select ("DIV.linked_attachment_body"); for (var i = 0; i < attachments.length; i++) @@ -1565,7 +1573,8 @@ function onEmailAddressClick(event) { } function onMessageAnchorClick(event) { - window.open(this.href); + if (this.href) + window.open(this.href); preventDefault(event); }