Removing subjects and additionalauthors (they dont belong at the biblioitem level)
[koha.git] / updatebiblio.pl
index 485ddc8..c8a607d 100755 (executable)
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
-use CGI;
 use strict;
-use C4::Acquisitions;
+require Exporter;
+use C4::Context;
+use C4::Output;  # contains gettemplate
+use C4::Search;
+use C4::Auth;
+use C4::Interface::CGI::Output;
+use CGI;
+use C4::Biblio;
 use C4::Output;
+use HTML::Template;
 
 my $input       = new CGI;
 my $bibnum      = checkinp($input->param('biblionumber'));
 my $biblio = {
-    biblionumber => $bibnum,
-    title        => $input->param('title')?$input->param('title'):"",
-    author       => $input->param('author')?$input->param('author'):"",
-    abstract     => $input->param('abstract')?$input->param('abstract'):"",
-    copyright    => $input->param('copyrightdate')?$input->param('copyrightdate'):"",
-    seriestitle  => $input->param('seriestitle')?$input->param('seriestitle'):"",
-    serial       => $input->param('serial')?$input->param('serial'):"",
-    unititle     => $input->param('unititle')?$input->param('unititle'):"",
-    notes        => $input->param('notes')?$input->param('notes'):"",
+       biblionumber => $bibnum,
+       title        => $input->param('title')?$input->param('title'):"",
+       author       => $input->param('author')?$input->param('author'):"",
+       abstract     => $input->param('abstract')?$input->param('abstract'):"",
+       copyrightdate    => $input->param('copyrightdate')?$input->param('copyrightdate'):"",
+       seriestitle  => $input->param('seriestitle')?$input->param('seriestitle'):"",
+       serial       => $input->param('serial')?$input->param('serial'):"",
+       unititle     => $input->param('unititle')?$input->param('unititle'):"",
+       notes        => $input->param('notes')?$input->param('notes'):"",
 }; # my $biblio
 my $subtitle    = checkinp($input->param('subtitle'));
 my $subject     = checkinp($input->param('subject'));
@@ -47,42 +54,48 @@ my @names;
 my $count;
 my $error;
 
-&modbiblio($biblio);
 &modsubtitle($bibnum, $subtitle);
 &modaddauthor($bibnum, $addauthor);
 
 $subject = uc($subject);
-@sub     = split(/\|/, $subject);
+@sub     = split(/\||\n/, $subject);
 $count   = @sub;
 
 for (my $i = 0; $i < $count; $i++) {
-    $sub[$i] =~ s/ +$//;
+       $sub[$i] =~ s/ +$//;
 } # for
 
 $error = &modsubject($bibnum,$force,@sub);
 
+&modbiblio($biblio);
+
 if ($error ne ''){
-    print $input->header;
-    print startpage();
-    print startmenu('catalogue');
-    print $error;
-    my @subs=split('\n',$error);
-    print "<p> Click submit to force the subject";
-    my @names=$input->param;
-    my %data;
-    my $count=@names;
-    for (my $i=0;$i<$count;$i++) {
-       if ($names[$i] ne 'Force') {
-           my $value=$input->param("$names[$i]");
-           $data{$names[$i]}="hidden\t$value\t$i";
-       } # if
-    } # for
-    $data{"Force"}="hidden\t$subs[0]\t$count";
-    print mkform3('updatebiblio.pl',%data);
-    print endmenu();
-    print endpage();
+               my ($template, $loggedinuser, $cookie) = get_template_and_user({
+                       template_name   => "updatebiblio.tmpl",
+                       query           => $input,
+                       type            => "intranet",
+                       flagsrequired   => {catalogue => 1},
+               });
+
+
+       my @subs=split('\n',$error);
+       my @names=$input->param;
+       my $count=@names;
+               my @dataloop;
+       for (my $i=0;$i<$count;$i++) {
+               if ($names[$i] ne 'Force') {
+                       my %line;
+               $line{'value'}=$input->param("$names[$i]");
+                       $line{'name'}=$names[$i];
+                       push(@dataloop, \%line);
+               } # if
+       } # for
+       $template->param(substring =>$subs[0],
+                                               error =>$error,
+                                               dataloop => \@dataloop);
+               print "Content-Type: text/html\n\n", $template->output;
 } else {
-    print $input->redirect("detail.pl?type=intra&bib=$bibnum");
+       print $input->redirect("detail.pl?type=intra&bib=$bibnum");
 } # else
 
 sub checkinp{