/[suikacvs]/messaging/newsportal/newsportal.php
Suika

Diff of /messaging/newsportal/newsportal.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.26 by wakaba, Sun Dec 2 00:08:29 2001 UTC revision 1.28 by wakaba, Sun Dec 2 01:34:45 2001 UTC
# Line 503  function parse_header($hdr,$number="") { Line 503  function parse_header($hdr,$number="") {
503            $header->newsgroups=$value;            $header->newsgroups=$value;
504            break;            break;
505          case "organization:":          case "organization:":
506            $header->organization=$value;            $header->organization = decode_unstructured_body($value);
507            break;            break;
508          case "content-transfer-encoding:":          case "content-transfer-encoding:":
509            $header->content_transfer_encoding=trim(strtolower($value));            $header->content_transfer_encoding=trim(strtolower($value));
# Line 550  function parse_header($hdr,$number="") { Line 550  function parse_header($hdr,$number="") {
550          case "x-newsreader:":          case "x-newsreader:":
551          case "x-mailer:":          case "x-mailer:":
552          case "user-agent:":          case "user-agent:":
553            $header->user_agent=trim(decode_structured_body($value));            $header->user_agent= decode_structured_body($value);
554              break;
555            case "x-moe:":
556              $header->x_moe= decode_structured_body($value);
557            break;            break;
558          case "x-face:":          case "x-face:":
559  //          echo "<p>-".base64_decode($value)."-</p>";  //          echo "<p>-".base64_decode($value)."-</p>";
# Line 567  function parse_header($hdr,$number="") { Line 570  function parse_header($hdr,$number="") {
570    
571  function decode_unstructured_body ($body) {  function decode_unstructured_body ($body) {
572    $patterns = array (    $patterns = array (
573        "/(=\\?[^\\x00-\\x20()<>@,;:\\\\\"/\\[\\]?.=\\x7F]+\\?[BQ]\\?[^\\x00-\\x20\\x3F\\x7F]*\\?=)/ei",        "/(=\\?[^\\x00-\\x20()<>@,;:\\\"\\/\\[\\]?.=\\x7F]+\\?[BQ]\\?[^\\x00-\\x20\\x3F\\x7F]*\\?=)/ei",
574    );    );
575    $replace = array (    $replace = array (
576        "mb_decode_mimeheader('\\1')",        "mb_decode_mimeheader('\\1')",
577    );    );
578    return preg_replace ($patterns, $replace, $body);    return preg_replace ($patterns, $replace,
579                           mb_convert_encoding(fake_jisx0213($body), "EUC-JP", "auto"));
580  }  }
581    
582  function decode_structured_body ($body) {  function decode_structured_body ($body) {
# Line 582  function decode_structured_body ($body) Line 586  function decode_structured_body ($body)
586  )*\)))*\)))*)\)/e",  )*\)))*\)))*)\)/e",
587    );    );
588    $replace = array (    $replace = array (
589        "mb_convert_encoding(decode_quoted_pair('\\1'), 'EUC-JP', 'auto')",      "mb_convert_encoding(fake_jisx0213(decode_quoted_pair('\\1')),'EUC-JP','auto')",
590        "'('.mb_convert_encoding(decode_quoted_pair('\\1'), 'EUC-JP', 'auto').')'",      "'('.mb_convert_encoding(fake_jisx0213(decode_quoted_pair('\\1')),
591                                 'EUC-JP','auto').')'",
592    );    );
593    return preg_replace ($patterns, $replace, $body);    return preg_replace ($patterns, $replace, $body);
594  }  }
# Line 593  function decode_quoted_pair($value) { Line 598  function decode_quoted_pair($value) {
598    return ereg_replace('\\\\(.)', "\\1", $value);    return ereg_replace('\\\\(.)', "\\1", $value);
599  }  }
600    
601    function fake_jisx0213 ($value) {
602      $value = preg_replace ("/\\x1B\\\$\\(O/", "\x1B\\\$B", $value);
603      $value = preg_replace ("/\\x1B\\\$\\(P/", "\x1B\\\$(D", $value);
604      return $value;
605    }
606    
607  function decode_body($body,$encoding) {  function decode_body($body,$encoding) {
608    $bodyzeile="";    $bodyzeile="";
609    switch ($encoding) {    switch ($encoding) {
# Line 1526  function show_header($head,$group) { Line 1537  function show_header($head,$group) {
1537        echo "<!-- User-Agent: ".htmlspecialchars($head->user_agent)." -->\n";        echo "<!-- User-Agent: ".htmlspecialchars($head->user_agent)." -->\n";
1538      }      }
1539    }    }
1540      if (isset($head->x_moe)) {
1541        if ((isset($article_show["X-Moe"])) && ($article_show["X-Moe"])) {
1542          echo "<span class=\"field x-moe\"><span class=\"name\">".$text_header["X-Moe"]
1543              ."</span> <span class=\"body\">"
1544              .htmlspecialchars($head->x_moe)."</span>\n";
1545        }
1546      }
1547    if ((isset($attachment_show)) && ($attachment_show==true) &&    if ((isset($attachment_show)) && ($attachment_show==true) &&
1548        (isset($head->content_type[1]))) {        (isset($head->content_type[1]))) {
1549      echo $text_header["attachments"];      echo $text_header["attachments"];

Legend:
Removed from v.1.26  
changed lines
  Added in v.1.28

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24