X-Git-Url: https://git.deb.at/?p=deb%2Fpackages.git;a=blobdiff_plain;f=lib%2FPackages%2FHTML.pm;h=fc37c9466f9f7e44281f16938c052038bede4e53;hp=9f019fb79449758b1fc73701ae07a7b9c665b809;hb=49f6fa5b401d8bba7abc2bafde675841a8729a15;hpb=47c93cb066364b11f0b216589ddc68671435b060 diff --git a/lib/Packages/HTML.pm b/lib/Packages/HTML.pm index 9f019fb..fc37c94 100644 --- a/lib/Packages/HTML.pm +++ b/lib/Packages/HTML.pm @@ -3,27 +3,25 @@ package Packages::HTML; use strict; use warnings; +use Exporter; use URI::Escape; use HTML::Entities; +use Locale::gettext; -use Packages::CGI; +use Packages::CGI (); use Packages::Search qw( read_entry_simple ); use Packages::Config qw( :all ); #use Packages::Util; -#use Packages::I18N::Locale; -#use Packages::I18N::Languages; -#use Packages::I18N::LanguageNames; +use Packages::I18N::Locale; +use Packages::I18N::Languages; +use Packages::I18N::LanguageNames; #use Generated::Strings qw( gettext dgettext ); -# dummy routines -sub get_charset { return "utf-8" }; -sub gettext { return $_[0]; }; - 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 note title marker pdesc + ds_begin ds_item ds_end title marker pdesc pdeplegend pkg_list pmoreinfo print_deps print_src_deps ); our $CHANGELOG_URL = '/changelogs'; @@ -92,7 +90,7 @@ sub pkg_list { $str .= "
$p
\n". "\t
$short_desc
\n"; } else { - $str .= "
$p
\n\t
".gettext("Not available")."
\n"; + $str .= "
$p
\n\t
"._g("Not available")."
\n"; } } if ($str) { @@ -113,12 +111,12 @@ sub pmoreinfo { my $suite = $opts->{suite}[0]; my $str = "
"; - $str .= sprintf( "

".gettext( "More Information on %s" )."

", + $str .= sprintf( "

"._g( "More Information on %s" )."

", $name ); if ($info{bugreports}) { my $bug_url = $is_source ? $SRC_BUG_URL : $BUG_URL; - $str .= "

\n".sprintf( gettext( "Check for Bug Reports about %s." )."
\n", + $str .= "

\n".sprintf( _g( "Check for Bug Reports about %s." )."
\n", $bug_url.$name, $name ); } @@ -130,12 +128,12 @@ sub pmoreinfo { my $path = (@{$opts->{archive}} >1) ? $suite : "$suite/$opts->{archive}[0]"; - $str .= gettext( "Source Package:" ); + $str .= _g( "Source Package:" ); $str .= " $source, ". - gettext( "Download" ).":\n"; + _g( "Download" ).":\n"; unless (defined($files) and @$files) { - $str .= gettext( "Not found" ); + $str .= _g( "Not found" ); } else { foreach( @$files ) { my ($src_file_md5, $src_file_size, $src_file_name) = split /\s/o, $_; @@ -158,7 +156,7 @@ sub pmoreinfo { $str .= "]\n"; } } -# $package_page .= sprintf( gettext( " (These sources are for version %s)\n" ), $src_version ) +# $package_page .= sprintf( _g( " (These sources are for version %s)\n" ), $src_version ) # if ($src_version ne $version) && !$src_version_given_in_control; } @@ -168,12 +166,12 @@ sub pmoreinfo { $src_basename = "${source}_$src_basename"; $src_dir =~ s,pool/updates,pool,o; $src_dir =~ s,pool/non-US,pool,o; - $str .= "
".sprintf( gettext( "View the Debian changelog" ), + $str .= "
".sprintf( _g( 'View the Debian changelog' ), "$CHANGELOG_URL/$src_dir/$src_basename/changelog" )."
\n"; my $copyright_url = "$CHANGELOG_URL/$src_dir/$src_basename/"; $copyright_url .= ( $is_source ? 'copyright' : "$name.copyright" ); - $str .= sprintf( gettext( "View the copyright file" ), + $str .= sprintf( _g( 'View the copyright file' ), $copyright_url )."

