From 3fdcd11f7b0df1ed154716e1d92c3d4b539d72f1 Mon Sep 17 00:00:00 2001 From: x2003bruneau Date: Sat, 15 Jul 2006 08:29:32 +0000 Subject: [PATCH] Replace all '-- ' as signature delimiter and not only the last one. git-svn-id: svn+ssh://murphy/home/svn/banana/trunk@101 9869982d-c50d-0410-be91-f2a2ec7c7c7b --- banana/misc.inc.php | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/banana/misc.inc.php b/banana/misc.inc.php index 5a76e82..c3215fc 100644 --- a/banana/misc.inc.php +++ b/banana/misc.inc.php @@ -532,7 +532,7 @@ function formatbody($_text, $format='plain', $flowed=false) } else if ($format == 'richtext') { $res = '
'.html_entity_decode(to_entities(richtextToHtml($_text))).'
'; } else { - $res = "\n" . to_entities(wrap($_text, "", $flowed))."\n"; + $res = "\n" . to_entities(wrap($_text, "", $flowed)) . "\n"; $res = formatPlainText($res); } @@ -554,6 +554,8 @@ function formatbody($_text, $format='plain', $flowed=false) $res = preg_replace("@]*>\n?-- ?\n?(]*>)@", "
--
\\2", $res); $res = preg_replace("@(]*>)\n?-- ?\n@", "
--
\\1", $res); $parts = preg_split("@(:?]*>\n?-- ?\n?

|]*>\n?-- ?\n?]*>)@", $res); + $sign = '
'; + $end = '
'; } else { while (preg_match("@(^|
|\n)>@i", $res)) {
             $res  = preg_replace("@(^|
|\n)((>[^\n]*\n)+)@ie",
@@ -564,21 +566,11 @@ function formatbody($_text, $format='plain', $flowed=false)
         }
         $res = preg_replace("@
-- ?\n@", "
\n-- \n", $res);
         $parts = preg_split("/\n-- ?\n/", $res);
+        $sign  = '

';
+        $end   = null;
     }
 
-    if (count($parts) > 1) {
-        $sign  = array_pop($parts);
-        if ($format == 'html') {
-            $res  = join('
--
', $parts); - $sign = '
'.$sign.'
'; - } else { - $res = join('\n-- \n', $parts); - $sign = '

'.$sign;
-        }
-        return $res.$sign;
-    } else {
-        return $res;
-    }
+    return join($sign, $parts) . $end;
 }
 
 // vim:set et sw=4 sts=4 ts=4
-- 
2.1.4