2 # XXX It might be cleaner to move this into its own file or something.
4 # The following hash should have fail_parts as keys and user/patron-friendly
5 # strings as values. If the system returns an event with a fail_part when
6 # you attempt to place a hold and the fail part matches something in this
7 # hash, this is the message that will be displayed to the user. Wait until
8 # these are used to pass them through l() for i18n.
11 "actor.usr.barred" => l("The patron is barred"),
12 "asset.copy.circulate" => l("The item does not circulate"),
13 "asset.copy_location.circulate" => l("Items from this shelving location do not circulate"),
14 "asset.copy.status" => l("The item cannot circulate at this time"),
15 "circ.holds.target_skip_me" => l("The item's circulation library does not fulfill holds"),
16 "config.circ_matrix_circ_mod_test" => l("The patron has too many items of this type checked out"),
17 "config.circ_matrix_test.available_copy_hold_ratio" => l("The available item-to-hold ratio is too low"),
18 "config.circ_matrix_test.circulate" => l("Circulation rules reject this item as non-circulatable"),
19 "config.circ_matrix_test.total_copy_hold_ratio" => l("The total item-to-hold ratio is too low"),
20 "config.hold_matrix_test.holdable" => l("Hold rules reject this item as unholdable"),
21 "config.hold_matrix_test.max_holds" => l("The patron has reached the maximum number of holds"),
22 "config.rule_age_hold_protect.prox" => l("The item is too new to transit this far"),
23 "item.holdable" => l("The item is not holdable"),
24 "location.holdable" => l("The item's location is not holdable"),
25 "status.holdable" => l("The item is not in a holdable status"),
26 "no_item" => l("The system could not find this item"),
27 "no_ultimate_items" => l("The system could not find any items to match this hold request"),
28 "no_matchpoint" => l("System rules do not define how to handle this item"),
29 "no_user" => l("The system could not find this patron"),
30 "transit_range" => l("The item cannot transit this far")
34 # This works like the above has, but instead of fail_parts for keys, use
35 # the textcode of the event. This will only be consulted for events
36 # that do not have a fail_part matching something in the above hash.
37 # Wait until these are used to pass them through l() for i18n.
40 "PATRON_EXCEEDS_FINES" => l("Patron has reached the maximum fine amount")