Show debtags if available
authorJeroen van Wolffelaar <jeroen@wolffelaar.nl>
Fri, 24 Mar 2006 02:11:36 +0000 (02:11 +0000)
committerJeroen van Wolffelaar <jeroen@wolffelaar.nl>
Fri, 24 Mar 2006 02:11:36 +0000 (02:11 +0000)
TODO
lib/Packages/DoShow.pm
lib/Packages/HTML.pm
static/packages.css

diff --git a/TODO b/TODO
index d197162c487b24089cb0c4c8b04958d8d871495f..d555d9d3de536f3fa1e5fd5e7f5ef19818c268fa 100644 (file)
--- a/TODO
+++ b/TODO
@@ -50,6 +50,9 @@ General:
   anymore, so search further is futile. Maybe the backend could even add a
   marker, ignored by read_entry_all, but understood by read_entry_small, that
   indicates end of $res2 and start of $res3
+- Debtags: print friendly names instead of raw names?
+- Store in db \1-separated, and split on that, instead of the more fragile
+  '/, /' split
 
 
 Missing pieces from old code:
index 3a5e4f3c783f8a42e99859564069cf40f264adf7..5b22552f348a79906045128eb63ab589df46c331 100644 (file)
@@ -122,6 +122,7 @@ sub do_show {
                        debug( "Data search and merging took ".timestr($std) ) if DEBUG;
 
                        my $did = $page->get_newest( 'description' );
+                       my @tags = split(/, /, $page->get_newest( 'tag' ));
                        $section = $page->get_newest( 'section' );
                        $subsection = $page->get_newest( 'subsection' );
                        my $filenames = $page->get_arch_field( 'filename' );
@@ -183,6 +184,7 @@ sub do_show {
                                  );
                        }
                        $package_page .= pdesc( $short_desc, $long_desc );
+                       $package_page .= ptags( $pkg, @tags ) if @tags;
 
                        #
                        # display dependencies
index c7dfd0b7479d6c420a52e88dbd4f4b4d867da23c..e0814a715ca0d099956074fd314af418f5e9a9e5 100644 (file)
@@ -21,7 +21,7 @@ use Packages::I18N::LanguageNames;
 our @ISA = qw( Exporter );
 our @EXPORT = qw( header title trailer file_changed time_stamp
                  read_md5_hash write_md5_hash simple_menu
-                 ds_begin ds_item ds_end title marker pdesc
+                 ds_begin ds_item ds_end title marker pdesc ptags
                  pdeplegend pkg_list pmoreinfo print_deps print_src_deps );
 
 our $CHANGELOG_URL = '/changelogs';
@@ -66,6 +66,20 @@ sub pdesc {
     return $str;
 }
 
+sub ptags {
+    my ( $package, @tags ) = @_;
+    my $str = "";
+
+    $str .= "<div id=\"ptags\">\n<p>";
+    $str .= "<a href=\"http://debtags.alioth.debian.org/cgi-bin/edit.cgi?pkg=".uri_escape($package)."\">Tags</a>:\n";
+    foreach my $tag (@tags) {
+        $str .= "<a href=\"http://debtags.alioth.debian.org/cgi-bin/index.cgi?tags=".uri_escape($tag)."\">$tag</a>\n";
+    }
+    $str .= "</p>\n</div> <!-- end ptags -->\n";
+
+    return $str;
+}
+
 sub pdeplegend {
     my $str = "<table id=\"pdeplegend\" summary=\"legend\"><tr>\n";
 
index 7deb83de884e0e55743165fc840804911e26c903..64bdd10f5c7564909b309e4640484b6ffefa6b56 100644 (file)
@@ -26,7 +26,7 @@
 
 /* classes and div names for package pages */
 
-#pdesc, #pdeps, #pdownload, #pmoreinfo {
+#pdesc, #ptags, #pdeps, #pdownload, #pmoreinfo {
        margin-left: 1em;
        margin-right: 1em;
 }