X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=html.pl;h=0c55a7a89403736dfb6607c094443de3a153f0d9;hb=9e52f8eb286e7e85d39c1d26117a2b9dda2fbf1d;hp=583d0819c628c6d2988d83cc57cf7bdde8cfea8b;hpb=41793dcfbec56145b53b22af84bdecca9ffd75c2;p=koha-bibliografija diff --git a/html.pl b/html.pl index 583d081..0c55a7a 100755 --- a/html.pl +++ b/html.pl @@ -10,6 +10,7 @@ use Data::Dump qw(dump); use autodie; use locale; use Text::Unaccent; +use Carp qw(confess); use lib '/srv/koha_ffzg'; use C4::Context; @@ -41,11 +42,15 @@ from auth_header $sth_auth->execute(); while( my $row = $sth_auth->fetchrow_hashref ) { + if ( $row->{department} !~ m/Filozofski fakultet u Zagrebu/ ) { + push @{ $skip->{nije_ffzg} }, $row; + next; + } $auth_header->{ $row->{authid} } = $row->{full_name}; - $row->{department} =~ s/, Filozofski fakultet u Zagrebu\s*// || next; + $row->{department} =~ s/, Filozofski fakultet u Zagrebu.*$//; $row->{department} =~ s/^.+\.\s*//; - push @{ $auth_department->{ $row->{department} } }, $row->{authid}; # warn dump( $row ); + push @{ $auth_department->{ $row->{department} } }, $row->{authid}; push @authors, $row; } @@ -93,7 +98,7 @@ sub biblioitem_html { return $biblio_html->{$biblionumber} if exists $biblio_html->{$biblionumber}; - my $xmlrecord = $marcxml->{$biblionumber} || die "missing $biblionumber marcxml"; + my $xmlrecord = $marcxml->{$biblionumber} || confess "missing $biblionumber marcxml"; print $xml_fh $xmlrecord if $ENV{XML}; @@ -200,6 +205,7 @@ while( my $row = $sth_select_authors->fetchrow_hashref ) { if ( $type =~ m/(edt|trl|com|ctb)/ ) { push @{ $authors->{$authid}->{sec}->{ $category } }, $row->{biblionumber}; + push @{ $authors->{$authid}->{$1}->{ $category } }, $row->{biblionumber}; } elsif ( $type =~ m/aut/ ) { if ( ! $have_100 ) { $have_edt = grep { exists $_->{4} && $_->{4} =~ m/edt/ } @{ $data->{700} } if ! defined $have_edt; @@ -259,6 +265,15 @@ my $first_letter = ''; debug 'authors' => \@authors; +sub li_biblio { + my ($biblionumber) = @_; + return qq|
  • |, + qq|$biblionumber|, + biblioitem_html($biblionumber), + qq|edit|, + qq|
  • \n|; +} + sub author_html { my ( $fh, $authid, $type, $label ) = @_; @@ -270,11 +285,7 @@ sub author_html { my $label = $category_label->{$category} || 'Bez kategorije'; print $fh qq|

    $label

    \n\n|; } @@ -314,7 +325,9 @@ debug 'auth_header' => $auth_header; my $department_category_author; foreach my $department ( sort keys %$auth_department ) { foreach my $authid ( sort @{ $auth_department->{$department} } ) { - foreach my $category ( sort keys %{ $authors->{$authid} } ) { + my @categories = keys %{ $authors->{$authid}->{aut} }; + push @categories, keys %{ $authors->{$authid}->{sec} }; + foreach my $category ( sort @categories ) { push @{ $department_category_author->{$department}->{$category} }, $authid; } } @@ -331,23 +344,50 @@ foreach my $department ( sort keys %$department_category_author ) { my $dep_file = unac_string('utf-8',$dep); print $dep_fh qq|
  • $dep
  • \n|; open(my $fh, '>:encoding(utf-8)', "html/departments/$dep_file.new"); + print $fh html_title($department . ' bibliografija'); + print $fh qq|

    $department bibliografija

    \n|; + + print $fh qq|

    Primarno autorstvo

    \n|; + foreach my $category ( sort keys %{ $department_category_author->{$department} } ) { + + my @authids = @{ $department_category_author->{$department}->{$category} }; + next unless @authids; + + my @biblionumber = map { @{ $authors->{$_}->{aut}->{$category} } } grep { exists $authors->{$_}->{aut}->{$category} } @authids; + + next unless @biblionumber; + my $label = $category_label->{$category} || 'Bez kategorije'; - print $fh qq|

    $label

    \n\n|, html_end; close($dep_fh); rename 'html/departments/index.new', 'html/departments/index.html'; +my $azvo_stat; + +foreach my $department ( sort keys %$department_category_author ) { + foreach my $category ( sort keys %{ $department_category_author->{$department} } ) { + foreach my $authid ( @{ $department_category_author->{$department}->{$category} } ) { + foreach my $type ( keys %{ $authors->{$authid} } ) { + next unless exists $authors->{$authid}->{$type}->{$category}; + $azvo_stat->{ $department }->{ $category }->{ $type } += $#{ $authors->{$authid}->{$type}->{$category} } + 1; + } + } + } +} + +debug 'azvo_stat' => $azvo_stat; + +=for later +open(my $fh, '>', 'html/azvo.new'); + + + +close($fh); +rename 'html/azvo.new', 'html/azvo.html'; +=cut +