Commit graph

15751 commits

Author SHA1 Message Date
Jared Camins-Esakov
5207699f98 signed off Bug 7284: Authority matching improvements
Squashed patch incorporating all previous patches (there is no functional
change compared to the previous version of this patch, this patch merely
squashes the original patch and follow-up, and rebases on latest master).

=== TL;DR VERSION ===
*** Installation ***
1. Run installer/data/mysql/atomicupdate/bug_7284_authority_linking_pt1
and installer/data/mysql/atomicupdate/bug_7284_authority_linking_pt2
2. Make sure you copy the following files from kohaclone to koha-dev:
etc/zeradb/authorities/etc/bib1.att,
etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml,
etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl,
etc/zebradb/marc_defs/marc21/authorities/koha-indexdefs-to-zebra.xsl, and
etc/zebradb/marc_defs/unimarc/authorities/record.abs
3. Run misc/migration_tools/rebuild_zebra.pl -a -r

*** New sysprefs ***
* AutoCreateAuthorities
* CatalogModuleRelink
* LinkerModule
* LinkerOptions
* LinkerRelink
* LinkerKeepStale

*** Important notes ***
You must have rebuild_zebra processing the zebraqueue for bibs when testing this
patch.

=== DESCRIPTION ===

*** Cataloging module ***
* Added an additional box to the authority finder plugin for "Heading match,"
  which consults not just the main entry but also See-from and See-also-from
  headings.

* With this patch, the automatic authority linking will actually work properly
  in the cataloging module. As Owen pointed out while testing the patch,
  though, longtime users of Koha will not be expecting that. In keeping with
  the principles of least surprise and maximum configurability, a new syspref,
  CatalogModuleRelink makes it possible to disable authority relinking in the
  cataloging module only (i.e. leaving it enabled for future runs of
  link_bibs_to_authorities.pl).  Note that though the default behavior matches
  the current behavior of Koha, it does not match the intended behavior.
  Libraries that want the intended behavior rather than the current behavior
  will need to adjust the CatalogModuleRelink syspref.

*** misc/link_bibs_to_authorities.pl ***
Added the following options to the misc/link_bibs_to_authorities.pl script:
--auth-limit        Only process those headings that match the authorities
                    matching the user-specified WHERE clause.
--bib-limit         Only process those bib records that match the
                    user-specified WHERE clause.
--commit            Commit the results to the database after every N records
                    are processed.
--link-report       Display a report of all the headings that were processed.

Converted misc/link_bibs_to_authorities.pl to use POD.

Added a detailed report of headings that linked, did not link, and linked
in a "fuzzy" fashion (the exact semantics of fuzzy are up to the individual
linker modules) during the run.

*** C4::Linker ***
Implemented new C4::Linker functionality to make it possible to easily add
custom authority linker algorithms. Currently available linker options are:
* Default: retains the current behavior of only creating links when there is
  an exact match to one and only one authority record; if the 'broader_headings'
  option is enabled, it will try to link to headings to authority records for
  broader headings by removing subfields from the end of the heading (NOTE:
  test the results before enabling broader_headings in a production system
  because its usefulness is very much dependent on individual sites' authority
  files)
* First Match: based on Default, creates a link to the *first* authority
  record that matches a given heading, even if there is more than one
  authority record that matches
* Last Match: based on Default, creates a link to the *last* authority
  record that matches a given heading, even if there is more than one record
  that matches

The API for linker modules is very simple. All modules should implement the
following two functions:
<get_link ($field)> - return the authid for the authority that should be
linked to the provided MARC::Field object, and a boolean to indicate whether
the match is "fuzzy" (the semantics of "fuzzy" are up to the individual plugin).
In order to handle authority limits, get_link should always end with:
    return $self->SUPER::_handle_auth_limit($authid), $fuzzy;

<flip_heading ($field)> - return a MARC::Field object with the heading flipped
to the preferred form. At present this routine is not used, and can be a stub.

