);
}
+sub title ($$)
+{
+my($class,$hashref)=@_;
+
+ return $hashref->{"name"}.": ".$hashref->{"summary"},
+}
+
# $args{"ListItem"}=\%...;
sub init_project ($%)
{
my $ListItem={ project_arr_to_hash(@{$args{"ListItem"}}) };
my $W=$class->init(
- "title"=>$ListItem->{"name"}.": ".$ListItem->{"summary"},
+ "title"=>$class->title($ListItem),
+ map(("rel_$_"=>top_dir('/project/Rel.pl?rel='.$_.'&project='.($args{"__PACKAGE__"}=~/^.*::([^:]+)::[^:]+$/)[0])),
+ qw(prev next)),
+ "rel_up"=>top_dir('/project/'),
+ "rel_start"=>top_dir(),
%args,
"head_css"=>($args{"head_css"} || "")."
table.print_project td { vertical-align: top; }
return $W;
}
+sub one_item_list_read($$)
+{
+my($class,$name)=@_;
+
+ Wrequire "project::${name}::ListItem";
+ my $item=eval('\@project::'.$name.'::ListItem::ListItem');
+ do { warn "Broken project/$name/ListItem.pm"; next; } if !defined $item;
+ return @$item;
+}
+
sub item_hash_read ()
{
+# FIXME: $class
my %dirs;
for my $ENTRIES (ENTRIES(),ENTRIES_LOG()) {
local *E;
Wrequire "project::${dir}::ListItem";
my $item=eval('\@project::'.$dir.'::ListItem::ListItem');
do { warn "Broken project/$dir/ListItem.pm"; next; } if !defined $item;
- $item{$dir}={ My::Project::project_arr_to_hash(@$item) };
+ $item{$dir}={ My::Project::project_arr_to_hash(My::Project->one_item_list_read($dir)) };
}
return %item;
}
HERE
}
-sub platforms ($;$)
+sub platforms ($;$%)
{
-my($class,$platform_selected)=@_;
+my($class,$platform_selected,%args)=@_;
my $r="";
$r.='<table border="0" align="center"><tr>'."\n";
$r.='</table>'."\n";
$r.='</td>'."\n";
$r.='</tr></table>'."\n";
+ $r.=vskip "1ex" if !$args{"novskip"};
+ $r;
+}
+
+sub section ($$)
+{
+my($class,$name)=@_;
+
+ my %item=( $class->one_item_list_read($name) );
+ my $title=$class->title(\%item);
+ my $r="";
+
+ print $class->platforms($item{"platform"},"novskip"=>1);
+
+ $r.='<table border="0" align="center"><tr>'."\n";
+ $r.='<td>';
+ $r.='<table border="1" align="center" style="border-collapse: collapse; border-style: solid;">'."\n";
+ $r.='<tr><td style="font-size: larger;">'."\n";
+ $r.=a_href "/project/$name/",$title;
+ $r.='</td></tr>'."\n";
+ $r.='</table>'."\n";
+ $r.='</td>'."\n";
+ $r.='</tr></table>'."\n";
$r.=vskip "1ex";
$r;
}