Commit graph

180 commits

Author SHA1 Message Date
Galen Charlton
3d2f7253ea bug 2317: avoid crash when auto-creating authority
If BiblioAddsAuthorities is ON, saving a MARC bib record
in the cataloging editor can create new authority records.
When using MARC21, if one of those authority records
has diacritics in its heading, the save crashes with the
following error:

Wide character in null operation at
/usr/local/share/perl/5.8.8/MARC/Charset/Table.pm line 96

To prevent this, new MARC21 authorities created by
BiblioAddsAuthorities have the Leader/09 set to 'a'.  Note
that this is not currently required for UNIMARC authorities,
as MARC::File::XML->as_xml_record() does not attempt
to transcode UNIMARC records from MARC-8 to UTF-8.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-08-06 07:08:36 -05:00
Jesse Weaver
ac0d340bd5 kohabug 2345: bad comparisons pervade reports
This patch changes all $foo eq undef's to !defined($foo). It also makes misc/spellcheck_suggest/build_spellcheck_suggest.pl have proper syntax.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-27 06:11:08 -05:00
Joshua Ferraro
6cc8b7ce10 If the authorized value description doesn't exist, display the value 2008-07-25 10:08:31 -05:00
Joshua Ferraro
0bb46e1d57 Fix for bug 2398: Source of Classification - Add item or Edit item in
staff client is defaulting to the ASNCR code instead of the blank above

For some reason the loop used to build the list of values was
setting the first value to the $value variable if $value wasn't
set already, and the default_value was inside rather than outside
the loop. I've removed the setting inside the loop and placed
the default value outide the loop. It's possible I just don't
understand what the original intention was.
2008-07-24 16:23:33 -05:00
Chris Nighswonger
8f55696a4d kohabug 2374 Corrects autoBarcode behavior in additem.pl
There should be a documenation change at least for 3.0 to the effect that on systems
not running JavaScript, 'incremental' is the only option available for autoBarcode
although other options appear. A fix for this will hopefully appear in 3.2.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-22 15:50:30 -05:00
Joshua Ferraro
82076c3d39 Fix a bug where the 008 field got replaced if you
inadvertantly clicked in the field and it wasn't empty.
This patch prevents the field from being replaced unless
it's empty.
2008-07-21 19:38:52 -05:00
Joshua Ferraro
bc408475f8 This patch resolves a few MARC21 Framework issues for
a default installation:

1. Re-names several of the item fields to make more sense to catalogers and patrons
2. Remove links Non-public note from items.paidfor
3. Changes Non-public note to be hidden in the OPAC view

Fixes issues with the 'hidden' field in the framework, specifically:

1. the editor obeys the rules of possible values for hidden (>4, or <-4)
2. the OPAC MARC display obeys the rules of positive values meaning 'hidden in OPAC'
3. the staff MARC display now obeys the rules specified in the hidden values description
2008-07-18 17:39:08 -05:00
Andrew Moore
b14eb8f093 bug 1980 [3/3]: remove bug workaround from pagination links
yesterday, the C4::Output::pagination_bar had a bug in it that I was crudely working around.
atz fixed that bug this morning. This patch removes the workaround. Thanks, atz!

I'm sending along atz's patch again with my signoff. It needs to be applied before this, as does the
other 1980 patch. I have sent that along (again), too, with a modified subject line. That makes a total of 3 patches for 1980.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-10 09:18:30 -05:00
Andrew Moore
66c420c3d0 bug 1980: updateing calls to SimpleSearch to limit number of things returned
C4::Search::SimpleSearch was alredy patched to let you pass in the number of results you want back.
These instances were not using the new API. This patch makes all calls to SimpleSearch specify a limit.

I improved the documentation of SimpleSearch a bit to include the third returned value.

