--- trunk2/all2all.pl 2004/09/11 22:32:06 424 +++ trunk2/all2all.pl 2004/09/12 01:25:55 426 @@ -56,7 +56,7 @@ $webpac->open_import_xml(type => 'isis_hidra_ths'); -if(0) { # XXX +if(1) { # XXX while (my $rec = $webpac->fetch_rec) { @@ -182,7 +182,7 @@ lookup_v900 => sub { shift @{$l->{"root:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[1]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[1]}} }, - have_children => sub { $l->{"a:".$_[0]."::" } }, + have_children => sub { defined($l->{"a:".$_[0]."::"}) }, child_code => sub { return $_[0] }, style => 'display: none', },{ @@ -192,7 +192,7 @@ lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { $l->{"a:".$_[1].":" } }, + have_children => sub { defined($l->{"a:".$_[1].":"}) }, child_code => sub { return $_[1] }, style => 'display: none', },{ @@ -202,9 +202,37 @@ lookup_v900 => sub { shift }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, + have_children => sub { defined($l->{"a:".$_[2].":".$_[1]}) }, + child_code => sub { return "a:".$_[2].":".$_[1] }, + style => 'display: none', + },{ + # 3 uži pojam + code_arr => sub { @{$l->{$_[0]}} }, + filter_code => sub { shift }, + lookup_v900 => sub { + my ($c,$p) = @_; + $p =~ s/^a:(..:....):.*$/$1/; + return "a:".$p.":".$c; + }, + lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, + lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, + have_children => sub { defined($l->{$_[1]}) }, + child_code => sub { return $_[1] }, + },{ + # 4 + code_arr => sub { @{$l->{$_[0]}} }, + filter_code => sub { shift }, + lookup_v900 => sub { + my ($c,$p) = @_; + $p =~ s/^a:(..:....):.*$/$1/; + return "a:".$p.":".$c; + }, + lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, + lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, +# have_children => sub { defined($l->{$_[1]}) }, +# child_code => sub { return $_[1] }, have_children => sub { 0 }, child_code => sub { 0 }, - }); unroll(0,''); @@ -227,20 +255,38 @@ $log->debug("# $level filter passed code $code"); - my $v900 = $tree[$level]->{'lookup_v900'}->($code) || $log->logdie("can't lookup_v900 '$code'"); - $log->debug("# $level lookup_v900($code) = $v900"); - my $term = $tree[$level]->{'lookup_term'}->($code,$v900) || $log->logdie("can't lookup_term '$v900'"); + my $v900 = $tree[$level]->{'lookup_v900'}->($code,$start_code) || $log->warn("can't lookup_v900($code,$start_code)"); + $log->debug("# $level lookup_v900($code,$start_code) = $v900"); + + my $term = $tree[$level]->{'lookup_term'}->($code,$v900) || $log->warn("can't lookup_term($code,$v900)"); $log->debug("# $level lookup_term($code,$v900) = $term"); - my $mfn = $tree[$level]->{'lookup_mfn'}->($code,$v900) || $log->logdie("can't lookup_mfn '$v900'"); + + my $mfn = $tree[$level]->{'lookup_mfn'}->($code,$v900) || $log->warn("can't lookup_mfn($code,$v900)"); $log->debug("# $level lookup_mfn($code,$v900) = $mfn"); $log->debug("$code -> $v900 : $term [$mfn]"); - print HTML " " x $level . - qq{