From: jmunro Date: Fri, 17 May 2002 14:14:52 +0000 (+0000) Subject: fix for bug #556143. better word wrapping on replies X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=3f606b3ffc29944fde402f1f37a9800aad768cd9;p=squirrelmail.git fix for bug #556143. better word wrapping on replies git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@2845 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- diff --git a/src/compose.php b/src/compose.php index e2c26708..766959f4 100644 --- a/src/compose.php +++ b/src/compose.php @@ -405,7 +405,22 @@ function newMail () { $body = strip_tags($body); } - //sqUnWordWrap($body); + sqUnWordWrap($body); + + /* this corrects some wrapping/quoting problems on replies */ + if ($reply_id) { + $rewrap_body = explode("\n", $body); + for ($i=0;$i+)/", $rewrap_body[$i], $matches)) { + $gt = $matches[1]; + $rewrap_body[$i] = str_replace("\n", "\n$gt ", $rewrap_body[$i]); + } + $rewrap_body[$i] .= "\n"; + } + $body = implode("", $rewrap_body); + } + $body_ary = explode("\n", $body); $i = count($body_ary) - 1; while ($i >= 0 && ereg("^[>\\s]*$", $body_ary[$i])) { @@ -415,14 +430,14 @@ function newMail () { $body = ''; for ($i=0; isset($body_ary[$i]); $i++) { if ($reply_id) { - if (ereg('^[ >]+', $body_ary[$i])) { + if (preg_match("/^(>){1,}/", $body_ary[$i])) { $body_ary[$i] = '>' . $body_ary[$i]; } else { $body_ary[$i] = '> ' . $body_ary[$i]; } } - if (!$draft_id) { - sqWordWrap($body_ary[$i], $editor_size - 1); + if ($draft_id) { + sqWordWrap($body_ary[$i], $editor_size ); } $body .= $body_ary[$i] . "\n"; unset($body_ary[$i]);