Commit graph

170 commits

Author SHA1 Message Date
38bddc0020 Bug 13415 - Prevent librarians from scanning multiple items into a single barcode field
It appears that some librarians will attempt to scan items as fast as
they can without checking to make sure the checkout was submitted and
the page reloaded properly. This can cause multiple barcodes to be
scanned into the barcode field if the person is fast enough.
This causes the checkout of both ( or more! ) items to fail.

Test Plan:
1) Apply this patch
2) Attempt to scan two or more items into the barcode field
   You can emulate this with a keybaord by hitting a few keys, then
   enter, then a few more keys, then enter again. The barcodes don't
   need to be valid for this test.
3) Note the dialog stating the barcode has been submitted and to please
   wait.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-12-19 17:41:11 -03:00
Marc Véron
955e836c9b Bug 13261 - Better check in message for patrons with indefinite restricition
This patch adds a better check in message for patrons with indefinite restriction.

To test:
Check out an item to a patron.
Add a manual restriction without expiry date to that patron.
Check in the item.

Without patch, the checkin message reads:
Reminder: Patron was earlier restricted until 9999-12-31

Apply patch and repeat steps above.
The message should now read:
Reminder: Patron has a restriction (no expiry date)

NOTE: Changed wording at two places following Owen's  suggestion.  New: "Patron
has an indefinite restriction"

Signed-off-by: Frederic Demians <f.demians@tamil.fr>

Thanks Marc for catching this case. I was thinking like you that the wording
sounded strange while playing with bug 13242. Merge the original patch and the
followup, containing a better wording, thanks to Owen comment.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as described, no problems found.
Passes tests and QA script.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-19 21:41:24 -03:00
Katrin Fischer
4824ddba41 Bug 12448: Follow-up: Only ask confirmation when rental charge > 0
To test:
- Check out an item with no rental charge
- Verify no confirmation message appears
- Check out an item with rental charge
- Verify rental charge shows

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-07 11:33:47 -03:00
mbeaulieu
1aab0ff3e3 Bug 12448: Ask for confirmation when checking out an item with rental fees
Sponsored-by: Ville de Victoriaville, QC

Confirmation box contents:

"Please confirm checkout"
"-Rental charge for this item: n"
[Yes, check out (Y)] [No, Don't Check Out (N)]

Test case A: Confirm checkout
1) Go to checkout user "X"'s checkout page.
2) Enter barcode for an item with rental fees.
3) Click the "Check out" button.
4) Confirmation box appears.
5) Click on the "Yes" button.
6) Item is added to checkout list.
7) Fees are added to the patron's account.

Test case B: Decline checkout
1) Go to checkout user "X"'s checkout page.
2) Enter barcode for an item with rental fees.
3) Click the "Check out" button.
4) Confirmation box appears.
5) Click the "No" button.
6) Checkout page goes back to its initial state.
7) Patron has no item checked out and no fees to pay.

Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
With the system preference RentalFeesCheckoutConfirmation
set to "don't ask" there is no change in behaviour.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-07 11:33:43 -03:00
bba3306d45 Bug 13183 - Improve visibility of automatic on-site checkout rule when OnSiteCheckoutsForce is on
This patch addresses the case where OnSiteCheckoutsForce is enabled and
the user is checking out to a patron who is blocked from checking out.
Instead of showing the 'specify due date' form (which is disabled) this
patch hides it and highlights the on-site checkout controls.

This patch adds some CSS and consolidates some redundant CSS.

To test, load a patron for checkout under the following conditions:

1. OnSiteCheckoutsForce is off and patron is not blocked from checkout
2. OnSiteCheckoutsForce is off, patron is blocked from checkout (for
   being expired or restricted).
3. OnSiteCheckoutsForce is on and patron is not blocked from checkout
4. OnSiteCheckoutsForce is on and patron is blocked from checkout

Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Checked these 4 conditions, plus that if a specified due date was allowed, that it was enforced.

I noted that the on-site checkouts seemed to take longer to process, but this probably isn't the place for that sort of complaint.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Small visual improvment for a new feature. No problems found.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-06 13:50:09 -03:00
Jonathan Druart
2aebc84cc8 Bug 13190: Refactor the checkouts table template code
This code is duplicated and should be centralised.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-06 10:00:42 -03:00
Jonathan Druart
47e2331bd0 Bug 13190: Reintroduce the checkouts export feature
Bug 11703 breaks the checkouts export feature.

To reproduce: Fill the ExportWithCsvProfile pref and go on the
circ/circulation.pl page. The export column appears, but not the export
button.

Test plan:
Go on the checkout list (circ/circulation.pl and members/moremember.pl)
and verify the export column and the export button appears.
If you click on the button, a file should be generated.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-06 10:00:30 -03:00
3af8ac071c Bug 13184 - Circulation template problems if OnSiteCheckouts is off but OnSiteCheckoutsForce is on
Checks in the circulation template for on-site checkouts preferences did
not take into account the possibility that someone might have
accidentally turned OnSiteCheckouts off but left OnSiteCheckoutsForce
turned on. This patch amends the template logic so that it works
correctly for various combinations of settings.

To test, apply the patch and test the following combinations of
circumstances.

Testing using both a patron who is blocked (expired, restricted, etc)
and a patron who is not blocked, test with...

1. OnSiteCheckouts is on, OnSiteCheckoutsForce is on
2. OnSiteCheckouts is off, OnSiteCheckoutsForce is on
3. OnSiteCheckouts is off, OnSiteCheckoutsForce is off
4. OnSiteCheckouts is on, OnSiteCheckoutsForce is off

Confirm that the checkout form is shown or not shown correctly according
to the preferences you have set. Confirm that the "Only on-site
checkouts are allowed" message is only shown in case #1.

Note: This patch includes whitespace changes, so please diff
accordingly.

Signed-off-by: Nick Clemens <nick@quecheelibrary.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested on top of 10860 and 13179.
Works as described, adding more checks in the templates.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 11:39:51 -03:00
c2a44cb08e Bug 13179 - Circulation page layout problem when OnSiteCheckoutsForce is enabled
The circulation page layout needs to work correctly for various
combinations of restrictions, no restrictions, and restrictions with
OnSiteCheckoutsForce enabled. This patch makes some minor accomodation
for all.

To test, load a patron for checkout under the following conditions:

1. OnSiteCheckoutsForce and patron is not blocked from checkout
2. OnSiteCheckoutsForce is off, patron is blocked from checkout (for
   being expired or restricted).
3. OnSiteCheckoutsForce is on and patron is not blocked from checkout
4. OnSiteCheckoutsForce is on and patron is blocked from checkout

The page layout should look correct for all these cases, with a clean
two-column layout of [ checkout form | messages ] in all cases except

Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Applied on top of 10860. Works as described.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 11:39:36 -03:00
1334cd33b4 Bug 10860 [QA Followup] - Use Koha.Preference
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 10:26:48 -03:00
Katrin Fischer
0402e4e636 Bug 10860: Follow-up - fix some template variable issues
Fixing some simple display issues caused by missing/misnamed
variables, probably consequence of the renaming before.

Amended test plan:
- Make sure that if OnSiteCheckoutsForce is set, you can
  still perform onsite checkouts and only those.
- Check the detail page in staff says *currently in local use by*
  for an on-site checked out item
- Check the detail page in OPAC with OPACShowCheckoutName active
  for the same.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 10:26:43 -03:00
64eca4693c Bug 10860 [QA Followup] - Rename system preferences
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 10:26:41 -03:00
33d285599f Bug 10860 [QA Followup] - Fix misc issues
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 10:26:25 -03:00
ca13806073 Bug 10860 - Change "in-house use" to "on-site checkout"
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 10:26:22 -03:00
Jonathan Druart
2e72eb8880 Bug 10860: In-House Use
This patch implements the In-House Use feature for Koha.

It adds:
- 2 new sysprefs:
  'In-House Use' to enable/disable this feature
  'In-House Use Forced' to enable/disable the feature for *all* users.
- 2 new columns issues.inhouse_use and old_issues.inhouse_use
- Datatable on the circulation history pages (readingrec) at the OPAC
  and the intranet.

A new checkbox in the Circulation tab. If checked, the issue become a
in-house use (in the statistics and issues tables).
When you check it, the due date changes to the today date.

The syspref "In-House Use Force" allows to force the in-house use to
permit the checkout even if the borrower is debarred or others problems.

In the issue table, a new string (in red) marks the issue as "in-house use".

The circulation history contains 3 tabs : "all", "checkout" and
"in-house use" (OPAC and intranet).

The cronjob script:
If AutomaticItemReturn if off, a library would like not to do a transit
operation manually. This script (to launch each night) do returns
for a specific branches.

