Koha/misc/mod_zebraqueue.pl
Kyle M Hall cd150a23bb Bug 9286 - Add script to add a bib to the zebra queue from the command line
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: No test plan, but works.
Tested adding auth, biblios or both, then rebuilding -z
No errors.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Test Plan

1/ run misc/mod_zebraqueue.pl -a 1
2/ In your koha db
SELECT * FROM zebraqueue WHERE done = 0;
Check that a row for authority record id 1 has been inserted
3/ run misc/mod_zebraqueue.pl -b 1
4/ In your koha db
SELECT * FROM zebraqueue WHERE done = 0;
Check that a row for biblio record id 1 has been inserted
5/ run misc/mod_zebraqueue.pl
Make sure the help is sensible
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-05-28 08:00:15 -07:00

84 lines
2.1 KiB
Perl
Executable file

#!/usr/bin/perl
# Copyright 2012 Kyle M Hall
# This file is part of Koha.
#
# Koha is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
# 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
# script to add records to the zebraqueue from the commandline.
use Modern::Perl;
use Getopt::Long;
use Pod::Usage;
use C4::Biblio;
my @biblios;
my @authorities;
my $help;
my $verbose;
GetOptions(
"b|biblio|biblionumber=s" => \@biblios,
"a|authority|authoritynumber=s" => \@authorities,
'h|?|help' => \$help,
'v|verbose' => \$verbose,
);
pod2usage( -exitval => 0 ) if ( $help || !( @biblios || @authorities ) );
foreach my $biblionumber (@biblios) {
print "Adding bibliographic record $biblionumber to Zebra queue\n" if ($verbose);
ModZebra( $biblionumber, "specialUpdate", "biblioserver" );
}
foreach my $authority (@authorities) {
print "Adding authority record $authority to Zebra queue\n" if ($verbose);
ModZebra( $authority, 'specialUpdate', "authorityserver" );
}
__END__
=head1 NAME
mod_zebraqueue.pl - Mark bibliographic and/or authority records for updating via the zebraqueue.
=head1 SYNOPSIS
mod_zebraqueue.pl -v -b $bib1 -b $bib2 -a $authority1 -a $authority2
=head1 OPTIONS
=over 8
=item B<-b, --biblio, --biblionumber>
The biblionumber of a record to be updated, repeatable.
=item B<-a, --authority, --authoritynumber>
The authoritynumber of the record to be updated, repeatable.
=item B<-h, -?, --help>
Prints this help message and exits.
=item B<-v, --verbose>
Be verbose
=back
=cut