koha.git
4 years agoBug 16849: Move IsDebarred to Koha::Patron->is_debarred
Jonathan Druart [Mon, 4 Jul 2016 10:29:16 +0000 (11:29 +0100)]
Bug 16849: Move IsDebarred to Koha::Patron->is_debarred

In order to move IsMemberBlocked to Koha::Patron it makes sense to move
the code from Koha::Patron::Debarments::IsDebarred to
Koha::Patron->is_debarred.

Test plan:
1/ Add a restriction to a patron
2/ make sure he is not able to checkout items any more
3/ Make sure he cannot get a discharge
4/ Put a hold and make sure you get "Patron has restrictions"

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16681 - Allow update of opacnote via batch patron modification tool
Nick Clemens [Thu, 14 Jul 2016 15:45:54 +0000 (11:45 -0400)]
Bug 16681 - Allow update of opacnote via batch patron modification tool

To test:
1 - Select a batch of patrons (via list, saved file, and cardnumber
        entry)
2 - Verify you cannot edit 'opacnotes' field, nor can you see
'borrowernotes' field in table, though you can edit it
3 - Verify editing works as expected
4 - Apply patch
5 - Select a batch via each method as above
6 - Note both note columns display in table
7 - Note that you can edit or clear the opacnotes field as expected
8 - Verify other feautres work as previously

Sponsored by:
   Lancaster Theological Seminary (https://lancasterseminary.edu/)

Followed test plan, works as expected.
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16538: Improve the style of progress bars
Owen Leonard [Tue, 17 May 2016 15:18:14 +0000 (11:18 -0400)]
Bug 16538: Improve the style of progress bars

This patch updates the style of progress bars to make them a little
nicer. Progress bars in the staff client are not built in a consisten
way. Some have been updated to use the <progress> element and some have
not. This patch improves some styling common to both kinds.

Other changes:

- Redundant in-page CSS has been removed from many pages.
- An invalid "min" attribute has been removed from several instances of
  <progress>.
- Corrected capitalization.
- Fixed incorrectly quoted attributes.
- Added missing form "action" attributes.

To test, clear your browser cache if necessary. Apply the patch and
test uploads on the following pages:

- Circulation -> Offline circulation file upload
- Tools -> Batch item modification
- Tools -> Batch record modification
- Tools -> Stage MARC records for import
- Tools -> Manage staged MARC records
- Tools -> Upload local cover image
- Tools -> Upload

In all cases, progress bars should look improved and work correctly.

Test Tools -> Batch item deletion. Unused background job handling markup
has been removed. Deletion processing should work correctly.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16531: Circ overdue report is showing an empty table if no overdues
Aleisha [Tue, 17 May 2016 04:46:31 +0000 (04:46 +0000)]
Bug 16531: Circ overdue report is showing an empty table if no overdues

EDIT: Comment 2
EDIT2: using noreport variable (Comment 5)

To test:
1) Ensure you have no items overdue
2) Go to Circ -> Circulation reports -> Overdues
3) Notice empty table, '0 items overdue' heading
4) Ensure syspref FilterBeforeOverdueReport is set to 'Don't require'
5) Apply patch and refresh page
6) Notice empty table is no longer showing and page says "There are no
   overdues"
7) Apply a filter to search
8) Page now says "There are no overdues matching your search" with a
   link to reset filter.
9) Click Reset filter -> confirm any filters you applied are cleared.
10) Set FilterBeforeOverdueReport to 'Require' and refresh overdue
    report
11) Page should say "Please choose one or more filters to proceed"
12) Check out an item to a member, ensure due date is a date that has
    passed (i.e. yesterday)
13) Refresh overdue report page
14) Page should still say "Please choose one or more filters to proceed"
15) Set FilterBeforeOverdueReport to 'Don't require'
16) Confirm table now shows correctly with '1 items overdue' heading
    etc.

Sponsored-by: Catalyst IT
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15853 - Add author and link columns to opac course reserves table
Nick Clemens [Fri, 3 Jun 2016 18:49:25 +0000 (14:49 -0400)]
Bug 15853 - Add author and link columns to opac course reserves table

To test:
1 - Add some course reserves
2 - View the table in staff and opac, there is no column for author or
link
3 - Apply patch
4 - You shoudl see these columns
5 - Link should contain item uri if present, fallback to title 856$u,
  then be blank if niether