Test plan:
1/ Execute the updatedatabase entry
2/ Enable the 'In-House Use' pref.
3/ Checkout a biblio for a patron and check the 'in-house use' checkbox.
4/ Check that the due date is the today date (with 23:59) and is not modifiable.
5/ Click on the check out button and check that the new check out
appears in the table bellow with the "(In-house use)" string.
6/ Go on the circulation history pages (readingrec and opac-readingrec)
and try the 3 tabs. In the last one, your last checkout should appear.
7/ Check in.
8/ Check readingrec pages.
9/ Choose a debarred patron and check that you cannot checkout a biblio
for him.
10/ Switch on the 'In-House Use Forced' pref
11/ You are now allowed to checkout a biblio for the debarred patron.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-11-03 10:26:19 -03:00
1d17e36e36 Bug 643 [Template follow-up] Allow override of 'debarred' status
This minor followup makes two changes:

- Replaced instances of "Debarment" with "Restriction"
- Moved the override button into the block where the "View restrictions"
  button is, making the section slightly more compact.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Some small template changes, no problems found.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-10-31 15:15:55 -03:00
Marc Véron
bc9d12e68f Bug 643: Followup: Display override button only if issuing staff member has force_checkout permission
To test:
Apply first patch
Apply this patch
Log in as superlibrarian
Go to Home > Patrons > Set permissions for issuing staff member
Disable circulate - force_checkout
Log in as issuing staff member
Try to checkout to a debarred patron
=> should not be possible
Log in again as superlibrarian
Enable circulate - force_checkout for issuing staff member
Log in as issuing staff_member
Try to checkout to a debarred person
=> You should get the button 'Override debarment temporarily'

Signed-off-by: Aleisha <aleishaamohia@hotmail.com>
Signed-off-by: Nick Clemens <nick@quecheelibrary.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-10-31 15:15:39 -03:00
Pasi Kallinen
b1dc52395b Bug 643: Allow override of 'debarred' status
Add a button to temporarily override patron debarment.

To test:
1) Go to patron check out page
2) If patron has been debarred (eg. due to having fees),
   there is no way to check out to that patron.
3) Apply patch
4) A debarred patron check out page now has a button for
   "Override debarment temporarily" - clicking on it
   should allow checking out to that patron.

Signed-off-by: Aleisha <aleishaamohia@hotmail.com>

Rebased because patch did not apply

Signed-off-by: Aleisha <aleishaamohia@hotmail.com>
Signed-off-by: Nick Clemens <nick@quecheelibrary.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested with/without force_checkout and superlibrarian permission.
Also checked crafting a URL is no longer working.
No regressions found.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-10-31 15:15:31 -03:00
Marc Véron
b47e0360d8 Bug 12914 - Wrong message 'Patron(..) is blocked for 2014-09-30 day(s).
The message in circulation.tt assumed to get days but date is given. Updated comments and message depending on expiration date or no expiration of restriction.

The message shows up on top of Bug 643 Allow override of 'debarred' status if a patron has a restriction.

Replaced date_format with date template (see comment #6)

Signed-off-by: Nick Clemens <nick@quecheelibrary.org>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-10-21 16:13:28 -03:00
e44b4cbeed Bug 12550 - Add ability to delay loading of patron's checkouts in circulation and patron details
Now that a patron's checkouts are loaded asynchronously, we can further
improve Koha's performance by not loading the checkouts table when it is
not needed. For example, if a librarian is checking out 5 items to a
patron, we really don't need to load the table during the scanning of
items 1 to 4, just for item 5. Another example would be browsing to the
patron details table in order to change a patron's password.

Test Plan:
1) Apply this patch
2) Browse to circulation.pl for a patron
3) Note the table is not loaded automatically
4) Click the "Show checkouts" button
5) Note the checkouts table loads
6) Check the "Always show checkouts immediately" checkbox
7) Reload the page, the checkouts should now load immediately
8) Repeat steps 3-7 for the patron details page ( moremember.pl )

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: remove trailing spaces.
Note: I am not sure the checkbox is at the best place, but I don't have
a better suggestion.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-10-19 11:26:06 -03:00
Holger Meißner
b49bcfef09 Bug 11577: Code and intranet template changes
This patch adds a checkbox for "Automatic renewal" to the checkout page.
CanBookBeRenewed is modified to include two new errors:
- auto_renew (renewal shouldn't be done manually)
- auto_too_soon (renewal is premature and shouldn't be done manually)

To test:

1) Add or edit an issuing rule with "Automatic renewal" and another
   one without it.
2) Issue at least three items:
   - automatic renewal by issuing rule
   - automatic renewal by Checkbox on the checkout page
   - no automatic renewal
3) Test the following steps for both:
   Home > Circulation > Checkouts
   Home > Patrons > Patron details
4) Confirm that issues with automatic renewal cannot be renewed manually,
   even if there are still renewals left and it's not too soon to renew.
5) Confirm that "Scheduled for automatic renewal" and the remaining
   renewals are displayed. If no renewals are left "Not renewable" should
   be displayed.
6) Confirm that issues without automatic renewal behave as usual.

Sponsored-by: Hochschule für Gesundheit (hsg), Germany
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-09-17 19:23:14 -03:00
d8ed913059 Bug 12899: Row grouping in checkouts table is alphabetical and depends on translation
The sort order of the "today's checkouts" and "previous checkouts" row
groupings depends on the label, so in English "today's checkouts" comes
first. However, in other languages the reverse alphabetical order is
incorrect resulting in "previous checkouts" coming first.

This patch adds a dummy column with numeric data on which the sorting
can be done. This should make it translation-agnostic.

To test, apply the patch and install or update a translation which will
demostrate the problem (sv-SE for instance).

- Clear your browser cache and switch to the English templates.
- Check out some items to a patron who has checkouts from a previous
  day.
- Confirm that the sorting of the "today's checkouts" and "previous
  checkouts" row groups is correct.
- Switch to the new/updated translation and reload the circulation page
  for that patron. Confirm that the sort remains correct.
- Confirm that the checkouts table looks correct and that other features
  (sorting, checkboxes) still work correctly.

Revision: Corrected the table footer include to correct the colspan
error causing column misalignment.

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

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-09-16 15:20:51 -03:00
Jacek Ablewicz
7289214e30 Bug 12811 - Patron 'Details' and 'Check out' pages not working for staff users without renewal override permissions
In case when the staff user doesn't have (circulate) ->
(override_renewals) permission granted, this code part

   var AllowRenewalLimitOverride = [%
CAN_user_circulate_override_renewals && AllowRenewalLimitOverride %];

in circ/circulation.tt and members/moremember.tt leads to javascript
error, because TT statement evaluates to empty string.

To reproduce:

- set AllowRenewalLimitOverride syspref to "Don't allow" (this step is
  possibly redundant / not quite relevant),
- for testing purposes, log in as some (sample) staff user whitch does
  not have permission granted for "(override_renewals) Override blocked
  renewals",
- have a look at some patron accounts (preferably, ones with 1+
  check-out), observe that page layout is incorrect in "Check Out" and
  "Details" tab.

To test:

- apply patch,
- retest and ensure that this issue is no longer reproductible,
- make sure that there are no regressions of any kinds regarding renewal
  override permission for staff users (i.e, that it still works like
  intended).

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as described, passes QA script and tests.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-09-16 15:18:54 -03:00
Katrin Fischer
baee536f19 Bug 12776: Capitalization: Confirmation messages in circulation
Changes:
- Yes, renew (Y)
- Yes, check out (Y)
- No, don't check out (N)
- No, don't renew (N)

To test:
- Verify changes by reading the code
- Check out an item that requires confirmation
  Example: Patron owes fines or test with bug 12776.
- Verify confirmation messages show up correctly.
- Check item out again to trigger renewal
- Verify confirmation message shows up correctly.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-08-22 11:12:54 -03:00
Bernardo Gonzalez Kriegel
5c42809746 Bug 12687 - Remove CGI::scrolling_list from circulation.pl
This patch removes the only instance in this file

To test:
1. Apply the patch
2. Search for patrons on staff CheckOut,
use a string that gives multiple results
3. Results are displayed on a select,
that was replaced.

4. Check for regressions: select a patron and press 'Select',
or do double click on a patron name, verify you go
to patron's checkout tab.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-08-03 12:23:00 -03:00
b572115fb7 Bug 11703 [QA Followup] - Use interface instead of themelang for checkboxes plugin
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
2014-07-03 11:22:10 -03:00
0badd2bcb5 Bug 11703 [QA Followup]
* Bold record title, fix table width
* Change output_pref_due to output_pref
* Retain functionality of IssuesDefaultSortOrder system preferences
* Use datatables.inc in circulation.tt
* Fix up holds table details
* Add plugin to about
* fix relatives' checkouts
* add too_many string
* remove dead syspref from db
* Sort relatives' checkouts and holds tables client side
* Provide context for translation of strings
* Fix unterminated string literal, add missing paren
* Add replacement of _AUTHOR_ with title's author for holds
* Format prices correctly
* Format checkout dates correctly

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
2014-07-03 11:22:10 -03:00
82275fa2db Bug 11703 - Convert checkouts table to ajax datatable
When a patron has many checked out items, circulation.pl can take a very
long time to load ( on the order of minutes in some cases ). This is
primarily due to the processing of the previous checkouts list. If we
convert to this table to a datatable that fetches its data via ajax, we
can make circulation.pl far more responsive. The same should be done
with relative's checkouts as well.

