diff options
| author | fukachan <fukachan> | 2001-11-10 09:04:27 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2001-11-10 09:04:27 +0000 |
| commit | 59b3fd872ca15e60fc55c7214ef7655e555132bf (patch) | |
| tree | 6587fe83f2f7d194e0416f65c63c099d221a094d /fml/lib/Mail/ThreadTrack/Print/HTML.pm | |
| parent | 4d9b6032da532bce9f0f27ee504fa2ff05eceb39 (diff) | |
| download | fml8-59b3fd872ca15e60fc55c7214ef7655e555132bf.tar.gz fml8-59b3fd872ca15e60fc55c7214ef7655e555132bf.tar.bz2 fml8-59b3fd872ca15e60fc55c7214ef7655e555132bf.zip | |
clean up summary() mode for both text and html modes.
print() method knows what should it do for text/html mode.
Diffstat (limited to 'fml/lib/Mail/ThreadTrack/Print/HTML.pm')
| -rw-r--r-- | fml/lib/Mail/ThreadTrack/Print/HTML.pm | 129 |
1 files changed, 16 insertions, 113 deletions
diff --git a/fml/lib/Mail/ThreadTrack/Print/HTML.pm b/fml/lib/Mail/ThreadTrack/Print/HTML.pm index 41476bc9..2112abcf 100644 --- a/fml/lib/Mail/ThreadTrack/Print/HTML.pm +++ b/fml/lib/Mail/ThreadTrack/Print/HTML.pm @@ -6,16 +6,6 @@ use Carp; use Mail::ThreadTrack::Print::Utils qw(decode_mime_string STR2EUC); -sub STR2EUC -{ - my ($str) = @_; - - use Jcode; - &Jcode::convert(\$str, 'euc'); - return $str; -} - - sub show_articles_for_thread { my ($self, $thread_id) = @_; @@ -23,8 +13,6 @@ sub show_articles_for_thread my $config = $self->{ _config }; my $spool_dir = $config->{ spool_dir }; - $self->db_open(); - my $articles = $self->{ _hash_table }->{ _articles }->{ $thread_id }; print "<B>"; @@ -55,46 +43,9 @@ sub show_articles_for_thread } print "</PRE>"; - - $self->db_close(); -} - - -sub cgi_top_menu -{ - my ($self) = @_; - my $config = $self->{ _config }; - my $action = 'fmlthread.cgi'; - my $target = $config->{ thread_cgi_target_window } || 'ThreadCGIWindow'; - - use DirHandle; - my $dh = new DirHandle $config->{ ml_home_prefix }; - my @dirlist; - my $prefix = $config->{ ml_home_prefix }; - while ($_ = $dh->read()) { - next if /^\./; - next if /^\@/; - push(@dirlist, $_) if -f "$prefix/$_/config.cf"; - } - $dh->close; - - if ($self->get_mode eq 'html') { - require 'ctime.pl'; - my $time = ctime(time); - my $ml_name = $config->{ ml_name }; - print "[$time] the brief summary for \"$ml_name\" ML<BR>"; - } - - use CGI qw/:standard/; - print start_form(-action=>$action, -target=>$target); - print "mailing list: ", - popup_menu(-name => 'ml_name', -values => \@dirlist), - submit(-name => 'go'), - end_form; } - # This shows summary on C<$thread_id> in HTML language. # It is used in C<FML::CGI::ThreadSystem>. sub _show_thread_by_html_table @@ -108,7 +59,6 @@ sub _show_thread_by_html_table # printf($fd $format, # $date, $age, $status, $tid, $rh->{ _articles }->{ $tid }); - my $format = $optargs->{ format }; my $date = $optargs->{ date }; my $age = $optargs->{ age }; my $status = $optargs->{ status }; @@ -125,77 +75,30 @@ sub _show_thread_by_html_table $action .= "&thread_id=$xtid&article_id=$aid"; print "<TR>\n"; + print "<TD>$tid\n"; + print "<TD>"; + + # summary + if (defined $articles) { + $aid = (split(/\s+/, $articles))[0]; + my $f = File::Spec->catfile($spool_dir, $aid); + if (-f $f) { + my $buf = $self->message_summary($f); + $self->print( STR2EUC($buf) ); + } + } + + print "<TD>$age\n"; + print "<TD>$status\n"; print "<TD>"; print "<A HREF=\"$action&action=close\" TARGET=\"$target.close\">"; print "[close]</A>\n"; print "<BR>\n"; print "<A HREF=\"$action&action=show\" TARGET=\"$target.show\">"; print "[see articles]</A>\n"; - print "<TD>$date\n"; - print "<TD>$age\n"; - print "<TD>$status\n"; - print "<TD>$tid\n"; - print "<TD>"; - - $aid = (split(/\s+/, $articles))[0]; - my $buf = $self->_article_summary(File::Spec->catfile($spool_dir, $aid)); - print STR2EUC($buf); -} - - -=head2 C<run_cgi()> - -execute CGI. - -=cut - -sub run_cgi -{ - my ($self) = @_; - my $config = $self->{ _config }; - my $title = $config->{ thread_cgi_title } || 'thread system interface'; - my $color = $config->{ thread_cgi_bgcolor } || '#E6E6FA'; - # XXX $ml_name may change by HTTP request - $config->{ ml_name } = param('ml_name') if param('ml_name'); - - # ensure the current mode - $self->mode('html'); - - # load standard CGI routines - use CGI qw/:standard/; - - # get action parameter via HTTP - my $action = param('action') || 'list'; - my $thread_id = param('thread_id'); - - # o.k start html - print start_html(-title=>$title,-BGCOLOR=>$color), "\n"; - - if ($action eq 'close') { - $self->set_status({ - thread_id => $thread_id, - status => 'close', - }); - } - - if ($action eq 'show') { - Log("run.cgi.show_articles for $thread_id"); - $self->show_articles_for_thread($thread_id); - } - else { - # menu at the top of scrren - $self->cgi_top_menu(); - - # show summary - $self->show_summary(); - } - - # o.k. end of html - print end_html; - print "\n"; + print "\n\n"; } 1; -1; |