Sponsored by:
    Southeastern Wisconsin Information Technology Exchange, Inc (SWITCH)
    (http://caspian.switchinc.org/)

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Might be good to add this table to the column visibility tool if you
plan to add more columns.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16888: (follow-up)Add Font Awesome Icons to Members
Hector Castro [Mon, 11 Jul 2016 14:34:38 +0000 (08:34 -0600)]
Bug 16888: (follow-up)Add Font Awesome Icons to Members

Remove fa-ban according with QA comment 4

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16888: Add Font Awesome Icons to Members
Hector Castro [Fri, 8 Jul 2016 21:52:06 +0000 (15:52 -0600)]
Bug 16888: Add Font Awesome Icons to Members

Add Font Awesome Icons to:
- "Select/Clear all" links to pay.tt (Pay fines tab)
- "Filter icon" in "filter paid transactions" to Accout tab (boraccount.tt)
- "Trash icon" to Remove option in "Manual restrictions"
(borrower_debarments.inc) also add "Ban and plus icon" to "Add manual restriction"

To test:
-Apply patch
-Select a patron who has fines
-Go to "Fines->Pay fines" tabs and see the icons in "Select/Clear all"
-Choose the "Account" tab and sse the icon in "Filter paid transactions"
-Select the "Check out" tab and go to "Restrictions"
-Add a manual restriction and notice about the two new icons fa-plus and fa-band
-See the new button btn-mini and the fa-trash icon
-Verify that all works as expected

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16812: Revise JS script for z3950_search.tts and remove onclick events
Hector Castro [Fri, 24 Jun 2016 21:55:40 +0000 (15:55 -0600)]
Bug 16812: Revise JS script for z3950_search.tts and remove onclick events

Modify JS script to all templates for z3950_search.tt and reduce the
redundant code

This patch propose:
-z3950_auth_search.tt has various onclick events used in links.
 Also fix: acqui/z3950_search.tt and cataloguing/z3950_search.tt
-Trigger onclick events via JQuery .on()
-Make a separate .js and .inc file
-Reduce the number of line and redundant code
-Also add Font Awesome Icons to "Select/Clear all" and "Clear search
 form" links

To test:
1-Apply bug 16600 on top
2-Apply patch
3-Go to Authorities > click New from Z39.50
4-Fill some fields and click in "Clear search form" link
5-Search under "Dalton" or another author that launch too many headings
6-Clic in some heading and notice the dialog open, test: "Preview MARC",
  ISBD (when showed), "Import" and close the dialog "X". Use the
  "Import" from table too.
7-Use the "next/previous page" button, change "Go to page" to number in and
  out of the range presented, also test whit a letter, etc.

Go to Cataloging > New from Z39.50/SRU
Repeat steps 3 to 6. But this time with bib records.

Go to Adquisition > Open or Create a basket and choose to "Add to basket"
button. A modal appear, chose the option "Order from external source"
Repeat steps 3 to 6. But this thime with bib records.

NOTE: The icon trash for "Clear search form" has been selected according
with module "Advanced search" there is an icon trash with link "Clear
fields" that has the same fuctionality.
For some reason the image loading-small.gif does not charge all times
when the code is get out of the template. (Fixed with this new patch)
DataTable it is specific for each template

Sponsored-by: Universidad de El Salvador
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16777: Correct intranet search alias
Marcel de Rooy [Mon, 20 Jun 2016 12:57:25 +0000 (14:57 +0200)]
Bug 16777: Correct intranet search alias

A long-standing typo in our apache config files:
[intranet]/search refers to search.pl (which does not exist)

This patch refers it to catalogue/search.pl

Test plan:
Run an install or copy the change from apache-shared-intranet.conf or
koha-httpd.conf to your apache config. Restart Apache and check
if http://[your staff client]/search works.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Tested by making manual changes according to the patch. Did not test a
new installation.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16701: (follow-up) improve some changes
Hector Castro [Thu, 7 Jul 2016 15:13:30 +0000 (09:13 -0600)]
Bug 16701: (follow-up) improve some changes

Add missing quote in line 152
Modify title of the page and breadcrumbs section wrong "searchfield" used
should be instead "currency.currency"

To test
-Try to delete the active and used currency, for example, my case
 USD, look that appear USD' with the initial single quote missing in
 message Confirm deletion of currency USD'
-Notice about the breadcrumbs section appear:
     Confirm deletion of currency ''
 Should appear the currency
-Try to delete another currency see the pharese look the same
-Notice about the title in both cases, there is missing the currency name
-Apply follow-up and re-test

Sing-off on followup
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16701: Translatability: Fix problem with isolated ' in currency.tt
Marc Véron [Tue, 21 Jun 2016 07:08:06 +0000 (09:08 +0200)]
Bug 16701: Translatability: Fix problem with isolated ' in currency.tt

This patch moves markup <span class="ex"> into template variables to
avoid sentence splitting.

To test:
- Apply patch
- Verify that currency administration works as before
  (Home > Administration > Currencies & Exchange rates > Currencies)
- Examine code changes

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16621: Translatability: Issues in opac-user.tt (sentence splitting)
Marc Véron [Fri, 10 Jun 2016 08:25:54 +0000 (10:25 +0200)]
Bug 16621: Translatability: Issues in opac-user.tt (sentence splitting)

This patch fixes issues due to sentence splitting in
koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt

Note: This is a string patch. It does not add or change functionallity.

To test:
- Examine code and verify that the text changes remove sentence splitting
  and that the changes make sense.
- Log in to OPAC and verify that messages look correct
  - with blocked /debarred user (with and without comment and date)
  - with user who has to much fines (needs syspref OpacRenewalAllowed
    and syspref OPACFineNoRenewals)
  - with user who has his card marked as lost
  - with user with an account that is about to expire
  - with user with expired account
  - with user with uncertain address information (with and without
    syspref OPACPatronDetails set to Allow)

Note: Amended to make patch apply 2016-07-10 mv
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16900 - Hold suspend button incorrectly styled in patron holds list
Owen Leonard [Mon, 11 Jul 2016 19:03:37 +0000 (15:03 -0400)]
Bug 16900 - Hold suspend button incorrectly styled in patron holds list

This patch updates the style of the suspend/resume button in the list of
holds displayed on the checkout page and on the patron detail page. The
button is now a Bootstrap-styled button with a Font Awesome icon.

To test, apply the patch and locate a patron who has holds.

- On the checkout page, view the 'Holds' tab and confirm that there is a
  correctly-styled 'Suspend' button for each hold.
- Verify that the button works correctly and looks correct when a hold
  has been suspended.

Signed-off-by: Arslan Farooq <arslanone@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16897 - Re-focus on "Add item" in Lists
Fridolin Somers [Mon, 11 Jul 2016 14:31:18 +0000 (16:31 +0200)]
Bug 16897 - Re-focus on "Add item" in Lists

Bug 11325 add solved a focus on "Add item" missing in Lists page.
Since revamping of this page, the add item form exists both in page.
The one corrected by Bug 11325 is not visible because it checks a bad
var allowaddingitem instead of can_add_biblios.

This patch removes the first form and corrects the second form.
It moves the form at left part of page so that it is always shown
(usefull when there are a lot of items). It does not add the list name
after "Add item" besause it whould be huggly for long names and because
listname already exists in breadscrumbs and on top of the table.
It also adds autocomplete="off" on barcode input because there can be
problems with a scanning device.

Test instructions:
1. Create a list
2. Make sure you have an object with an assigned barcode
3. Go to the list
   => The barcode entry interface should be at left and has the focus
4. Enter the barcode and press enter (or use a scanner)
   => The item is added to the list

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
This is a nice improvement, thanks!

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16893 - Missing closing tag disrupts patron checkouts page style
Katrin Fischer [Mon, 11 Jul 2016 20:56:11 +0000 (22:56 +0200)]
Bug 16893 - Missing closing tag disrupts patron checkouts page style

Same fix as for the details page: checkouts page is very italic
when there is a restriction with a comment on the patron
account.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16893: Missing closing tag disrupts patron detail page style
Owen Leonard [Mon, 11 Jul 2016 12:51:12 +0000 (08:51 -0400)]
Bug 16893: Missing closing tag disrupts patron detail page style

A missing closing </i> causes the the patron detail page to be in all
italics if the patron has a restriction message. This patch corrects it.

To test, apply the patch and locate a patron who has a restriction
message. The restriction message should be in italics but the rest of
the page should display normally.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Rest of the page displayed normally

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16844: (follow-up of 15656) Remove export of GetMemberRelatives from C4::Members
Jonathan Druart [Mon, 4 Jul 2016 11:25:16 +0000 (12:25 +0100)]
Bug 16844: (follow-up of 15656) Remove export of GetMemberRelatives from C4::Members

Bug 15656 removed the C4::Members::GetMemberRelatives subroutine but the
module still exports it.

Test plan:
  git grep GetMemberRelatives
should not return any results.

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16813: Allow empty string for OPACBaseURL
Jonathan Druart [Mon, 27 Jun 2016 12:32:31 +0000 (13:32 +0100)]
Bug 16813: Allow empty string for OPACBaseURL

The pref is prefixed by 'http://', but it should not when the pref is
set to an empty string.
This will fix the bug raised on bug 14790 comment 14.

Test plan:
Empty OPACBaseURL and confirm that it's save as it in DB

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
OPACBaseURL is saved up empty. Prefix http:// is not saved anymore

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14138: Patroncard: Warn user if PDF creation fails
Marc Véron [Tue, 5 Jul 2016 17:23:59 +0000 (19:23 +0200)]
Bug 14138: Patroncard: Warn user if PDF creation fails

Change patroncards/create-pdf.pl to redirect with an error message
instead of writing an invalid pdf that does not open in pdf viewer.

To test:
- Apply patch

- Test that pdf creator behaves as before (with valid batches and
  patron lists)

- While testing, copy pdf link address from window with title 'Click
  the following link(s) to download...'

- Open another staff client browser tab

- Paste link to browser address field, change batch id rsp. patron
  list id to an invalid value and submit

- The window should redirect to cgi-bin/koha/patroncards/create-pdf.pl
  and display an error message

- Bonus test 1: Create an empty patron list and test patron card
  creation. You should get an error message as appropriate.

- Bonus test 2: Use a link with params like the following:
  ...create-pdf.pl?borrower_number=61&template_id=2&layout_id=1&start_card=1
  Verify that you can create a pdf with a valid borrower_number and that
  you get the error message with an invalid borrower number

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16890: Make TestBuilder generate date for date columns (and not datetime)
Jonathan Druart [Sat, 9 Jul 2016 14:56:32 +0000 (15:56 +0100)]
Bug 16890: Make TestBuilder generate date for date columns (and not datetime)

TestBuilder should not generate datetime for date columns, but only for
datetime and timestamp columns.

Test plan:
Make sure the change in t/db_dependent/TestBuilder.t are consistent.
Before this patch, 1 of the 2 tests should fail.
After this patch applied, they both should pass.

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16845: Remove unused C4::Members::ModPrivacy
Jonathan Druart [Mon, 4 Jul 2016 12:22:18 +0000 (13:22 +0100)]
Bug 16845: Remove unused C4::Members::ModPrivacy

This subroutine is no longer in used and can be removed safely

Test plan:
  git grep ModPrivacy
should not return any occurrences.

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16810: Fines note not showing on checkout
Marc Véron [Mon, 4 Jul 2016 12:30:24 +0000 (14:30 +0200)]
Bug 16810: Fines note not showing on checkout

Fines did not show on patron checkout and detail pages unless amout
was greater than syspref NoIssueCharges.

This patch fixes the logic in
koha-tmpl/intranet-tmpl/prog/en/includes/blocked-fines.inc

Additionally, it changes links to buttons and makes some small
text changes to ease translation.

To test:
- Apply patch
- Display checkout or detail page and verify proper display for
   a patron who has
   - no fines (no message)
   - fines not exceeding syspref NoissueCharges (message)
   - fines exceeding syspref NoIssueCharges (message)

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16682: (followup) Fix display if Batch patron modification tool does not get...
Marc Véron [Tue, 5 Jul 2016 22:27:30 +0000 (00:27 +0200)]
Bug 16682: (followup) Fix display if Batch patron modification tool does not get any patrons

Format message as proposed in comment #8

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16682: Fix display if Batch patron modification tool does not get any patrons
Marc Véron [Tue, 5 Jul 2016 00:10:55 +0000 (02:10 +0200)]
Bug 16682: Fix display if Batch patron modification tool does not get any patrons

To reproduce:
- Go to Tools->Batch patron modification
- Submit without filling any of  "Use a file", "Or use a patron list",
  "Or list card numbers..." or use a patron lists with zero members
Result: Screen without any information

To test:
- Apply patch
- Repeat steps above
- Verify that you get a nice message
- Verify that the tool works as before
  - with invalid card numbers only
  - with valid and invalid card numbers
  - with valid card numbers only

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006: [QA Follow-up] Only handle login requests in raw_transport
Marcel de Rooy [Wed, 13 Jul 2016 09:59:28 +0000 (11:59 +0200)]
Bug 15006: [QA Follow-up] Only handle login requests in raw_transport

Although mainly hypothetical, it would still be possible to get
response from the server for an acs resend request. (This exception
is allowed in MsgType::handle.)
I also noticed that the response may well be a message from an older
session still.
This patch just removes that exception by only passing login requests
to sub handle in the raw_transport loop.

Test plan:
[1] Verify normal login procedure for raw.
[2] Check a few acs resend requests in raw. They should terminate without
    a response.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006: [QA Follow-up] Satisfy qa tools with one tab less
Marcel de Rooy [Tue, 12 Jul 2016 13:48:34 +0000 (15:48 +0200)]
Bug 15006: [QA Follow-up] Satisfy qa tools with one tab less

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006 Correct indentation of EXPORTs in Sip.pm
Colin Campbell [Wed, 6 Jul 2016 14:25:21 +0000 (15:25 +0100)]
Bug 15006 Correct indentation of EXPORTs in Sip.pm

Removed tabs and used spaces consistently
Used 'use base' to remove unnecessary BEGIN sub and
explicit setting of ISA at application level

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006: Centralize timeout logic and allow zero client timeout
Marcel de Rooy [Wed, 6 Jul 2016 14:14:45 +0000 (15:14 +0100)]
Bug 15006: Centralize timeout logic and allow zero client timeout

Moving timeout logic to one routine (with unit test).

This further implements two suggestions from Kyle and Larry:

[1] You could use a client_timeout of 0 to specify no timeout at all.
[2] Have the client_timeout default to the timeout if not defined.

Test plan:
[1] Run t/db_dependent/SIP/SIPServer.t.
[2] Test login timeout for raw and telnet.
[3] Check ACS status message for timeout value. Should match policy
    timeout from institution.
[4] Test client timeout (zero and non-zero).
[5] Remove client timeout. Test fallback to service.
[6] Remove service timeout too. Test fallback to 30 at login.

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Amended to incorporate Srdjan's suggestion to move get_timeout to
SIPServer.pm; this requires some additional mocking in the unit test.
And even makes the test db dependent, as documented.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006: Introduce client_timeout in SIPconfig.xml
Colin Campbell [Fri, 20 Nov 2015 12:12:48 +0000 (12:12 +0000)]
Bug 15006: Introduce client_timeout in SIPconfig.xml

Most selfchecks have persistent connections and send a
periodic status request at intervals (approx every 5mins appears
the norm) The timeout was dropping connections by default every 30secs
which for the client appears as a very flakey network.

This patch adds a separate parameter client_timeout that can be
used if you do want to force a disconnect if the client sends
no requests for a period. The sample config sets it to 600, but you
can also define a 0 value meaning no timeout. If the parameter is not
defined, it will fallback to service timeout.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Restored this patch from Colin in order to separate it from the
get_timeout patch. Adjusted the commit message slightly.
The original value of 600 from Colin's earlier patch may give less
discussion than setting to 0 (no timeout) in a later proposal.

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006 Remove tabs from sip_protocol_loop
Colin Campbell [Tue, 5 Jul 2016 09:36:31 +0000 (10:36 +0100)]
Bug 15006 Remove tabs from sip_protocol_loop

Remove the tabs causing inconsistent indentation
of sip_protocol_loop and replace with spaces

Reimplements the renaining parts of Marcel de Rooy's
original QA patch

No logic changes in this patch - layout only

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15006 Drop raw connection if login fails
Colin Campbell [Mon, 4 Jul 2016 15:13:16 +0000 (16:13 +0100)]
Bug 15006 Drop raw connection if login fails

raw_connection was not behaving correctly if an invalid string was
passed or a login failed.
It was not checking that the login succeeded ( it checked that account
existed not that it contained data and it existed even if login failed)
and so failed logins instead of aborting immediately fell through into
the sip_protocol_loop, forcing that to timeout invalid connections.
It now checks that account has id set and returns if not.

The timeout alarm is now set on the while loop, in normal running this
should not be triggered as the socket is opened and the first data
should be a login message and the while loop should only iterate once,
but lets not go into an infinite loop due to unforeseen circumstances.

I have reindented the routine as the flow was not clear (the while was
not indented at all.

Also if using Net::Server::PreFork when a new connection comes in you
may be handed the the successful login parameters from a preceding call.
Because of this you could successfully transmit transactions and Koha
would carry them out without having received a valid login ( and
possibly with the wrong account details!) We now delete any existing
account for new connections.

NB: This patch requires that the patch for bug 13807 has been applied

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 12178: Fix tests not to depend on dateformat syspref
Jonathan Druart [Tue, 21 Jun 2016 11:31:40 +0000 (12:31 +0100)]
Bug 12178: Fix tests not to depend on dateformat syspref

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 12178: Tests for changes to claimed serial status
Florent Mara [Tue, 24 May 2016 02:10:32 +0000 (14:10 +1200)]
Bug 12178: Tests for changes to claimed serial status

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Amended patch: Remove trailing spaces

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 12178: Update serial status to "claimed" when exporting to CSV
Jonathan Druart [Tue, 28 Apr 2015 15:00:44 +0000 (17:00 +0200)]
Bug 12178: Update serial status to "claimed" when exporting to CSV

On the same way as late issues, the serial status should be updated to
'claimed' when the issues as exported as csv.

QA note: The updateClaim and UpdateClaimdateIssues subroutine did almost the
same thing, I kick the second on off to centralize the code.

Test plan:
1/ Export some late issues as CSV (serials/claims.pl).
2/ Refresh the page (the export does not do it) and confirm that the
status, the claim date and the claim count have been updated.
3/ Select some others issues, select a notice and send the notification.
Confirm that the behavior is the same.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 2735: CSS changes
Jonathan Druart [Thu, 9 Jun 2016 15:42:27 +0000 (16:42 +0100)]
Bug 2735: CSS changes

Signed-off-by: Nicole C Engard <nengard@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 2735: Fix authority search pagination at the OPAC
Jonathan Druart [Thu, 9 Jun 2016 15:39:56 +0000 (16:39 +0100)]
Bug 2735: Fix authority search pagination at the OPAC

The authority search pagination displays only 15 pages, even when there
are more.
To fix that, this patch mimic the authorities-home.pl intranet script to
manage the pagination.

Test plan:
Without this patch, do some authority search and click on different
pages.
Apply this patch, redo the same search and make sure the same records
are displayed (i.e. confirm that the pagination still works as before).

Signed-off-by: Nicole C Engard <nengard@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16920: sysprefs.sql - missing comma for MaxOpenSuggestions
Mark Tompsett [Thu, 14 Jul 2016 02:46:17 +0000 (22:46 -0400)]
Bug 16920: sysprefs.sql - missing comma for MaxOpenSuggestions

TEST PLAN
---------
1) back up DB
2) drop database koha_library;
3) create database koha_library;
4) run web browser install, choose ALL defaults
   -- notice the SQL syntax warning.