Test Plan:
1) Apply this patch
2) Observe that the checkouts and relatives' checkouts tables
   are now loaded asynchronously
3) Observe and verify the renew and return actions are now
   ajax based and function in a manner equivilent to how they
   used to.

This bug had quite a few followups, so I squashed all of them into one
change so that code is easier to follow. Original commit messages are below:

Bug 11703 - Use the ajax datatables on patron details page

Bug 11703 - Convert holds tables to ajax datatables

Bug 11703 [QA Followup 1] - Center bProcessing message over table

Bug 11703 [QA Followup 2] - Remove icons from checkout and clear buttons

Bug 11703 [QA Followup 3] - Remove references to UseTablesortForCirc

Bug 11703 [QA Followup 4] - Add back in Today's checkouts/Previous checkouts rows

Bug 11703 [QA Followup 5]

Bug 11703 [QA Followup 6] - Move strings to an include file for translation purposes

Bug 11703 [QA Followup 7] - Fix issues spotted by koha-qa.pl

Bug 11703 [QA Followup 8] - Speed up api/checkouts.pl as much as possible

Bug 11703 [QA Followup 9] - Move scripts from api directory to svc directory

Bug 11703 [QA Followup 10] - Fix errors caused by rebase

Bug 11703 [QA Followup 11] - Prevent multiple fetchs from ajax source

Bug 11703 [QA Followup 12] - Fix problem detected by koha-qa.pl

Bug 11703 [QA Followup 13] - Removed uneccessary data from renewal box during renewal

Bug 11703 [QA Followup 14] - Fix table column span

Signed-off-by: Dobrica Pavlinusic <dpavlin@rot13.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Test plan on bug report:
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=11703#c98

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
2014-07-03 11:22:10 -03:00
88e27fce3f Bug 12337 - Multi-clicking the renewal buttons on circulation.pl can trigger "renewal failed" message.
Each time the "renew all" or "renew or return" buttons are click, the
renewal process is triggered. If the patron only has one renewal left,
and the button is multi-clicked, the librarian may receive a
"renewal failed" message even though the renewal did occur. In
addition, this can just unwanted multiple consecutive renewals
as well.

Test Plan:
1) Check out an item to a patron that can have 1 renewal
2) Click the "renew all" button multiple times, fast and furiously
3) Note the "renewal failed" messaged
4) Apply this patch
5) Repeat steps 1 and 2
6) Note the item is now renewed without the failure message

Signed-off-by: Nick Clemens <nick@quecheelibrary.org>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-07-01 09:47:38 -03:00
bd269c11ec Bug 12089: Remove use of dt_add_type_uk_date() - Circulation
This patch removes instances of dt_add_type_uk_date() from there
circulation templates and updates the sorting configuration according to
current guidelines.

To test, enable the UseTablesortForCirc system preference and open a
patron for circulation who has multiple items checked out. Confirm that
sorting by due date, title, and checkout date work correctly.

Locate a patron who is guarantor to another or is guaranteed by another.
One or both patrons should have checkouts. The "relatives checkouts" tab
on the checkout page should sort correctly on due date, title, and
checkout date.

On the transfers to receive report, confirm that sorting by date of
transfer and title work correctly for all tables.

On the holds awaiting pickup report the "available since" and title
columns should sort correctly for tables in both tabs (waiting and
over).

Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-04-28 18:40:29 +00:00
1e69481103 Bug 12107 - Move checkboxes jQuery plugin outside of language-specific directory
This patch moves the checkboxes jQuery plugin to
intranet-tmpl/prog/lib/jquery/plugins so that it will not be duplicated
for each set of translated templates.

To test, apply the patch and confirm that select all/clear all controls
continue to work on the following pages:

- Acquisitions -> Late orders
- Acquisitions -> Add to order from an external source (search targets)
- Acquisitions -> Suggestions
- Administration -> Funds -> Planning (show/hide all columns)
  * Some unused code has been removed
- Administration -> Library transfer limits
- Staff client cart
- Authorities -> New from Z39.50 (search targets)
- Cataloging -> New from Z39.50 (search targets)
- Circulation -> Check out to a patron (renew/check in selections)
- Circulation -> Offline circulation -> Pending operations
- Patrons -> Patron detail (renew/check in selections)
- Patrons -> Fines -> Pay fines
- Serials -> Subscription -> Serial collection
- Tools -> Label creator -> Batches -> Search results
- Tools -> Patron card creator -> Batches -> Search results
- Tools -> Tags moderation
- Tools -> Batch item deletion
- Tools -> Batch item modification
- Tools -> Inventory -> Submit a batch of barcodes
- Lists -> List contents view

Signed-off-by: David Cook <dcook@prosentient.com.au>

Works as described! I don't think I've ever checked so many boxes
before...

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-04-25 15:12:20 +00:00
Jonathan Druart
b4c6abd416 Bug 10859: (follow-up) improve wording
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-04-21 05:30:13 +00:00
Jonathan Druart
b7d47ac66b Bug 10859: Alert if a borrower already has an issue for the same biblio
This patch adds a new system preference, AllowMultipleIssuesOnABiblio.

If this system preference is OFF, an alert is raised if a patron
tries to check out an item even when they already have a different
item checked out from that bib.

The librarian can force the checkout anyway.

It doesn't alert the librarian if the biblio is a subscription

Test plan:
1. Create a biblio with at least 2 items
2. Checkout the first item for a borrower
3. Set syspref AllowMultipleIssuesOnABiblio to OFF.
4. Try to checkout the second item with the same borrower. A message
should appear telling you that this borrower already borrowed an item
from this biblio.
If you have the permission 'force_checkout' You should also see two
buttons to confirm (or not) the checkout
5. Click on 'No'. The checkout is not done
6. Repeat step 4 and click 'Yes', the checkout is done.
7. Return the second item.
8. Set syspref AllowMultipleIssuesOnABiblio to ON
9. Try to checkout the second item with the same borrower. This time
the checkout is done without warnings.

Followed test plan. Works as expected.
Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
All tests and QA script pass, works well. Tested:

* Permission to override
  * check out a second item from a record with subscriptions works
  * check out a second item from a 'normal' record is warned about,
  but can be done

* No permission to override
  * subscription item: can be checked out
  * normal item: can't be checked out

* Feature turned off
  * Check out never warns/blocks

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-04-21 05:28:05 +00:00
612b33ae69 Bug 11711 - Use new DataTables include in circ templates
Bug 10649 introduced a new include file for adding DataTables-related
JavaScript assets. This patch adds use of this include file to all
circ-related pages which use DataTables.

Apply the patch and test the following pages to confirm that table
sorting works correctly:

- Circulation
  - The UseTablesortForCirc system preference must be enabled.
  - Check out to a patron with existing checkouts. Choose a patron who
    is a guarantor to another patron with checkouts in order to test the
    relatives' checkouts table.
  - The checkouts and relatives' checkouts tables have been modified to
    exclude articles when sorting of titles.

- Hold ratios - The title column has been configured to exclude articles
  from sorting

- Transfer to receive

- Holds queue
  - The title column has been configured to exclude articles when
    sorting
  - The date column has been modified to use the title-string filter for
    sorting. An unformatted date is now passed from C4::HoldsQueue.pm to
    the template, where the KohaDates filter is used for formatting.
    Sorting is based on the unformatted date.

- Holds awaiting pickup
  - The "available since" column has been configured for sorting on an
    unformatted date. waitingreserves.pl now passes the unformatted
    date to the template, and formatting is done using the KohaDates
    filter.
  - The title column has been configured to exclude articles when
    sorting.

Edit: Rebased on current master following commit of Bug 11605
Signed-off-by: A. Sassmannshausen <alex.sassmannshausen@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-04-08 23:47:27 +00:00
Holger Meißner
065926d224 Bug 7413: Code and intranet template changes
This patch modifies CanBookBeRenewed, so that based on
issuingrules.norenewalbefore a new error "too_soon" can be returned.
Also adds a new subroutine GetSoonestRenewDate.

To test:
1) Create an issuing rule with "No renewal before" set to value X
   and "Unit" set to days.
2) Test the following steps for both:
   Home > Patron > Patron details
   Home > Circulation > Checkouts
3) On the checkout page, test for today's issues as well as previous
   issues. (Check something out on one day and something else on the
   next day, then do the testing.)
