X-Git-Url: https://git.deb.at/?p=deb%2Fpackages.git;a=blobdiff_plain;f=lib%2FPackages%2FDoShow.pm;h=30158c54b42d35ce6f5dcc91e8b008aac502efb3;hp=f808f1f7e547b57ea5ac56e1837eafe55c77728f;hb=11fd4b5f87f668eeb33922c6f64823e40828d137;hpb=1cc237c732b99138c613a79c59db361f75f9dd71 diff --git a/lib/Packages/DoShow.pm b/lib/Packages/DoShow.pm index f808f1f..30158c5 100644 --- a/lib/Packages/DoShow.pm +++ b/lib/Packages/DoShow.pm @@ -24,7 +24,7 @@ our @ISA = qw( Exporter ); our @EXPORT = qw( do_show ); sub do_show { - my ($params, $opts, $html_header, $page_contents) = @_; + my ($params, $opts, $page_contents) = @_; if ($params->{errors}{package}) { fatal_error( _g( "package not valid or not specified" ) ); @@ -120,22 +120,19 @@ sub do_show { my $std = timediff($st1, $st0); debug( "Data search and merging took ".timestr($std) ) if DEBUG; + my @similar = find_similar( $pkg, "$DBDIR/xapian/", + \%did2pkg ); + $contents{similar} = \@similar; + my $did = $page->get_newest( 'description' ); my $desc_md5 = $page->get_newest( 'description-md5' ); - my @complete_tags = split(/, /, $page->get_newest( 'tag' )); + my @complete_tags = split(/, /, $page->get_newest( 'tag' )||'' ); my @tags; foreach (@complete_tags) { my ($facet, $tag) = split( /::/, $_, 2); - # handle tags like devel::{lang:c,lang:c++} - if ($tag =~ s/^\{(.+)\}$/$1/) { - foreach (split( /,/, $tag )) { - next if $tag =~ /^special:/; - push @tags, [ $facet, $_ ]; - } - } else { - next if $tag =~ /^special:/; - push @tags, [ $facet, $tag ]; - } + next if $facet =~ /^special/; + next if $tag =~ /^special:/; + push @tags, [ $facet, $tag ]; } $contents{tags} = \@tags; @@ -182,6 +179,7 @@ sub do_show { my $trans_desc = $desctrans{$desc_md5}; if ($trans_desc) { my %trans_desc = split /\000|\001/, $trans_desc; + $contents{used_langs} = ['en', sort keys %trans_desc]; debug( "TRANSLATIONS: ".join(" ",keys %trans_desc), 2) if DEBUG; while (my ($l, $d) = each %trans_desc) { @@ -308,8 +306,7 @@ sub do_show { foreach( @$source_files ) { my ($src_file_md5, $src_file_size, $src_file_name) = split /\s+/, $_; - (my $server = lc $archive) =~ s/-//go; # non-US hack - $server = $FTP_SITES{$server} + my $server = $FTP_SITES{lc $archive} || $FTP_SITES{us}; my $path = "/$source_dir/$src_file_name"; @@ -363,9 +360,7 @@ sub moreinfo { foreach( @$files ) { my ($src_file_md5, $src_file_size, $src_file_name) = split /\s/o, $_; my ($server, $path); - # non-US hack - ($server = lc $page->get_newest('archive')) =~ s/-//go; - $server = $env->{$server}||$env->{us}; + $server = $env->{lc $page->get_newest('archive')}||$env->{us}; $path = "/$src_dir/$src_file_name"; push @downloads, { name => $src_file_name, server => $server, path => $path }; } @@ -378,7 +373,6 @@ sub moreinfo { (my $src_basename = $source_version) =~ s,^\d+:,,; # strip epoche $src_basename = "${source}_$src_basename"; $src_dir =~ s,pool/updates,pool,o; - $src_dir =~ s,pool/non-US,pool,o; $contents->{files}{changelog}{path} = "$src_dir/$src_basename/changelog"; $contents->{files}{copyright}{path} = "$src_dir/$src_basename/".( $is_source ? 'copyright' : "$name.copyright" );