This commit is contained in:
icedphoenix 2012-09-21 15:02:40 +04:00
commit 6781d4cfad

View file

@ -1,6 +1,6 @@
#!/usr/bin/perl #!/usr/bin/perl
######################################################## ########################################################
# URPM Repo Closure Checker 1.5 for Linux # URPM Repo Closure Checker 1.5.1 for Linux
# A tool for checking closure of a set of RPM packages # A tool for checking closure of a set of RPM packages
# #
# Copyright (C) 2011-2012 ROSA Laboratory # Copyright (C) 2011-2012 ROSA Laboratory
@ -38,7 +38,7 @@ use File::Copy qw(copy move);
use Data::Dumper; use Data::Dumper;
use strict; use strict;
my $TOOL_VERSION = "1.5"; my $TOOL_VERSION = "1.5.1";
my $CmdName = get_filename($0); my $CmdName = get_filename($0);
my ($Help, $ShowVersion, $RPMlist, $RPMdir, $StaticMode, my ($Help, $ShowVersion, $RPMlist, $RPMdir, $StaticMode,
@ -1503,7 +1503,7 @@ sub checkProfile()
} }
my $Content = readFile($Profile); my $Content = readFile($Profile);
my %Index = (); my %Index = ();
my %Order = (); my (%Order, %Order_S) = ();
my $Num = 0; my $Num = 0;
while(my $Repos = parseTag(\$Content, "repos")) while(my $Repos = parseTag(\$Content, "repos"))
{ {
@ -1557,8 +1557,8 @@ sub checkProfile()
$Index{$Info{"name"}}{$Info{"arch"}}{$Info{"section"}} = \%Info; $Index{$Info{"name"}}{$Info{"arch"}}{$Info{"section"}} = \%Info;
$Order{$Info{"name"}} = $Num++; $Order{$Info{"name"}} = $Num++;
$Order{$Info{"section"}} = $Num++; $Order_S{$Info{"name"}}{$Info{"section"}} = $Num++;
$Order{$Info{"arch"}} = $Num++; $Order_S{$Info{"name"}}{$Info{"arch"}} = $Num++;
} }
my $Styles = " my $Styles = "
@ -1610,7 +1610,7 @@ sub checkProfile()
# contents # contents
my $Contents = "<br/>\n<table class='contents'>\n"; my $Contents = "<br/>\n<table class='contents'>\n";
$Contents .= "<tr><td><b>Contents</b></td></tr>\n"; $Contents .= "<tr><td><b>Contents</b></td></tr>\n";
foreach my $Name (keys(%Index)) foreach my $Name (sort {$Order{$a}<=>$Order{$b}} keys(%Index))
{ {
my $Anchor = $Name; my $Anchor = $Name;
$Anchor=~s/\s+/_/g; $Anchor=~s/\s+/_/g;
@ -1618,7 +1618,11 @@ sub checkProfile()
} }
$Contents .= "</table>\n"; $Contents .= "</table>\n";
#$INDEX .= $Contents; if(keys(%Index)>=3)
{
$INDEX .= $Contents;
$INDEX .= "<br/>\n";
}
foreach my $Name (sort {$Order{$a}<=>$Order{$b}} keys(%Index)) foreach my $Name (sort {$Order{$a}<=>$Order{$b}} keys(%Index))
{ {
@ -1629,20 +1633,20 @@ sub checkProfile()
$INDEX .= "<table class='summary'>\n"; $INDEX .= "<table class='summary'>\n";
$INDEX .= "<tr>\n"; $INDEX .= "<tr>\n";
$INDEX .= "<td></td>\n"; $INDEX .= "<td></td>\n";
foreach my $Arch (sort {$Order{$a}<=>$Order{$b}} keys(%{$Index{$Name}})) foreach my $Arch (sort {$Order_S{$Name}{$a}<=>$Order_S{$Name}{$b}} keys(%{$Index{$Name}}))
{ {
foreach my $Section (sort {$Order{$a}<=>$Order{$b}} keys(%{$Index{$Name}{$Arch}})) foreach my $Section (sort {$Order_S{$Name}{$a}<=>$Order_S{$Name}{$b}} keys(%{$Index{$Name}{$Arch}}))
{ {
$INDEX .= "<th>$Section</th>\n"; $INDEX .= "<th>$Section</th>\n";
} }
last; last;
} }
$INDEX .= "</tr>\n"; $INDEX .= "</tr>\n";
foreach my $Arch (sort {$Order{$a}<=>$Order{$b}} keys(%{$Index{$Name}})) foreach my $Arch (sort {$Order_S{$Name}{$a}<=>$Order_S{$Name}{$b}} keys(%{$Index{$Name}}))
{ {
$INDEX .= "<tr>\n"; $INDEX .= "<tr>\n";
$INDEX .= "<th>$Arch</th>\n"; $INDEX .= "<th>$Arch</th>\n";
foreach my $Section (sort {$Order{$a}<=>$Order{$b}} keys(%{$Index{$Name}{$Arch}})) foreach my $Section (sort {$Order_S{$Name}{$a}<=>$Order_S{$Name}{$b}} keys(%{$Index{$Name}{$Arch}}))
{ {
my %Info = %{$Index{$Name}{$Arch}{$Section}}; my %Info = %{$Index{$Name}{$Arch}{$Section}};
$INDEX .= "<td><a href=\'".$Info{"HTML"}."\'>Report</a> (<a href=\'".$Info{"TXT"}."\'>txt</a>)</td>\n"; # (<a href=\'".$Info{"TXT"}."\'>txt</a>) $INDEX .= "<td><a href=\'".$Info{"HTML"}."\'>Report</a> (<a href=\'".$Info{"TXT"}."\'>txt</a>)</td>\n"; # (<a href=\'".$Info{"TXT"}."\'>txt</a>)
@ -1652,6 +1656,11 @@ sub checkProfile()
$INDEX .= "</table>\n"; $INDEX .= "</table>\n";
} }
if(keys(%Index)>=3)
{
$INDEX .= "<div style='height:999px;'></div>\n";
}
my $Title = "URPM-repoclosure report"; my $Title = "URPM-repoclosure report";
my $Keywords = "URPM, repository, closure, report"; my $Keywords = "URPM, repository, closure, report";
my $Description = "URPM-repoclosure report"; my $Description = "URPM-repoclosure report";