4) Confirm that items can't be renewed if current date is more than
   X days before due date.
5) Confirm that the date and time of the soonest possible renewal are
   displayed in the format specified by global sysprefs "dateformat"
   and "TimeFormat".
6) Confirm that items can be renewed if "No renewal before" is
   undefined or current date is X or less days before due date.
7) Confirm that if the number of allowed renewals is exceeded
   "Not renewable" is displayed, no matter what "No renewal before"
   is set to.
8) Test the same things with "Unit" set to hours.

Sponsored-by: Hochschule für Gesundheit (hsg), Germany
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
2014-04-07 18:28:57 +00:00
Galen Charlton
7378d48841 Bug 12000: ensure that hold resumption dates can be set only to future dates
This patch makes the datepickers for the hold resumption date
(AKA the hold suspend until date) field only permit dates in
the future to be selected in the staff interface checkout page
and hold list pages.  This makes these pages consistent with
the OPAC and the patron details page in the staff interface.

To test:

[1] Ensure that AutoResumeSuspendedHolds and SuspendHoldsIntranet
    are enabled.
[2] Go to the checkout page for a patron that has at least one hold
    request.
[3] Verify that the datepicker for the hold suspend until
    date field only permits choosing a date in the future.
[4] Go to the page listing hold requests for a title.
[5] Verify that the datepicker for the hold suspend until
    date fields only permit choosing a date in the future.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as described, passes all tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-03-31 14:26:55 +00:00
76daec8bff Bug 11618: ensure jQuery timepicker is picked up by the i18n toolchain
We handle internationalization of the jQuery datepicker by adding
language configuration strings to calendar.inc which can be processed by
the translation script. This patch adds a similar configuration file for
the timepicker.

This patch also upgrades the timepicker plugin to the latest version,
minified, and places it outside the prog template directory for global
use. The path in templates has been updated accordingly.

CSS has been added to more completely hide the controls for seconds,
milliseconds, and microseconds.

To test, apply the patch and clear your cache so that the browser
loads the new version of the jQuery plugin. Confirm that date and time
selection still function correctly on the circulation page, the patron
detail page, and the offline circulation page (circ/offline.pl).

Test at least one datepicker instance which does not use the
timepicker.

Run translate update on a po file and confirm that the timepicker
strings are now present.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Works as expected, no regression found.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-02-18 21:19:16 +00:00
Jonathan Druart
443ec40786 Bug 11486: Don't display the number of remaining renewals if == 0
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-01-23 17:40:28 +00:00
b464eda7c3 Bug 11486: Show renewal count on 'check out' and 'details' tabs in patron record
This patch adds the renewal count to the 'Check out' and "Details' tabs
of the patron record.

This information already exists in the OPAC view of the patron record.
Since librarians might be serving patrons in person who want to know
this information without looking it up online, it makes sense to show
it in the staff client.

There may also be times where librarians want to see how many renewals
a patron has left, how many they've used already, etc. when making other
decisions.

_TEST PLAN_

Before applying:

1) Go to "Check out" with a patron that has some check outs before today
2) Add some check outs for today
*Ensure that all issues are for items that can be renewed*
3) Note that the Renew column just says '0' followed by a check box
4) Check the 'Detail' tab. It should say the same.

Apply the patch.

5) View the "Details" and "Check out" tabs again
6) Note that the renewal count now appears in the form resembling:
5 of 5 renewals remaining

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

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-01-23 17:39:55 +00:00
Galen Charlton
917dad97a8 Bug 10863: (follow-up) give limited circ operator way to proceed
This patch tweaks the checkout form so that if a circ operator
doesn't have the circulate/force_checkout permission, they are
presented with a button to continue on if they ran into a restriction
on the loan.  Otherwise, there was no clear way to carry on, as the
item barcode field was disabled.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-01-07 04:33:05 +00:00
Jonathan Druart
d45c9a673b Bug 10863: Add 2 circulation permissions: force_checkout and lift_restriction
This patch adds 2 circulation permissions: force_checkout and
lift_restriction.

During upgrade, these two permission are added to existing staff
users that already have the base circulate permission.

force_checkout allows a librarian to force a checkout if a limitation
occurred.

lift_restriction allows a librarian to lift a restriction for a patron.

Test plan:
1/ Find a debarred patron and go on the checkout page. The "Lift
restriction" button should be present only if the logged librarian has
the lift_restriction permission.
2/ If the force_checkout permission is set, a librarian should be
allowed to check out in several cases:
- age restriction
- the item is issued to another patron
- the item is not for loan
- the patron has overdue items
- the item is lost
- the item is a high demand item
- the item is reserved
- another case ?

Signed-off-by: Cedric Vita <cedric.vita@dracenie.com>

Bug 10863: The force checkout permission should not affect high holds

- typo checkout => check out.
- the force checkout permission does not affect high holds.

Signed-off-by: Cedric Vita <cedric.vita@dracenie.com>

Bug 10863: Follow-up: Adding missing permissions to translated files

This patch adds the 2 new permissions to all remaining sample files.
If the permissions don't get installed, the problem is bigger than
having an English description.

Also adds back the question "Check out anyway?" for high demand items (HIGHHOLDS).

Test xt/permissions.t passes now.

Bug 10863: Rename lift_restriction with manage_restrictions

The pref manage_restrictions now takes into account "Lost card" and
"Gone no address" restrictions.

Test plan:
- log in with a user with manage_restrictions permission
- verify you can set/unset restrictions when editing a patron
- log in with a user without manage_restrictions permission
- verify you cannot set/unset restrictions when editing a patron

Signed-off-by: Mathieu Saby <mathieu.saby@univ-rennes2.fr>
Note: The AgeRestrictionOverride pref has to be set to "Allow" if you
want to override the age restriction, even if the new permission is set.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Passes koha-qa.pl, works as advertised

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2014-01-07 03:59:53 +00:00
b5b3d4c403 Bug 10626: Remove doubled up TT plugins - Merge KohaAuthorisedValues and AuthorisedValues
This patch removes the KohaAuthorisedValues TT plugin; uses of it are
replaced by the AuthorisedValues plugin, which does the same thing.

Test Plan:
1) Apply this patch
2) View the pages that this patch has modified, make sure the branch
   name is still visible

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Comments on second patch.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-12-20 04:14:45 +00:00
4a7bb58b1d Bug 10626: (follow-up) replace another use of KohaBranchName
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
To test:
Make sure
- independentbranches is turned on
- Your user doesn't have superlibrarian permission
Then
- Try to check out an item with home and holding branch !=
  logged in branch

Patch works alright.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-12-14 01:07:19 +00:00
Peggy Thrasher
2131c78618 Bug 11040: Add CircAutoPrintQuickSlip option to print regular slip
This patch adds a third option to the CircAutoPrintQuickSlip system
preference.  The three options are now:

* print quick slip
* print regular slip
* clear the screen

Test plan:
1.  Set the System Preference for CircAutoPrintQuickSlip to "clear the
    screen".
    Enter a borrower barcode for checkout
    Press Enter
    The screen should be cleared.

2.  Set the System Preference for CircCircAutoPrintQuickSlip to "open a
    quick slip window"
    Enter a borrower barcode for checkout
    Press Enter
    A Quick slip is printed.

3.  Apply the patch
    Update the database using UpdateDatabase.pl

4.  Set the System Preference for CircAutoPrintQuickSlip to "clear the
    screen".
    Enter a borrower barcode for checkout
    Press Enter
    The screen should be cleared.

5.  Set the System Preference for CircCircAutoPrintQuickSlip to "open a
    quick slip window"
    Enter a borrower barcode for checkout
    Press Enter
    A Quick slip is printed.

6.  Set the System Preference for CircCircAutoPrintQuickSlip to "open a
    slip window"
    Enter a borrower barcode for checkout
    Press Enter
    A Slip is printed.

7.  Reload the database using sysprefs.sql
    Set the System Preference for CircAutoPrintQuickSlip to "clear the
    screen".
    Enter a borrower barcode for checkout
    Press Enter
    The screen should be cleared.

8.  Set the System Preference for CircCircAutoPrintQuickSlip to "open a
    quick slip window"
    Enter a borrower barcode for checkout
    Press Enter
    A Quick slip is printed.

9.  Set the System Preference for CircCircAutoPrintQuickSlip to "open a
    slip window"
    Enter a borrower barcode for checkout
    Press Enter
    A Slip is printed.

10.  Verify that the Checkout Help includes information about printing Slips.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-11-24 18:37:42 +00:00
69036971ae Bug 2720: (follow-up) improve readability of a template
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-10-31 01:55:47 +00:00
80897930b7 Bug 2720 - Overdues which debar automatically should undebar automatically when returned
This patch adds a more extensible and flexible debarments system to Koha. The fields
borrowers.debarred and borrowers.debarredcomment are retained for compatibility and
speed.

