[sisyphus] Re: Белку на мыло!
Konstantin A. Lepikhov
=?iso-8859-1?q?lakostis_=CE=C1_anti-leasure=2Eru?=
Пн Ноя 15 01:47:20 MSK 2004
Hi Konstantin!
Sunday 14, at 11:21:24 PM you wrote:
> Hi!
>
> Так и не заработала в Сизифе белка в utf-8 и с поддержкой 8-bit.
> Предыдущие советы насчет mbstring не помогли - все также упорно пытаемся
> изобразить фрейм в родной 8-bit кодировке при ответе (видимо, эта часть
> вообще _никак_ не перекодируется) посреди utf-8 страницы. Пионерский задор
> авторов sq просто удивляет :-]
Сам же себе и помогаю :) Итак, несколько патчей для облегчения страданий:
1) маленький фикс для quoting'а (есть такая бага в 1.4.3a).
2) грязный хак для правильного перекодирования 8-битного тела письма при ответе
в utf-8. Поскольку у меня cyrus, то проблемы перекодирования subj
и остального не так значительны ;)
--
WBR, Konstantin chat with ==>ICQ: 109916175
Lepikhov, speak to ==>JID: lakostis на jabber.org
aka L.A. Kostis write to ==>mailto:lakostis на pisem.net.nospam
...The information is like the bank... (c) EC8OR
----------- следующая часть -----------
--- a/src/compose.php.orig 2004-05-31 21:32:34.000000000 +0400
+++ a/src/compose.php 2004-11-15 01:21:27.000000000 +0300
@@ -757,7 +760,7 @@ function newMail ($mailbox='', $passed_i
sqWordWrap($rewrap_body[$i], ($editor_size));
if (preg_match("/^(>+)/", $rewrap_body[$i], $matches)) {
$gt = $matches[1];
- $body .= '>' . str_replace("\n", "\n>$gt ", rtrim($rewrap_body[$i])) ."\n";
+ $body .= '>' . str_replace("\n", "\n>> ", rtrim($rewrap_body[$i])) ."\n";
} else {
$body .= '> ' . str_replace("\n", "\n> ", rtrim($rewrap_body[$i])) . "\n";
}
----------- следующая часть -----------
--- a/src/compose.php.orig 2004-05-31 21:32:34.000000000 +0400
+++ a/src/compose.php 2004-11-15 01:21:27.000000000 +0300
@@ -609,6 +609,7 @@ function newMail ($mailbox='', $passed_i
}
$encoding = $message->header->encoding;
+ $charset = $message->header->getParameter('charset');
$type0 = $message->type0;
$type1 = $message->type1;
foreach ($entities as $ent) {
@@ -629,7 +630,9 @@ function newMail ($mailbox='', $passed_i
$bodypart = $languages[$squirrelmail_language]['XTRA_CODE']('decode', $bodypart);
}
}
+ $bodypart = charset_decode($charset, $bodypart);
$body .= $bodypart;
+
}
if ($default_use_priority) {
$mailprio = substr($orig_header->priority,0,1);
@@ -1067,7 +1070,8 @@ function showInputForm ($session, $value
}
}
else {
- echo htmlspecialchars(decodeHeader($body,false,false));
+// echo htmlspecialchars(decodeHeader($body,false,false));
+ echo decodeHeader($body,true,false);
}
echo '</textarea><br />' . "\n" .
' </td>' . "\n" .
Подробная информация о списке рассылки Sisyphus