Permalink
Commits on Oct 6, 2013
Commits on Oct 4, 2013
  1. Bug 7764: (follow-up) editorial tweaks

    gmcharlt committed Oct 4, 2013
    Besides some grammar and capitalization corrections, this patch
    adds a link to the wiki page for installation Koha on Ubuntu
    from packages.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  2. Bug 7764: rework the INSTALL.ubuntu instructions

    mtompset committed with gmcharlt Aug 27, 2013
    This is a major rework. Key improvements include:
    - Removed confusing multiple versions for Ubuntu leaving only one set
      of instructions.
    - The packages koha-deps and koha-perldeps are used.
    - License has been updated to reflect GPL3.
    - More wiki reference links have been included.
    - It is aimed to be based on source, not just tarball or just git.
    - Sample output has been cut as much as possible.
    - Almost cut-and-paste easy, making it friendlier than INSTALL.debian.
    
    Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Fixed a tiny typo: seperate
    Makes all sense to me - only wondering a bit about the recommendation
    of using lynx for the web installer.
    Quite an improvement, so passing QA.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  3. Bug 5544: (follow-up) avoid warning if notice is not directed at a pa…

    kylemhall committed with gmcharlt Sep 5, 2013
    …tron
    
    Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  4. Bug 5544: prefer library email address over admin address as notice s…

    kylemhall committed with gmcharlt May 9, 2012
    …ender
    
    Right now overdues come from the branch, but the
    others come from the admin email address - this
    is a problem in multi-branch systems because they
    have to come up with one email address that all
    branches have access to.
    
    C4::Letters::_send_message_by_email currently sets
    the from address in the following order:
    1) Address specified in message
    2) Koha admin email address
    
    The order will now be:
    1) Address specified in message
    2) Borrower's home library email address
    3) Koha admin email address
    
    Test Plan:
    1) Set your library email addresses, and the KohaAdminEmailAddress
       Make sure each of them are unqiue
    2) Choose a borrower, enable the enhanced messaging and enable the
       checkout and checkin email notices. Use your email address for
       the borrower's email so you can recieve the emails.
    3) Check out an item, check the from address of the email,
       it should be the email addres set in KohaAdminEmailAddress
    4) Apply the patch
    5) Return the item, check the from address of the email,
       it should match the email address set for the borrower's
       home library.
    
    Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
    Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  5. Bug 10856: Fix cover display in shelf browser

    jajm committed with gmcharlt Sep 27, 2013
    Signed-off-by: Owen Leonard <oleonard@myacpl.org>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    I was able to reproduce the problem with local covers and
    the patch fixes it in my tests.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  6. Bug 10856: (Follow-up) improve behavior of the "close shelf browser" …

    oleonard committed with gmcharlt Sep 17, 2013
    …link
    
    In Firefox at least, the shelf browser cannot be reopened after
    hiding it with the "close shelf browser" link. This followup improves
    the behavior of the "close shelf browser" link so that the shelf browser
    can be redisplayed.
    
    To test, open a bibliographic detail page in the OPAC and click a
    "browse shelf" link. Click the "close shelf browser" link--the shelf
    browser should be hidden. Click the original "browse shelf" link and the
    shelf browser should reappear without reloading the page.
    
    Test with Firefox and Chrome (at least).
    
    Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    All tests and QA script pass.
    
    Testing notes:
    - New unit tests in t/db_dependent/ShelfBrowser.t pass.
    - System preference  OPACShelfBrowser still works as expected.
    - Closing and opening the shelf browser works as expected.
    - Next and Previous links show new and nicer behaviour.
    - Logs are clean.
    
    Tested with Firefox and Chromium under Ubuntu.
    
    Notes: The currently displayed record could maybe be highlighted
    a bit better.
    
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  7. Bug 10856: (follow-up) if callnumbers are equal, order should be on i…

    joubu committed with gmcharlt Sep 13, 2013
    …temnumber
    
    If a lot of items has the same callnumber, the order should be on the
    itemnumbers. Otherwise the left side is always filled with the same
    items.
    
    + Fix a bad c/p for the next link (when js is disabled).
    
    Signed-off-by: Owen Leonard <oleonard@myacpl.org>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  8. Bug 10856: Improve the previous and next items on the shelf browser

    joubu committed with gmcharlt May 14, 2013
    The next and previous links should completely refresh the shelf.
    
    For example:
    [<] [1] [2] [3] [4] [5] [6] [>]
    Before this patch, the next and previous links were the same as the 1
    and 6.
    With this patch, after clicking on next, we will get:
    [<] [7] [8] [9] [10] [11] [12] [13] [>]
    
    This patch adds a new AJAX script to get the shelf browser block.
    
    Test plan:
    - On a detail biblio page, click on a "Browse shelf" link.
    - Play with the next and previous links.
    - Deactivate Javascript (using NoScript for example) and check that you
      get the same behavior (but the page is reloaded).
    - Launch the unit tests: prove t/db_dependent/ShelfBrowser.t
    
    Signed-off-by: Owen Leonard <oleonard@myacpl.org>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Passes all tests and QA script.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  9. Bug 10096: (follow-up) rename button on authorities toolbar

    gmcharlt committed Oct 4, 2013
    Change to "New from Z39.50" to be consistent with the
    cataloging toolbar.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  10. Bug 10096: (follow-up) add LC authority Z39.50 targets to 'en' sample…

    gmcharlt committed Oct 4, 2013
    … data
    
    The LC NAF and SAF authority Z39.50 database are indeed production
    services, so we may as well showcase the new authority Z39.50 search
    functionality.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  11. bug 10096: (follow-up) use datatables.inc

    gmcharlt committed Oct 4, 2013
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  12. Bug 10096: DBRev 3.13.00.024

    gmcharlt committed Oct 4, 2013
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  13. Bug 10096 - (follow-up) various QA improvements

    minusdavid committed with gmcharlt Sep 10, 2013
    - improve POD
    - remove extraneous comments
    - correct license statement in new files
    - remove backticks in database update SQL
    
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  14. Bug 10096 - Add a Z39.50 interface for authority searching

    minusdavid committed with gmcharlt May 7, 2013
    This patch introduces a new Z39.50 interface for searching Z39.50
    compliant databases for MARC authority records.
    
    These databases aren't as common as their bibliographic equivalents,
    but they're out there and very useful. I have included info at the
    bottom of this messsage for sample authority databases you can try.
    
    To test this patch:
    
    1) Set up Z39.50 client targets for authority databases. (I've included
    information at the bottom of this message for LibrariesAustralia's
    test server for authorities as well as instructions on how to use
    your Koha's z39.50 authority server as well. The Library of Congress
    also has authority databases available (unsure if these are test or
    prod), and you might have access to others through OCLC or RLIN. OCLC
    provides login credentials for their test databases.
    
    2) Go to the Authorities module
    
    3) Click on the new "Z39.50 search button"
    
    4) Select your authority search targets from the list.
    
    5) Do a search for an authority you would like using either the "Raw"
    input box or the more specific input boxes for names, subjects, subject
    sub divisions, or titles. (I like searching Name (personal): Eric on
    the LibrariesAustralia test DB.)
    
    6) You should see a table listing the server, heading, authority type,
    and two other columns (MARC and a nameless column). "Authority type"
    is the type of authority it will become when imported in to Koha. In
    the Eric example, "PERSO_NAME".
    
    7) Click on "MARC" next to the results of interest to review the MARC
    authority record.
    
    8) When you're satisfied with a record, click on "Import".
    
    9) The pop-up window will close and your original Koha window will
    change to the "Adding authority Personal Name" screen (in the Eric
    example).
    
    10) All the relevant fields should be filled out for the record. Review
    them and make any changes as necessary. (N.B. The 001 will be cleared
    when saved, so if you have a use for the imported control number, move
    it to the 010, 016, or 035 as appropriate. If you have a default value
    for the 003, this will also likely be overwritten. Move it if necessary.
    The 005 will also be updated when saved, so do not worry about that.)
    
    11) When you're satisfied, click save.
    
    12) Presto! You've imported your first authority record via Z39.50!
    
    --
    
    Here is the info for the LibrariesAustralia test Z39.50 authority
    database:
    
    Z39.50 server: LibrariesAustralia Authorities
    Hostname: z3950-test.librariesaustralia.nla.gov.au
    Port: 210
    Database: AuthTraining
    Userid: ANLEZ
    Password: z39.50
    Syntax: MARC21/USMARC
    Encoding: utf8
    
    -
    
    The U.S.A. Library of Congress also provides Z39.50 access to its Name
    and Subject Authorities (http://www.loc.gov/z3950/lcserver.html).
    
    Name Authority:
    Z39.50 server: Library of Congress Name Authority File
    Hostname: lx2.loc.gov
    Port: 210
    Database: NAF
    Syntax: MARC21/USMARC
    Encoding: utf8
    
    Subject Authority:
    Z39.50 server: Library of Congress Subject Authority File
    Hostname: lx2.loc.gov
    Port: 210
    Database: SAF
    Syntax: MARC21/USMARC
    Encoding: utf8
    
    (N.B. Both of these databases also include title authorities.)
    
    -
    
    For testing purposes, you can also set up a Z39.50 client target,
    which points at your own Koha instance's Z39.50 authority server.
    
    To find the hostname, go to /etc/koha-conf.xml and find the value for
    the <listen id="authorityserver"> element. Depending on your
    configuration, this could be something like the following:
    
    unix:/zebra/koha/var/run/zebradb/authoritysocket
    
    (N.B. You might be using a different scheme than unix sockets...)
    
    To find the database, scroll down to the bottom of koha-conf.xml until
    you reach the <config> element. Within this, look for the value of the
    element <authorityserver>. It should probably be "authorities".
    
    To set up this Z39.50 client target in Koha...
    
    Z39.50 server: my koha authorities
    Hostname: unix:/zebra/koha/var/run/zebradb/authoritysocket
    Port:
    Database: authorities
    Userid:
    Password:
    Syntax: MARC21/USMARC (or whichever flavour you need)
    Encoding: utf8
    
    Signed-off-by: Mason James <mtj@kohaaloha.com>
    
    Bug 10096 [FOLLOW-UP] - Add a z39.50 interface for authority searching
    
    This patch adds the "recordtype" column to the "z3950servers" table.
    
    The value in this column (biblio or authority) then controls whether
    the z3950 server shows up in a bibliographic search (through the
    Acq and Cataloguing modules) or in an authority search (through
    the Authorities module).
    
    I also edited the z3950 management console to show this value
    and allow users to edit it. The default value is "biblio", since
    the vast majority of z3950 targets will be bibliographic. However,
    there is an option to add/edit a z3950 target as a source of
    authority records.
    
    Test Plan:
    
    1) Apply both patches
    2) Run updatedatabase.pl (after setting your KOHA_CONF and PERL5
    environmental variables)
    3) Use the test plan from the 1st patch
    
    N.B. Make sure that your Z39.50 client target has a Record Type
    of Authority, otherwise it won't display when you're doing a
    Z3950 search for authorities.
    
    Signed-off-by: Mason James <mtj@kohaaloha.com>
    
    Bug 10096 [FOLLOW-UP] - fix tabs/whitespace errors to pass QA
    
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  15. Bug 9735: Unit tests for get_template_and_user (cookies handling)

    tomascohen committed with gmcharlt Sep 9, 2013
    Galen found a case where the cookies array was not built flat. I add a
    unit test for that (check the cookie array is flat) and also test the
    cookies output of get_template_and_user so we are sure the &language=
    parameter is correctly handled.
    
    Sponsored-by: Universidad Nacional de Cordoba
    Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    - Tests in t/db_dependent/Auth.t pass
    - Tested in intranet, OPAC logged in, OPAC logged out
      * Adding a valid language code to the URL switches the language
        as expected
      * Adding an invalid language code causes no change
    
    Nice feature!
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  16. Bug 9735 - Build the cookie array correctly

    tomascohen committed with gmcharlt Jun 5, 2013
    The current implementation didn't build the cookie array correctly,
    yielding login problems in some scenarios.
    
    Sponsored-by: Universidad Nacional de Córdoba
    
    Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  17. Bug 9735 - Let the language be selected through URL parameters

    tomascohen committed with gmcharlt Mar 3, 2013
    Passing language=<valid_language_code> as a parameter in any Koha's URL
    can be used to set the desired language.
    This patch touches
     - C4::Templates
     - C4::Auth
    
    Adds a new method getlanguagecookie that does exactly that, for use in
    get_template_and_user.
    Also modifies getlanguage so it checks (a) if there's a 'language'
    parameter in the CGI object and (b) checks if its valid and enabled for
    the desired interface.
    
    To test:
    * Without the patch
      - access any koha page
      - add ?language=code to the end of the URL (change code for a valid language code
        it needs to be installed using perl translate install code, and enabled either for
        the staff or opac interface, depending where are you testing)
      - Nothing happens with the language parameter
    * With the patch
      - access any koha page
      - add ?language=code (the same as before) and hit enter
      - the language should be changed to the one you chose
      - if you browse through some links, you will see
        koha 'remembers' the language you passed as a parameter
        (i.e. the language cookie has been updated).
    
    Sponsored-by: Universidad Nacional de Córdoba
    Signed-off-by: Brendan <brendan@bywatersolutions.com>
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    
    Comment: Works very well. No errors.
    Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
    Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Passes all tests and QA script.
    More comments on last patch.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  18. Bug 10668 - Improve suggestion detail page - QA Followup

    kylemhall committed with gmcharlt Aug 2, 2013
    Simplify an expression in the JavaScript
    
    Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  19. Bug 10668 - Improve suggestion detail page

    oleonard committed with gmcharlt Jul 31, 2013
    This patch makes several improvements to the suggestions template:
    
    - Improved breadcrumbs and page title.
    - Fixed a JavaScript error which appeared when viewing or editing a
      suggestion.
    - Added an 'Edit' and a 'Delete' button to the suggestion detail page.
    - Corrected capitalization.
    
    To test:
    - Perform various operations with suggestions management and
      confirm that page titles and breadcrumbs are correct.
    - View the detail page for an individual suggestion and confirm that
      the edit and delete buttons work correctly.
    - Confirm that there are no JavaScript errors when viewing or editing a
      suggestion, in particular when changing Acquisition information
      (quantity, currency, price).
    
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Passes all tests, nice improvement.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Commits on Oct 3, 2013
  1. Bug 9611: (follow-up) add libcrypt-eksblowfish-perl to debian/control

    gmcharlt committed Oct 3, 2013
    (Not strictly necessary, but since we haven't removed
     debian/control yet...)
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  2. Bug 9611: DBRev 3.13.00.023

    gmcharlt committed Oct 3, 2013
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  3. bug 9611: (follow-up) add reference to Crypt::Eksblowfish::Bcrypt in POD

    gmcharlt committed Oct 3, 2013
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  4. Bug 9611: (follow-up) fix POD

    bgkriegel committed with gmcharlt Sep 28, 2013
    Small patch to make koha-qa happy.
    Fixes small POD error
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  5. Bug 9611: Database update, changing password from varchar(30) to varc…

    ranginui committed with gmcharlt Feb 16, 2013
    …har(60)
    
    This is necessary because Bcrypt hashes are longer than MD5 hashes.
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Signed-off-by: Mason James <mtj@kohaaloha.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  6. bug 9611: use checkpw_hash() instead of md5 hash for SIP2 logins

    srdjan-catalyst committed with gmcharlt Aug 26, 2013
    Test:
    
    * SIP: Have an old user and create a new user
    - use either tenet sip test or
      C4/SIP/interactive_patron_check_password.pl to check old
      userid/password
    - do the same for the new user
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Work as described
    
    Test
    1) using perl C4/SIP/interactive_patron_check_password.pl
    can check current (short) and new (long) passwords
    
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  7. bug 9611: use hash_password() and checkpw_* for LDAP logins instead o…

    srdjan-catalyst committed with gmcharlt Aug 23, 2013
    …f md5 hash
    
    Test:
    
    * LDAP:
    - Turn on LDAP auth in koha-config.xml. Set "update" in your server config to 1
    - Change user's password on LDAP
    - Login to Koha using LDAP - Koha password should be updated, to check
    - Turn off LDAP auth in koha-config.xml
    - You should be ble to log in with the new password
    
    I do not have a LDAP facility, so I cheated. I ran
    perl -e 'use C4::Auth_with_ldap; C4::Auth_with_ldap::_do_changepassword("srdjan", 1000022259, "srdjan");'
    and was able to change the password.
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Work as described.
    
    Test
    1) change <useldapserver> to 1
    2) copy/paste sample <ldapserver> config from perldoc C4/Auth_with_ldap
    3) using sample script was able to change password,
    use (userid, borrowernumber, newpass) as arguments
    4) checked with OPAC and in database
    
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  8. bug 9611: (follow-up) remove md5_base64 from imports - not used

    srdjan-catalyst committed with gmcharlt Aug 26, 2013
    RM note: Digest::MD5 is used in C4::ImportExportFramework as part
    of an unnecessary reimplementation of functionality supplied by
    File::Temp.  See bug 10991 for a proposal to remove it.
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  9. bug 9611: Extract checkpw_internal() and checkpw_hash() from checkpw()

    srdjan-catalyst committed with gmcharlt Aug 26, 2013
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  10. Bug 9611: add Crypt::Eksblowfish::Bcrypt to list of Perl dependencies

    ranginui committed with gmcharlt Feb 16, 2013
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Signed-off-by: Mason James <mtj@kohaaloha.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  11. Bug 9611: Change the password hashing algorithm from MD5 to Bcrypt

    srikanth-dhondi committed with gmcharlt Feb 13, 2013
    What this patch aims to accomplish?
    
     * All new passwords are stored as Bcrypt-hashes
     * For password verification:
         - If the user was created before this patch was applied then use
            MD5 to hash the entered password <-- backwards compatibility
         - If the user was created after this patch was applied then use
           Bcrypt to hash the entered password
     * Any password change made via the staff interface or the OPAC will
       be automatically Bcrypt-hashed; this applies to old users whose
       passwords were stored as MD5 hashes previously
    
    Test plan:
      1) Add new users and check whether their passwords are stored as
         Bcrypt hashes or not.
      2) To test that authentication works for both old as well as new
         users:
           a) Login as an existing user whose password is stored as a
              MD5 hash
           b) Login as an existing user whose password is stored as a
              Bcrypt hash
      3) In the staff interface, change the password of an existing user
         whose password is stored as an MD5 hash
    	a) Check the new password is stored as a Bcrypt-hash in the database
    	b) Try to login with the new password
      4) In the OPAC, verify that
        a) Old user with old pass can change password, new format
        b) New user with new pass can change password
        c) Old and new user with self-updated pass can login
    
    Whitespace cleanup was contributed by  Bernardo Gonzalez Kriegel.
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Signed-off-by: Mason James <mtj@kohaaloha.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
    Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  12. bug 10419: (follow-up) improvements to the usage text

    gmcharlt committed Oct 3, 2013
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  13. Bug 10419: (follow-up) patrons with fines should not be deleted

    joubu committed with gmcharlt Sep 30, 2013
    Test plan:
    - add a fine for a patron
    - verify the script does not delete this patron.
    
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Works, script do not delete a patron with fines.
    No koha-qa errors with all patches applied
    
    Test
    1) Added a fine to a patron
    2) run script
    3) reports condition
    Trying to delete patron 5... Failed to delete patron 5: patron has 10.00 in fines
    4) Patron is not deleted
    
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Passes all tests and QA script.
    
    Tested various combinations of options:
    ./delete_patrons.pl
      Gives a helpful message about the use of the script.
    ./delete_patrons.pl -h
      Outputs useful information about the use of the script
      and its various options.
    ./delete_patrons.pl --category_code ST --library CPL
      Gives the correct results in numbers and deletion was done
      properly.
    
    Also tested:
      --expired_before
      --not_borrowed_since
      -v
    
    Testing various conditions where a delete should not occur:
    - Patron has checkouts
      Patron is not in list of patrons to delete (x patrons to delete)
    - Patron has fines
      Patron is still in list of patrons to delete (x patrons to delete)
    
    Checked deleted patrons had been moved to deletedborrowers.
    
    Notes about possible enhancements:
    - only print the success message 'x patrons deleted' when confirm
      flag was set
    - patrons with current checkouts are silently excluded from the number
      of patrons to be deleted. Printing the number with current checkouts
      might be helpful.
    
    Changes made:
      Fixed a small error in the documentation: expired_date is expired_before.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  14. Bug 10419: (follow-up) fix hardcoded records and pod

    joubu committed with gmcharlt Aug 13, 2013
    Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
    Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
    Missing a sign. Removes harcoded values
    
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
  15. Bug 10419: (follow-up) functional improvements

    gmcharlt committed Aug 6, 2013
    [1] Patron deletion now happens atomically; if one part
        of the process fails, the record isn't left in a
        partially deleted state.
    [2] The routine for handling lists properly during patron
        deletion is now invoked.
    [3] The script now prints an indication if it's run
        without --confirm; otherwise, one might think that
        patron records were actually being deleted.
    [4] --verbose now actually does something.
    
    Without --verbose, the script will print the dry-run
    warning (if applicable), the number of patrons to be
    deleted, and error messages.
    
    With --verbose, the script will also print a line with
    the borrowernumber of each patron to be deleted.
    
    To test:
    
    [1] Run the script with and without --verbose and compare
        the, well, verbosity.
    [2] Run the script without --confirm and note that the script
        prints a message saying that it's running in dry-run mode.
    [3] Use the script to try to delete one or more patrons that have
        loans.  Confirm that error messages are printed reporting
        foreign constraints preventing the deletion.  Also confirm that
        no new rows are added to deletedborrowers for those patrons that
        could not be completely deleted.
    [4] Use the script to delete a patron that has a public list.  Verify
        that after the deletion, the public list still exists but now
        has a null owner.
    
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>
    Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
    Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
    Signed-off-by: Galen Charlton <gmc@esilibrary.com>