5) apply patch
6) repeat steps 2-4
   -- notice SQL syntax warning is gone.
7) run koha qa test tools
8) restore db

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16917 - Error when importing patrons, Column 'checkprevcheckout' cannot be null
Kyle M Hall [Wed, 13 Jul 2016 15:41:30 +0000 (15:41 +0000)]
Bug 16917 - Error when importing patrons, Column 'checkprevcheckout' cannot be null

Error:
DBIx::Class::Storage::DBI::_dbh_execute(): Column 'checkprevcheckout'
cannot be null at C4/Members.pm line 697

Test Plan:
1) Attempt to import a patron via csv
2) Note the error
3) Apply this patch
4) Repeat the import
5) No error!

NOTE: Given that all the other tests ran (comment #2), except
      those in comment #3, I resorted to following the test plan
      above using the attachment provided in comment #5. I
      believe the issues in comment #3 constitute other bugs
      which need fixing and are unrelated this bug. Applying the
      patch does resolve the error triggered, and the code is
      good.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16166: Fix t/Cache.t tests
Jacek Ablewicz [Tue, 26 Apr 2016 07:04:17 +0000 (09:04 +0200)]
Bug 16166: Fix t/Cache.t tests

Thou shalt not forget to include changes made in the t/Cache.t
in the patch set.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
4 years agoBug 16166: Improve L1 cache performance and safety
Jacek Ablewicz [Tue, 26 Apr 2016 06:43:12 +0000 (08:43 +0200)]
Bug 16166: Improve L1 cache performance and safety

Bug 16044 introduced two-level caching mechanism to Koha::Cache. By
default, get_from_cache() returns a deep copy of the data structures
stored in L1 cache (aka "safe mode"). For extremely big and/or complex
data structures (like MARC framework hash-of-hashes-of-hashes returned
by GetMarcStructure() ), deep-cloning is currently sub-optimal;
this patch addresses that particular issue. It also provides an
ability to intermix "safe" and "unsafe" cache feches, in such
way that they don't interfere with each other (i.e., eliminating
the risk involved with "unsafe" calls possibly compromising
further "safe" calls).