"; } } @@ -186,7 +184,7 @@ sub pmoreinfo { } my ($maint_name, $maint_mail) = @{shift @$uploaders}; unless (@$uploaders) { - $str .= "

\n".sprintf( gettext( "%s is responsible for this Debian package." ). + $str .= "

\n".sprintf( _g( "%s is responsible for this Debian package." ). "\n", "$maint_name" ); @@ -198,18 +196,18 @@ sub pmoreinfo { } my $last_up = pop @uploaders_str; $up_str .= ", ".join ", ", @uploaders_str if @uploaders_str; - $up_str .= sprintf( gettext( " and %s are responsible for this Debian package." ), $last_up ); + $up_str .= sprintf( _g( " and %s are responsible for this Debian package." ), $last_up ); $str .= "

\n$up_str "; } } - $str .= sprintf( gettext( "See the developer information for %s." )."

", $QA_URL.$source, $name ) if $source; + $str .= sprintf( _g( "See the developer information for %s." )."

", $QA_URL.$source, $name ) if $source; } if ($info{search}) { my $encodedname = uri_escape( $name ); my $search_url = $is_source ? "$ROOT/source" : $ROOT; - $str .= "

".sprintf( gettext( "Search for other versions of %s" ), + $str .= "

".sprintf( _g( "Search for other versions of %s" ), "$search_url/$encodedname", $name )."

