projects
/
banana.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Catch message-id as a link to read the message
[banana.git]
/
banana
/
misc.inc.php
diff --git
a/banana/misc.inc.php
b/banana/misc.inc.php
index
d3eeb2d
..
df81a6d
100644
(file)
--- a/
banana/misc.inc.php
+++ b/
banana/misc.inc.php
@@
-300,7
+300,7
@@
function formatDisplayHeader($_header,$_text) {
case "from":
return formatFrom($_text);
case "from":
return formatFrom($_text);
-
+
case "references":
$rsl = "";
$ndx = 1;
case "references":
$rsl = "";
$ndx = 1;
@@
-573,7
+573,13
@@
function cleanurl($url)
function catchMailLink($email)
{
function catchMailLink($email)
{
- if (strpos($email, '$') !== false) {
+ global $banana;
+ $mid = '<' . $email . '>';
+ if (isset($banana->spool->ids[$mid])) {
+ return makeHREF(Array('group' => $banana->state['group'],
+ 'artid' => $banana->spool->ids[$mid]),
+ $email);
+ } elseif (strpos($email, '$') !== false) {
return $email;
}
return '<a href="mailto:' . $email . '">' . $email . '</a>';
return $email;
}
return '<a href="mailto:' . $email . '">' . $email . '</a>';
@@
-602,8
+608,8
@@
function formatbody($_text, $format='plain', $flowed=false)
$url = $banana->url_regexp;
$res = preg_replace("/(<|>|")/", " \\1 ", $res);
$res = preg_replace("!$url!ie", "'\\1'.cleanurl('\\2').'\\3'", $res);
$url = $banana->url_regexp;
$res = preg_replace("/(<|>|")/", " \\1 ", $res);
$res = preg_replace("!$url!ie", "'\\1'.cleanurl('\\2').'\\3'", $res);
- $res = preg_replace('/(["\[])?(?:mailto:
)?([a-z0-9.\-+_\$]+@[a-z0-9.\-+_]
+)(["\]])?/ie',
- "'\\1' . catchMailLink('\\2') . '\\
3
'",
+ $res = preg_replace('/(["\[])?(?:mailto:
|news:)?([a-z0-9.\-+_\$]+@([\-.+_]?[a-z0-9])
+)(["\]])?/ie',
+ "'\\1' . catchMailLink('\\2') . '\\
4
'",
$res);
$res = preg_replace("/ (<|>|") /", "\\1", $res);
$res);
$res = preg_replace("/ (<|>|") /", "\\1", $res);