Test plan:

1) apply patch
2) flush L2 cache if necessary (restart memcached daemon)
3) profile GetMarcStructure() calls before / after patch, e.g. by
running some script which calls it often (like catalogue search
w/ XSLT processing turned on, etc.) - GetMarcStructure() should be
faster than before, in all possible circumstances (eg. 18 msec
per call -> 10 msec p/call)
4) after testing, before returning to the master branch, flush L2 cache
again (restart memcached daemon) - otherwise all system preferences
returned from L2 cache would be suffixed with '-CF0'

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
4 years agoBug 13691: Add changes for 3.22
Jonathan Druart [Fri, 25 Mar 2016 17:04:14 +0000 (17:04 +0000)]
Bug 13691: Add changes for 3.22

To test:
Run the tests
t/db_dependent/selenium/basic_workflow.t

After you have set up selenium following the tests in the previous patch

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
4 years agoBug 13691: Add basic selenium script
Jonathan Druart [Tue, 10 Feb 2015 15:07:31 +0000 (16:07 +0100)]
Bug 13691: Add basic selenium script

This script has been used to compare 3.16.x and 3.18.x performances on
bug 13690.

What it does:
- Go on the mainpage and process a log in
- Create a patron category
- Create a patron
- Add 3 items
- check the 3 items out to the patron
- check the 3 items in

How to use it?

$ wget https://selenium-release.storage.googleapis.com/2.53/selenium-server-standalone-2.53.0.jar

$ vim /etc/apt/sources.list.d/firefox.list
  deb http://packages.linuxmint.com debian import
$ apt-get update
$ apt-get install firefox
$ sudo apt-get install xvfb

$ SELENIUM_PATH=/home/koha/tools/selenium-server-standalone-2.53.0.jar
$ Xvfb :1 -screen 0 1024x768x24 2>&1 >/dev/null &
$ DISPLAY=:1 java -jar $SELENIUM_PATH

perl t/db_dependent/selenium/basic_workflow.t

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Note the pages have changed so the tests will not all pass.
Also you need Selenium::Remote::Driver installed and staffClientBaseURL
must be set

I will change the tests in a follow up patch.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
4 years agoBug 13691: Remove existing selenium scripts
Jonathan Druart [Tue, 10 Feb 2015 15:07:16 +0000 (16:07 +0100)]
Bug 13691: Remove existing selenium scripts

They are not usable.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
4 years agoBug 13807 Rework main input loop in SIPServer
Colin Campbell [Fri, 6 Mar 2015 11:57:09 +0000 (11:57 +0000)]
Bug 13807 Rework main input loop in SIPServer

Debugging various problems in SIPServer and control of it, found it
could loop on unread buffers (e.g. the LF of a CRLF if it was only
expecting CR) making it unresponsive to signals.
Reworked the input loop with an eye to removing unnecessary whiles
and replacing the while(1) by a while( connection valid)
Enhanced the timeout code by wapping in an eval.
Moved the logic from SIP_read_packet into the server itself
Hopefully this makes the already baroque code easier to navigate
and it did seem the server was the logical place for this
Removed no longer iused SIP_read_packet from Sip.pm

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16866: Catch warning t/db_dependent/Languages.t
Mark Tompsett [Wed, 6 Jul 2016 19:19:46 +0000 (15:19 -0400)]
Bug 16866: Catch warning t/db_dependent/Languages.t

TEST PLAN
---------
1) prove t/db_dependent/Languages.t
   -- noisy output
2) apply patch
3) prove t/db_dependent/Languages.t
   -- no noise
4) run koha qa test tools.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
No noisy output

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16819: Remove use of map
Jonathan Druart [Sun, 3 Jul 2016 14:58:16 +0000 (15:58 +0100)]
Bug 16819: Remove use of map

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16819: C4::Members::DelMember should use Koha::Holds to delete holds
Tomas Cohen Arazi [Tue, 28 Jun 2016 13:18:48 +0000 (10:18 -0300)]
Bug 16819: C4::Members::DelMember should use Koha::Holds to delete holds

This patch makes C4::Members::DelMember proprely use Koha::Holds to delete
holds. This is important as holds actions are started to be logged.

To reproduce:
- Apply the patch
- Run:
  $ prove t/db_dependent/Members.t
=> SUCCESS: Tests pass
- Sign off :-D

