]> git.donarmstrong.com Git - debbugs.git/blobdiff - cgi/pkgindex.cgi
Merge branch 'master' into texticonv
[debbugs.git] / cgi / pkgindex.cgi
index 8adbfb86c18714eba413c515d1dd387b2acad717..a0e91ae8978b6af7904175e7482e58d3f0ada75d 100755 (executable)
@@ -4,12 +4,14 @@ use warnings;
 use strict;
 use POSIX qw(strftime nice);
 
-use Debbugs::Config;
+use Debbugs::Config qw(:globals :text :config);
 use CGI::Simple;
 use Debbugs::CGI qw(:util :url :html);
-use Debbugs::Common qw(getmaintainers);
+use Debbugs::Common qw(getmaintainers getparsedaddrs);
 use Debbugs::Bugs qw(count_bugs);
 use Debbugs::Status qw(:status);
+use Debbugs::Packages qw(getpkgsrc);
+use Debbugs::Text qw(:templates);
 
 nice(5);
 
@@ -57,9 +59,6 @@ my %maintainers = %{&getmaintainers()};
 my %strings = ();
 
 my $dtime = strftime "%a, %e %b %Y %T UTC", gmtime;
-my $tail_html = '';#$gHTMLTail;
-$tail_html = '';#$gHTMLTail;
-$tail_html =~ s/SUBSTITUTE_DTIME/$dtime/;
 
 my %count;
 my $tag;
@@ -68,7 +67,9 @@ my %htmldescrip = ();
 my %sortkey = ();
 if ($indexon eq "pkg") {
   $tag = "package";
-  %count = count_bugs(function => sub {my %d=@_; return splitpackages($d{"pkg"})});
+  %count = count_bugs(function => sub {my %d=@_; return splitpackages($d{"pkg"})},
+                    archive => $archive,
+                    );
   if (defined $param{first}) {
        %count = map {
            if (/^\Q$param{first}\E/) {
@@ -84,7 +85,7 @@ if ($indexon eq "pkg") {
   foreach my $pkg (keys %count) {
     $sortkey{$pkg} = lc $pkg;
     $htmldescrip{$pkg} = sprintf('<a href="%s">%s</a> (%s)',
-                           pkg_url(pkg => $pkg),
+                           package_links(package => $pkg, links_only=>1),
                            html_escape($pkg),
                            htmlize_maintlinks(sub { $_[0] == 1 ? 'maintainer: '
                                                            : 'maintainers: ' },
@@ -103,16 +104,18 @@ if ($indexon eq "pkg") {
            } 
        } keys %count;
   }
-  %count = countbugs(function => sub {my %d=@_;
+  %count = count_bugs(function => sub {my %d=@_;
                           return map {
                             $pkgsrc->{$_} || $_
                           } splitpackages($d{"pkg"});
-                         });
+                         },
+                    archive => $archive,
+                    );
   $note = "";
   foreach my $src (keys %count) {
     $sortkey{$src} = lc $src;
     $htmldescrip{$src} = sprintf('<a href="%s">%s</a> (%s)',
-                           srcurl($src),
+                           package_links(src => $src, links_only=>1),
                            html_escape($src),
                            htmlize_maintlinks(sub { $_[0] == 1 ? 'maintainer: '
                                                            : 'maintainers: ' },
@@ -130,7 +133,9 @@ if ($indexon eq "pkg") {
                             }
                             map { $_->address } @me;
                           } splitpackages($d{"pkg"});
-                         });
+                         },
+                    archive => $archive,
+                    );
   if (defined $param{first}) {
        %count = map {
            if (/^\Q$param{first}\E/) {
@@ -158,7 +163,9 @@ if ($indexon eq "pkg") {
                               unless exists $fullname{$addr->address};
                           }
                           map { $_->address } @se;
-                         });
+                         },
+                    archive => $archive,
+                    );
   if (defined $param{first}) {
        %count = map {
            if (/^\Q$param{first}\E/) {
@@ -180,7 +187,9 @@ if ($indexon eq "pkg") {
   $note .= "different addresses.</p>\n";
 } elsif ($indexon eq "tag") {
   $tag = "tag";
-  %count = count_bugs(function => sub {my %d=@_; return split ' ', $d{tags}; });
+  %count = count_bugs(function => sub {my %d=@_; return split ' ', $d{tags}; },
+                     archive => $archive,
+                    );
   if (defined $param{first}) {
        %count = map {
            if (/^\Q$param{first}\E/) {
@@ -223,11 +232,12 @@ print "Content-Type: text/html\n\n";
 
 print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
 print "<HTML><HEAD>\n" . 
-    "<TITLE>$debbugs::gProject$Archived $debbugs::gBug reports by $tag</TITLE>\n" .
+    "<TITLE>$gProject$Archived $gBug reports by $tag</TITLE>\n" .
+    qq(<LINK REL="stylesheet" HREF="$gWebHostBugDir/css/bugs.css" TYPE="text/css">) .
     "</HEAD>\n" .
     '<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#800080">' .
     "\n";
-print "<H1>" . "$debbugs::gProject$Archived $debbugs::gBug report logs by $tag" .
+print "<H1>" . "$gProject$Archived $gBug report logs by $tag" .
       "</H1>\n";
 
 print $note;
@@ -256,6 +266,8 @@ else {
 print $result;
 
 print "<hr>\n";
-print "<p>$tail_html";
-
+print fill_in_template(template=>'html/html_tail',
+                       hole_var => {'&strftime' => \&POSIX::strftime,
+                                   },
+                      );
 print "</body></html>\n";