]> git.donarmstrong.com Git - debbugs.git/commitdiff
Allow for useless messages to be hidden
authorDon Armstrong <don@volo>
Mon, 23 Oct 2006 00:23:42 +0000 (17:23 -0700)
committerDon Armstrong <don@volo>
Mon, 23 Oct 2006 00:23:42 +0000 (17:23 -0700)
cgi/bugreport.cgi
cgi/bugs.css

index 182d2b8a26ebc01428dfed160a9aa72b26fb26ba..a401f7c9b5b57f546b284d90bf959200d3d2c31e 100755 (executable)
@@ -374,6 +374,7 @@ sub handle_record{
      my $output = '';
      local $_ = $record->{type};
      if (/html/) {
+         my $class = $record->{text} =~ /^<strong>(?:Acknowledgement|Reply|Information|Report|Notification)/ ? 'infmessage':'msgreceived';
          $output .= decode_rfc1522($record->{text});
          # Link to forwarded http:// urls in the midst of the report
          # (even though these links already exist at the top)
@@ -392,7 +393,7 @@ sub handle_record{
          $output .= '<a href="' . bugurl($ref, 'msg='.($msg_number+1)) . '">Full text</a> and <a href="' .
               bugurl($ref, 'msg='.($msg_number+1), 'mbox') . '">rfc822 format</a> available.';
 
-         $output = qq(<div class="msgreceived">\n<a name="$msg_number">\n) . $output . "</div>\n";
+         $output = qq(<div class="$class"><hr>\n<a name="$msg_number">\n) . $output . "</div>\n";
      }
      elsif (/recips/) {
          my ($msg_id) = $record->{text} =~ /^Message-Id:\s+<(.+)>/im;
@@ -402,7 +403,7 @@ sub handle_record{
          elsif (defined $msg_id) {
               $$seen_msg_ids{$msg_id} = 1;
          }
-         $output .= qq(<a name="$msg_number">\n);
+         $output .= qq(<hr><a name="$msg_number">\n);
          $output .= 'View this message in <a href="' . bugurl($ref, "msg=$msg_number", "mbox") . '">rfc822 format</a>';
          $output .= handle_email_message($record->{text},
                                    ref        => $bug_number,
@@ -422,7 +423,7 @@ sub handle_record{
          }
          # Incomming Mail Message
          my ($received,$hostname) = $record->{text} =~ m/Received: \(at (\S+)\) by (\S+)\;/;
-         $output .= qq|<p class="msgreceived"><a name="$msg_number"><a name="msg$msg_number">Message received</a> at |.
+         $output .= qq|<hr><p class="msgreceived"><a name="$msg_number"><a name="msg$msg_number">Message received</a> at |.
               htmlsanit("$received\@$hostname") . q| (<a href="| . bugurl($ref, "msg=$msg_number") . '">full text</a>'.q|, <a href="| . bugurl($ref, "msg=$msg_number") . ';mbox=yes">mbox</a>)'.":</p>\n";
          $output .= handle_email_message($record->{text},
                                    ref        => $bug_number,
@@ -526,7 +527,7 @@ else {
 }
 
 @log = reverse @log if $reverse;
-$log = join('<hr>',@log);
+$log = join("\n",@log);
 
 
 print "Content-Type: text/html; charset=utf-8\n\n";
@@ -536,13 +537,33 @@ my $title = htmlsanit($status{subject});
 my $dummy2 = $debbugs::gWebHostBugDir;
 
 print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
-print "<HTML><HEAD>\n" . 
-    "<TITLE>$short - $title - $debbugs::gProject $debbugs::gBug report logs</TITLE>\n" .
-     '<meta http-equiv="Content-Type" content="text/html;charset=utf-8">'.
-     "<link rel=\"stylesheet\" href=\"$debbugs::gWebHostBugDir/css/bugs.css\" type=\"text/css\">" .
-    "</HEAD>\n" .
-    '<BODY>' .
-    "\n";
+print <<END;
+<HTML><HEAD>
+<TITLE>$short - $title - $debbugs::gProject $debbugs::gBug report logs</TITLE>
+<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
+<link rel="stylesheet" href="$debbugs::gWebHostBugDir/css/bugs.css" type="text/css">
+<script type="text/javascript">
+<!--
+function toggle_infmessages(){
+       var styles = document.styleSheets;
+       var deleted = 0
+       for (var i = 0; i < styles.length; i++) {
+          for (var j = 0; j < styles[i].cssRules.length; j++) {
+            if (styles[i].cssRules[j].cssText == ".infmessage { display: none; }") {
+                 styles[i].deleteRule(j);
+                 deleted = 1;
+            }
+          }
+       }
+       if (!deleted) {
+            styles[0].insertRule(".infmessage { display: none; }",0);
+       }
+}
+-->
+</script>
+</HEAD>
+<BODY">
+END
 print "<H1>" . "$debbugs::gProject $debbugs::gBug report logs - <A HREF=\"mailto:$ref\@$gEmailDomain\">$short</A>" .
       "<BR>" . $title . "</H1>\n";
 
@@ -550,12 +571,12 @@ print "$descriptivehead\n";
 print qq(<p><a href="mailto:$ref\@$debbugs::gEmailDomain">Reply</a> ),
      qq(or <a href="mailto:$ref-subscribe\@$debbugs::gEmailDomain">subscribe</a> ),
      qq(to this bug.</p>\n);
+print qq(<p><a href="javascript:toggle_infmessages();">Show useless messages</a></p>);
 printf qq(<div class="msgreceived"><p>View this report as an <a href="%s">mbox folder</a>, ).
      qq(<a href="%s">status mbox</a>, <a href="%s">maintainer mbox</a></p></div>\n),
      html_escape(bug_url($ref, mbox=>'yes')),
      html_escape(bug_url($ref, mbox=>'yes',mboxstatus=>'yes')),
      html_escape(bug_url($ref, mbox=>'yes',mboxmaint=>'yes'));
-print "<HR>";
 print "$log";
 print "<HR>";
 print "<p class=\"msgreceived\">Send a report that <a href=\"/cgi-bin/bugspam.cgi?bug=$ref\">this bug log contains spam</a>.</p>\n<HR>\n";
index 1f381341b7825a6c6132eb8250f477c6e1e59d8c..ed42581fc96de888417f64974b4ccd7a3bd75cee 100644 (file)
@@ -104,6 +104,16 @@ pre.mime {
     color: #797979;
 }
 
+/* This must be separate from the other CSS to make the showing of
+   unimportant messages work in bugreport.cgi. */ 
+.infmessage { display: none; }
+
+.infmessage {
+    font-family: sans-serif;
+    font-size: 90%;
+    color: #686868;
+}
+
 .msgreceived {
     font-family: sans-serif;
     font-size: 90%;