Long is the road to MARC..
[koha.git] / updatebiblio.pl
1 #!/usr/bin/perl
2
3 use C4::Database;
4 use CGI;
5 use strict;
6 use C4::Acquisitions;
7 use C4::Output;
8
9 my $input       = new CGI;
10 my $bibnum      = checkinp($input->param('biblionumber'));
11 my $biblio = {
12     biblionumber => $bibnum,
13     title        => $input->param('title')?$input->param('title'):"",
14     author       => $input->param('author')?$input->param('author'):"",
15     abstract     => $input->param('abstract')?$input->param('abstract'):"",
16     copyright    => $input->param('copyrightdate')?$input->param('copyrightdate'):"",
17     seriestitle  => $input->param('seriestitle')?$input->param('seriestitle'):"",
18     serial       => $input->param('serial')?$input->param('serial'):"",
19     unititle     => $input->param('unititle')?$input->param('unititle'):"",
20     notes        => $input->param('notes')?$input->param('notes'):"",
21 }; # my $biblio
22 my $subtitle    = checkinp($input->param('subtitle'));
23 my $subject     = checkinp($input->param('subject'));
24 my $addauthor   = checkinp($input->param('additionalauthor'));
25 my $force       = $input->param('Force');
26 my %data;
27 my @sub;
28 my @subs;
29 my @names;
30 my $count;
31 my $error;
32
33 &modbiblio($biblio);
34 &modsubtitle($bibnum, $subtitle);
35 &modaddauthor($bibnum, $addauthor);
36
37 $subject = uc($subject);
38 @sub     = split(/\|/, $subject);
39 $count   = @sub;
40
41 for (my $i = 0; $i < $count; $i++) {
42     $sub[$i] =~ s/ +$//;
43 } # for
44
45 $error = &modsubject($bibnum,$force,@sub);
46
47 if ($error ne ''){
48     print $input->header;
49     print startpage();
50     print startmenu('catalogue');
51     print $error;
52     my @subs=split('\n',$error);
53     print "<p> Click submit to force the subject";
54     my @names=$input->param;
55     my %data;
56     my $count=@names;
57     for (my $i=0;$i<$count;$i++) {
58         if ($names[$i] ne 'Force') {
59             my $value=$input->param("$names[$i]");
60             $data{$names[$i]}="hidden\t$value\t$i";
61         } # if
62     } # for
63     $data{"Force"}="hidden\t$subs[0]\t$count";
64     print mkform3('updatebiblio.pl',%data);
65     print endmenu();
66     print endpage();
67 } else {
68     print $input->redirect("detail.pl?type=intra&bib=$bibnum");
69 } # else
70
71 sub checkinp{
72   my ($inp)=@_;
73   $inp=~ s/\'/\\\'/g;
74   $inp=~ s/\"/\\\"/g;
75   return($inp);
76 }