I believe there's a bug in C4::Output::pagination_bar, in that it doesn't deal well with URLs
with only one pair of parameter=value passed to it. I'm getting around this by passing in a second
pair that does nothing.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-10 09:11:24 -05:00
MJ Ray
500b7ee4d6 Improve Z39.50 result checking and display a little:
1. Replaces display hostname with servername as shown on the selection screen.
2. If the record download errors, try to display the error.
3. A more useful warning if $DEBUG is set.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-08 18:21:43 -05:00
Joshua Ferraro
1e45b14714 Prior to this patch, XSL and scan indexes conflicted.
This patch resolves the issue by passing $scan to the
searchResults function to toggle XSL for scan results
2008-07-08 15:59:09 -05:00
Galen Charlton
c48da8131d bug 1909: add delete field/subfield button to MARC editor
A button to delete (non-mandatory) subfields and fields
is added to the bib and authority MARC editors.  This button,
which displays as a hypen or minus sign after the plus sign
to clone a field, acts as follows:

[1] When deleting a whole MARC field, if at least
    one other repeat of that field exists, deletes
    the field from the editor page.  If the field
    to be deleted is the last instance of that tag,
    the contents of the field are cleared, not removed.
    This allows one to delete all 650 tags, then
    add a new one without having to reload the
    record in the editor.

[2] When deleting a subfield, if at least one other
    repeat of that subfield and its tag occurs
    *anywhere else in the record, not necessarily in the same tag*,
    deletes the subfield.
    Otherwise, if the subfield is the last occurrence
    of that tag/subfield combination, clears the input
    form instead.

Documentation note: new screenshots for MARC editor, plus
description of the '-' button.

Credit to MJ Ray for introducing the '-' button
and the UnCloneField JavaScript function.

Signed-off-by: Andrew Moore <andrew.moore@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-08 12:31:30 -05:00
Galen Charlton
9035991112 bug 2203 [1/2]: increase input maxlength in MARC editor
The maximum length allowed for input into a subfield in
the MARC editor has been increased to 9999 charaacters
(from 255), permitting data entry of a field that meets
the maximum MARC field limit of 9999 octets.

Also set the maximum length for the leader form input
to 24 characters and the length for the MARC21 008
to 40 characters.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-08 09:36:13 -05:00
Paul POULAIN
4652b4dbc6 BUGFIX : unimarc leader is 24, not 25. Fixing the javascript test
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-04 09:27:46 -05:00
Galen Charlton
98f638bb14 bug 2254 [1/3]: fixed GetAuthType(); avoid crash
Improved C4::AuthoritiesMarc::GetAuthType() so that
it returns either a hashref (if the authority type exists)
or undef (if it does not exist).  The same
accessor should not be used to either return a single
value or all values of a settings list.  Note that
all existing clients of GetAuthType are expecting
either a single hashref or undef; none of them
expected the arrayref that could be returned by
the previous version of the accessor.

When BiblioAddsAuthorities is ON, addbiblio.pl
now checks the return value of GetAuthType and
no longer crashes as follows if the MARC framework
specifies an invalid authority type for a given subfield:

Can't coerce array into hash at .../cataloging/addbiblio.pl line 738.

No documentation changes.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-25 11:39:24 -05:00
Galen Charlton
8894d28779 bug 2206: always have $9 for headings fields
If a field can be linked to an authority record (i.e.,
an authtypecode is defined for subfield $a), always
include the subfield $9 in a (readonly) input element even
if it is marked hidden per the MARC framework.

Prior to this patch, a $9 marked hidden per the framework
would not be included in the form, causing the authority record
number link to not be added when choosing a heading from the authority
finder.  In other words, with BiblioAddsAuthorities OFF,
any authorized headings in bibs added via the MARC editor
would not have the subfield $9, and thus would appear
to not be used by any bibs.

Note that subfield $9 is set to be readonly, as changing the
authority number link does not currently change the
heading stored in the bib record.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-25 11:39:23 -05:00
Galen Charlton
ee49d6d372 kohabug 2207 - improve indicator input in MARC editor
Instead of having one input field for both indicators
of a variable field, the bib and authority MARC editor
now has an input field for each indicator.  This has
two main advantages:

* it is easier to tell what the indicator values are,
  even when the first indicator is a space
* it is easier to set the first indicator to blank
  and the second indicator to non-blank.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-12 11:17:35 -05:00
Henri-Damien LAURENT
6f45077848 Adding search on ISSN for z3950_search.pl
seems that search on ISSN was not taken into account adding @or @attr 1=8

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-30 13:52:14 -05:00
Galen Charlton
a7ba1bb941 kohabug 2105: prevent crash on IE7
Three scripts were incorrect setting the HTTP type
header to 'utf-8' instead of something appropriate
like 'text/html' - Firefox evidentally can ignore that
mistake, but IE7 does not.

Fixed by replacing an invalid print of the HTTP header
and template output with a call to
C4::Output::output_html_with_http_headers.

Also corrected POD in C4::Auth and InstallAuth to
reflect correct use of output_html_with_http_headers.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-13 17:40:36 -05:00
Galen Charlton
49bccd5308 XHTML correction - readonly attribute can contain only "readonly"
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-21 11:17:32 -05:00
Henri-Damien LAURENT
79d6243333 Bug Fix : Blocker 2017
disabled values are not passed to CGI.
So that if you disable entry, values and subfield codes are mixed up.
I changed disabled=tru to readonly and it fixes the bug.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-17 05:52:55 -05:00
Chris Nighswonger
9b47b82a77 Porting SimpleSearch return changes to all code calling it.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-17 05:52:45 -05:00
Paul POULAIN
91fca4a9ab BiblioAddsAuthorities improvement/fix
this commit restore a better behaviour :
- if ON : the librarian can enter manually an authority-linked marc field. and if it does not exist in the authorities file, it will be created automatically
- if OFF : the authority must exist in the authority file, and the librarian can't enter if manually in the MARC editor

This patch just deals with the OFF case (the ON was already here). With OFF the behaviour is now the same as in 2.2

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-10 02:55:08 -05:00
Andrew Moore
5c51edc653 bug 1890: fixing calls to C4::Search::SimpleSearch
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-01 06:44:23 -05:00
Ryan Higgins
d878a92b3d Add MARC preview to Z39.50 search.
Also, add title string to MARC editor.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-17 19:25:51 -05:00
Ryan Higgins
d032a81cb7 Add z39.50 search form distinct from MARC editor
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-17 19:25:48 -05:00
Galen Charlton
9222f7a6ca created old_issues and old_reserves tables
The new tables have the same structure and constraints
as the tables they archive with the following exceptions:

* borrowernumber and biblionumber in old_reserves can be
  NULL
* the FK constraints (e.g., for itemnumber) on old_reserves
  set the child column to NULL if the parent row is deleted
  instead of deleting the child row.
* there is no FK constraint on old_issues.branchcode, allowing
  a branch to be deleted without changing archived requests.

Some miscellaneous cleanup was done as part of this patch:

* GetMemberIssuesAndFines (C4::Members) now uses bind variables
* fixed POD for GetMemberIssuesAndFines

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-15 08:36:31 -05:00
Galen Charlton
86e4cdf54b use 'F' or 'W', not 'f' or 'w' when using reserves.found
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-15 08:36:24 -05:00
Galen Charlton
eec7b58efa bug 1893: add jump link to reservoir search results
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-27 09:02:52 -06:00
Chris Nighswonger
ff026f1076 Adding another barcode autogeneration sequence to barcode.pl - bumped ver to 054
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-16 11:29:13 -06:00
Galen Charlton
6412604238 fix XHTML validation errors in addbiblio.pl
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-11 16:35:23 -06:00
Chris Nighswonger
cd45f7b4c0 Changed behavior of barcode.pl plugin to generate barcode onClick of the ... button
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-11 06:02:40 -06:00
Galen Charlton
60a98d258a IMPORTANT - refactor MARC character set handling
* IsStringUTF8ish - determine if scalar contains a string in UTF8
* MarcToUTF8Record - convert MARC blob or MARC::Record to UTF8
* SetMarcUnicodeFlag - set appropriate MARC21 or UNIMARC field to
  indicate that record is in UTF-8.