Made the linking functionality use the SearchAuthorities in C4::AuthoritiesMarc
rather than SimpleSearch in C4::Search. Once C4::Search has been refactored,
SearchAuthorities should be rewritten to simply call into C4::Search. However,
at this time C4::Search cannot handle authority searching. Also fixed numerous
performance issues in SearchAuthorities and the Linker script:
* Correctly destroy ZOOM recordsets in SearchAuthorities when finished. If left
  undestroyed, efficiency appears to approach O(log n^n)
* Add an optional $skipmetadata flag to SearchAuthorities that can be used to
  avoid additional calls into Zebra when all that is wanted are authority
  records and not statistics about their use

*** New sysprefs ***
* AutoCreateAuthorities - When this and BiblioAddsAuthorities are both turned
  on, automatically create authority records for headings that don't have
  any authority link when cataloging. When BiblioAddsAuthorities is on and
  AutoCreateAuthorities is turned off, do not automatically generate authority
  records, but allow the user to enter headings that don't match an existing
  authority. When BiblioAddsAuthorities is off, this has no effect.
* CatalogModuleRelink - when turned on, the automatic linker will relink
  headings when a record is saved in the cataloging module when LinkerRelink
  is turned on, even if the headings were manually linked to a different
  authority by the cataloger. When turned off (the default), the automatic
  linker will not relink any headings that have already been linked when a
  record is saved.
* LinkerModule - Chooses which linker module to use for matching headings
  (current options are as described above in the section on linker options:
  "Default," "FirstMatch," and "LastMatch")
* LinkerOptions - A pipe-separated list of options to set for the authority
  linker (at the moment, the only option available is "broader_headings," which
  is described below)
* LinkerRelink - When turned on, the linker will confirm the links for headings
  that have previously been linked to an authority record when it runs. When
  turned off, any heading with an existing link will be ignored.
* LinkerKeepStale - When turned on, the linker will never *delete* a link to an
  authority record, though, depending on the value of LinkerRelink, it may
  change the link.

*** Other changes ***
* Cleaned up authorities code by removing unused functions and adding
  unimplemented functions and added some unit tests.

* This patch also modifies the authority indexing to remove trailing punctuation
  from Match indexes.

* Replace the old BiblioAddAuthorities subroutines with calls into the new
  C4::Linker routines.

* Add a simple implementation for C4::Heading::UNIMARC. (With thanks to F.
  Demians, 2011.01.09) Correct C4::Heading::UNIMARC class loading. Create
  biblio tag to authority types data structure at initialization rather than
  querying DB.

* Ran perltidy on all changed code.

*** Linker Options ***
Enter "broader_headings" in LinkerOptions. With this option, the linker will
try to match the following heading as follows:
=600  10$aCamins-Esakov, Jared$xCoin collections$vCatalogs$vEarly works to
1800.

First: Camins-Esakov, Jared--Coin collections--Catalogs--Early works to 1800
Next: Camins-Esakov, Jared--Coin collections--Catalogs
Next: Camins-Esakov, Jared--Coin collections
Next: Camins-Esakov, Jared (matches! if a previous attempt had matched, it
would not have tried this)

This is probably relevant only to MARC21 and LCSH, but could potentially be of
great use to libraries that make heavy use of floating subdivisions.

=== TESTING PLAN ===