\n"; } @@ -251,7 +249,7 @@ sub print_deps { my $one_archive = @{$opts->{archive}} > 1 ? '': $opts->{archive}[0]; # use Data::Dumper; -# debug( "print_deps called:\n".Dumper( $pkg, $relations, \$type ), 3 ); +# debug( "print_deps called:\n".Dumper( $pkg, $relations, \$type ), 3 ) if DEBUG; foreach my $rel (@$relations) { my $is_old_pkgs = $rel->[0]; @@ -276,7 +274,7 @@ sub print_deps { if ($arch_str ||= '') { if ($arch_neg) { - $arch_str = " [".gettext("not")." $arch_str]"; + $arch_str = " ["._g("not")." $arch_str]"; } else { $arch_str = " [$arch_str]"; } @@ -288,16 +286,17 @@ sub print_deps { my $entry = $entries{$p_name} || read_entry_simple( $packages, $p_name, $opts->{h_archives}, $suite); my $short_desc = $entry->[-1]; - my $arch = $entry->[2]; - my $archive = $entry->[0]; + my $arch = $entry->[3]; + my $archive = $entry->[1]; if ( $short_desc ) { my $path = $one_archive eq $archive ? "$suite/$archive" : $suite; if ( $is_old_pkgs ) { push @res_pkgs, dep_item( "$ROOT/$path/$p_name", $p_name, "$pkg_version$arch_str" ); - } elsif ($arch eq 'virtual') { - my @provided_by = split /\s/, $short_desc; + } elsif (defined $entry->[0]) { +# FIXME: can be both virtual package (defined $entry->[0]) and real one + my @provided_by = split /\s/, $entry->[0]; $short_desc = "virtual package provided by "; if (@provided_by < 10) { $short_desc .= join( ', ',map { "$_" } @provided_by); @@ -315,13 +314,13 @@ sub print_deps { } elsif ( $is_old_pkgs ) { push @res_pkgs, dep_item( undef, $p_name, "$pkg_version$arch_str" ); } else { - my $short_desc = gettext( "Package not available" ); + my $short_desc = _g( "Package not available" ); push @res_pkgs, dep_item( undef, $p_name, "$pkg_version$arch_str", $short_desc ); } } - $res .= "\n".join( "
".gettext( "or" )." ", @res_pkgs )."\n"; + $res .= "\n".join( "
"._g( "or" )." ", @res_pkgs )."\n"; } if (@$relations) { $res .= "\n"; @@ -384,63 +383,66 @@ sub header { $search_in_header = <
- - - - - - - -Full options + + +%s
-
Search on: +
%s -   +   - +
- + - -
-
- -MENU -; - } elsif ($params{print_search_field} eq 'contents') { - my %values = %{$params{search_field_values}}; - my %checked_searchmode = ( searchfiles => "", - searchfilesanddirs => "", - searchword => "", - filelist => "", ); - $checked_searchmode{$values{searchmode}} = "checked=\"checked\""; - $search_in_header = < -
- - - - -  - -Full options -
-
Display: - - - - -
- - - - +
MENU ; + $search_in_header = sprintf( $search_in_header, + _g( 'Search' ), + _g( 'Full options' ), + _g( 'Search on:'), + _g( 'Package Names' ), + _g( 'Descriptions' ), + _g( 'Source package names' ), + _g( 'Package contents' )); +# } elsif ($params{print_search_field} eq 'contents') { +# my %values = %{$params{search_field_values}}; +# my %checked_searchmode = ( searchfiles => "", +# searchfilesanddirs => "", +# searchword => "", +# filelist => "", ); +# $checked_searchmode{$values{searchmode}} = "checked=\"checked\""; +# $search_in_header = < +#
+# +# +# +# +#   +# +# Full options +#
+#
Display: +# +# +# +# +#
+# +# +# +# +#
+#
+# +# MENU +# ; } my $keywords = $params{keywords} || ''; @@ -470,7 +472,7 @@ $meta HEAD ; - $txt .= img( "$HOME/", "", "Pics/debian.png", gettext( "Debian Project" ), + $txt .= img( "$HOME/", "", "Pics/debian.png", _g( "Debian Project" ), width => 179, height => 61 ); $txt .= <" . gettext("Skip Site Navigation")."

\n"; + $txt .= "

" . _g("Skip Site Navigation")."

\n"; $txt .= "
\n\n"; $txt .= < @@ -521,15 +523,15 @@ sub trailer { $langs. "\n
\n" . "". - sprintf( gettext( "Back to: Debian Project homepage || Packages search page" ), $HOME, $ROOT ). + sprintf( _g( "Back to: Debian Project homepage || Packages search page" ), $HOME, $ROOT ). "

\n
\n". "

". - sprintf( gettext( "To report a problem with the web site, e-mail %s. For other contact information, see the Debian contact page." ), $CONTACT_MAIL, $CONTACT_MAIL, $HOME). + sprintf( _g( "To report a problem with the web site, e-mail %s. For other contact information, see the Debian contact page." ), $CONTACT_MAIL, $CONTACT_MAIL, $HOME). "

\n". - "

". gettext( "Last Modified: " ). "LAST_MODIFIED_DATE". + "

". _g( "Last Modified: " ). "LAST_MODIFIED_DATE". "
\n". - sprintf( gettext( "Copyright © 1997-2005 SPI; See license terms." ), "$HOME/" )."
\n". - gettext( "Debian is a registered trademark of Software in the Public Interest, Inc." ). + sprintf( _g( "Copyright © 1997-2005 SPI; See license terms." ), "$HOME/" )."
\n". + _g( "Debian is a registered trademark of Software in the Public Interest, Inc." ). "

\n". "
\n". "
\n". @@ -546,7 +548,7 @@ sub languages { if (@used_langs) { $str .= "
\n"; $str .= "\n

\n"; - $str .= gettext( "This page is also available in the following languages:\n" ); + $str .= _g( "This page is also available in the following languages:\n" ); $str .= "

\n"; my @printed_langs = (); @@ -565,7 +567,7 @@ sub languages { $str .= "\n"; } $str .= "\n

\n"; - $str .= sprintf( gettext( "How to set the default document language

" ), $CN_HELP_URL ); + $str .= sprintf( _g( "How to set the default document language" ), $CN_HELP_URL )."

"; $str .= "\n\n"; }