1d15d315f2f00b849a523837ae6dc78a499e1ede
[Evergreen.git] / docs / RELEASE_NOTES_3_1.adoc
1 Evergreen 3.1 Release Notes
2 ===========================
3 :toc:
4 :numbered:
5
6 Evergreen 3.1.5
7 ----------------
8 This release contains bug fixes improving on Evergreen 3.1.4.
9 All bug fixes refer to the web staff client unless otherwise specified.
10
11 Bug fixes
12 ~~~~~~~~~
13
14 * Several strings are now displayed in the correct translation.
15 * Right clicking in grids results in more intuitive behavior.
16 * Usernames and barcodes containging the _%_ character no longer
17 experience problems logging in.
18 * Fixes cases in which the web client stops loading after the toolbar.
19 * Fixes problems in which using the web client in multiple tabs leads
20 to data inconsistency.
21 * Fixes an issue that caused authentication session checks to spam
22 the system and needlessly fill up logs.
23 * Boolean fields within grid views now say "Yes"/"No" instead of 
24 "true"/"false".
25 * Fixes sorting issues in the patron search.
26 * The patron triggered event screen now respects the
27 `circ.staff.max_visible_event_age` library setting.
28 * Fixes an issue which caused an exception to be thrown during
29 non-cataloged item checkout.
30 * Fixes permission issues related to merging users.
31 * The bibliographic record summary now displays the call number that
32 matches the library's classification system.
33 * The copy editor now makes shelving locations visible to catalogers
34 from other libraries as needed.
35 * Once a record is overlayed in the Z39.50 screen, it is no longer
36 marked for overlay.
37 * Fixes several issues with the item status list view.
38 * When adding new copies, the circulation library now defaults to the
39 call number's owning library.
40 * Fixes display issues with the Print Item Labels page.
41 * Fixes an issue in which the staff client and the OPAC displayed
42 different counts of available items.
43
44 Acknowledgements
45 ~~~~~~~~~~~~~~~~
46 We would like to thank the following individuals who contributed code,
47 tests and documentation patches to the 3.1.5 point release of
48 Evergreen:
49
50 * John Amundson
51 * a. bellenir
52 * Jason Boyer
53 * Garry Collum
54 * Jeff Davis
55 * Bill Erickson
56 * Rogan Hamby
57 * Kathy Lussier
58 * Terran McCanna
59 * Michele Morgan
60 * Mike Rylander
61 * Jane Sandberg
62 * Chris Sharp
63 * Jason Stephenson
64 * Ben Shum
65 * Cesar Velez
66 * John Yorio
67
68
69 Evergreen 3.1.4
70 ----------------
71 This release contains bug fixes improving on Evergreen 3.1.3.  Note that
72 all bug fixes refer to the web staff client unless otherwise specified.
73
74 Bug fixes
75 ~~~~~~~~~
76
77 * Fixes right-click issues with the Web client grids
78 * Fixes an issue with the Default SMS Carrier in the patron edit form.
79 * Fixes an issue that allowed overdue notices to be sent to a patron
80 whose long overdue item has been paid for.
81 * Checking in precat items now displays the "Route to Cataloging" alert each
82 time the item is checked in.
83 * Fixes an issue where alerts that had been cleared by a check-in continued
84 to display.
85 * Fixes an issue in which the Adjust to Zero feature
86 does not close a checked-in lost circ.
87 * Deleted copies that are still checked out can now be checked in.
88 * Fixes a mislabeled column in the patron checkout grid.
89 * Grocery bills are no longer styled the same way as overdue bills.
90 * Fixes an error with the missing pieces functionality.
91 * Courier codes now display in the transit slip receipt preview.
92 * Fixes several issues related to adding volumes.
93 * Fixes several issues related to empty volumes.
94 * Fixes several issues related to item and volume transfers.
95 * Fixes several issues with checkboxes in the volume/copy editor.
96 * The Item Status grid now displays OU shortnames instead of full names
97 for the "Circulation Library" column.
98 * The Volume/Copy editor now allows users to remove a value from the Age
99 Hold Protection field.
100 * Barcode completion now works in copy buckets.
101 * The Z39.50 interface now notices when another record has been marked
102 for overlay.
103 * Fixes a display issue for the Remove MARC Field Groups checkboxes in
104 the Z39.50 interface.
105 * Fixes a performance issue for the Validate button in the MARC Editor.
106 * Fixes an incorrect close tag in the Print Item Labels toolbar.
107 * Better scoping of copy tags in search results.
108 * Prevents sending invalid search.highlight_display_fields calls.
109 * Electronic Resource links now open in a new tab.
110 * Fixes an issue with the fiscal year close-out operation.
111
112 Acknowledgements
113 ~~~~~~~~~~~~~~~~
114 We would like to thank the following individuals who contributed code,
115 tests and documentation patches to the 3.1.4 point release of
116 Evergreen:
117
118 * A. Bellenir
119 * Adam Bowling
120 * Jason Boyer
121 * Galen Charlton
122 * Garry Collum
123 * Jeff Davis
124 * Bill Erickson
125 * Kathy Lussier
126 * Terran McCanna
127 * Michele Morgan
128 * Jennifer Pringle
129 * Mike Rylander
130 * Jane Sandberg
131 * Chris Sharp
132 * Jason Stephenson
133 * Cesar Velez
134 * Dan Wells
135
136 Evergreen 3.1.3
137 ---------------
138 This release contains bug fixes improving on Evergreen 3.1.2.  Note that
139 all bug fixes refer to the web staff client unless otherwise specified.
140
141 Bug fixes
142 ~~~~~~~~~
143
144 * Fixes specific cases in which deleted records appear in search results.
145 * Fixes a performance issue with deleting patrons.
146 * The hold shelf dialog popup now lists the patron's notification
147 preferences.
148 * Fixes an issue that prevented editing items when a monograph part
149 is present.
150 * Patron information is now available for use in the bills_current
151 and bills_historical receipt templates.
152 * The browser's "This page may contain unsaved data" warning now 
153 appears when users click the update
154 expire date button in a patron account and attempt to navigate away
155 without saving.
156 * The holds tab of the patron record now includes a monograph part
157 column.
158 * The barcode box in the checkout screen
159 no longer hovers above patron record tabs when
160 staff users scroll down.
161 * Fixes an issue with the date of birth in the patron edit scren.
162 * The patron account bills grid are now color-coded by the item's
163 status.
164 * Fixes an issue with the dropdown of billing type options.
165 * The Item Status screen now includes as a floating group column.
166
167 Acknowledgements
168 ~~~~~~~~~~~~~~~~
169 We would like to thank the following individuals who contributed code,
170 tests and documentation patches to the 3.1.3 point release of
171 Evergreen:
172
173 * BC Libraries Cooperative
174 * A. Bellenir
175 * Jason Boyer
176 * Galen Charlton
177 * Garry Collum
178 * Dawn Dale
179 * Bill Erickson
180 * Blake Graham-Henderson
181 * Kyle Huckins
182 * Jeanette Lundgren
183 * Kathy Lussier
184 * Terran McCanna
185 * Michele Morgan
186 * Dan Pearl
187 * Mike Rylander
188 * Geoff Sams
189 * Jane Sandberg
190 * Chris Sharp
191 * Remington Steed
192 * Jason Stephenson
193 * Cesar Velez
194 * Dan Wells
195
196
197 Evergreen 3.1.2
198 ---------------
199
200 This release contains bug fixes improving on Evergreen 3.1.1.   Note that
201 all bug fixes refer to the web staff client unless otherwise specified.
202
203 Bug fixes
204 ~~~~~~~~~
205
206 Cataloging
207 ^^^^^^^^^^
208
209 * The MARC editor now handles 008 fields better.
210 * Adds spaces between subfields when suggesting a call
211 number for a new volume.
212 * MarcXML exports from the MARC Batch Import/Export ->
213 Export Records screen now downloads the file, rather than opening
214 it in the browser.
215 * The Item Status Circulation Library column now displays a 
216 shortname rather than the full library name.
217 * The Item Status Remaining Renewals column now displays
218 correctly.
219 * The Item Status now has a "Last Renewal Workstation" column
220 available.
221 * Fixes the circulation counts displayed in Item Status Details.
222 * Removes an error that got thrown in the Holdings View when a call number
223 contains no copy.
224 * Fixes an issue where multiple copies with different values for required
225 statistical categories could not be edited and saved in batch.
226 * Add an option to remove floating in the copy editor.
227 * Fixes an issue with the floating dropdown in the copy editor.
228 * Fixes a problem in which the copy template didn't properly copy
229 certain objects.
230 * Reduces the number of API calls that the MARC Editor requires.
231 * The order of the Z39.50 servers on the Z39.50 import screen
232 no longer relies on capitalization.
233
234 Circulation
235 ^^^^^^^^^^^
236
237 * Fixes an issue that prevented the offline patron registration
238 screen from loading.
239 * Fixes an issue with searching patrons by permission group.
240 * The barcodes in the patron search are now clickable.
241 * Staff members can now manually override the patron juvenile
242 flag value, regardless of the patron's date of birth.
243 * Checkboxes on patron registration screen are now properly aligned
244 with other fields.
245 * The user permission group dropdowns in the patron registration,
246 edit, and search interfaces now have scrollbars.
247 * The date picker on the checkout screen is now hidden unless
248 circ staff activates a specific due date option.
249 * The check-in screen now includes a copy status column.
250 * The Merge Patrons interface now displays the date of birth.
251 * The user bucket screen now displays the Bucket ID.
252 * The payment button on patron bills screen is now inactive if the
253 Payment Received field is blank.
254 * The Bill History receipt now includes a Finish date and a Last
255 Payment date.
256 * When a patron summary contains an image of the patron,
257 that image tag now has a null alt attribute to remove it from
258 the flow of a screen reader.
259 * Corrects an issue that caused the transit dialog to show the
260 wrong branch.
261 * Corrects an issue with printing transit lists.
262 * "Find another target" on transiting hold no longer leaves the 
263 copy "in-transit".
264 * The images now display to distinguish hold and transit slips.
265 * The Clearable Holds list printout now only shows holds that have
266 expired.
267 * Restores the call number prefix and suffix fields to the holds
268 pull list.
269 * The documentation at the top of the hold shelf slip template
270 adds `patron.alias`.
271 * The cursor in the in-house use screen now automatically goes
272 to the barcode field.
273 * The in-house use screen now shows a copy status column.
274 * Add support for converting change to patron credit in the patron bills
275 interface, consistent with the XUL feature.
276 * Fixes a bug that caused pickup/request library fields to be
277 blank sometimes.
278 * Fixes a bug in the offline org unit tree.
279
280 Command-line system administration
281 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
282
283 * The novelist entry in `eg_vhost.conf` includes two new
284 parameters.
285 * Corrects an issue with the `--max-sleep` argument on the
286 `action_trigger_runner.pl` support script.
287 * Corrects an issue with how the `eg_pbx_allocator.pl` script
288 detects an existing lock file.
289 * The 3.0.2-3.0.3 upgrade script disables triggers before
290 recalculating bib visibility.
291
292 Public catalog
293 ^^^^^^^^^^^^^^
294
295 * Fixes an issue that caused records with located URIs to be
296 retrieved in Copy Location and Copy Location Group searches.
297 * Fixes an error message that appeared in the search box
298 in the public catalog while placing hold after an advanced search.
299 * Restores the display of copy information for the user's
300 preferred library in the public catalog.
301 * Author and contributor names are no longer highlighted in 
302 search results when the user has turned off highlighting.
303 * Fixes regression errors in the search results page.
304 * Removes redundant call numbers from the Show More Details
305 search results.
306 * The cast field in the catalog is now taken from the 511 field
307 when first indicator = 1, rather than the 508.
308 * Fixes a display issue caused by editing holds.
309 * Repairs broken author search links on the catalog record page.
310
311 Serials
312 ^^^^^^^
313
314 * Fixes an issue that prevented users from searching for
315 receivable issues using Database ID or ISSN in the Serials
316 Batch Receive interface.
317
318 General
319 ^^^^^^^
320 * Pins AngularJS support to version 1.6, which prevents unsupported
321 AngularJS versions (such as 1.7) from breaking the build process.
322 * Adds some padding to the bottom of Web Client interfaces.
323 * Logins now honor all org unit timeout settings.
324 * Evergreen will now identify and handle invalid timezones.
325 * Fixes an issue where a column header in some interfaces were automatically
326 highlighted in green when retrieving the interface.
327 * The parts column in the Item Status screen now displays parts data.
328
329
330 Acknowledgements
331 ~~~~~~~~~~~~~~~~
332 We would like to thank the following individuals who contributed code,
333 tests and documentation patches to the 3.1.2 point release of
334 Evergreen:
335
336 * John Amundson
337 * Jason Boyer
338 * Galen Charlton
339 * Garry Collum
340 * Dawn Dale
341 * Jeff Davis
342 * Bill Erickson
343 * Lynn Floyd
344 * Rogan Hamby
345 * Kyle Huckins
346 * Sam Link
347 * Jeanette Lundgren
348 * Kathy Lussier
349 * Katie G. Martin
350 * Terran McCanna
351 * Michele Morgan
352 * Dan Pearl
353 * Mike Rylander
354 * Laura Sachjen
355 * Jane Sandberg
356 * Chris Sharp
357 * Ben Shum
358 * Remington Steed
359 * Jason Stephenson
360 * Josh Stompro
361 * Cesar Velez
362 * Dan Wells
363 * Bob Wicksall
364
365
366
367 Evergreen 3.1.1
368 ---------------
369 This release contains bug fixes improving on Evergreen 3.1.0.
370
371 * Fixes a performance issue with the Patron Billing History screen and
372 other screens that cause Flattener.pm to re-create joins
373 unnecessarily.
374 * Fixes an issue that prevented patron alerts from showing to staff at
375 other libraries.
376 * Corrects the "Holdable" attribute display on the Item Status detailed
377 view.
378 * Fixes the ability to delete multiple copies from Item Status.
379
380 Acknowledgements
381 ~~~~~~~~~~~~~~~~
382 We would like to thank the following individuals who contributed code,
383 tests and documentation patches to the 3.1.1 point release of
384 Evergreen:
385
386 * Jason Boyer
387 * Bill Erickson
388 * Morkor Quarshie
389 * Jane Sandberg
390 * Remington Steed
391 * Jason Stephenson
392 * Kevin Tran
393 * Dan Wells
394
395
396 3.1.0 Upgrade Notes
397 -------------------
398 Like many major Evergreen upgrades, 3.1 requires a full reingest of your
399 bibliographic records before the system is usable again.  While a basic reingest
400 is included at the end of the upgrade script, it happens after the main
401 COMMIT, so it is safe to cancel that and run the required reingest as you see
402 fit (e.g. via pingest.pl).
403
404
405 3.1.0 New Features
406 ------------------
407
408 Administration
409 ~~~~~~~~~~~~~~
410
411 New Latency Tester Tool
412 ^^^^^^^^^^^^^^^^^^^^^^^
413 The Evergreen Web Staff Client now includes a section called *Tests* linked from
414 *Administration -> Workstation*. The *Tests* page houses a simple tool
415 that can be used to test the latency of the websocket connection between the
416 client and the server (via the `opensrf.echo` service).
417
418 This page displays which Evergreen host server is being queried. Upon hitting
419 the blue "Start Test" button for the first time, it will issue 10 sequentially
420 fired requests in order to get a solid initial average. Clicking the button a
421 second time will take one more measurement and recalculate the average
422 latency. The results can be copied to clipboard for troubleshooting purposes
423 and also cleared from display.
424
425 marc_export --uris option
426 ^^^^^^^^^^^^^^^^^^^^^^^^^
427 The marc_export support script now has a `--uris` option (short form:
428 `-u`) to export records with located URIs (i.e. electronic resources).  When
429 used by itself, it will export only records that have located URIs.  When
430 used in conjunction with `--items`, it will add records with located URIs
431 but no items/copies to the output.  If combined with a `--library` or
432 `--descendants` option, this option will limit its output to those
433 records with URIs at the designated libraries.  The best way to use
434 this option is in combination with the `--items` and one of the
435 `--library` or `--descendants` options to export *all* of a library's
436 holdings both physical and electronic.
437
438
439 Architecture
440 ~~~~~~~~~~~~
441
442 Sample Data Includes Surveys
443 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
444 The Concerto sample data set now includes patron surveys, questions,
445 answers, and responses.
446
447 Virtual Index Definitions
448 ^^^^^^^^^^^^^^^^^^^^^^^^^
449 The practical purpose of Virtual Index Definitions is to supply an Evergreen
450 administrator with the ability to control the weighting and field inclusion of
451 values in the general keyword index, commonly referred to as "the blob,"
452 without requiring tricky configuration that has subtle semantics, an
453 over-abundance of index definitions which can slow search generally, or the
454 need to reingest all records on a regular basis as experiments are performed
455 and the configuration refined. Significant results of recasting keyword indexes
456 as a set of one or more Virtual Index Definitions will be simpler search
457 configuration management, faster search speed overall, and more practical
458 reconfiguration and adjustment as needed.
459
460 Previously, in order to provide field-specific weighting to
461 keyword matches against titles or authors, an administrator must duplicate many
462 other index definitions and supply overriding weights to those duplicates. This
463 not only complicates configuration, but slows down record ingest as well as
464 search. It is also fairly ineffective at achieving the goal of weighted keyword
465 fields. Virtual Index Definitions will substantially alleviate the need for
466 these workarounds and their consequences.
467
468   * A Virtual Index Definition does not require any configuration for
469 extracting bibliographic data from records, but instead can become a sink for
470 data collected by other index definitions, which is then colocated together to
471 supply a search target made up of the separately extracted data. Virtual Index
472 Definitions are effectively treated as aggregate definitions, matching across
473 all values extracted from constituent non-virtual index definitions.  They can
474 further make use of the Combined class functionality to colocate all values in a
475 class together for matching even across virtual fields.
476
477   * Configuration allows for weighting of constituent index definitions that
478 participate in a Virtual Index Definition. This weighting is separate from the
479 weighting supplied when the index definition itself is a search target.
480
481   * The Evergreen QueryParser driver returns the list of fields actually
482 searched using every user-supplied term set, including constituent expansion
483 when a Virtual Index Definition is searched. In particular, this will facilitate
484 Search Term Highlighting described below.
485
486   * Stock configuration changes make use of pre-existing, non-virtual index
487 definitions mapped to new a Virtual Index Definition that implements the
488 functionality provided by the `keyword|keyword` index definition. The
489 `keyword|keyword` definition is left in place for the time being, until more data
490 can be gathered about the real-world effect of removing it entirely and
491 replacing it with Virtual Index Definition mappings.
492
493   * New system administration functions will be created to facilitate
494 modification of Virtual Index Definition mapping, avoiding the need for a full
495 reingest when existing index definitions are added or removed from a virtual
496 field.
497
498 Increased use of Metabib Display Fields
499 +++++++++++++++++++++++++++++++++++++++
500 We use Metabib Display Fields (newly available in 3.0) to render catalog search
501 results, intermediate metarecord results, and record detail pages. This requires
502 the addition of several new Metabib Display Field definitions, as well as Perl
503 services to gather and render the data.
504
505 We also use more Metabib Display Fields in the client. As a result,
506 bibliographic fields will display in proper case in more client interfaces and
507 in Evergreen reports.
508
509 Interfaces
510 ++++++++++
511 A new AngularJS "MARC Search/Facet Fields" interface has been created to replace
512 the Dojo version, and both have been extended to support Virtual Index
513 Definition data supplier mapping and weighting.
514
515 Settings & Permissions
516 ++++++++++++++++++++++
517 The new Virtual Index Definition data supplier mapping table,
518 `config.metabib_field_virtual_map`, requires the same permissions as the
519 MARC Search/Facet Fields interface: CREATE_METABIB_FIELD, UPDATE_METABIB_FIELD,
520 DELETE_METABIB_FIELD, or ADMIN_METABIB_FIELD for all actions
521
522 Backend
523 +++++++
524 There now exist several new database tables and functions primarily in support
525 of search highlighting. Additionally, the QueryParser driver for Evergreen has
526 been augmented to be able to return a data structure describing how the search
527 was performed, in a way that allows a separate support API to gather a
528 highlighted version of the Display Field data for a given record.
529
530 Default Weights
531 +++++++++++++++
532 By default, the following fields will be weighted more heavily in keyword
533 searches. Administrators can change these defaults by changing the values in the
534  "All searchable fields" virtual index in the "MARC Search/Facet Fields"
535 interface.
536
537   * Title proper
538   * Main title (a new index limited to the words in the 245a)
539   * Personal author
540   * All subjects
541
542 In addition, note indexes and the physical description index will receive
543 less weight in default keyword searches.
544
545 Re-ingest or Indexing Dependencies
546 ++++++++++++++++++++++++++++++++++
547 With the addition and modification of many Index Definitions, a full reingest is
548 recommended.  However, search will continue to work as it did previously
549 for those records that have not yet been reingested. Therefore a slow, rolling
550 reingest is recommended.
551
552 Performance Implications or Concerns
553 ++++++++++++++++++++++++++++++++++++
554 Because the Metabib Display Fields infrastructure will eventually replace
555 functionality that is significantly more CPU-intensive in the various forms of
556 XML parsing, XSLT transformation, XPath calculation, and
557 Metabib Virtual Record construction, it is expected that the overall CPU load
558 will be reduced by this development, and ideally the overall time required to
559 perform and render a search will likewise drop. It is unlikely that the speed
560 increase will be visible to users on a per-search basis, but that search in
561 aggregate will become a smaller consumer of resources.
562
563
564 Cataloging
565 ~~~~~~~~~~
566
567 Track Record Merges
568 ^^^^^^^^^^^^^^^^^^^
569 When 2 or more bib records are merged, all records involved are stamped
570 with a new `merge_date` value.  For any bib record, this field indicates
571 the last time it was involved in a merge.  At the same time, all
572 subordinate records (i.e. those deleted as a product of the merge) are
573 stamped with a `merged_to` value indicating which bib record the source
574 record was merged with.
575
576 In the browser client bib record display, a warning alert now appears
577 along the top of the page (below the Deleted alert) indicating when a
578 record was used in a merge, when it was merged, and which record it was
579 merge with, rendered as a link to the target record.
580
581
582 Circulation
583 ~~~~~~~~~~~
584
585 Alternate Patron Hold Pickup
586 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
587 This feature adds a bit of convenience to a common task: checking out
588 an item on hold to another patron (typically a family member or helper).
589
590 When you checkout the item, you will get a pop-up window with warnings associated
591 with this item.  The "ITEM_ON_HOLDS_SHELF" message is now expanded to
592
593  * Let you know the name of the person who had placed the hold.
594  * Give you the option (in the form of a checkbox) of cancelling the
595    hold placed by the above-named patron.  (Checked = Cancel the hold;
596    Unchecked = Leave the hold in place)
597
598 The initial value of the checkbox is derived from the
599 `circ.clear_hold_on_checkout` organizational setting.
600
601 If the operator has CANCEL_HOLD privilege, then if the checkbox is checked and
602 the checkout is allowed to proceed, the hold will be cancelled with a note that
603 the item was checked out to another patron.
604
605 This feature is available in the browser-based staff client.
606
607 New Patron Billing Statement
608 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
609 The Evergreen web staff client now includes a patron billing statement,
610 which summarizes a patron's bills, credits and payments in a familiar
611 layout.  This can be found on the "Statement" tab of the Patron Bill
612 Details page. (From the Patron Bills page, double-click a row to view
613 its details, or choose "Full Details" from the Actions menu.)
614
615 Enhanced Billing Timestamp Support
616 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
617 Previously, billings had to make do with a single timestamp attempting
618 to fill two different roles.  In the case of an overdue fine, the
619 timestamp represented the *end* of the fine period for that billing,
620 while for all other fines, the timestamp was merely the time the bill
621 was created.  This setup generally worked, but not without confusion,
622 and limited our ability to understand and process the data.
623
624 Billings will now have up to three timestamps: a create date, and when
625 applicable, a fine period start and a fine period end.  This clarifies
626 and simplifies things like backdating, retrospective fine generation,
627 account balancing for negative balance avoidance, and billing timeline
628 views.
629
630 Copy Alerts and Suppression Matrix
631 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
632 The Copy Alerts feature allows library staff to add customized alert
633 messages to copies. The copy alerts will appear when a specific event
634 takes place, such as when the copy is checked in, checked out, or
635 renewed. Alerts can be temporary or persistent: temporary alerts will be
636 disabled after the initial alert and acknowledgement from staff, while
637 persistent alerts will display each time the alert event takes place.
638 Copy Alerts can be configured to display at the circulating or owning
639 library only or, alternatively, when the library at which the alert
640 event takes place is not the circulating or owning library.  Copy Alerts
641 can also be configured to provide options for the next copy status that
642 should be applied to an item.  Library administrators will have the
643 ability to create and customize Copy Alert Types and to suppress copy
644 alerts at specific org units.
645
646 Copy alerts can be added via the volume/creator and the check in,
647 check out, and renew pages.  Copy alerts can also be managed at the
648 item status page.
649
650 Copy alert types can be managed via the Copy Alert Types page in
651 Local Administration, and suppression of them can be administered
652 via the Copy Alert Suppression page under Local Administration.
653
654 Place Multiple Holds At Once
655 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
656 Users with the appropriate permissions now have the ability to place multiple
657 title/metarecords holds at once. This feature is especially beneficial for book
658 clubs and reading groups, which need to place holds on multiple copies of a
659 title.
660
661 In order to use the feature:
662
663   * Set the _Maximum number of duplicate holds allowed_ Library Setting
664     (`circ.holds.max_duplicate_holds`) to a number higher than 1
665   * Log in as a user with the CREATE_DUPLICATE_HOLDS
666
667 When placing a title or metarecord hold, a _Number of copies_ field will
668 display for these users. This field is not available when placing part, volume
669 or copy holds.
670
671 This feature does not change the way in which the system fills holds. The
672 multiple holds will fill in the same way that they would if the user had placed
673 multiple holds separately.
674
675 New Notice Columns in Items Out Grid
676 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
677 The grid in the patron "items out" page in the Evergreen web staff client has two new
678 columns indicating the number of notifications generated for a given loan and the date of
679 the most recent notification. These columns will allow circulation staff to better respond to
680 patron questions about whether they were sent notification about an overdue item.
681
682 The columns are based on the number of completed Action Trigger events on the
683 loan that have a 'checkout.due' hook. In other words, they would include overdue
684 and courtesy notices.
685
686 A new library setting, "Exclude Courtesy Notices from Patrons Itemsout Notices Count",
687 if set will cause the notice count and date fields to exclude courtesy notices.
688
689 Patron Email Addresses Now Clickable In Web Staff Client
690 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
691 Adds a mailto link to the patron's email in their profile so it can
692 be clicked to send and email to the patron. No new settings or
693 permissions are included in this feature.
694
695 Pickup Library for Staff-placed Holds
696 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
697 Adds a new library setting, _circ.staff_placed_holds_fallback_to_ws_ou_,
698 that helps determine the hold pickup library in cases where patrons don't
699 have a preferred hold pickup library in their account and a staff member
700 is placing the hold on their behalf.
701
702   * When this setting is true and the patron doesn't have a preferred
703   library listed, the hold pickup library will default to the
704   workstation's organizational unit.
705   * When this setting is false and the patron doesn't have a preferred
706   library listed, the hold pickup library will default to the
707   patron's home library.
708
709 Public Catalog
710 ~~~~~~~~~~~~~~
711
712 Search Term Highlighting
713 ^^^^^^^^^^^^^^^^^^^^^^^^
714 Evergreen now highlights search terms on the public catalog's main search
715 results page, the record detail page, and intermediate pages such as metarecord
716 grouped results page. Highlighting search terms will help the user determine why
717 a particular record (or set of records) was retrieved.
718
719 Highlighting of matched terms uses the same stemming used to accomplish the
720 search, as configured per field and class.
721
722 This feature will help the user more quickly determine the relevance of a
723 particular record by calling their attention to search terms in context. Lastly,
724 it will help familiarize the user with how records are searched, including which
725 fields are searched as well as exposing concepts like stemming.
726
727 You can turn off search term highlighting by uncommenting the line
728 `search.no_highlight = 1;` in `config.tt2`.
729
730 When highlighting is generally enabled, it may be turned on or off on a per-page
731 basis through the use of a UI component which will request the page again
732 without highlighting.
733
734 Highlighting of terms uses Template::Toolkit-driven CSS. A generic CSS class
735 identifying a highlighted term, along with CSS classes identifying the search
736 class and each search field are available for use for customization of the
737 highlighting. A stock CSS template is provided as a baseline upon which sites
738 may expand.
739
740
741 Copy Location Filter Displays for System Searches
742 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
743 The Shelving Location filter now displays on the advanced search page when
744 a search is scoped to a library system, not just to an individual branch. If
745 a library system is selected as the Search Library, the shelving location
746 limiter will display any shelving location that is owned by the selected system
747 or by the consortium. It will NOT display shelving locations owned by child
748 branches.
749
750 Multi-source Attributes
751 ^^^^^^^^^^^^^^^^^^^^^^^
752 We now allow record attribute definitions to extract data using more than
753 one strategy (XPath, tag+subfield, fixed field, etc.) as long as the values
754 from various sources would, after normalization, have the same shape.
755
756 Multilingual Search
757 +++++++++++++++++++
758 This change allows us to configure multilingual search, by extracting values
759 from both the 008 controlfield and the 041 datafield.  Because the values
760 in each can be normalized to the same controlled list (and, in practice, are
761 already from the same normalized value set), catalog searches can now use normal
762 boolean search semantics to find records with various combinations of
763 language attributes.
764
765 E.g., in the concerto test data:
766
767   * `keyword: piano item_lang(eng) item_lang(ita)`
768
769
770 Optional Display of Badges in Catalog
771 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
772 A new setting controls whether badges (popularity, etc.) are displayed
773 in the catalog. If you do not wish badges to be displayed, set the
774 `ctx.hide_badge_scores` setting to "true" in `config.tt2`.
775
776
777 Miscellaneous
778 ~~~~~~~~~~~~~
779
780 Fixes to patron name/username search indexes
781 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
782 When using pg_restore to restore an Evergreen database, some of the
783 indexes used to speed up patron searches on names and usernames
784 could be lost.
785
786 This release fixes the underlying issue and re-creates the indexes
787 in question.
788
789 Details
790 +++++++
791 When using pg_restore to restore an affected database, the
792 "unaccent" indexes on actor.usr would not be created due to an
793 unqualified function reference in `evergreen.unaccent_and_squash`.
794
795 The function will be replaced to resolve the search path issue,
796 and the following indexes on actor.usr will be dropped and then
797 re-created:
798
799   * actor_usr_first_given_name_unaccent_idx;
800   * actor_usr_second_given_name_unaccent_idx;
801   * actor_usr_family_name_unaccent_idx;
802   * actor_usr_usrname_unaccent_idx;
803
804 This will be done even if the indexes are already present, and may
805 take a few minutes on a database with many patrons.
806
807
808 3.1.0 Acknowledgments
809 ---------------------
810 The Evergreen project would like to acknowledge the following
811 organizations that commissioned developments in this release of
812 Evergreen:
813
814 * Albany Public Library (Oregon)
815 * Consortium of Ohio Libraries
816 * CW MARS
817 * Indiana State Library
818 * Georgia Public Library Service
819 * Hagerstown - Jefferson Township Library
820 * Linn-Benton Community College
821 * MassLNC
822 * Pennsylvania Integrated Library System
823 * Sage Library System
824 * Union County Public Library (Indiana)
825
826 We would also like to thank the following individuals who contributed
827 code, translations, documentations patches and tests to this release of
828 Evergreen:
829
830 * Eva Cerninakova
831 * Andi Chandler
832 * Galen Charlton
833 * Jeff Davis
834 * Bill Erickson
835 * Jeff Godin
836 * Rogan Hamby
837 * Angela Kilsdonk
838 * Sam Link
839 * Jeanette Lundgren
840 * Kathy Lussier
841 * Fares Othman
842 * Dan Pearl
843 * Mike Rylander
844 * Jane Sandberg
845 * Chris Sharp
846 * Ben Shum
847 * Remington Steed
848 * Jason Stephenson
849 * Kevin Tran
850 * Cesar Velez
851 * Dan Wells
852
853
854 We also thank the following organizations whose employees contributed
855 patches:
856
857 * Bibliomation
858 * British Columbia Libraries Cooperative
859 * Calvin College
860 * CW MARS
861 * Equinox Open Library Initiative
862 * Georgia Public Library Service
863 * Greater Clarks Hill Regional Library System
864 * Jordanian Library and Information Association
865 * King County Library System
866 * Knihovna Jabok
867 * Linn-Benton Community College
868 * MassLNC
869 * Sigio
870 * Traverse Area District Library
871
872 We regret any omissions.  If a contributor has been inadvertently
873 missed, please open a bug at http://bugs.launchpad.net/evergreen/
874 with a correction.