Sponsored-by: NEKLS
Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
All tests pass successfully

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16819: Unit tests for C4::Members::DelMember
Tomas Cohen Arazi [Tue, 28 Jun 2016 13:57:38 +0000 (10:57 -0300)]
Bug 16819: Unit tests for C4::Members::DelMember

The C4::Members::DelMember function actually deletes reserves, and it is
not properly tested.

To test:
- Apply the patch
- Run:
  $ prove  t/db_dependent/Members.t
=> SUCCESS: Tests pass
- Sign off

Sponsored-by: NEKLS
Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16805: Log in with database admin user breaks OPAC
Mark Tompsett [Thu, 23 Jun 2016 18:51:26 +0000 (14:51 -0400)]
Bug 16805: Log in with database admin user breaks OPAC

TEST PLAN
---------
1) Apply Jonathan's test patch
2) prove t/db_dependent/Letters.t
   -- dies before finishing tests
3) Apply second test patch
4) prove t/db_dependent/Letters.t
   -- dies before finishing tests
   -- 'addalert' is changed to 'getalert'
5) Log into OPAC with database admin user.
   -- see error given in comment #0
6) Apply this patch
7) prove t/db_dependent/Letters.t
   -- says 'getalert'
   -- all tests pass.
8) Log into OPAC with database admin user.
   -- logs in, but gives warning with a nice logout button.
9) run koha qa test tools.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
No kaha qa errors
In debian display diferent error:
Can't use an undefined value as an ARRAY reference at /usr/lib/perl5/DBI.pm line 2054.
Works as advertised

NOTE: Revised test plan, as Jonathan added useful test case.
      Works as I've tested above.
      Hector tested older test plan which was steps
      5,6,8 and 9.

      Revised test plan again while tweaking to address comment #9.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16805: Tweak new test message to say getalert
Mark Tompsett [Fri, 24 Jun 2016 16:28:27 +0000 (12:28 -0400)]
Bug 16805: Tweak new test message to say getalert

It said 'addalert', which is likely a cut-paste typo.
Plus, let's keep running the other tests if that one
goes bad.

TEST PLAN
---------
1) Apply Jonathan's test patch
2) prove t/db_dependent/Letters.t
   -- dies before finishing tests
3) Apply this test patch
4) prove t/db_dependent/Letters.t
   -- still dies before finished tests,
      'addalert' now is 'getalert' in message.
5) run koha qa test tools.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16805: Add test to getalert (no param passed)
Jonathan Druart [Fri, 24 Jun 2016 16:02:59 +0000 (17:02 +0100)]
Bug 16805: Add test to getalert (no param passed)

TEST PLAN
---------
1) apply patch
2) prove t/db_dependent/Letters.t
   -- fails
3) run koha qa test tools

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16801 - Include Font Awesome Icons to check/unchek all in Administration > Librar...
Hector Castro [Wed, 22 Jun 2016 17:11:03 +0000 (11:11 -0600)]
Bug 16801 - Include Font Awesome Icons to check/unchek all in Administration > Library transfer limits

For purpose to uniformity and leave just one entry in .po files,
this patch change: Check all/Uncheck all -> to -> Select all/Clear all.
Also added Font Awesome icons.

To test:
-Go to Administration > Library transfer limits
-Notice about Check all/Uncheck all for "For all items types" and
 "Policy for:"
-Apply patch and refresh the screen
-Notice about the new Select all/Clear all links with their icons
-Confirm that all links work as expected

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16778: Replace usage of Greybox modals with Bootstrap modals
Owen Leonard [Wed, 1 Jun 2016 14:54:09 +0000 (10:54 -0400)]
Bug 16778: Replace usage of Greybox modals with Bootstrap modals

This patch is a proof-of-concept for replacing Greybox modals in
situations where in-modal page transitions happen. This one addresses
patron card export from the patron lists page.

To test you must have at least one patron lists containing patrons.

- Apply the patch and go to Patrons -> Patron lists.
- In the 'Actions' menu associated with your list, choose 'Print patron
  cards.' A modal window should be triggered.
- In the modal window, change settings as necessary and click the
  "Export" button.
- The modal should reload and display a link to download a PDF. Confirm
  that the PDF download works correctly and that the correct patron
  batch was processed.
- Repeat the process and confirm at each step that clicking the 'X'
  button or the 'Cancel' link dismisses the modal window.

To confirm that changes to the patron card print template has not
adversely affected printing patron cards from the patron card creator
page:

- Go to Tools -> Patron card creator.
- Choose Manage -> Card batches.
- Click 'Export' for any batch.
- Confirm that the Greybox modal still works correctly for patron card
  export.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16730 - Use member-display-address-style*-includes in moremember-brief.tt
Marc Véron [Tue, 14 Jun 2016 06:41:03 +0000 (08:41 +0200)]
Bug 16730 - Use member-display-address-style*-includes in moremember-brief.tt

To test:
- Apply patch
- Create a new patron with the same first and last name as an existing
  patron. This should trigger a duplicate warning message. Click the
  "View existing record" link to trigger a pop-up window with a patron
  detail brief view.
- Verify that the address information displays the same way as on the
  patron details screen (moremember.pl).
- Change syspref 'AddressFormat' and verify that the address displays
  as appropriate.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  Works as described: AddressFormat is taken into account on 'view exiting
  record' dialog box.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16677 - Use abbr for authorities linked headings
Fridolin Somers [Tue, 7 Jun 2016 07:27:15 +0000 (09:27 +0200)]
Bug 16677 - Use abbr for authorities linked headings

In authorities search results, UNIMARC flavour, linked headings are displayed
with a link type : BT, NT, UF, RT.

This patch adds a abbr tag around those acronyms to know there meaning :
BT = Broader Term
NT = Narrower Term
UF = Used For
RT = Related Term

Acronyms are used because there can be a lot of linked headings, using abbr
will display the complete text on mouse over.

Test plan :

- Use UNIMARC database
- Create an authority with :
250 $a Heading250a
450 $a Heading450a
550 $5 a $a Heading550a
550 $5 g $a Heading550g
550 $5 h $a Heading550h
- Save an index zebraqueue
- Go to intranet authorities search
- Search for "Heading250a"
- You see :
Heading250a
Heading250a
UF: Heading450a
RT: Heading550a ; BT: Heading550g ; NT: Heading550h
- Move your mouse over the acronyms, you see a tip with the complete text
- Same with opac authorities search

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  Works as described. Translatable.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16566 [Revised] 'Print slip' button formatting inconsistent
Owen Leonard [Mon, 23 May 2016 15:03:48 +0000 (11:03 -0400)]
Bug 16566 [Revised] 'Print slip' button formatting inconsistent

This patch modifies the style of some "print slip" links on the checkin
page to make them consistent with other buttons shown in dialogs.

This patch also removes the use of "onclick" in some places in favor of
defining events in the JavaScript.

To test apply the patch and go to Circulation -> Check in.

- Check in an item which belongs at another branch. You should see a
  dialog which asks the user to transfer the item. Confirm that the
  "Print slip" button looks correct and works correctly.

- Check in the same item again. You should see a different dialog which
  has both a "Print transfer slip" and "Cancel transfer" button. The
  "Print transfer slip" button should look correct and work correctly.

- Check in an item which is part of a rotating collection. (Or, if Bug
  16570 is still open, check in any item) You should see a dialog which
  notifies you that the item is part of a rotating collection. The
  "Print slip" button in this dialog should look correct and work
  correctly.

Followed test plan. Buttons appear as expected.
Signed-off-by: Marc Véron <veron@veron.ch>
Revision following QA: Removed redundant class attribute from the print
button tested in step 1.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16324: Move item search into header
Aleisha [Thu, 21 Apr 2016 22:49:29 +0000 (22:49 +0000)]
Bug 16324: Move item search into header

