--- tb.php~ Sun May 1 18:46:58 2005 +++ tb.php Tue May 10 21:47:05 2005 @@ -105,11 +105,18 @@ $body.=sprintf("\nEdit this trackback:\n%s\n", $editlink ); $body.=sprintf("\nBlock this IP:\n%s\n", $blocklink ); - $add_header=sprintf("From: \"'%s'\" <%s>\n", $my_trackback['name'], $addr_arr[0]); + $trackback_name = '=?UTF-8?B?'.base64_encode($my_trackback['name']).'?='; + $add_header = sprintf("From: \"'%s'\" <%s>\n", $trackback_name, $addr_arr[0]); + $add_header.="MIME-Version: 1.0\n"; + $add_header.="Content-Type: text/plain; charset=UTF-8; format=flowed\n"; + $add_header.="Content-Transfer-Encoding: 8bit\n"; + + $subject = lang('trackback','email_subject')." Re: $title"; + $subject = '=?UTF-8?B?'.base64_encode($subject).'?='; foreach($addr_arr as $addr) { $addr = trim($addr); - @mail($addr, lang('trackback','email_subject')." Re: $title", $body, $add_header); + @mail($addr, $subject, $body, $add_header); add_log("Send Mail to $addr from '".$my_trackback['name']."'"); } } @@ -133,11 +140,18 @@ $body.=sprintf("This is a trackback on entry '%s'\n", $title); $body.=sprintf("\nView this entry:\n%s%s\n", $Paths['host'], make_filelink($PIV_PARA['f_comm_code'], "", $id)); - $add_header = sprintf("From: \"'%s'\" <%s>\n", $my_trackback['name'], $addr_arr[0]); + $trackback_name = '=?UTF-8?B?'.base64_encode($my_trackback['name']).'?='; + $add_header = sprintf("From: \"'%s'\" <%s>\n", $trackback_name, $addr_arr[0]); + $add_header.="MIME-Version: 1.0\n"; + $add_header.="Content-Type: text/plain; charset=UTF-8; format=flowed\n"; + $add_header.="Content-Transfer-Encoding: 8bit\n"; + + $subject = "[Notification] Re: $title"; + $subject = '=?UTF-8?B?'.base64_encode($subject).'?='; foreach($notify_arr as $addr => $val) { $addr = trim($addr); - @mail($addr, "[Notification] Re: $title", $body, $add_header); + @mail($addr, $subject, $body, $add_header); add_log("Send Notify to $addr from '".$my_trackback['name']."'"); } } @@ -206,6 +220,9 @@ $Pivot_Vars = array_merge($_GET , $_POST, $_SERVER); } +// convert encoding to UTF-8 +i18n_array_to_utf8($Pivot_Vars); + $Current_weblog = (key($Weblogs)); // FIXME - copied from search.php. Does this work for a second blog? LoadWeblogLanguage($Weblogs[$Current_weblog]['language']);