koha-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Koha-cvs] CVS: koha/acqui.simple addbiblio.pl,1.48,1.49


From: Paul POULAIN
Subject: [Koha-cvs] CVS: koha/acqui.simple addbiblio.pl,1.48,1.49
Date: Tue, 02 Nov 2004 08:44:48 -0800

Update of /cvsroot/koha/koha/acqui.simple
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8389/acqui.simple

Modified Files:
        addbiblio.pl 
Log Message:
new feature : checking for duplicate biblio.

For instance, it's only done on ISBN only. Will be improved soon.

When a duplicate is detected, the biblio is not saved, but the user is asked 
for a confirmations.

Index: addbiblio.pl
===================================================================
RCS file: /cvsroot/koha/koha/acqui.simple/addbiblio.pl,v
retrieving revision 1.48
retrieving revision 1.49
diff -C2 -r1.48 -r1.49
*** addbiblio.pl        4 Oct 2004 20:02:36 -0000       1.48
--- addbiblio.pl        2 Nov 2004 16:44:45 -0000       1.49
***************
*** 382,396 ****
        }
        my $record = 
MARChtml2marc($dbh,address@hidden,address@hidden,address@hidden,%indicators);
! # MARC::Record built => now, record in DB
!       my $oldbibnum;
!       my $oldbibitemnum;
!       if ($is_a_modif) {
!                NEWmodbiblio($dbh,$record,$bibid,$frameworkcode);
        } else {
!               ($bibid,$oldbibnum,$oldbibitemnum) = 
NEWnewbiblio($dbh,$record,$frameworkcode);
        }
- # now, redirect to additem page
-       print 
$input->redirect("additem.pl?bibid=$bibid&frameworkcode=$frameworkcode");
-       exit;
  
#------------------------------------------------------------------------------------------------------------------------------
  } elsif ($op eq "addfield") {
--- 382,418 ----
        }
        my $record = 
MARChtml2marc($dbh,address@hidden,address@hidden,address@hidden,%indicators);
!       # check for a duplicate
!       my ($duplicatebiblionumber,$duplicatebibid,$duplicatetitle) = 
FindDuplicate($record) if ($op eq "addbiblio") && (!$is_a_modif);
!       my $confirm_not_duplicate = $input->param('confirm_not_duplicate');
!       # it is not a duplicate (determined either by Koha itself or by user 
checking it's not a duplicate)
!       if (!$duplicatebiblionumber or $confirm_not_duplicate) {
!               # MARC::Record built => now, record in DB
!               my $oldbibnum;
!               my $oldbibitemnum;
!               if ($is_a_modif) {
!                       NEWmodbiblio($dbh,$record,$bibid,$frameworkcode);
!               } else {
!                       ($bibid,$oldbibnum,$oldbibitemnum) = 
NEWnewbiblio($dbh,$record,$frameworkcode);
!               }
!       # now, redirect to additem page
!               print 
$input->redirect("additem.pl?bibid=$bibid&frameworkcode=$frameworkcode");
!               exit;
        } else {
!       # it may be a duplicate, warn the user and do nothing
!               build_tabs ($template, $record, $dbh,$encoding);
!               build_hidden_data;
!               $template->param(
!                       oldbiblionumber             => $oldbiblionumber,
!                       bibid                       => $bibid,
!                       oldbiblionumtagfield        => $oldbiblionumtagfield,
!                       oldbiblionumtagsubfield     => $oldbiblionumtagsubfield,
!                       oldbiblioitemnumtagfield    => 
$oldbiblioitemnumtagfield,
!                       oldbiblioitemnumtagsubfield => 
$oldbiblioitemnumtagsubfield,
!                       oldbiblioitemnumber         => $oldbiblioitemnumber,
!                       duplicatebiblionumber           => 
$duplicatebiblionumber,
!                       duplicatebibid                          => 
$duplicatebibid,
!                       duplicatetitle                          => 
$duplicatetitle,
!                        );
        }
  
#------------------------------------------------------------------------------------------------------------------------------
  } elsif ($op eq "addfield") {
***************
*** 420,424 ****
                last if ($end>0 && $tags[$i] ne $addedfield);
        }
-       warn "ST : $addedfield => $start / $end";
        # add an empty line in all arrays. This forces a new field in 
MARC::Record.
        splice(@tags,$end+1,0,'');
--- 442,445 ----
***************
*** 439,443 ****
        }
        my $record = 
MARChtml2marc($dbh,address@hidden,address@hidden,address@hidden,%indicators);
-       warn "R=>".$record->as_formatted;
        build_tabs ($template, $record, $dbh,$encoding);
        build_hidden_data;
--- 460,463 ----
***************
*** 468,472 ****
                oldbiblioitemnumtagfield    => $oldbiblioitemnumtagfield,
                oldbiblioitemnumtagsubfield => $oldbiblioitemnumtagsubfield,
!               oldbiblioitemnumber         => $oldbiblioitemnumber );
  }
  $template->param(
--- 488,493 ----
                oldbiblioitemnumtagfield    => $oldbiblioitemnumtagfield,
                oldbiblioitemnumtagsubfield => $oldbiblioitemnumtagsubfield,
!               oldbiblioitemnumber         => $oldbiblioitemnumber,
!               );
  }
  $template->param(




reply via email to

[Prev in Thread] Current Thread [Next in Thread]