This patch makes the Search button in the header into a dropdown that holds the Advanced search and the Item search.
I have rewritten this patch to be independent of Bug 16323 since that patch is so controversial.

To test:
1) Confirm that Advanced search and Item search are both under the 'Search' dropdown menu in the header and both links work as expected

Sponsored-by: Catalyst IT
Signed-off-by: Claire Gravely <c.gravely@arts.ac.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Note that the CAN_user_catalogue test is useless. If a librarian does
not have it, (s)he cannot access to the staff interface.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16271: Allow more filters on /api/v1/holds
Julian Maurice [Fri, 15 Apr 2016 08:49:29 +0000 (10:49 +0200)]
Bug 16271: Allow more filters on /api/v1/holds

borrowernumber parameter is no longer required and you can filter on
every column of reserves table

Some example requests
- GET /api/v1/holds
- GET /api/v1/holds?biblionumber=123
- GET /api/v1/holds?borrowernumber=456
- GET /api/v1/holds?priority=0&found=W

Signed-off-by: Benjamin Rokseth <benjamin.rokseth@kul.oslo.kommune.no>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15172: (follow-up)Serial enumchron/sequence not visible when returning/checking...
Hector Castro [Wed, 2 Dec 2015 16:56:25 +0000 (10:56 -0600)]
Bug 15172: (follow-up)Serial enumchron/sequence not visible when returning/checking in Items

Display br and span tag only if the value enumchron exists.

To test
-Apply patches
-Follow the previous test plan
-Checkin whichever material (e.g., book) without sequence or enumchrom
-Open up source code for checkin page, search under title and
verify that b and span tags do not appear

Signed-off-by: Alain et Aurélie <aurelie.berut@enssib.fr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15172: Serial enumchron/sequence not visible when returning/checking in Items
Olli-Antti Kivilahti [Wed, 11 Nov 2015 11:23:15 +0000 (13:23 +0200)]
Bug 15172: Serial enumchron/sequence not visible when returning/checking in Items

Displays the items.enumchron-column in returns.pl when checking in Items.

Rewording commit

To test:
-Checkout a barcode for serial with items generated in
Serials >  New subscription or item in DB with items.enumchron-column
-Checkin the same barcode, the table Checked-in items will appear without
information about "Publications details (Vol. 400, No. 32)"
-Apply patch
-Checkout and checkin another item of the same serial title
-Notice about the Vol. 400, No. 32 below the serial title.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
items.enumchron-column display successful in returns.pl (Home>Circulation>
Check in)
NOTE: Patch rebased on master

Signed-off-by: Alain et Aurélie <aurelie.berut@enssib.fr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 - DBRev 15128
Kyle M Hall [Fri, 8 Jul 2016 14:11:42 +0000 (14:11 +0000)]
Bug 15128 - DBRev 15128

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128: Do not display "New suggestion" if limit has just been reached
Jonathan Druart [Fri, 1 Jul 2016 16:00:39 +0000 (17:00 +0100)]
Bug 15128: Do not display "New suggestion" if limit has just been reached

If limit is X and patrons has X-1 pending suggestions, when a new one is
added, the "New suggestion" should not been added.
to avoid another call to SearchSuggestions, we assume than the
suggestion has been correctly added.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128: Revert Display all purchase suggestions whether or not suggestion was...
Jonathan Druart [Fri, 1 Jul 2016 15:55:39 +0000 (16:55 +0100)]
Bug 15128: Revert Display all purchase suggestions whether or not suggestion was added

This does not work correctly and should be handle on another bug report.
The behavior existed prior to this patchset.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 - (QA Followup) Don't get patrons suggestions if limit not set
Nick Clemens [Fri, 1 Jul 2016 15:39:00 +0000 (11:39 -0400)]
Bug 15128 - (QA Followup) Don't get patrons suggestions if limit not set

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 - (QA Followup) Fix use of 'my' variable causing loss of data
Nick Clemens [Fri, 1 Jul 2016 15:36:02 +0000 (11:36 -0400)]
Bug 15128 - (QA Followup) Fix use of 'my' variable causing loss of data

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 (QA Followup) Display all purchase suggestions whether or not suggestion...
Nick Clemens [Thu, 30 Jun 2016 14:20:39 +0000 (10:20 -0400)]
Bug 15128 (QA Followup) Display all purchase suggestions whether or not suggestion was added Correct enforcement of 0 limit

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 - Followup
Nick Clemens [Mon, 20 Jun 2016 20:04:21 +0000 (16:04 -0400)]
Bug 15128 - Followup

Only check limit for signed in borrower
Show all suggestions after a new one is added

Signed-off-by: Barbara Walters <bwalters@ncrl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 [QA Followup 2] - Only count pending suggestions for the limit
Kyle M Hall [Mon, 20 Jun 2016 19:25:12 +0000 (19:25 +0000)]
Bug 15128 [QA Followup 2] - Only count pending suggestions for the limit

Signed-off-by: Barbara Walters <bwalters@ncrl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 [QA Followup] - Make suggestion display after being added
Kyle M Hall [Mon, 20 Jun 2016 16:44:38 +0000 (16:44 +0000)]
Bug 15128 [QA Followup] - Make suggestion display after being added

Also fixes the issue that the add suggestion link would sometimes
show even if the patron could not make an additional suggestion.

Signed-off-by: Barbara Walters <bwalters@ncrl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 15128 - Add ability to limit patrons open purchase suggestions
Nick Clemens [Tue, 14 Jun 2016 20:47:43 +0000 (16:47 -0400)]
Bug 15128 - Add ability to limit patrons open purchase suggestions

To test:
1 - Define a number of MaxOpenSuggestions
2 - Add some suggestions for a patron
3 - Note they cannot add any more suggestions if limit is reached
4 - Delete a suggestion and note you can add another
5 - Add them to limit again
6 - Accept a suggestion in the staff client and note user can add more
7 - Repeat above with rejecting or deleting
8 - Sign off.

Sponsored by:
    North Central Regional Library (http://ncrl.org/)

Signed-off-by: Barbara Walters <bwalters@ncrl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14902 - Fix issues with updatedatabase.pl
Kyle M Hall [Fri, 8 Jul 2016 14:01:41 +0000 (14:01 +0000)]
Bug 14902 - Fix issues with updatedatabase.pl

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14902 - DBRev 16.06.00.009
Kyle M Hall [Fri, 8 Jul 2016 13:59:37 +0000 (13:59 +0000)]
Bug 14902 - DBRev 16.06.00.009

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14902 - Add qualifier menu to staff side "Search the Catalog"
Nick Clemens [Fri, 3 Jun 2016 16:52:01 +0000 (12:52 -0400)]
Bug 14902 - Add qualifier menu to staff side "Search the Catalog"

To test:
1 - Apply patch and update dabase
2 - Check that Search the Catalog links throughout the staff interface
have not changed
3 - Set "IntranetCatalogSearchPulldown" to 'Show'
4 - Verify that 'Search the catalog' links through staff client now have
a dropdwon to  select search index

I think viewing one file each that includes updated header should be
sufficient, but please check as many as you can:

cgi-bin/koha/admin/aqbudgetperiods.pl
cgi-bin/koha/admin/admin-home.pl
cgi-bin/koha/cataloguing/addbooks.pl
cgi-bin/koha/circ/returns.pl
cgi-bin/koha/circ/circulation-home.pl
cgi-bin/koha/admin/cities.pl
cgi-bin/koha/admin/aqcontract.pl
cgi-bin/koha/admin/currency.pl
cgi-bin/koha/mainpage.pl
cgi-bin/koha/tools/letter.pl
cgi-bin/koha/members/members-home.pl
cgi-bin/koha/admin/categories.pl
cgi-bin/koha/admin/preferences.pl
cgi-bin/koha/admin/printers.pl
cgi-bin/koha/serials/serials-home.pl
cgi-bin/koha/acqui/newordersuggestion.pl
cgi-bin/koha/admin/z3950servers.pl

Sponsored by:
  Northeast Kansas Library System (http://nekls.org/)

Signed-off-by: Heather Braum <hbraum@nekls.org>
Signed-off-by: Barton Chittenden <barton@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14790 [QA Followup] - Don't show links unless OPACBaseURL is set
Kyle M Hall [Thu, 23 Jun 2016 14:45:34 +0000 (14:45 +0000)]
Bug 14790 [QA Followup] - Don't show links unless OPACBaseURL is set

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14790 - Add OPAC view link to Serials detail
Kyle M Hall [Wed, 15 Jun 2016 14:30:18 +0000 (14:30 +0000)]
Bug 14790 - Add OPAC view link to Serials detail

Test Plan:
1) Apply this patch
2) Browse to subscription-detail.pl for a given serial
3) Note the new "OPAC view" link
4) Click the link, a new tab should open up showing the record
   details for that record in the OPAC

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14790 - Add OPAC view link to items editor
Kyle M Hall [Wed, 15 Jun 2016 13:55:28 +0000 (13:55 +0000)]
Bug 14790 - Add OPAC view link to items editor

