$mailto = '".htmlentities($regs[1]."@".$regs[2])."";
}
if (preg_match("/^([^ ]+)@([^ ]+) \((.*)\)$/",$text,$regs)) {
$result="$mailto{$regs[1]}@{$regs[2]}\">".htmlentities($regs[3])."";
}
if (preg_match("/^\"?([^<>\"]+)\"? +<(.+)@(.+)>$/",$text,$regs)) {
$result="$mailto{$regs[2]}@{$regs[3]}\">".htmlentities($regs[1])."";
}
return preg_replace("/\\\(\(|\))/","\\1",$result);
}
function wrap($text, $_prefix="")
{
$parts = preg_split("/\n-- ?\n/", $text);
if (count($parts) >1) {
$sign = "\n-- \n" . array_pop($parts);
$text = join("\n-- \n", $parts);
} else {
$sign = '';
$text = $text;
}
global $banana;
$length = $banana->wrap;
$cmd = "echo ".escapeshellarg($text)." | perl -MText::Autoformat -e 'autoformat {left=>1, right=>$length, all=>1 };'";
exec($cmd, $result);
return $_prefix.join("\n$_prefix", $result).($_prefix ? '' : $sign);
}
function formatbody($_text) {
$res = "\n\n" . htmlentities(wrap($_text, ""))."\n\n";
$res = preg_replace("/(<|>|")/", " \\1 ", $res);
$res = preg_replace('/(["\[])?((https?|ftp|news):\/\/[a-z@0-9.~%$£µ&i#\-+=_\/\?]*)(["\]])?/i', "\\1\\2\\4", $res);
$res = preg_replace("/ (<|>|") /", "\\1", $res);
$parts = preg_split("/\n-- ?\n/", $res);
if (count($parts) > 1) {
$sign = "
" . array_pop($parts);
return join("\n-- \n", $parts).$sign;
} else {
return $res;
}
}
?>