This system supports having debarments for multiple reasons. There are currently
three types of debarments:
OVERDUES    - Generated by overdue_notices.pl if the notice should debar a patron
SUSPENSION  - A punative debarment generated on checkin via an issuing rule
MANUAL      - A debarment created manually by a librarian

OVERDUE debarments are cleared automatically when all overdue items have been returned,
if the new system preference AutoRemoveOverduesRestrictions is enabled. It is disabled
by default to retain current default functionality.

Whenever a borrowers debarments are modified, the system updates the borrowers debarment
fields with the highest expiration from all the borrowers debarments, and concatenates
the comments from the debarments together.

Test plan:
 1) Apply patch
 2) Run updatedatabase.pl
 3) Verify the borrower_debarments table has been created and
    populated with the pre-existing debarments
 4) Run t/db_dependent/Borrower_Debarments.t
 5) Manually debar a patron, with an expiration date
 6) Verify the patron cannot be issued to
 7) Add another manual debarment with a different expiration date
 8) Verify the 'restricted' message lists the date farthest into the future
 9) Add another manual debarment with no expiration date
10) Verify the borrower is now debarred indefinitely
11) Delete the indefinite debarment
12) Verify the debarment message lists an expiration date dagain
13) Enable the new system preference AutoRemoveOverduesRestrictions
14) Set an overdue notice to debar after 1 day of being overdue
15) Check out an item to a patron and backdate the due date to yesterday
16) Run overdue_notices.pl
17) Verify the OVERDUES debarment was created
18) Return the item
19) Verify the OVERDUES debarment was removed
20) Disable AutoRemoveOverduesRestrictions
21) Repeat steps 15 though 18, verify the OVERDUES debarment was *not* removed
22) Add issuing rules so that an overdue item causes a temporary debarment
23) Check out an item to a patron and backdate the due date by a year
24) Return the item
25) Verify the SUSPENSION debarment was added to the patron

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-10-31 01:53:22 +00:00
Katrin Fischer
39c435e36f Bug 10803: make "Make payment" in circ easier to translate
To test:
- Choose a patron account
- Add a fine to it
- Switch to the checkout tab of the patron account
- Check for the "Make payment" link. Make is not a link, but payment is.
- Apply patch
- Check again, now both words are linked.

In translation this string is divided into:
. %s Make
payment

Because of this it's difficult to translate it grammatically.
The patch moves 'Make' into the link text, so that both words
will show up together in translation.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Comment: Works as described. No koha-qa errors.
Not only improves translatability,
also corrects capitalization.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-09-24 14:56:54 +00:00
249b37ef48 Bug 9294 - Move JavaScript out of circulation template
This patch creates a new js file, js/pages/circulation.js, and begins
the process of moving JavaScript into it from circulation.tt. I have
started the process by focusing on sections which are least dependent on
template variables.

To test, load a patron for checkout who has something checked out.
There should be no JavaScript errors:
 - Tabs should work.
 - Showing and hiding the "Add message" form should work.
 - The "specify due date" datepicker should work.
 - Controls for selecting checkboxes in the checkouts table should work

Signed-off-by: Campbell Reid-Tait <campbellreidtait@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Just found a weird behavior with checkboxes in the checkouts table, but
still exists on master.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-09-18 16:14:24 +00:00
50ff4f4a94 Bug 10081: add library name to IndependentBranches error message
With IndependentBranches turned on, if you try to check out an item
which belongs to another library you will get an error message which is
missing the library name. This patch corrects the problem by passing the
necessary variable to the template and outputting the library name using
the KohaBranchName TT plugin.

To test, turn on IndependentBranches and try to check out an item
belonging to another library (note that you must test with a staff user
who is not a superlibrarian). The error message you see should include
the name of the library to which the item belongs:

"This item belongs to Nelsonville and cannot be checked out from this
location."

Checkouts of items belonging to the library should be unaffected.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-08-20 14:26:25 +00:00
Galen Charlton
05019c1360 Bug 5652: (follow-up) include subtitle in hyperlink
This follow-up patch makes the subtitle part of the same
hyperlink as the title, maintaining consistency with other
pages in the staff interface such as list contents.

To test:

[1] Make sure that the Keyword to MARC mapping includes
    mappings to 'subtitle'.
[2] Find a biblio that has both title and subtitle.  Check
    it out to one patron and place it on hold for another.
[3] In the checkout and patron details pages, verify that
    the entry for this bib in the list of checked out titles
    or hold requests includes both title and subtitle in
    the same hyperlink.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-08-06 14:46:31 +00:00
Marc Veron
976561a384 Bug 5652: display subtitles on patron checkout and holds summary
This patch adds subtitles (from Keyword to MARC mapping) to the
following tables on the checkout page:

- Checkouts
- Previous checkouts
- Relative's checkouts
- Relative's previous checkouts
- Holds

Additionally it suppresses the appearence of the superfluous word "by"
in cases where the biblio has no author.

Test scenario:
--------------
1)
Make sure that you have one or more fields mapped to subtitle in:
Home . Administration . Keyword to MARC mapping
(e.g. 245 b)

2)
Test the checkout page with patrons having
- current checkouts (today)
- previous checkouts
- relatives (e.g. kids) with current /previous checkouts
- holds on items
- holds on biblios

...with items having:
- title, subtitle, author
- title,  no subtitle, author
- title,  subtitle, no author
- title, no subtitle, no author

3)
Do the same on patron's detail page

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

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-08-06 14:30:52 +00:00
MJ Ray
84c2e7c1e5 bug 7494: optional checkout-time fallback search for a book
When issuing a book, some libraries want to issue by title or other details.
This patch adds a systempreference and code that allows it.

To test:
1) scan a patron card or enter a surname to start checking out;
2) enter title or other keywords;
3) the circulation screen should display a warning allowing to choose between copies.

Signed-off-by: MJ Ray <mjr@phonecoop.coop>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-07-24 15:12:38 +00:00
Jonathan Druart
dd2185981d Bug 9394: QA Followup
* C4::Reserves::_FixPriority
  - The previous code checked the cancellationdate. If think you never pass
in it with bad parameters, but in order to be sure I added the check on
this value.
  - The reservedates array was never used.

* circ/circulation.tt
There was a bug: it was not possible to remove an hold from the
circulation page. Passing reserve_id fixes the issue.

* C4::Reserves::GetReserveId
This subroutine did not have a unit test.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-07-24 05:04:56 +00:00
835f745b55 Bug 9576: can now control whether max loans limit can be overriden
Adds a new system preference AllowTooManyOverride to control whether
a librarian can override the 'Too many checked out' message which is
currently always overridable.

Test Plan:
1) Apply patch
2) Run updatedatabase.pl
3) Attempt to check out 1 more item to a patron than the max issues
4) You should be allowed to override by default ( current behavior )
5) Set AllowTooManyOverride to "Don't allow"
6) Repeat step 3
7) You should be blocked from being able to issue the item

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

The new system preference is activated by default, which mean there
will be no change in behaviour on update.

The system preference is correctly added to the database and .pref
files.

Test plan and QA script passes.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-07-17 15:07:42 +00:00
225a700705 Bug 10221 - hold expiration doesn't show on patron's list of holds
When viewing the list of a patron's holds on the circulation page or the
patron detail page the table of holds doesn't display the holds
expiration date, if present. This patch adds display of the hold
expiration date.

To test, place a hold for a patron and set an expiration date for it.
View the patron's existing holds on both circulation.pl and
moremember.pl. The expiration date you chose should appear in the table
of information about existing holds.

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

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-06-07 08:48:34 -07:00
bfe6dc88d2 Bug 2774 - Path to theme is hard-coded in many places
Many templates have instances where the path to the prog template is
hard-coded. Now that interface and theme template variables are
available everywhere these paths should be corrected to use them.

Image paths corrected:

- 'Patron image missing' image on circulation pages
- 'Locked' icon on fund planning page
- Tag and subfield edit icons on the authority, biblio editor, and batch
  item modification pages (Clone tag, delete tag, clone subfield,
  delete subfield, move subfield)
- 'Loading' icon when importing frameworks

Audio file paths corrected:

- Sounds for circulation.pl and returns.pl

Paths to DataTables assets corrected on:

- Transfers to receive report
- Holds queue report
- Holds awaiting pickup report
- Patron detail page (moremember.pl)
- Patron circulation history
- Update child to adult patron page
- Process offline circulations
- Catalog by item type report
- Serials statistics wizard
- Serial claims page
- Koha news
- Notices
- Batch patron modifications

Path to progress bar assets corrected on:

- Process offline circulations page
- Progressbar include file
- Stage MARC imports
- Manage MARC imports
- Local cover image upload

Other image paths:

- "Approved" checkmark image on tags review page
- Table sort icons on lists page
- Feed icon on OPAC search result page
- "Loading" image for OPAC plain MARC view