Test Plan:
1) Apply this patch
2) Find a record and open the items editor for it
3) Click the "Actions" button for an item
4) Choose the option "OPAC view"
5) A new browser tab should open to the OPAC details page for the record
   whose items you are editing.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14790 - Add Opac view link to search results
Kyle M Hall [Wed, 15 Jun 2016 12:27:40 +0000 (12:27 +0000)]
Bug 14790 - Add Opac view link to search results

Test Plan:
1) Apply this patch
2) Perform a staff catalog search
3) Note the new "OPAC view" link
4) Click the link, it should open a new tab to the OPAC details for that
   record.

This works fine except that it doesn't open in a new tab. I don't think
it's the fault of the patch, but of browser.js messing with links again
(See Bug 11937).

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14757: Remove obsolete occurrence of is_tt
Jonathan Druart [Tue, 28 Jun 2016 13:37:57 +0000 (14:37 +0100)]
Bug 14757: Remove obsolete occurrence of is_tt

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14757 [QA Followup] - Don't overload new for Modifications
Kyle M Hall [Mon, 27 Jun 2016 13:43:59 +0000 (13:43 +0000)]
Bug 14757 [QA Followup] - Don't overload new for Modifications

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14757: Add tests for new modules
Jonathan Druart [Fri, 24 Jun 2016 14:28:43 +0000 (15:28 +0100)]
Bug 14757: Add tests for new modules

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14757 [QA Followup] - Add Unit Tests
Kyle M Hall [Fri, 22 Jan 2016 12:43:12 +0000 (12:43 +0000)]
Bug 14757 [QA Followup] - Add Unit Tests

Signed-off-by: Sean McGarvey <seanm@pascolibraries.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 14757 - Allow the use of Template Toolkit syntax for slips and notices
Kyle M Hall [Wed, 2 Dec 2015 13:32:44 +0000 (13:32 +0000)]
Bug 14757 - Allow the use of Template Toolkit syntax for slips and notices

This bug is the beginning of a conversion from our current bespoke
syntax for slips and notices to Template Toolkit syntax.

This patch is the initial seed which will evolve over time.
With this addition, we can take advantage of our Koha Objects
to greatly simplify the processing of Slips and Notices over time.

Test Plan:
1) Apply this patch
2) Ensure you have the default CHECKOUT notice
3) Check out and return an item for a patron
4) Note the text of the CHECKOUT notice
5) Replace your CHECKOUT notice with the following:

The following items have been checked out:
----
[% biblio.title %]
----
Thank you for visiting [% branch.branchname %].

6) Repeat step 3
7) Note the CHECKOUT notice text matches the previous CHECKOUT notice text

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
New notice syntax works, no koha-qa errors

Signed-off-by: Sean McGarvey <seanm@pascolibraries.org>
Bug 14757 [QA Followup] - Change method type() to _type() for Koha objects

Signed-off-by: Sean McGarvey <seanm@pascolibraries.org>
Bug 14757 [QA Followup] - Change all references to Koha::Borrower to Koha::Patron

Signed-off-by: Sean McGarvey <seanm@pascolibraries.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 10760: (followup) Move street type after address
Marc Véron [Mon, 20 Jun 2016 12:59:11 +0000 (14:59 +0200)]
Bug 10760: (followup) Move street type after address

As of comment #7

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 10760: Alternate Address: Display street number and street type
Marc Véron [Tue, 14 Jun 2016 08:57:52 +0000 (10:57 +0200)]
Bug 10760: Alternate Address: Display street number and street type

This patch displays alternate streetnumber and street type on patron's
detail page.

To test:
- Apply patch
- Verify that the alternate address information displays follwing the
  setting in syspref AddressFormat and contains street type and
  street number (as appropriate)

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 10760: Alternate Address: Make street number and street type editable
Marc Véron [Tue, 14 Jun 2016 08:14:29 +0000 (10:14 +0200)]
Bug 10760: Alternate Address: Make street number and street type editable

Table 'borrowers' contain columns B_streetnumber and B_streettype.
This patch makes them editable for alternate address.

To test:
- Apply patch
- Edit a patron's details
- Verify that in edit mode for Alternate address, the fields 'street type' and 'street number' appear
  and follow the settings in sysprefs AddressFormat, BorrowerMandatoryField, BorrowerUnwantedField
- Verify that the values are saved correctly.

Note: A second patch will follow to manage the display of street number and street type
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 9259: Use is instead of is_deeply
Jonathan Druart [Wed, 6 Jul 2016 15:57:05 +0000 (16:57 +0100)]
Bug 9259: Use is instead of is_deeply

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 9259: Ability to delete a staged file once it has been cleaned
Aleisha [Tue, 29 Mar 2016 00:04:36 +0000 (00:04 +0000)]
Bug 9259: Ability to delete a staged file once it has been cleaned

To test:
1) Go to Tools -> Staged MARC Management and clean a file. If you have no files to clean, go to 'Stage MARC for import' and upload one to clean following the necessary steps.
2) Confirm that once the file has been cleaned, the Action column now shows a Delete button. Confirm this button only shows for cleaned files.
3) Click the Delete button.
4) Confirm that clicking Cancel exits the pop-up message and does not delete the file.
5) Confirm that clicking OK refreshes the list of staged records and the one you just deleted is no longer on it (has been deleted). You can confirm this by checking for the file in mysql (SELECT * FROM import_batches WHERE import_batch_id = X;)
6) Run prove -v t/db_dependent/ImportBatch.t (have written unit tests for CleanBatch and DeleteBatch)

Sponsored-by: Catalyst IT
Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Catalyst sign off, so needs another one but YAY this is great.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 6906 - DBRev 16.06.00.008
Kyle M Hall [Fri, 8 Jul 2016 13:36:32 +0000 (13:36 +0000)]
Bug 6906 - DBRev 16.06.00.008

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 6906: Follow coding guidelines in terminology.
Alex Sassmannshausen [Mon, 4 Jul 2016 17:22:51 +0000 (19:22 +0200)]
Bug 6906: Follow coding guidelines in terminology.

* Koha/Patron.pm (wantsCheckPrevCheckout, doCheckPrevCheckout): Rename
  to...
  (wants_check_for_previous_checkout, do_check_for_previous_checkout):
  ...this.
