require CGI;
Wrequire 'My::Project';
-use constant ENTRIES=>"CVS/Entries";
-use constant ENTRIES_LOG=>"CVS/Entries.Log";
-
My::Web->init(
"__PACKAGE__"=>__PACKAGE__,
</p></form>
HERE
-my %dirs;
-for my $ENTRIES (ENTRIES,ENTRIES_LOG) {
- local *E;
- next if !open E,$ENTRIES;
- while (<E>) {
- chomp;
- do { $dirs{$1}=1; next; } if m#^(?:A )?D/([^/]*)/#;
- next if m#^/([^/]*)/# ;
- next if /^D$/;
- warn "File $ENTRIES contains invalid line \"$_\": $!";
- }
- close E;
- }
-
-my %item;
-for my $dir (keys(%dirs)) {
- 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) };
- }
+my %item=( My::Project::item_hash_read() );
# $col{"name"}{"show"}=1
# $col{"name"}{"format"}=sub { "<".$_[0].">"; }