Path to ratings JavaScript on OPAC detail and results pages

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Checked all the pages modified by this patch, no problems noted

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-05-20 11:11:04 -07:00
6385cfd1dc Bug 9219 - Show damaged and lost statuses for issues on circulation.pl as they are on moremember.pl
This patch adds the lost and damaged status for an issued item to the
table of issued items on circulation.pl to make it align more closely to
the same table on moremember.pl

Test Plan:
1) Apply patch
2) Issue an item
3) Set the item's damaged status
4) Verify the status is showing near the date due on circulation.pl
5) Clear the damaged status and set the lost status again
6) Repeat step 4

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
I could only test this with the DAMAGED value, because
currently lost items are removed from the patron account
when you set the status.
I know there is a patch somewhere
to make it optional and the change looks alright.
Passes all tests and QA script.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-04-26 08:18:52 -04:00
ec9fc2fce4 Bug 9887 [Revised] Use DataTables on circulation page
The circulation page, when the  UseTablesortForCirc preference is
enabled, uses the old tablesorter plugin. It should use DataTables
instead.

This patch removes references to the tablesorter plugin and makes these
changes to enable use of DataTables:

- Pass two new unformatted date variables to the template from
  circulation.pl so that sorting can be performed on this data.
- Add DataTables configurations for the table of checkouts and the
  table of relatives' checkouts.
- Add a new plugin to the main DataTables configuration script to allow
  sorting on data embedded in a <span>'s 'title' attribute.
- Add <span>s to each table with a title attribute containing the
  unformatted date data which DataTables needs to perform correct
  sorting.  This eliminates the need for a special sorting algorithm to
  accomodate various date and datetime formatting options.
- Set a template variable for checking whether circ exports are enabled.
  This reduces repetition. DataTables configuration changes based on how
  many columns are present.

To test, load the circulation page for patrons who match various
conditions:

- Having only checkouts from today
- Having checkouts from today and previous days
- Having checkouts only from previous days
- Having relatives who have checkouts (from today, from previous days,
  from both)

Test these situations with UseTablesortForCirc enabled and disabled.
Test these situations with circ exports enabled or disabled (with
ExportRemoveFields filled or empty, for instance).

Sorting should work correctly on all columns with the dateformat
preference set to any option.

All other circulation functions should work normally.

Revision adds missing include for table footer when there are previous
checkouts and removes &nbsp; from empty table header cells which were
messing up auto-detection of numeric data. The global CSS for table
borders has been tightened up to improve handling of alternating row
colors in DataTables-sorted tables.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
All tests and QA script pass.
Note: Don't forget it's the checkout tab and to turn on the
preference to allow sorting there.
Also, while checkouts sorts dates correctly, sorting on the
details tabs was not always correct in my tests.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-04-15 09:10:09 -04:00
Galen Charlton
259163d1d7 Bug 9406: ensure confirmation of patron renewal is displayed
When renewing a patron from the patron details page, ensure that
the "Patron's account has been renewed until XXX" is actually
displayed.

This patch introduces a was_renewed CGI and template parameter
to clarify the intent of the relevent template sections.

To test:

- Before applying the patch, renew a patron from the patron
  details page and verify that you don't see the renewal confirmation.
- After applying the patch, renew the patron from the details page
  and verify that the "Patron's account has been renewed until XXX"
  message shows up.
- Renew the patron from the checkout page and verify that the confirmation
  message shows up.

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>
Message now displays for both tabs.
Fixed tab to make QA script pass.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-03-30 21:22:00 -04:00
Fridolyn SOMERS
6cec57901a Bug 9423: Add notforloan value to issue confirmation or blocking message
When trying to checkout an item that is not for loan (due to
items.notforloan value or because itemtype is not for loan), you get a
confirmation or blocking message (depending on AllowNotForLoanOverride
syspref).

This message tells "Item is normally not for loan".

This patch adds some informations :
if itemtype is not for loan, tells "Item type is normally not for loan".
if item is not for loan due to items.notforloan value, adds notforloan
description to message.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Works as advertised: Not for loan authorized value is correctly shown.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-03-19 22:22:23 -04:00
Fridolyn SOMERS
67af102586 Bug 7253: fast cataloging not always checking out
When using fast cataloguing to create a biblio and item on the fly, workflow looses datas when a duplicate is detected.
This comes from the use of a mix of circborrowernumber and borrowernumber in forms.

This patch corrects by using always circborrowernumber in fast cataloguing workflow.
Also adds html and uri escape for barecode where necessery.

Test plan :
With duplicate :
- Go to a borrower circulation page
- Enter a non existing barcode
- Enter a due date
- Click on "Check Out"
=> a message says the barcode was not found
- Click on "Fast cataloguing"
=> The biblio edition page appears with fast cataloguing framework
- Fill mandatory fields by using an existing ISBN
- Click on "Save"
=> a yes/no message says "Duplicate record suspected"
(Choosing yes will brake fast caloguing workflow, in this case librarian should create an item and checkout again)
- Click on "No"
=> The item edition page appears with barcode already filled
- Fill mandatory datas
- Click on "Add item"
=> Borrower circulation page appears again, check that item has been checked out with the specified due date

You may test without duplicate

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Tested following the plan and by fast cataloging a non-duplicate.
All works as expected.

Signed-off-by: koha.aixmarseille <koha.aixmarseille@gmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-02-12 10:00:37 -05:00
d68b8357d7 Bug 9283 - Change structure of export checkouts form
This patch changes the structure of the export checkouts form
so that it is a little more linear. This change moves generation of the
export options from JavaScript to the markup, eliminating an instance
of dependence on YUI menus.

To test, enable checkout exports by specifying a value for
ExportWithCsvProfile or  ExportRemoveFields. Load a patron with
checkouts in circulation. Try the various checkout export options. Each
should function correctly.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-02-08 09:48:10 -05:00
Adrien Saurat
8bae2c9916 Bug 9332: Display call number in "Holds waiting" notice
When checking out from a patron page, a notice "Holds waiting" appears
if a biblio (on hold) is waiting for this borrower.
This patch adds the call number information to this warning.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Nice little improvement, thanks.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-02-08 09:23:51 -05:00
Srdjan
1b4a266915 Bug 7243: Be selective when summing up charges for blocking issues
Added RentalsInNoissueCharges and ManInvlsInNoissueCharges sys prefs

Created C4::Members::cwGetMemberAccountBallance()
* A wrapper for GetMemberAccountRecords that gives info on non-issue and
  other charges
* Other charges are:
  'Res'
  'Rent' if RentalsInNoissueCharges is Mo
  authorised_values MANUAL_INV if ManInvlsInNoissueCharges is No

C4::Members::GetMemberAccountRecords() changes:
* Dropped input param $date, it is not used

Use split charges in C4::Circulation::CanBookBeIssued() and
C4::Members::patronflags(). That way only fines decide whether an item
can be issued, and not other non-fine charges

Signed-off-by: Marc Veron <veron@veron.ch>

Rebased (updatedatabase.pl)

ManInvInNoissueCharges and RentalsInNoissueCharges ar both included by default (= behaviour as before)

All variants tested: Both included, none included, manual invoice included, rentals included.
Works fine, blocks/does not blok as appropirate, messages appear as expected.

[Oct 12, 2012 marcelr:] Amended for updatedatabase.pl
Signed-off-by: M. de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-01-24 09:12:59 -05:00
8fd75227fc Bug 6261 [Revised] Consolidate patron toolbar include files
The staff client has two almost identical include files which
can be consolidated: circ-toolbar.inc and members-toolbar.inc.
This patch marges the slight differences between them and
eliminates circ-toolbar.inc, that being the one which was used
on fewer pages.

In order to accommodate the different "destination" variable
for operations which redirect back either to circ or patrons,
circulation.pl defines "destination" in the template.

Revision corrects a redirect error in setstatus.pl which
predates this patch but which never showed up until now.

To test, perform various operations from the toolbar on at least
two pages: circulation.pl and moremember.pl.

Operations: Edit, add child, duplicate, change password, print (all
options), search to hold, renew, set permissions, delete, update child
to adult, and export checked-in barcodes. In most cases simply
confirming that the link takes you to the right place is enough.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-12-27 18:36:42 -05:00
8857d4d728 Bug 9289 - Adjacent checkbox behavior broken on circulation.pl
This patch fixes the behavior of adjacent checkboxes in the list of
checkouts on circulation.pl. Checkboxes in both the "renew" and "check
in" columns should not be able to be checked at the same time.

A line was commented out (by me) which was necessary to this working
correctly. I'm guessing it was done in debugging and left by mistake.

To test, load a patron for checkout who has items checked out. You
should not be able to check boxes in both the "renew" and "check in"
columns in the same row, whether you click the checkbox itself or the
containing table cell.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-12-27 18:33:17 -05:00
82d1fe4086 Bug 8559 - conflicting item statuses - Force cancel or revert
If a librarian checks out a waiting hold to a different patron
it gives the item conflicting statuses. The item will show as both
checked out to the different patron, and waiting for the original
patron.