Design points of this module include:

* No dependencies on other C4 modules, making it easier to add
  more test cases
* All character conversion code in one place
* Single entry point for doing a character conversion on a
  MARC record
* Capture of errors and warnings produced by Text::Iconv
  and MARC::Charset
* Start of support for guessing the source character set of
  a MARC record.

Several functions were moved from other scripts
or modules to C4::Charset:

* C4::Koha->FixEncoding (expanded and renamed
  MarcToUTF8Record)
* C4::Koha->char_decode5426
* fMARC8ToUTF8 from bulkmarcimport.pl (renamed
  _marc_marc8_to_utf8)

Several batch jobs were adjusted to use MarcToUTF8Record instead of
FixEncoding.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-03 07:23:56 -06:00
Henri-Damien LAURENT
1978babc9f Bug Fixing : Encoding in Z3950 searches
encoding is now defaulted to MARC8
encoding is now supported for USMARC and UNIMARC flavours.
Adding Encoding field to updatedatabase.pl

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-23 21:31:07 -06:00
Chris Cormack
513990edd1 Fix for bug 1560
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-23 21:30:59 -06:00
Henri-Damien LAURENT
0001764f34 Displaying AuthorisedValues for items linked with authorised_value lists.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-15 15:33:05 -06:00
Henri-Damien LAURENT
80683fad47 adding encoding management to z3950
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 19:23:00 -06:00
Chris Cormack
97034354ce Switching debug back off ... whoops
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 16:13:22 -06:00
Chris Cormack
7da7c2f63c Changing z3950 search in cataloguing to use the name rather than the host
when listing z3950 servers to search

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 16:13:00 -06:00
Galen Charlton
8c60e82605 fixed variable masking warnings found by perl -w
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 20:23:59 -06:00
Galen Charlton
7ed543b8a7 item rework: moved GetMarcItem
Moved this function from an exported function in
C4::Biblio to a public but unexported function
in C4::Items.  Added comment noting that this
is used only by additem.pl.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:56 -06:00
Galen Charlton
c6c8e80a73 start of BIB change -- introduce C4::Items
Introduced C4::Items module to separate items API
from biblio API.  Details on changes will be
put in later commit messages.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:12 -06:00
Chris Cormack
e02347ec23 Fix for bug 1319, can no longer delete an item with a waiting reserve on it
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 16:59:05 -06:00
Joshua Ferraro
dd50153f00 moving some files and deleting cataloguing/updateitem.pl, the _real_ updateitem.pl is in catalogue/
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 12:09:52 -06:00
Galen Charlton
02f7b83406 MARC21 authorities: fixed 008 value builder
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-29 06:53:50 -06:00
Galen Charlton
b733a5baa8 MARC21 authorities: fixed leader value builder
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-29 06:53:46 -06:00
Galen Charlton
2175ab7b7e cataloging plugins: enable access from authorities
Allow plugins to be be launched from authorities
editor as well as bib editor, without duplicating
plugin_launcher.pl.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-29 06:53:44 -06:00
Ryan Higgins
74a76e539d Fix fatal error on authority search when biblioaddauthority syspref is set.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 12:42:01 -06:00
Joshua Ferraro
da8a4ca991 BIG COMMIT: minimal fix to authorities search
This is a minimal fix -- pname authorities work propertly, but nothing
else has been tested yet

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 20:23:16 -06:00
Paul POULAIN
713940d920 BiblioAddAuthorities : adding "" in search term, in case there is a ()
+ improving some tests
+ removing some comments

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-13 18:25:50 -06:00