Commit graph

961 commits

Author SHA1 Message Date
Galen Charlton
da51de184c bug 2926: fix staging import hang
Fixes a hang of the staging import tool when it
attempts to process a MARC21 record that claims
that it's UTF-8 when it is not.  The staging import
will now attempt to fix the character encoding of such
records.

Also added a FIXME to bulkmarcimport.pl, which because
of its use of MARC::Batch will skip over such records -
better than the original hang of the staging import, but
worse than the staging import's new ability to fix such
records.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-06-07 13:17:06 -05:00
Galen Charlton
3f4641bf30 bug 3201: missing090field.pl - skip bad bibs
Patch courtesy of G. Henry <henry@cmi.univ-mrs.fr>

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-06-07 13:17:01 -05:00
Paul Poulain
1e19efadd6 (not new_acq related) smallfix to avoid a die in case of an invalid record
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-28 17:31:28 -05:00
Nahuel ANGELINETTI
bea9939047 (bug #3020) forgotten cronjob
this is the cronjob needed for grace period.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-22 13:46:36 -05:00
Michael Hafen
6c0dbfb86d offline_circ must use SQLite v2 - because Kyles PHP does
The Offline Circ tool by Kyle Hall uses PHP's SQLite, which is SQLite
v2.  Gnope, which Kyle links, ships with libSQLite v2.

Let's not count on libsqlite3 not being installed for perl.  If it is
installed DBD::SQLite will use it, where DBD::SQLite2 will not.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-21 15:26:21 -05:00
Joe Atzberger
84ff3747b8 Script to check for corruption of marcxml, and optionally to attempt fix.
When marcxml cannot be parsed into a MARC::Record object, the biblio is
undisplayable and it obviously breaks many features in Koha.  This script
can test to parse every marcxml, and alert on failures.  Optionally, the
marcxml can be replaced from the marc field.

See extensive perldoc for details.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-12 05:21:11 -05:00
Joe Atzberger
8695b7e84f Prevent fines failure on NULL borrowernumber.
The problem is that we do not ensure that the issues table has valid
borrowernumber in each line.  This is exacerbated by Getoverdues()
returning data sorted BY borrowernumber.  So one NULL borrowernumber
in issues prevented ALL fines from being assessed.  The actual error
from fines.pl cron log is:
  No branchcode argument to new.  Should be C4::Calendar->new(branchcode => $branchcode)
  at /home/user/kohaclone/misc/cronjobs/fines.pl line 98

This patch deals only with getting fines to avoid crashing.  It does
not fix the underlying data integrity problem.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-11 17:43:38 -05:00
861ffc0109 Bugfix 3199 - batchRebuildBiblioTables.pl failed due to missing argument [3.0.x]
Thanks G. Henry

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-08 07:39:59 -05:00
Joe Atzberger
6b120d34a4 Cleanup, pod fix and FIXME's added.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-24 08:26:37 -05:00
Nahuel ANGELINETTI
7ed9ca42d8 Repair the old repairmissingbiblionumbers script
This patch refound all the script which fix all records without any biblionumber.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-18 15:39:24 -05:00
Joe Atzberger
cf81b67a5a Bug 3133 - correct typos
This corrects 3 typographical errors.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-18 14:58:48 -05:00
Joe Atzberger
248e0392e2 Multi-bug fix - SetMarcUnicodeFlag for records coming from Koha
This has bearing on bugs 2905, 2665, 2514 and other "wide character" crashes
related to diacritics and Unicode.  This should help open the door for reliable
input of diacriticals via acquisitions.

MARC21_utf8_flag_fix.pl diagnoses and fixes existing problems with MARC data
affected by the bug.

Adding SetMarcUnicodeFlag to TransformKohaToMarc prevents the bug from corrupting
further data.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-18 09:14:43 -05:00
Joe Atzberger
d0a2d298d9 Tweak perldoc (--help) for leader_fix.pl
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-18 09:12:52 -05:00
Joe Atzberger
15ec6f0997 Script to repair MARC21 leader/09.
Acquisitions process seems to be adding records with incorrect
representation of the MARC encoding in leader/09.  It should be
'a' meaning UTF-8, for all Koha's internalized records, but in
many cases it appears blank (for MARC-8).  This script diagnoses
and repairs the value in the leader, depending on runtime options.

The symptom of this problem is that high-value UNICODE characters
in the record will cause Koha to crash whenever it tries to parse
the MARCXML, giving a "Wide character" fatal.  While we work on
fixing the input, this script will fix the existing data.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-18 09:12:14 -05:00
Joe Atzberger
4e76d3c1bb Bug 3090 - Add perldoc details
This is half of the fix for 3090.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-08 12:30:53 -05:00
Henri-Damien LAURENT
faf7c886f2 3040 : seriestitle mistaken as collection title
If series title was previously taken as collectiontitle
then you should launch
misc/maintenance/UNIMARC_fix_collectiontitle.pl
misc/batchRebuildBiblioTables.pl

[RM note: applies only to UNIMARC users - MARC21
users should not run the batch jobs.]

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-06 09:53:16 -05:00
Joe Atzberger
14be4400d8 Bug 3066 - Overhaul guided reports
execute_query now refactored, returns reliable results, does
zero presentation-layer crap.  Arguments reduced, client scripts
adapted to new API and performance improved.  Text::CSV now used
to generate CSV output, ensuring portability, encoding and accuracy.

Replaced tools/runreport.pl with misc/cronjobs/runreport.pl:
    ~ security fixed
    ~ documentation improved
    ~ TODO: finish sendmail option.

Bug 3077 also fixed.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-03 20:17:55 -05:00
Joe Atzberger
1caa108ef0 runreport.pl and prep work on Guided.pm
The old location of runreport.pl was under tools, leaving it exposed
to web requests.  This is a security flaw since it does NOT check any
Auth and allows the user to request any Saved Report be run.  This is
not a problem under misc/crontab/ and it suggests the more appropriate use.

Guided.pm is not fixed here (see bug 3066), but it is prepared to be fixed
and made compatible with runreport as detailed in the perldoc.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-03 20:14:32 -05:00
J. David Bavousett
a7d1ab0041 Changes to bulkmarcimport.pl
Adds three new switches:

-idmap <filename> - optional output file of
                    map of source record ID numbers
                    to Koha biblionumber
-x                - if idmap is supplied, MARC tag
                    to get source record ID from
-y                - if idmap is supplied, MARC subfield
                    to get source record ID from

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-03 19:18:29 -05:00
Joe Atzberger
9fa7abc255 Improve performance and fault tolerance for sync_items...
Pulled the GetMarcFromKohaField outside the loop, since we only need to
check it once.  Same for $item_sth.  Added safety checks for success of
delete_field and GetMarcItem, with warnings on failure.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-27 19:06:52 -05:00
Galen Charlton
0d590c1e30 bug 3028: remove reservefix.pl cronjob
Removed cronjob, which was written to work around
a bug in 2.2 that no longer applies and is specific
to a single library in any event.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-11 09:12:16 -05:00
Daniel Sweeney
52356dcd30 Fixed a typo that kept branches out of the Advance Notice and Item Due notifications.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-11 08:37:05 -05:00
Joe Atzberger
ccee815f4a Bug 2617: Add strict (and warnings), partial fix.
These are some of the simpler scripts to add strict to.
Corrected perldoc for Bookfund.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-11 08:36:55 -05:00
Joe Atzberger
506363d7bf Remove outmoded (and possibly dangerous) cronjob.
This script is superceded by rebuild_zebra and the sync_items scripts.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-06 14:21:16 -06:00
Henri-Damien LAURENT
911fddab4a merge_authority : Bug fixing
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-06 14:14:34 -06:00
Nahuel ANGELINETTI
aea15bca2a (bug #3011) csv export doesn't fill all the fields
This patch just fix the script which export to csv the overdue, and field the missing fields

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-06 08:00:15 -06:00
Joe Atzberger
b0a1759e92 Bug 2883 - longoverdue cronjob fails to implement required functionality.
This does not fix all problems recorded in 2883 (see all the FIXME's), but
it does improve the script's basic feedback to an intelligible level.
It also adjusts the documentation and examples to correct bogus usage
instructions.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-05 10:30:29 -06:00
Mason James
e9599f973c Fixes command-line 'number' arg in bulkauthimport.pl.
for HEAD and 3.0.x

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-04 10:43:49 -06:00
Brian Harrington
25cd35b3a1 bug 2924 fixed rebuild_zebra.pl to work when export is skipped
reindexing now occurs if there are $num_records_exported or if
$skip_export is set

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-04 08:28:22 -06:00
Galen Charlton
b8d979abe7 minor corrections to check-url.pl
* removed ersataz YAML::XS dependency
* use 'return' instead of 'return undef'
* minor language changes

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-26 15:21:14 -06:00
64505d7118 URLs checker enhancement (bug #2959)
Improve URLs checker script in the way (half way) pointed out by Galen:

- A C4::URL::Checker class handle URL checking. This class is not yet
  in a separate file in C4 directory. This class would be easily
  extended to accomodate authorities URLs checking.
- Script output can now be formatted in CSV or HTML. HTML version
  link directly to MARC biblio record editor.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-26 15:06:22 -06:00
Galen Charlton
66d2e36fa3 bug 2988: apply correct hold policy
Item type was not retrieved in a query, leading to a case
where an item could be selected by build_holds_queue.pl
to fill a hold request even where forbidden by the
library and item type-level policy.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-26 14:14:46 -06:00
Galen Charlton
8f07521a2d bug 2955: fix remaining calls to GetMarcFromKohaField
This includes part of a patch from Henri-Damien Laurent
that could not be applied because Chris and Joe patches
happened to win the race.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-12 16:29:19 -06:00
37c50c6e34 A new script to check URLs in 856$u field
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-12 15:25:14 -06:00
Joe Atzberger
e6f3fb9591 Make sax_parser_print provide more obvious feedback.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-12 14:46:15 -06:00
Galen Charlton
b50051a8e5 holds policies fixes
* use item branch instead of patron's branch to
look up the applicable hold policies - this makes
requesting in the OPAC consistent with the intranet.
* when generating pick list using build_holds_queue.pl, only match items
to patrons if request is allowed.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-09 14:30:41 -06:00
Joe Atzberger
11b90be284 Cleanup and perltidy.
Add "use warnings", remove unused variables and unnecessary finish/disconnect
at the end.  This script could be improved to run only on tables that need to
be altered instead of touching all of them.  It should also probably contain
warnings to the effect that it does not rescue your DATA that was forced into
whatever encoding the table used previously.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-28 17:29:43 -06:00
Joe Atzberger
d2c4ae65ab Obsolete harness for tests, replaced by make and other test structures.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-28 17:15:39 -06:00
a777fb43d7 Fixes bug #2875
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-31 09:47:57 -06:00
Joe Atzberger
26d08662e7 Minor updates to minor cronjob script.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-31 09:47:54 -06:00
Galen Charlton
c7dec5b3df crontab.example - add back some useful comments
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-31 09:45:00 -06:00
Joe Atzberger
07245470f0 Expand crontab.example
Default overdues to "triggered" mode (-t).

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-31 09:30:05 -06:00
Joe Atzberger
5102da0abc Revert "Updates to the example crontab"
This reverts commit def09f5a21.

As I emailed to the patches list Oct 06, 2008:

I suggest we need to revert Josh' commit def09f5a21.

The effect on the crontab example is to invalidate the lines being executed.  The lines were apparently copied in from a cron source, not crontab, despite the header describing it NOT being an example for cron.  It also runs longoverdue twice, instead of fines.pl.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-31 09:30:03 -06:00
62f3f59d8c Fixes bugs #2875-2879
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-29 19:59:44 -06:00
6345ddf493 A script generating keyword clouds from Zebra Indexes
See embedded perldoc to see how it works.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-22 16:41:53 -06:00
Marc Chantreux
01cb36effe fixed "too many opened files" error during translation
The problem was that the TmplTokenizer create global symbols to store file
handlers so the objects aren't destroyed by the garbage collector.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-17 09:00:09 -06:00
Galen Charlton
f74d63a1e5 bug 2864 [2/2]: move rss/* to misc/cronjobs/rss/*
As rss.pl is not a CGI script, moved it to join the
other cronjobs.  Full documentation of the script
is in misc/cronjobs/rss/rss.pl, but to summarize:

[1] rss.pl is run on the command line to produce
    an RSS XML document.  The output should be
    placed in a directory accessible to the OPAC
    (or staff) web interface so that users can download
    the RSS feed.  An example of usage:

    misc/cronjobs/rss.pl lastAcquired.conf

    Normally rss.pl should be run periodically (e.g., daily)
    to keep the feed up-to-date.

[2] The configuration file (e.g., lastAcquired.conf) lists

    * name of the template file to use
    * path of output file
    * SQL query

    rss.pl runs the SQL query, then feeds the output of the
    query through the template to produce the output file.

[3] The template file (e.g., lastAcquired.tmpl) uses
    HTML::Template syntax like any of the HTML
    templates for the web interface.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-17 08:02:34 -06:00
Galen Charlton
ae24c2d16c minor fixes to UNIMARC_sync_date_created_with_marc_biblio.pl
- chmod 0755
- add newline in error message shown if attempting to
  run in MARC21 database

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-11 10:36:57 -06:00
Henri-Damien LAURENT
431a8d1b20 Update MARC to add 099$c and 099$d fields, with :
This allow the acquisition date sorting in UNIMARC.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-11 10:33:56 -06:00
Nahuel Angelinetti
72c35aa328 bug 2827: better language check
This patch use a regexp instead 'eq' to find if french is an opaclanguage.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-11 10:03:54 -06:00