X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=tools%2Fmanage-marc-import.pl;h=e7ff78e8b6100d5635df39c26ae75f76c3d088a3;hb=e33e05c46056ff37d08b10e8ad5ce0cb0fd5053e;hp=43fed13c8d30bad556cd5a6c869b356751a103bc;hpb=ae5b76c89b8a61ad82528ea85d1c3673f3318a09;p=koha.git diff --git a/tools/manage-marc-import.pl b/tools/manage-marc-import.pl index 43fed13c8d..e7ff78e8b6 100755 --- a/tools/manage-marc-import.pl +++ b/tools/manage-marc-import.pl @@ -13,9 +13,9 @@ # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # -# You should have received a copy of the GNU General Public License along with -# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, -# Suite 330, Boston, MA 02111-1307 USA +# You should have received a copy of the GNU General Public License along +# with Koha; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. use strict; use warnings; @@ -33,7 +33,8 @@ use C4::Biblio; use C4::ImportBatch; use C4::Matcher; use C4::BackgroundJob; -use C4::Labels qw(add_batch); +use C4::Labels::Batch 1.000000; +use C4::Branch qw(get_branch_code_from_name); my $script_name = "/cgi-bin/koha/tools/manage-marc-import.pl"; @@ -63,7 +64,16 @@ my $dbh = C4::Context->dbh; if ($op eq "create_labels") { #create a batch of labels, then lose $op & $import_batch_id so we get back to import batch list. my $label_batch_id = create_labelbatch_from_importbatch($import_batch_id); - $template->param( label_batch => $label_batch_id ); + if ($label_batch_id == -1) { + $template->param( label_batch_msg => "Error attempting to create label batch. Please ask your system administrator to check the log for more details.", + message_type => 'alert', + ); + } + else { + $template->param( label_batch_msg => "Label batch #$label_batch_id created.", + message_type => 'dialog', + ); + } $op=''; $import_batch_id=''; } @@ -166,9 +176,22 @@ sub redo_matching { sub create_labelbatch_from_importbatch { my ($batch_id) = @_; + my $err = undef; + my $branch_code = get_branch_code_from_name($template->param('LoginBranchname')); + my $batch = C4::Labels::Batch->new(branch_code => $branch_code); my @items = GetItemNumbersFromImportBatch($batch_id); - my $labelbatch = add_batch('labels',\@items); - return $labelbatch; + if (grep{$_ == 0} @items) { + warn sprintf('create_labelbatch_from_importbatch() : Call to C4::ImportBatch::GetItemNumbersFromImportBatch returned no item number(s) from import batch #%s.', $batch_id); + return -1; + } + foreach my $item_number (@items) { + $err = $batch->add_item($item_number); + if ($err == -1) { + warn sprintf('create_labelbatch_from_importbatch() : Error attempting to add item #%s of import batch #%s to label batch.', $item_number, $batch_id); + return -1; + } + } + return $batch->get_attr('batch_id'); } sub import_batches_list {