This patch fixes this by not allowing this situation to occurr. If
a librarian attempts to issue an item that is waiting for a different
patron, the system will force the librarian to choose to
a) not issue the item
b) issue the item, and cancel the waiting hold
c) issue the item, and revert the waiting hold

In this scenario, reverting the waiting hold means to push it back
on the reserves queue as a hold with a priority of 1, which will push
the priorities of any existing holds back by 1 as well. It will become
an item level hold for the given item, as we cannot know if the hold
was item-level or bib-level given the data we have about the hold.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

All three cases tested, correct outcome each time

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-11-28 17:09:32 -05:00
2a73ced61d Bug 8972 - Due Date set to 100 years ago
In order to prevent submission of dates with ambiguous two-digit
years this patch makes date-due input fields read-only so that
users must use date/time picker.

Other minor fixes:

- Adding missing labels
- Adding common class wrapper to datepicker for checkout and renewal
- Correcting focus handling on "specify due date" field (should
  focus on barcode field after a date has been selected).
- Removing trailing comma from JavaScript (breaks IE)

To test, try typing an invalid number in any of the date due entry
fields: Under 'specify due date,' 'renewal due date,' or the
confirm "invalid" date dialog (after specifying a date in the past).
Manual entry should not work. Choosing a date/time using the
widget should work.

Signed-off-by: Melia Meggs <melia@test.bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-11-08 23:23:25 -05:00
Paul Poulain
a8c5497b8d Merge remote-tracking branch 'origin/new/bug_7986' 2012-10-04 18:12:14 +02:00
Jonathan Druart
db4fddd31d Bug 7986: Followup: Hide the export link unless sysprefs are set
If at least one of both sysprefs (ExportRemoveFields and
ExportWithCsvProfile) is filled, the export link is displayed

Signed-off-by: Marc Veron <veron@veron.ch>

Tested with both sysprefs filled/not filled, patch behaves as expected.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-10-04 18:09:00 +02:00
Colin Campbell
537c746dc4 Bug 7751: Decrease Loans for Items in Demand for Holds
Rebase and merge based on Mark Gavillet's patch to reduce
the loan period given to items on renewal when they are
in high demand for holds

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-09-18 19:01:14 +02:00
7cbb0debf5 Bug 6151 - Followup - Display message for failed returns on circulation.pl when returning via issues table.
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-09-17 19:19:13 +02:00
Paul Poulain
702896d061 Bug 7968 follow-up typo fixes
* changing "export" to "export checkouts", will differentiate better for translation
* fixing english typo in alert when csv profile is not defined
2012-09-13 18:08:38 +02:00
Jonathan Druart
0f3f61e756 Bug 7986: Export issues for patron
In the circulation page, you can now export (as csv or iso2709) a list
of items which are currently checked out by a borrower.

3 export types:
- iso2709 with items: Export the items list in iso2709 format with item
  informations.
- iso2709 without items: Export the items list in iso2709 format without
  item informations.
- CSV: Export the items list based on a csv profil.

2 new system preferences:
- DontExportFields: a list of fields not to be export
- CsvProfileForExport: The Csv profile name used for the csv export

Test plan:
- Fill the CsvProfileForExport syspref
- go on the borrower circulation page containing checkouts
- Select one or more items and export them to the 3 different formats.
- check if the result file is what you expected

- Test there is no regression with the export authority
- Test there is no regression using tools/export.pl with the command
  line interface

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-09-13 17:58:30 +02:00
Colin Campbell
6c10d685a7 Bug 8514 Restore Patron Name Display Order
Bug 6303 introduced an include file governing patron name display
unfortunately that changed patron display in search result lists and
on the circ screen header. This adds a parameter restroring the
original surname, firstname order, whose absence was perceived
as a loss of functionality

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-09-05 15:04:52 +02:00
Marc Veron
01a7188d6a BUG 7621 [ENH] Circulation: Match age restriction of title with borrower's age without using categories
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

New version implementing Paul's advice.
See Wiki http://wiki.koha-community.org/wiki/Age_restrictiotion

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
fix updatedatabase.pl

New fix updatedatabase.pl to apply to current master by Marc Veron veron@veron.ch
...and fixed missing curly bracket after merging updatedatabase.pl

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-09-05 14:32:53 +02:00
fbb7803601 Bug 8498 - can't specify an hour when specifying due date
With hourly loans Koha can make items due specific hours,
but if you have the specify due date box on the checkout
screen you can't enter an hour/minute. It will always default
to 23:59.

* Add jquery timepicker plugin
* Update jquery ui to include timepicker prerequisite slider
* Set timepicker's default time to 23:59, remove the hard
  coded 23:59 setting from circulation.pl
* Resize input fields such that the entire date and time are
  visible.

Signed-off-by: Marc Veron <veron@veron.ch>
Works as expected, input field displays entire date and time.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-08-31 22:44:26 +02:00
b932363f70 Bug 8422 - Fix impossible warning in circulation.pl when OverduesBlockCirc set to Block
Previously, the message Patron has x overdue item(s). Checkout anyway? was shown when syspref OverduesBlockCirc was set to Ask for confirmation or Block.

This patch changes the message for Block to: Checkouts are BLOCKED because patron has overdues.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-17 15:33:38 +02:00
Paul Poulain
0923e96cb4 Revert "Bug 7444: Update circ/circulation.pl to use KohaDates TT Plugin"
This reverts commit 186cfa5cb0.
2012-06-29 17:17:47 +02:00
2b74492d7d Bug 8181 [REVISED] Replace DynArch calendar widget with jQueryUI version
All instances of the old DynArch calendar have been replaced with
jQueryUI versions and the old library files have been removed.

calendar.inc has been modified to include jQueryUI localization
strings and global configuration options. Just add a "datepicker"
class to an input field to trigger a datepicker prompt.

If you would like two fields in one from to limit each other (one
is date from, one is date to), add these classes to each:
"datepickerfrom" and "datepickerto." This will prevent an invalid
entry, e.g. a date in the latter which falls before the former.

jQueryUI is now upgraded to the latest verision, 1.8.21.

Edit: Now with proper translatability, date formatting, first day
of the week handling, and RTL support.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
QA Comment:  rebased on current master; minor merge conflicts with other patches pushed

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 18:26:26 +02:00
Ian Walls
186cfa5cb0 Bug 7444: Update circ/circulation.pl to use KohaDates TT Plugin
Removes all date formatting done in circ/circulation, and sets any/all date
outputs to iso format.  The formatting of dates is now handled in the template
using the KohaDates plugin.

This allows use to remove a dependency on C4/Dates.pm from the script.

This patch also removes the usage of C4/Overdues/CheckBorrowerDebarred.  Since
borrowers.debarred is returned by GetMemberDetails, it doesn't make sense to
include another module to run another MySQL query just to fetch the date again.

To Test:

1. View the checkout page for a patron with materials checked out today and in days past, as
well as items on reserve.
2. View a patron who is nearing their expiry date
3. Renew a patron
4. Renew a material from the checkout page using the renewal date selector
5. Attempt to checkout a book to a patron that is on hold for someone else
6. Attempt to checkout a book that is currently checked out
7. View a debarred patron

In all cases, any dates displayed should be in syspref format

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 18:02:26 +02:00
68b30468c3 Bug 8143 [REVISED] Upgrade jQuery tabs to current jQueryUI version
Current jQuery-driven tabs are done using a very old
version of the tabs plugin. This patch upgrades jQueryUI
to the latest version and adds the tabs widget dependency
to the jqueryui js file and updates the syntax for existing
tabs:

- $("#foo > ul").tabs(); changes to $("#foo").tabs();
- Remove full URL from tab links (use #anchor only).

Pages with "static" tabs (tabs which are built in the
markup rather than generated by the plugin) have been
modified to use their own style. Examples: pay.tt in
the staff client and opac-readingrecord.tt in the OPAC.

Edit: Minor revision to some uncorrected markup

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 15:22:58 +02:00
5e43e2f93d Bug 7951 - Suspending holds needs a system preference
Adds system preferences SuspendHoldsIntranet and SuspendHoldsOpac.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-06-09 18:45:57 +02:00
2aff4b467b Bug 8167 - Add syspref allow a choice of blocking, non-blocking, or do nothing when issuing lost items.
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Works as advertised.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 16:21:05 +02:00
b04899bafd Bug 7641 - Followup - Suspend Until not set on by suspend button.
For request.pl, there are two ways to suspend a reserve, either
by using the 'suspend' button for an individual reserve, or by
using the 'Update hold(s)' button with suspend until dates set.

If the 'suspend' button is used, any date in the 'suspend until'
field is ignored. This commit fixes this issue.

  * Add suspend_until date to suspend button link via jquery
  * Add optional date to ToggleSuspend()
  * Add KohaDates plugin where necessary

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
passes tests, tested:
* suspend all holds from circ.pl
* suspend one hold from circ.pl
* suspend all holds from moremember.pl
* suspend one hold from moremember.pl
   --- NOTE: clicking suspend all holds without setting a date will mean the holds must be manually unsuspended. I'm not sure this is intentional?
* suspend a specific hold using the in-table button on reserves
* suspend a specific hold using the "update hold" button

500 error is gone.

http://bugs.koha-community.org/show_bug.cgi?id=8084
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-15 15:48:12 +02:00
d1e3773e3b Bug 5184 - Upgrade jQuery to the latest version (staff client)
Upgrade jQuery in the staff client. Besides the change
to the jQuery file syntax has been changed wherever this
syntax was written:

$(foo).attr("checked","");

The new correct way to un-check a checkbox:

$(foo).removeAttr("checked");

I also removed some JavaScript altogether from
branch-transfer-limits.tt which used the old syntax but
which wasn't used on the page at all anymore.

Signed-off-by: Chris Nighswonger <cnighswonger@foundations.edu>
Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-11 11:05:19 +02:00
Colin Campbell
d78c28db7b Bug 7987 [SIGNED-OFF] Fix typo in circulation template
li was not properly closed after loss of a character

Signed-off-by: Marc Veron <veron@veron.ch>

- Checked koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt before / after applying patch
- Line is changed as expected, ends now with </li>

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-07 22:49:54 +02:00
Paul Poulain
8e9fc9b385 Merge remote-tracking branch 'origin/new/bug_2780' 2012-04-10 10:04:51 +02:00
00a13c5725 Bug 2780 - Capitalize strings consistently (Circulation)
Correcting capitalization in Circulation templates

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-04-10 10:03:30 +02:00
08cee791a7 Bug 7758 - Koha allowing LOST items to check out without alert
Adds a confirmation alert when issuing an item that has
been marked as lost.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
passes tests, works as advertiesd

Tested:
- checking out an item that is marked lost performs all usual lost operations
- checking out an item that is marked lost prompts for confirmation

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-06 18:08:17 +02:00
d1dc3c0c2e Bug 7641 - Add ability to suspend reserves - Followup
* Switch from C4::Dates to $KohaDates
  * Fix 'Resume All Suspended All Requests'
  * Change button text to follow capitalization rules
  * Change 'requests' to 'holds'

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-06 17:23:10 +02:00
f446b3d03d Bug 7641: Suspend Reserves
Adds the ability to suspend reserves. The new system preference
AutoResumeSuspendedHolds enables the ability to set a date for
a suspended hold to automatically be resumed.

When a hold is suspended, it will continue to increase in priority
as the holds above it are fulfilled. If the first holds in line
to be filled are suspended, the first non-suspened hold in line
will be used when an item can fulfill a hold that has been placed.

http://bugs.koha-community.org/show_bug.cgi?id=7641
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested with the preference on and off:
1. placed several holds in the staff client
2. suspended some with a date
3. suspended some without a date
4. triggered hold message by checking in for hold with suspensions
5. the suspended hold was skipped as it should be
6. tested suspending holds in the OPAC w and w/out dates
7. ran the cron to clear suspensions with dates

All the above tests worked as expected. Signing off.
2012-03-29 14:37:49 +02:00
Katrin Fischer
9ab692693e Bug 7760 - Add ids and classes to every staff page to help with customizaton (circulation)
New id: circ_<filename>
New class: circ

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
2012-03-22 18:12:27 +01:00
Chris Cormack
a9e080a6fb Bug 7278 : Additional Materials
Part 2: This patch shows the message at checkout and checkin

How to test:
* Add a note in cataloguing
* Check it displays at checkout and checkin
* Check items without a note don't display anything

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-01-10 22:41:50 +01:00
bc92dda8c4 Fix for Bug 7077 - Add system pref to control behavior of submitting empty barcode field
Adds a new system preference, CircAutoPrintQuickSlip:

When an empty an empty barcode field is submitted in circulation
[ clear the screen | open a print quick slip window ].

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Fixed a merge conflict with the updatedatabase.pl

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Another merge conflict resolved. Marked as Passed QA.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-06 17:34:10 +01:00
32e1669731 Bug 7337 - "Debarred Until" display in the opac tells patrons they are debarred until the year 9999
This patch copies the debarred handling method from circulation.pl for
use on opac-user.pl so that debarred dates and comments can be handled
properly.

I have slightly reworded the message in the OPAC and on circulation.pl
to make the display of the debarred comment a little clearer.

Revision adds missing handling of debarred status with regard to
renewal operations. Renew links and buttons were not being hidden
from debarred users.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Renewal buttons are gone, message looks good.

liz@koha-deb:~/kohaclone$ prove xt
xt/permissions.t .. ok
xt/tt_valid.t ..... ok
All tests successful.
Files=2, Tests=27,  9 wallclock secs ( 0.05 usr  0.01 sys +  8.28 cusr  0.08 csys =  8.42 CPU)
Result: PASS

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-06 15:08:30 +01:00
Paul Poulain
41b42dbe32 Bug 6328 follow-up for QA comments
* fixed documentation in C4/Auth_with_ldap.pm
* updated ILSDI/Utility.pm to work with debarred being a date
* updated Members.pm/patronflags to work with debarred being a date (copy/paste of BibLibre code that had not been backported)
* fixed opac-reserve to check correctly for debarred status

I also have removed a duplicate line on circulation.pl when the patron was restricted = the information was displayed twice
2011-11-25 14:00:47 +01:00
Paul Poulain
1fe3514c3c Bug 6328 fine in days does not work
Some code coming from BibLibre has been lost in the process of inclusion in
3.4. The result is that fine in days does not work at all (you can setup rules,
but it does nothing)

Step to reproduce:

- Koha > Admin > circ rules > set 1 day fine every day of overdue for default
  rule
- Issue a book return date last week
- check-in the book => no debarment is set

The following patch will fix all of those problems by :

* updating borrowers.debarred to a date field (instead of tinyint). It contains
  the limit of the debarment
* changing API of DebarMember and UpdateBorrowerDebarred to pass a date
* display debarrdate where applicable. Note that a debarrdate of 31/12/9999 is
  considered as unlimited and not displayed
* added a debarrcomment, usefull to explain why a patron is debarred (this is
  independant from debarrdate changes and can be used when placing an unlimited
  debarment too)

[2011-05-12] F. Demians. It works as described. And I can confirm this
functionality is impatiently awaited by French libraries since one year. Thanks
BibLibre for the good work and for contributing this code.

Bug 6328 Followup--update DB structure

Thanks Katrin.

Bug 6328: make comment a textbox / fix debar by notice trigger

Debarring by notice triggers was broken, because the new function
expects a date as second parameter.

The comment field in patron account details was a very long text field.
Patch changes it to be a textbox instead.

Bug 6328: Lift debarment leaves patron account

'Lift debarment' redirects to an empty circulation page.

BZ6328 follow-up 3

Fixes comment 23 from Fernando L. Canizo : when the patron was debarred and debar removed
he still could not check-out.

The changes in the IsMemberBlocked (that were on biblibre/master) were lost somewhere
The sub was still checking for old_issues instead of calling CheckBorrowerDebarred
to get a debardate if applicable

Note : this bug was appearing only is you had issuing rules defined for itemtype/categorycode/branch.
Seemed to work if you had only default rules. That's probably why it hadn't been spotted before

BZ6328 follow-up 4
Comments fron Zeno Tajoli: The patch is OK and I sign-off it. Two little changes done on
installer/data/mysql/kohastructure.sql and installer/data/mysql/updatedatabase.pl

Signed-off-by: koha <koha@kohabase.localdomain>
2011-11-25 14:00:47 +01:00
Srdjan Jankovic
2b2e544f05 Bug 6303: Display Organisation and Parent Organisation names when viewing a borrower of type organisation
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as advertised, doesn't affect display for non-organisational patrons.

Note: Display change in OPAC only affects the summary tab.
It would be a little bit more consistent to make the name show the
same on all tabs in OPAC patron account.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
I repeated Katrin's signoff here (with permission). The patch only changed for some minor rebasing and cosmetic QA requests. Passed QA now.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-24 11:30:08 +01:00
41928b0880 Fix for Bug 7024 - Can't delete other library's messages with AllowAllMessageDeletion on
The display of messages "to the patron" on the checkout screen
lacked the same logic controlling messages "to other librarians,"
affecting conditions under which the [Delete] link would be shown.
This match makes the two categories consistent with each other:
A delete link will be shown if the logged in branch matches the
branch where the message was set OR if AllowAllMessageDeletion
is turned on.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-15 19:56:05 +13:00