Koha/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref
Kyle M Hall 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

600 lines
24 KiB
Text

Circulation:
# FIXME: printcirculationslips is also omitted. It _technically_ could work, but C4::Print is HLT specific and needs a little bit of refactoring.
Interface:
-
- pref: CircAutocompl
choices:
yes: Try
no: "Don't try"
- to guess the patron being entered while typing a patron search on the circulation screen.
- Only returns the first 10 results at a time.
-
- pref: itemBarcodeInputFilter
choices:
OFF: "Don't filter"
whitespace: Remove spaces from
cuecat: Convert from CueCat form
T-prefix: Remove the first number from T-prefix style
libsuite8: Convert from Libsuite8 form
EAN13: EAN-13 or zero-padded UPC-A from
- scanned item barcodes.
-
- pref: itemBarcodeFallbackSearch
choices:
yes: "Enable"
no: "Don't enable"
- the automatic use of a keyword catalog search if the phrase entered as a barcode on the checkout page does not turn up any results during an item barcode search.
-
- Sort previous checkouts on the circulation page from
- pref: previousIssuesDefaultSortOrder
choices:
asc: earliest to latest
desc: latest to earliest
- due date.
-
- "Sort today's checkouts on the circulation page from"
- pref: todaysIssuesDefaultSortOrder
type: choice
choices:
asc: earliest to latest
desc: latest to earliest
- due date.
-
- pref: UseTablesortForCirc
choices:
yes: "Enable"
no: "Don't enable"
- "the sorting of current patron checkouts on the circulation screen. <br/>NOTE: Enabling this function may slow down circulation time for patrons with many checkouts."
-
- pref: soundon
choices:
yes: "Enable"
no: "Don't enable"
- circulation sounds during checkin and checkout in the staff interface. Not supported by all web browsers yet.
-
- pref: SpecifyDueDate
choices:
yes: Allow
no: "Don't allow"
- staff to specify a due date for a checkout.
-
- Set the default start date for the Holds to pull list to
- pref: HoldsToPullStartDate
class: integer
- day(s) ago. Note that the default end date is controlled by preference ConfirmFutureHolds.
-
- pref: AllowAllMessageDeletion
choices:
yes: Allow
no: "Don't allow"
- staff to delete messages added from other libraries.
-
- Show the
- pref: numReturnedItemsToShow
class: integer
- last returned items on the checkin screen.
-
- pref: FineNotifyAtCheckin
choices:
yes: Notify
no: "Don't notify"
- librarians of overdue fines on the items they are checking in.
-
- pref: WaitingNotifyAtCheckin
choices:
yes: Notify
no: "Don't notify"
- librarians of waiting holds for the patron whose items they are checking in.
-
- pref: FilterBeforeOverdueReport
choices:
yes: Require
no: "Don't require"
- staff to choose which checkouts to show before running the overdues report.
-
- pref: DisplayClearScreenButton
choices:
yes: Show
no: "Don't show"
- a button to clear the current patron from the screen on the circulation screen.
-
- pref: RecordLocalUseOnReturn
choices:
yes: Record
no: "Don't record"
- local use when an unissued item is checked in.
-
- When an empty barcode field is submitted in circulation
- pref: CircAutoPrintQuickSlip
choices:
yes: "open a print quick slip window"
no: "clear the screen"
- .
-
- Include the stylesheet at
- pref: NoticeCSS
class: url
- on Notices. (This should be a complete URL, starting with <code>http://</code>)
-
- pref: UpdateTotalIssuesOnCirc
choices:
yes: Do
no: "Do not"
- update a bibliographic record's total issues count whenever an item is issued (WARNING! This increases server load significantly; if performance is a concern, use the update_totalissues.pl cron job to update the total issues count).
-
- Use the
- pref: ExportWithCsvProfile
- CSV profile when exporting patron checkout history (enter CSV Profile name)
-
- The following fields should be excluded from the patron checkout history CSV or iso2709 export
- pref: ExportRemoveFields
- (separate fields with space, e.g. 100a 200b 300c)
-
- pref: AllowOfflineCirculation
choices:
yes: Enable
no: "Do not enable"
- "offline circulation on regular circulation computers. (NOTE: This system preference does not affect the Firefox plugin or the desktop application)"
Checkout Policy:
-
- pref: AllowTooManyOverride
choices:
yes: Allow
no: "Don't allow"
- staff to override and check out items when the patron has reached the maximum number of allowed checkouts.
-
- pref: AutoRemoveOverduesRestrictions
choices:
yes: "Do"
no: "Do not"
- allow OVERDUES restrictions triggered by sent notices to be cleared automatically when all overdue items are returned by a patron.
-
- pref: AllowNotForLoanOverride
choices:
yes: Allow
no: "Don't allow"
- staff to override and check out items that are marked as not for loan.
-
- pref: AllowRenewalLimitOverride
choices:
yes: Allow
no: "Don't allow"
- staff to manually override the renewal limit and renew a checkout when it would go over the renewal limit.
-
- pref: AllowItemsOnHoldCheckout
choices:
yes: Allow
no: "Don't allow"
- checkouts of items reserved to someone else. If allowed do not generate RESERVE_WAITING and RESERVED warning. This allows self checkouts for those items.
-
- pref: AllFinesNeedOverride
choices:
yes: Require
no: "Don't require"
- staff to manually override all fines, even fines less than noissuescharge.
-
- pref: AllowFineOverride
choices:
yes: Allow
no: "Don't allow"
- staff to manually override and check out items to patrons who have more than noissuescharge in fines.
-
- pref: InProcessingToShelvingCart
choices:
yes: Move
no: "Don't move"
- items that have the location PROC to the location CART when they are checked in.
-
- pref: ReturnToShelvingCart
choices:
yes: Move
no: "Don't move"
- all items to the location CART when they are checked in.
-
- pref: AutomaticItemReturn
choices:
yes: Do
no: "Don't"
- automatically transfer items to their home library when they are returned.
-
- pref: UseBranchTransferLimits
choices:
yes: Enforce
no: "Don't enforce"
- library transfer limits based on
- pref: BranchTransferLimitsType
choices:
ccode: collection code
itemtype: item type
- .
-
- pref: UseTransportCostMatrix
choices:
yes: Use
no: "Don't use"
- Transport Cost Matrix for calculating optimal holds filling between branches.
-
- Use the checkout and fines rules of
- pref: CircControl
type: choice
choices:
PickupLibrary: the library you are logged in at.
PatronLibrary: the library the patron is from.
ItemHomeLibrary: the library the item is from.
-
- Use the checkout and fines rules of
- pref: HomeOrHoldingBranch
type: choice
choices:
homebranch: the library the item is from.
holdingbranch: the library the item was checked out from.
-
- Allow materials to be returned to
- pref: AllowReturnToBranch
type: choice
choices:
anywhere: to any library.
homebranch: only the library the item is from.
holdingbranch: only the library the item was checked out from.
homeorholdingbranch: either the library the item is from or the library it was checked out from.
-
- Calculate the due date using
- pref: useDaysMode
choices:
Days: circulation rules only.
Calendar: the calendar to skip all days the library is closed.
Datedue: the calendar to push the due date to the next open day
-
- When renewing checkouts, base the new due date on
- pref: RenewalPeriodBase
choices:
date_due: the old due date of the checkout.
now: the current date.
-
- pref: RenewalSendNotice
choices:
yes: Send
no: "Don't send"
- a renewal notice according to patron checkout alert preferences.
-
- Prevent patrons from making holds on the OPAC if they owe more than
- pref: maxoutstanding
class: currency
- '[% local_currency %] in fines.'
-
- Show a warning on the "Transfers to Receive" screen if the transfer has not been received
- pref: TransfersMaxDaysWarning
class: integer
- days after it was sent.
-
- pref: IssuingInProcess
choices:
yes: "Don't prevent"
no: "Prevent"
- patrons from checking out an item whose rental charge would take them over the limit.
-
- "Restrict patrons with the following target audience values from checking out inappropriate materials:"
- pref: AgeRestrictionMarker
- "E.g. enter target audience keyword(s) split by | (bar) FSK|PEGI|Age| (No white space near |). Be sure to map agerestriction in Koha to MARC mapping (e.g. 521$a). A MARC field value of FSK 12 or PEGI 12 would mean: Borrower must be 12 years old. Leave empty to not apply an age restriction."
-
- pref: AgeRestrictionOverride
choices:
yes: Allow
no: "Don't allow"
- staff to check out an item with age restriction.
-
- Prevent patrons from checking out books if they have more than
- pref: noissuescharge
class: integer
- '[% local_currency %] in fines.'
-
- pref: RentalsInNoissuesCharge
choices:
yes: Include
no: "Don't include"
- rental charges when summing up charges for noissuescharge.
-
- pref: ManInvInNoissuesCharge
choices:
yes: Include
no: "Don't include"
- MANUAL_INV charges when summing up charges for noissuescharge.
-
- pref: ReturnBeforeExpiry
choices:
yes: Require
no: "Don't require"
- "patrons to return books before their accounts expire (by restricting due dates to before the patron's expiration date)."
-
- Send all notices as a BCC to this email address
- pref: OverdueNoticeBcc
-
- Include up to
- pref: PrintNoticesMaxLines
class: integer
- "item lines in a printed overdue notice. If the number of items is greater than this number, the notice will end with a warning asking the borrower to check their online account for a full list of overdue items. Set to 0 to include all overdue items in the notice, no matter how many there are."
-
- pref: OverduesBlockCirc
choices:
block: Block
noblock: "Don't block"
confirmation: Ask for confirmation
- when checking out to a borrower that has overdues outstanding
-
- On checkin route the returned item to
- pref: HomeOrHoldingBranchReturn
type: choice
choices:
homebranch: the library the item is from.
holdingbranch: the library the item was checked out from.
-
- "When issuing an item that has been marked as lost, "
- pref: IssueLostItem
choices:
confirm: "require confirmation"
alert: "display a message"
nothing : "do nothing"
- .
Checkin Policy:
-
- pref: BlockReturnOfWithdrawnItems
choices:
yes: Block
no: "Don't block"
- returning of items that have been withdrawn.
-
- pref: CalculateFinesOnReturn
choices:
yes: Do
no: "Don't"
- calculate and update overdue charges when an item is returned.
- <br /><b>NOTE If you are doing hourly loans then you should have this on.</b>
Holds Policy:
-
- pref: AllowHoldPolicyOverride
choices:
yes: Allow
no: "Don't allow"
- staff to override hold policies when placing holds.
-
- pref: AllowHoldsOnDamagedItems
choices:
yes: Allow
no: "Don't allow"
- hold requests to be placed on damaged items.
-
- pref: AllowOnShelfHolds
choices:
yes: Allow
no: "Don't allow"
- hold requests to be placed on items that are not checked out.
-
- pref: AllowHoldDateInFuture
choices:
yes: Allow
no: "Don't allow"
- hold requests to be placed that do not enter the waiting list until a certain future date.
-
- pref: OPACAllowHoldDateInFuture
choices:
yes: Allow
no: "Don't allow"
- "patrons to place holds that don't enter the waiting list until a certain future date. (AllowHoldDateInFuture must also be enabled)."
-
- Confirm future hold requests (starting no later than
- pref: ConfirmFutureHolds
class: integer
- days from now) at checkin time. Note that this number of days will be used too in calculating the default end date for the Holds to pull-report. But it does not interfere with issuing, renewing or transferring books.
-
- Check the
- pref: ReservesControlBranch
choices:
ItemHomeLibrary: "item's home library"
PatronLibrary: "patron's home library"
- to see if the patron can place a hold on the item.
-
- Mark a hold as problematic if it has been waiting for more than
- pref: ReservesMaxPickUpDelay
class: integer
- days.
-
- pref: ExpireReservesMaxPickUpDelay
choices:
yes: Allow
no: "Don't allow"
- "holds to expire automatically if they have not been picked by within the time period specified in ReservesMaxPickUpDelay"
-
- If using ExpireReservesMaxPickUpDelay, charge a borrower who allows his or her waiting hold to expire a fee of
- pref: ExpireReservesMaxPickUpDelayCharge
class: currency
-
- Satisfy holds from the libraries
- pref: StaticHoldsQueueWeight
class: multi
- (as branchcodes, separated by commas; if empty, uses all libraries)
- pref: RandomizeHoldsQueueWeight
choices:
yes: in random order.
no: in that order.
-
-
- pref: canreservefromotherbranches
choices:
yes: Allow
no: "Don't allow (with independent branches)"
- a user from one library to place a hold on an item from another library
-
- pref: OPACAllowUserToChooseBranch
choices:
yes: Allow
no: "Don't allow"
- a user to choose the library to pick up a hold from.
-
- pref: ReservesNeedReturns
choices:
yes: "Don't automatically"
no: Automatically
- mark holds as found and waiting when a hold is placed specifically on them and they are already checked in.
-
- Patrons can only have
- pref: maxreserves
class: integer
- holds at once.
-
- pref: emailLibrarianWhenHoldIsPlaced
choices:
yes: Enable
no: "Don't enable"
- "sending an email to the Koha administrator email address whenever a hold request is placed."
-
- pref: DisplayMultiPlaceHold
choices:
yes: Enable
no: "Don't enable"
- "the ability to place holds on multiple biblio from the search results"
-
- pref: TransferWhenCancelAllWaitingHolds
choices:
yes: Transfer
no: "Don't transfer"
- items when cancelling all waiting holds.
-
- pref: AutoResumeSuspendedHolds
choices:
yes: Allow
no: "Don't allow"
- suspended holds to be automatically resumed by a set date.
-
- pref: SuspendHoldsIntranet
choices:
yes: Allow
no: "Don't allow"
- holds to be suspended from the intranet.
-
- pref: SuspendHoldsOpac
choices:
yes: Allow
no: "Don't allow"
- holds to be suspended from the OPAC.
-
- pref: decreaseLoanHighHolds
choices:
yes: Enable
no: "Don't enable"
- the reduction of loan period to
- pref: decreaseLoanHighHoldsDuration
class: integer
- days for items with more than
- pref: decreaseLoanHighHoldsValue
class: integer
- holds.
-
- pref: AllowHoldsOnPatronsPossessions
choices:
yes: Allow
no: "Don't allow"
- a patron to place a hold on a record where the patron already has one or more items attached to that record checked out.
Fines Policy:
-
- Calculate fines based on days overdue
- pref: finesCalendar
type: choice
choices:
ignoreCalendar: directly.
noFinesWhenClosed: not including days the library is closed.
-
-
- pref: finesMode
type: choice
choices:
off: "Don't calculate"
test: Calculate (but only for mailing to the admin)
production: Calculate and charge
- fines (when <code>misc/cronjobs/fines.pl</code> is being run).
-
- pref: RefundLostItemFeeOnReturn
choices:
yes: Refund
no: "Don't refund"
- lost item fees charged to a borrower when the lost item is returned.
-
- pref: FinesIncludeGracePeriod
choices:
yes: Include
no: "Don't include"
- the grace period when calculating the fine for an overdue item.
-
- pref: WhenLostForgiveFine
choices:
yes: Forgive
no: "Don't Forgive"
- the fines on an item when it is lost.
-
- pref: WhenLostChargeReplacementFee
choices:
yes: Charge
no: "Don't Charge"
- the replacement price when a patron loses an item.
Self Checkout:
-
- "Include the following JavaScript on all pages in the web-based self checkout:"
- pref: SCOUserJS
type: textarea
class: code
-
- "Include the following CSS on all pages in the web-based self checkout:"
- pref: SCOUserCSS
type: textarea
class: code
-
- pref: ShowPatronImageInWebBasedSelfCheck
choices:
yes: Show
no: "Don't show"
- "the patron's picture (if one has been added) when they use the web-based self checkout."
-
- pref: WebBasedSelfCheck
choices:
yes: Enable
no: "Don't enable"
- "the web-based self checkout system. (available at: /cgi-bin/koha/sco/sco-main.pl)"
-
- Have patrons login into the web-based self checkout system with their
- pref: SelfCheckoutByLogin
choices:
yes: Username and Password
no: Barcode
-
- "Time out the current patron's web-based self checkout system login after"
- pref: SelfCheckTimeout
class: integer
- seconds.
-
- pref: AllowSelfCheckReturns
choices:
yes: Allow
no: "Don't allow"
- patrons to return items through web-based self checkout system.
-
- "Include the following HTML in the Help page of the web-based self checkout system:"
- pref: SelfCheckHelpMessage
type: textarea
class: code
-
- pref: AutoSelfCheckAllowed
choices:
yes: Allow
no: "Don't allow"
- "the web-based self checkout system to automatically login with this staff login"
- pref: AutoSelfCheckID
- and this password
- pref: AutoSelfCheckPass
- .
Course Reserves:
-
- pref: UseCourseReserves
choices:
yes: Use
no: "Don't use"
- course reserves