* C4/Circulation.pm: Use new names.
* t/db_dependent/Patron/CheckPrevCheckout.t: Renamed to...
* t/db_dependent/Patron/Borrower_PrevCheckout.t: ...this.

Bug 6906: Fix POD reference to old method name.

* Koha/Patron.pm (wants_check_for_previous_checkout): Fix POD.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 6906: Add the warning message to the batch checkout
Jonathan Druart [Sun, 12 Jun 2016 10:42:48 +0000 (11:42 +0100)]
Bug 6906: Add the warning message to the batch checkout

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 6906: Tests - Do not assume CPL exists
Jonathan Druart [Sun, 12 Jun 2016 10:41:41 +0000 (11:41 +0100)]
Bug 6906: Tests - Do not assume CPL exists

Since bug 14878, tests must create the data they need to pass and not
assume they exist.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 6906 - show 'Borrower has previously issued...
Alex Sassmannshausen [Fri, 11 Mar 2016 14:00:01 +0000 (15:00 +0100)]
Bug 6906 - show 'Borrower has previously issued...

New feature: provide granular means to configure warnings about items
that have been issued to a particular borrower before, according to
their checkout history.

- Global syspref ('CheckPrevCheckout'), set to 'hardno' by default,
  allows users to enable this feature library wide.
- Per patron category pref allows libraries to create overrides per
  category, falling back on the global setting by default.
- Per patron pref allows switching the functionality on at the level
  of patron. Fall-back to category settings by default.

* Koha/Patron (wantsCheckPrevCheckout, doCheckPrevCheckout): New
  methods.
* C4/Circulation.pm (CanBookBeIssued): Introduce CheckPrevCheckout
  check.
* admin/categories.pl: Pass along checkprevcheckout.
* koha-tmpl/intranet-tmpl/prog/en/modules/admin/categories.tt: Expose
  CheckPrevCheckout per category setting.
* koha-tmpl/intranet-tmpl/prog/en/modules/preferences/patrons.pref:
  Expose CheckPrevCheckout syspref.
* koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt:
  Expose per patron CheckPrevCheckout preference.
* koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt: Expose
  per patron CheckPrevCheckout preference.
* koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt: Add
  'CHECKPREVCHECKOUT' confirmation message.
* installer/data/mysql/kohastructure.sql: Modify structure of
  'categories', 'borrowers', 'oldborrowers'.
* installer/data/mysql/sysprefs.sql: Add 'CheckPrevCheckout'.
* installer/data/mysql/atomicupdate/checkPrevCheckout.sql: New file.
* t/db_dependent/Patron/CheckPrevCheckout.t: New file with unit tests.

Test plan:
- Apply patch.
- Run updatedatabase.
- Regenerate Koha Schema files.
- Run the unit tests.
- Verify 'CheckPrevCheckout' is visible in Patrons sysprefs and can be
  switched to 'hardyes', 'softyes', 'softno' and 'hardno'.
  + Check out previously checked out items to a patron, checking the
    message appears as expected.
- Verify no 'Check previous checkouts' setting appears on the borrower
  category pages if the syspref is set to a 'hard' option.
- Verify 'Check previous checkouts' setting appears on the borrower
  category pages and can be modified per borrower category.
  + Issue previously issued items to a borrower, checking the message
    appears as expected (This setting should override the default
    setting if that is set to a 'soft' option).
- Verify no 'Check previous checkouts' setting appears on the individual
  borrower pages if the syspref is set to a 'hard' option.
- Verify 'Check previous checkouts' setting appears on individual
  borrower pages and can be modified.
  + Issue previously issued items to a borrower, checking the message
    appears as expected (This setting should override the category
    setting and the default setting if the latter is set to a 'soft'
    option).

Followed test plan, works as expected.
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16860: Remove the comment about the warning
Jonathan Druart [Thu, 7 Jul 2016 15:52:10 +0000 (16:52 +0100)]
Bug 16860: Remove the comment about the warning

It is no longer necessary.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16860: Catch warning t/db_dependent/ClassSource.t
Mark Tompsett [Wed, 6 Jul 2016 15:51:40 +0000 (11:51 -0400)]
Bug 16860: Catch warning t/db_dependent/ClassSource.t

$ prove t/db_dependent/ClassSource.t
t/db_dependent/ClassSource.t .. 3/24 attempting to use non-existent class sorting routine routine1
t/db_dependent/ClassSource.t .. ok
All tests successful.
Files=1, Tests=24,  1 wallclock secs ( 0.02 usr  0.00 sys +  0.66 cusr  0.02 csys =  0.70 CPU)
Result: PASS

The above warning might be scary to those unfamiliar with the test.
Add a test to catch the warning.

TEST PLAN
---------
1) prove t/db_dependent/ClassSource.t
   -- as above
2) apply patch
3) prove t/db_dependent/ClassSource.t
   -- no message
4) prove -v t/db_dependent/ClassSource.t
   -- test 13 is the new test
5) run koha qa test tools

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Workas as advertised

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16857: Check on item.branches makes more sense
Jonathan Druart [Thu, 7 Jul 2016 15:40:47 +0000 (16:40 +0100)]
Bug 16857: Check on item.branches makes more sense

The test should be on the existence of the item.branches
method/attribute

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16857 - patron-attr-types.tt: Get rid of warnings "Argument "" isn't numeric"
Marc Véron [Mon, 4 Jul 2016 09:37:33 +0000 (11:37 +0200)]
Bug 16857 - patron-attr-types.tt: Get rid of warnings "Argument "" isn't numeric"

To vrify:
- Go to Home > Administration > Patron attribute types
- Make sure you have some patron attribute types with no branches limitation
- For each attribute type you get a warning in intranet-error.log:
patron-attr-types.pl: Argument "" isn't numeric in numeric gt (>) at (...)/koha-tmpl/intranet-tmpl/prog/en/modules/admin/patron-attr-types.tt line 284.

To test:
- Appy patch
- Verify that warnings no longer appear in intranet-error.log

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16823 - Comment out koha-rebuild-zebra in koha-common.cron.d
Magnus Enger [Tue, 28 Jun 2016 08:45:08 +0000 (10:45 +0200)]
Bug 16823 - Comment out koha-rebuild-zebra in koha-common.cron.d

Bug 16190 enabled the indexer daemon by default for package installations.
This means that it is no longer necessary to set up koha-rebuild-zebra as
a cron job. This patch comments it out, so that people who might run into
bug 16814 can easily activate the cronjob again after de-activating the
indexer daemon.

To test:
Just read the diff and check that it makes sense.

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16803: Add Font Awesome Icons to "Select/Clear all" links to shelves.tt
Hector Castro [Thu, 23 Jun 2016 16:35:24 +0000 (10:35 -0600)]
Bug 16803: Add Font Awesome Icons to "Select/Clear all" links to shelves.tt

Add Font Awesome Icons to "Select/Clear all" links to shelves.tt
(Public and private lists)

To test:
-Apply patch
-Go to More -> Lists
-Create some Public and Private Lists
-See the contents of the list and notice about the new icons in
 "Select/Clear  all"

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16795 - Patron categories: Accept integers only for enrolment period and age...
Marc Véron [Wed, 22 Jun 2016 05:57:06 +0000 (07:57 +0200)]
Bug 16795 - Patron categories: Accept integers only for enrolment period and age limits

To test:
- Apply patch
- Clear browser cache
- Go to Home > Administration > Patron categories
- Create or edit a category
- Verify that field 'In months', 'Age required' and 'Upperage limit'
  accept digits only

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
4 years agoBug 16794: Group the 2 action buttons into the same column
Jonathan Druart [Sun, 3 Jul 2016 15:07:33 +0000 (16:07 +0100)]
Bug 16794: Group the 2 action buttons into the same column

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>