Note: all of these tests require that you have some authority records,
preferably for headings that actually appear in your bibliographic data. At
least one authority record must contain a "see from" reference (remember which
one contains this, as you'll need it for some of the tests). The number shown
in the "Used in" column in the authority module is populated using Zebra
searches of the bibliographic database, so you *must* have
rebuild_zebra.pl -b -z [-x] running in cron, or manually run it after running
the linker.

*** Testing the Heading match in the cataloging plugin ***
1.  Create a new record, and open the cataloging plugin for an
    authority-controlled field.
2.  Search for an authority by entering the "see from" term in the Heading Match
    box
3.  Confirm that the appropriate heading shows up
4.  Search for an authority by entering the preferred heading into the Main
    entry or Main entry ($a only) box (i.e., repeat the procedure you usually
    use for cataloging, whatever that may be)
5.  Confirm that the appropriate heading shows up

*** Testing the cataloging interface ***
6.  Turn off BiblioAddsAuthorities
7.  Confirm that you cannot enter text directly in an authority-controlled field
8.  Confirm that if you search for a heading using the authority control plugin
    the heading is inserted (note, however, that this patch does not AND IS NOT
    INTENDED TO fix the bugs in the authority plugin with duplicate subfields;
    those are wholly out of scope- this check is for regressions)
9.  Turn on BiblioAddsAuthorities and AutoCreateAuthorities
10. Confirm that you can enter text directly into an authority-controlled field,
    and if you enter a heading that doesn't currently have an authority record,
    an authority record stub is automatically created, and the heading you
    entered linked
11. Confirm that if you enter a heading with only a subfield $a that fully
    *matches* an existing heading (i.e. the existing heading has only
    subfield $a populated), the authid for that heading is inserted into
    subfield $9
12. Confirm that if you enter a heading with multiple subfields that *matches*
    an existing heading, the authid for that heading is inserted into
    subfield $9
13. Turn on BiblioAddsAuthorities and turn off AutoCreateAuthorities
14. Confirm that you can enter text directly into an authority-controlled field,
    and if you enter a heading that doesn't currently have an authority record,
    an authority record stub is *not* created
15. Confirm that if you enter a heading with only a subfield $a that *matches*
    an existing heading, the authid for that heading is inserted into
    subfield $9
16. Confirm that if you enter a heading with multiple subfields that *matches*
    an existing heading, the authid for that heading is inserted into
    subfield $9
17. Create a record and link an authority record to an authorized field using
    the authority plugin.
18. Save the record. Ensure that the heading is linked to the appropriate
    authority.
19. Open the record. Change the heading manually to something else, leaving
    the link. Save the record.
20. Ensure that the heading remains linked to that same authority.
21. Change CatalogModuleRelink to "on."
22. Open the record. Use the authority plugin to link that heading to the
    same authority record you did earlier.
23. Save the record. Ensure that the heading is linked to the appropriate
    authority.
24. Open the record. Change the heading manually to something else, leaving
    the link. Save the record.
25. Ensure that the heading is no longer linked to the old authority record.

*** Testing link_bibs_to_authorities.pl ***
26. Set LinkerModule to "Default," turn on LinkerRelink and
    BiblioAddsAuthorities, and turn AutoCreateAuthorities and
    LinkerKeepStale off
27. Edit one bib record so that an authority controlled field that has already
    been linked (i.e. has data in $9) has a heading that does not match any
    authority record in your database
28. Run misc/link_bibs_to_authorities.pl --link-report --verbose --test (you may
    want to pipe the output into less or a file, as the result is quite a lot of
    information)
29. Look over the report to see if the headings that you have authority records
    for report being matched, that the heading you modified in step 2 is
    reported as "unlinked," and confirm that no changes were actually made to
    the database (to check this, look at the bib record you edited earlier, and
    check that the authid in the field you edited hasn't changed)
30. Run misc/link_bibs_to_authorities.pl --link-report --verbose (you may want
    to pipe the output into less or a file, as the result is quite a lot of
    information)
31. Check that the heading you modified has been unlinked
32. Change the modified heading back to whatever it was, but don't use the
    authority control plugin to populate $9
33. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
34. Confirm that the heading has been linked to the correct authority record
35. Turn LinkerKeepStale on
36. Change that heading to something else
37. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
38. Confirm that the $9 has not changed
39. Turn LinkerKeepStale off
40. Create two authorities with the same heading
41. Run misc/migration_tools/rebuild_zebra.pl -a -z
42. Enter that heading into the bibliographic record you are working with
43. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
44. Confirm that the heading has not been linked
45. Change LinkerModule to "FirstMatch"
46. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
47. Confirm that the heading has been linked to the first authority record it
    matches
48. Change LinkerModule to "LastMatch"
49. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
50. Confirm that the heading has been linked to the second authority record it
    matches
51. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --auth-limit="authid=${AUTH}" (replacing ${AUTH} with an authid)
52. Confirm that only that heading is displayed in the report, and only those
    bibs with that heading have been changed

If all those things worked, good news! You're ready to sign off on the patch
for bug 7284.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Rebased on latest master and squashed follow-up, 16 February 2012
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Rebased on latest master, 21 February 2012

Signed-off-by: schuster <dschust1@gmail.com>
2012-03-07 17:34:11 +01:00
Paul Poulain
e96efd6afa Bug 3516 follow-up - DBRev number 2012-03-07 17:30:49 +01:00
23b486ab7a Bug 3516 [FOLLOW-UP] Display picture of patrons in OPAC
This patch moves inline CSS to opac.css following QA comments.
Doing so improves users ability to customize the affected
markup with custom CSS.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-05 17:20:01 +01:00
b5e27d047c Bug 3516 [REVISED] Display picture of patrons in OPAC
This patch adapts the patron image display script from the
self-checkout module to optionally display the image of the
logged-in user on their personal information page (opac-userupdate.pl).
The script changes the method choosing which image to display
from using a passed cardnumber to using the borrowernumber of
the logged-in user.

A system preference is added, OPACpatronimages, to control
whether these images are displayed.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Verified that patron image shows only when system preference is turned on
and that there are no display problems for patrons without patron image.
2012-03-05 17:12:16 +01:00
Paul Poulain
5716b69d16 bug 5503 follow-up DBrev number + added "upgrade to $DBversion" string 2012-03-02 18:37:41 +01:00
30950a420b Bug 5503 [REVISED] comments shouldn't show patron's full name
Adding a few choices for what information can be displayed
alongside comments in the OPAC:

- nothing
- full name
- first name
- last name
- first name and last name first initial
- username

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested by choosing each choice and previewing an individual title
with a comment and confirming the name was displayed properly. Then
choosing each option and prevewing the recent comments page.

All tests passed.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Ran all tests again and it works as explained.
2012-03-02 18:32:38 +01:00
3ab28d4e53 Bug 4912 [REVISED] After editing private list, user should be redirect to private lists
As far as I can tell there isn't a redirect in the code which is
triggered in the wake of a ModShelf() action. This patch adds a
redirect which is reflects the context of the original "edit" link.

To test, edit the details of a list in the OPAC from:

- the list of private lists
- the list of public lists
- the contents view of public or private list

After each of these actions you should be redirected back to
the page where you clicked the "edit" link.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-02 18:27:24 +01:00
Paul Poulain
69d952335e Bug 5877 DBrev numbering 2012-03-02 18:05:38 +01:00
Paul Poulain
2cff5e7642 Bug 5877 QA follow-up
* removing tabs as indenter
* adding fieldnames in INSERT clause
* updating FSF address
* removing ` in SQL table creation (mysql-ism)
* use strict & use warning added & no error in logs checked

Note that process_koc.pl and updatedatabase are not related to this bug, but the FSF address was wrong, I fixed it as well
2012-03-02 17:53:00 +01:00
a947ef57f8 Bug 5877 Follow-up for Offline circulation improvements
Internationalization fix: Offline circulation operations in
Circulation.pm return English strings for display in the
template. These strings can't be translated, so we must check
their values in the JavaScript and return a translatable
string based on their values.

Interface change: Switching to text links for checking/unchecking
checkboxes since that is more consistent with other areas in
Koha.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-02 17:51:49 +01:00
Paul Poulain
e07b36dd90 Bug 5877 : Offline circulation improvements : upload all files, apply at once
Offline circ : You now can upload all offline files from the Firefox extension.
Once all circ desks have uploaded the file, the librarian can apply all of them, sorted by date.
This avoid the problem of someone issuing an item on desk A, returning it on desk B.
Before this improvement, if desk B uploaded the file before A, the return was applied before the issue,
resulting in the items reamining issued.

Signed-off-by: Sophie Meynieux <sophie.meynieux@biblibre.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
2012-03-02 17:49:35 +01:00
Alex Arnaud
b94586bec1 Bug 6919 - Follow up - call to XSLTParse4Display is now made twice in Search.pm
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signing off on this one with the following note: You have moved the call to XSLTParse4Display from around line 1775 to around 1842, as compared to the situation before the three 6919 patches. I probably would have left it at its original location, but while examining the code between these two spots, I do not see any real problems with this move. Tested it, works okay. Futher QA comments made on the report itself.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-02 17:35:35 +01:00
f65da2b370 Bug 6919 - Follow-up - Implementing XSLTResultsDisplay
- Adding search result numbering to match non-XSLT
  results display.
- Copying author handling (with link to author search) from
  OPAC detail XSL.
- Copying physical description output from OPAC detail XSL.
- Copying ISBN output from OPAC detail XSL.
- Removing availability output (which had been copied from
  the OPAC) because it is redundant in the staff client.
- Removing duplicate inclusion of JS highlight plugin on
  results page.
- Updating highlight JS to make it compatible with XSLT
  results.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-03-02 17:35:33 +01:00
Alex Arnaud
10eb5ae420 bug 6919 - implements XSLTResultsDisplay and adding both unimarc and marc21 xslt
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-03-02 17:35:31 +01:00
Paul Poulain
6fe73327d6 Bug 7143 some cleaning
* removing useless <strong> everywhere
* updating ENSMP => Mines ParisTech
* lowering cases
2012-03-02 17:34:10 +01:00
Paul Poulain
36e4f1c2ac Bug 7143 missing contributors
This patch add some contributors that are in docs/history.txt but were forgotten in about.tt
2012-03-02 17:34:08 +01:00
Paul Poulain
360494295d Bug 7143 about.tt indentation fixes
This patch is just about s/tab/4spaces/ & indentation fixes
2012-03-02 17:34:06 +01:00
Paul Poulain
3462702c8c bug 7143 fixing history, there were 2 #58 and no #59 2012-03-02 17:34:05 +01:00
1a5afaa26d Bug 7582 - When adding a Z39.50 server the "checked" option should use a checkbox
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:33:12 +01:00
99f686ea83 Bug 7579 - Icons for authorized values/item types not showing in OPAC
The functions getitemtypeimagedir and getitemtypeimagesrc
in Koha.pm were using the system preference 'template'
when they should be using 'opacthemes' instead.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:32:09 +01:00
Chris Hall
2bf2e18078 Bug 7575 Opac search results print alignment
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:29:49 +01:00
a958d0a685 Bug 7544 - Add ability search borrowers only on email / phone
This commit adds a new pulldown field to the patron quick search.
This pulldown "Search Fields" can have any number of field combinations
to search on. The combinations added in this commit are:

Standard: Default, searches on original fields
Email: Searches on email, emailpro, and B_email
Borrower Number: Searches on borrowernumber
Phone Number: Searches on phone, phonepro, B_phone, altcontactphone, and mobile

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested by running searches on all the new fields, and the old fields
with limits on branch and category. The seach on phone number could be
a bit more inclusive, but it works with and without symbols so I
give my sign off on this patch.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Documentation should note that phone numbers should be searched only on the
numbers of a phone number, and separate the area code and exchange with spaces,
regardless of how the number is entered in the database.

So no dashes or parentheses in the phone search, and the last 7 search works with spaces, i.e. xxx xxxx.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:25:26 +01:00
Katrin Fischer
88a2079a48 Bug 7523: Improve checks for routing permissions
- system preference RoutingSerials and user permission routing
  should be taken into account
- print routing list should be independent from routing permission

To test, compare to master and check:

1) If system preference RoutingSerials is OFF, routing list functionality is
not visible in the templates.

2) If system preference RoutingSerials is ON, but user doesn't have routing
permission, routing list functionality is not visible in templates,
with exception of 'print list' on the serial collection page.

3) If system preference RoutingSerials is ON and user has routing permissions,
all routing links are visible (serial collection, serials navigation,
result list of serial search)

Additional changes:
Changed labels on templates to match HTML4 rule from coding guidelines.
http://wiki.koha-community.org/wiki/Coding_Guidelines#Upper_and_Lower_cases_in_strings

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:22:01 +01:00
Garry Collum
cef7c1b40b Bug 7318: Fixes category display in patroncards Patron Search results.
Category description and type were not being sent to the template.  This patch fixes that issue, which also fixes the display.  The display was showing 'Category Description (category type)'.  It now displays 'Category Description (category code) to be consistent with the search label.

This patch also assigns an empty string to $member to get rid of some 'uninitialized' errors in the logs.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Confirm this patch fixes the display issue.
Passes prove xt

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:01:00 +01:00
Paul Poulain
c55c58ee4b Bug 6039 follow-up, DBrev number 2012-02-27 16:17:42 +01:00
8b171f693d bug 6039: Cancel All waiting holds button - Addendum: Add redirect to refresh list after canceling all holds.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 15:43:15 +01:00
Srdjan Jankovic
b17653355c bug 6039: Cancel All waiting holds button
TransferWhenCancelAllWaitingHolds syspref

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2012-02-27 15:43:12 +01:00
Salvador Zaragoza Rubio
2b2a034ca8 Bug 6008 - Locating mysql/psql commands on Installer.pm
In Installer.pm when is looking for the system command to dump a file into the database
it might fail if the web user doesn't have it in its path. So we add before a search with
"which" and "whereis" commands, if they fail the command is itself without path.

E.g.: with OpenBSD 4.8 the web user "www" doesn't have the path to the installed mysql bin:
/usr/local/bin/mysql and fails in the web installer.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Seems to work fine, has a good default for if it fails to find that
path

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
tested on my linux box, no visible change, worked before, work after. Will hopefully improve behaviour for OpenBSD
2012-02-27 15:38:07 +01:00
Katrin Fischer
953b8a5af9 Bug 3901: Rollover on serials summary showing 9999999
For Rollover 9999999 the planning tab on the subscription will now show 'Never'.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 15:14:58 +01:00
b420247f2d bug_7467: Printing Transfer Slips for transfers that do not have holds - Addendum: Use for automatic transfers as well.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 14:57:13 +01:00
Srdjan Jankovic
f771cc8e26 bug_7467: Printing Transfer Slips for transfers that do not have holds
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2012-02-27 14:57:10 +01:00
Paul Poulain
80c202170a Merge remote-tracking branch 'origin/new/bug_3215' 2012-02-27 12:12:59 +01:00
95ead9a42b Bug 3215 [REBASED] It would be nice if "Add to Cart" changed to "Remove from Cart"
"Add to Cart" links in the OPAC should reflect whether a title
is already in the Cart. On the results, list, and detail pages
the "Add to Cart" link will say "In your cart (remove)" if the
title is in your cart. The "(remove)" link will remove the title.

This patch adds a check of the biblionumbers in the cart to the
relevant scripts and sets a variable for the template governing
whether to show "Add to cart" or "In your cart."

Pages to test:

  - the search results page
  - any detail page (normal, MARC, ISBD)
  - any list contents page (/cgi-bin/koha/opac-shelves.pl?viewshelf=XX)

Situations to test:

- Add a single item to the Cart from the above pages

The link should change from "Add to cart" to "In your cart (remove)"
The count of items in your cart should reflect the addition, and the
notification box should appear.

- Remove a single item from the Cart from the above pages

The link should change from "In your cart (remove)" to "Add to cart."
The count of items in your cart should reflect the removal, and the
notification box should appear.

- View an item which is already in the cart from the above pages

The cart links should reflect whether the title is already in the cart.

- Remove one or more items from the Cart via the cart pop-up window

View the above pages as you do so to verify that the operation is
reflected immediately by the state of the "in your cart" links.

- Empty the Cart from the cart pop-up window

View the above pages as you do so to verify that the operation is
reflected immediately by the state of the "in your cart" links.

Tested in Firefox 9, Chrome 16, IE 7, and Opera 11.6 on Win 7

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 12:12:07 +01:00
Katrin Fischer
a529262501 Bug 7576: Add ISSN to SearchForTitleIn preference
Adds a new placeholder {ISSN} to the system preference SearchForTitleIn.
For a record with multiple ISSNs only the first ISSN will be used.

Addition: Makes a small change to GetMarcControlnumber so that it checks for
NORMARC too. If you set your system preference to NORMARC, it should output
{CONTROLNUMBER} correctly now.

For testing add following code to the system preference and check output
of SearchForTitleIn for different records in your OPAC and all 3 available
views (normal, MARC and ISBD):
<li>ISSN: {ISSN}</li>
<li>ISBN: {ISBN}</li>
<li>001: {CONTROLNUMBER}</li>

Patch also includes some unit tests:
perl t/db_dependent/Biblio.t

Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Tested with marcflavour = NORMARC, on one book and one periodical record.

* Book

- Before the patch:
ISSN: {ISSN}
ISBN: 0375726446
001:

- After the patch:
ISSN:
ISBN: 0375726446
001: 022976914

* Journal

- Before the patch:
ISSN: {ISSN}
ISBN:
001:

- After the patch:
ISSN: 1890-6931
ISBN:
001: 080721370

Looks good in all 3 views! Thanks for fixing the 001 thing for NORMARC!

Also tested with marcflavour = MARC21, on the same records with the same good
results. Signing off!

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Tested marcflavour= UNIMARC, works fine too
2012-02-27 11:44:20 +01:00
Chris Nighswonger
628eec4926 Bug 7585 - Correct MARC 008 Value Builder Char 06 Default
This patch changes the default value of the 06 char in 008
from 't' to 'b.' This change allows for a valid 008 field
if no dates are entered in 07-14.

To test:

1. Create a new MARC record (prior to patch application).
2. Click on the 008 field to auto-populate.
3. Note that the 06 char is 't'.
4. Apply patch.
5. Create a new MARC record.
6. Click on the 008 field to auto-populate.
7. Note that the 06 char is now 'b'.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Confirm fix works per test plan.
2012-02-27 11:37:46 +01:00
Paul Poulain
734c63222b Merge remote-tracking branch 'origin/new/bug_7453' 2012-02-27 11:35:12 +01:00
37d9f43620 7453 Followup for borrower without expiry date
While it should be impossible now to have a patron without expiry date, I still had one. It does not hurt to add a simple check on expiry date defined before calling delta days on null values and breaking the opac login.
Trivial change.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested by deleting the expirydate from my own patron record.
Missing expiry date now no longer breaks the summary page
in the patron account on OPAC.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 11:34:51 +01:00
Liz Rea
355d57da36 Bug 7110 - Renewal messages still displays in OPAC if OpacRenewalAllowed is disabled.
To test:
Set a patron with fines over the stated limit in OPACFineNoRenewals.

With OpacRenewalAllowed set to ALLOW
- log into the OPAC and verify the message that renewals are disallowed is displayed
- verify that renewals are disallowed in the interface.
- remove or pay the fines, verify the message goes away and that OPAC renewals are re-allowed for your patron.

With OPACFineNoRenewals set to Don't Allow
- verify the message is not shown, even with the patron's fines over the threshold in OPACFineNoRenewals.
- remove or pay the fines, verify that renewals are still disallowed

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Stepped through the test plan and found no problems.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 11:32:49 +01:00
Katrin Fischer
a80fc7903c Bug 7558: Serial issue note doubled up in full history
Removes the note behind the status, because there is a separate column.

To test:
- Add a subscription
- Receive an issue, add a note for it
- Search record in OPAC and check the full history tab for the note

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 11:31:25 +01:00
Katrin Fischer
dacbb54a2f Bug 7559: Edit links for patron attributes and message preferences broken
Edit links below sections for patron attributes and enhanced messaging
preferences are broken and the page is empty except for the heading.

To test:
1) Verify all edit links on the page lead to the correct sections of the patron
empty record.
2) Verify the edit link from the toolbar still works correctly.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This fixes a bug caused by bug 6190 (removal of unwanted fields)
2012-02-27 11:29:23 +01:00
Sophie Meynieux
11efb334c2 Bug 3916 [follow-up] : Adding a default choice in every dropdown list, not only branches, to let the corresponding value unchanged
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Patch works as advertised

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 11:22:49 +01:00
35b344b609 Bug 6895 Diacritics in Pootle/po files are broken in source text
To test:

  git checkout 3.6.x
  cd misc/translator
  ./tmpl_process3.pl update -i ../../koha-tmpl/opac-tmpl/prog/en/ \
    -s ./po/fr-FR-i-opac-t-prog-v-3006000.po -r

  po/fr-FR-i-opac-t-prog-v-3006000.po contains broken diacritics for NORMARC
  strings for example

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
fixes regression caused by bug 6752
2012-02-27 11:21:50 +01:00
Katrin Fischer
baec1daa10 Bug 7606: Editing a vendor in acq creates a new vendor
To test:

Before patch:
- editing a new vendor will create a new vendor

After patch:
- editing a vendor saves changes correctly, no new vendor is created

Also:
- after saving or cancelling an edit page redirects correctly
- adding new vendors works correctly

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Followed test plan and all tests pass.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This is a follow-up for 7113
2012-02-27 11:14:48 +01:00
Paul Poulain
9cc9db0753 Bug 6875 follow-up for Items/Biblio de-nesting
the sub _find_value is used only in PrepareItemRecord sub, that has been moved to Items package

This patch moves the _find_value in Items as well.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Editing an already arrived serial issue with an attached item
resulted in an error. After applying the patch it's fixed.
2012-02-27 11:13:02 +01:00
Paul Poulain
5baff558a5 Merge remote-tracking branch 'origin/new/bug_7460' 2012-02-22 15:27:00 +01:00
Stéphane Delaune
d4e17b7974 Bug 7460: followup : Add template toolkit's FILTER html_line_break on staff details description's tab
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-02-22 15:26:18 +01:00
Magnus Enger
5f2e1ba7b1 Bug 7552 - Remove wrong line endings in NORMARC record.abs
Line endings contain erroneous \r 's.

Also remove a useless comment at the top of the file.

This patch was produced by doing the following operations:

git config --global core.autocrlf true
git rm --cached -r etc/zebradb/marc_defs/normarc/biblios/record.abs
git diff --cached --name-only -z | xargs -0 git add

as recommended here:
http://help.github.com/line-endings/

First version of this file resulted in whitespaceerrors. Trying to fix that now.

To test:

- Open etc/zebradb/marc_defs/normarc/biblios/record.abs in a file editor
  that will let you search for \r - gedit seems to work nicely for this.
  Check that there are occurences of \r in the file
- Apply the patch
- Open etc/zebradb/marc_defs/normarc/biblios/record.abs in the editor and
  check that it can not find any \r

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Still a few \r

But only on comments, safe to push

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 17:37:35 +01:00
Colin Campbell
766b60e5b3 Bug 7454 Initialize return arrays in ILS/Transaction/RenewAll
Explicitly clear these arrays and update them directly.
In practice item numbers were already in them when called
so that more items were being returned than were actually
renewed (or failed)

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Functionally sound patch, and tested in production

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 17:35:56 +01:00
Robin Sheat
5dd94487ac Bug 5373 - allow 'cardnumber' to appear on the patron import field list
For some reason, it was explicitly removed, however you need it if you
want to match up on cardnumber.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Easy to test and works nicely.
Before patch cardnumber is not shown in the list of fields on the
patron import page. After applying the patch it is.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 17:04:18 +01:00
BibLibre
aa06364814 Bug 7513 Marc Import Hangs
On some record, the commit_biblio_file is creating wide
character
because as_xml is not used with correct parameter.
This patch fixes that.
To test on a UNIMARC Koha, stage attachment 7510 and
then import.
It hangs before the patch, it passes after.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 17:02:46 +01:00