064a3ff0aab1c65b1bce5a2ae95aff1658535fb7
[working/Evergreen.git] / docs / RELEASE_NOTES_3_2.adoc
1 Evergreen 3.2 Release Notes
2 ===========================
3 :toc:
4 :numbered:
5
6 Evergreen 3.2.6
7 ---------------
8
9 This release contains bug fixes improving on Evergreen 3.2.5.
10 All bug fixes refer to the web staff client unless otherwise specified.
11
12 Bug fixes
13 ~~~~~~~~~
14
15 General
16 ^^^^^^^
17
18 * Fixes a compatibility problem with the Item Status related to JavaScript arrow
19 * functions (https://bugs.launchpad.net/evergreen/+bug/1821196[Bug #1821196])
20
21 Booking
22 ^^^^^^^
23
24 * Fixes a bug in the Booking URL path that failed with newer Apache
25 * (https://bugs.launchpad.net/evergreen/+bug/1823387[Bug #1823387])
26
27 Circulation
28 ^^^^^^^^^^^
29
30 * Fixes a display bug with the patron record Group Members list
31 * (https://bugs.launchpad.net/evergreen/+bug/1642036[Bug #1642036])
32 * Fixes title sort on the patron Items Out Screen
33 * (https://bugs.launchpad.net/evergreen/+bug/1782014[Bug #1782014])
34 * Fixes a refresh bug on the catalog record Holds View tab when moving between
35 * records (https://bugs.launchpad.net/evergreen/+bug/1792188[Bug #1792188])
36 * Fixes the ability to place holds from item buckets
37 * (https://bugs.launchpad.net/evergreen/+bug/1806394[Bug #1806394])
38
39 Cataloging
40 ^^^^^^^^^^
41
42 * Fixes a bug where copy templates would not apply properly
43 * (https://bugs.launchpad.net/evergreen/+bug/1788680[Bug #1788680])
44 * Fixes the default cursor focus on the holdings editor
45 * (https://bugs.launchpad.net/evergreen/+bug/1752968[Bug #1752968])
46 * Fixes a bug that failed to honor the "Retain empty bib records"
47 * (cat.bib.keep_on_empty) setting when transferring items
48 * (https://bugs.launchpad.net/evergreen/+bug/1333893[Bug #1333893])
49 * Fixes a bug that failed to include deleted bib records in TCN search
50 * (https://bugs.launchpad.net/evergreen/+bug/1813633[Bug #1813633])
51
52 System administration
53 ^^^^^^^^^^^^^^^^^^^^^
54
55 * Added database indexes to speed up purging of Action Trigger event output
56 * fields (https://bugs.launchpad.net/evergreen/+bug/1778940[Bug #1778940])
57 * Fixes the help text in action_trigger_aggregator.pl related to the remote-acct
58 * argument (https://bugs.launchpad.net/evergreen/+bug/1803729[Bug #1803729])
59 * Adds a missing page title for the Closed Dates Editor
60 * (https://bugs.launchpad.net/evergreen/+bug/1814943[Bug #1814943])
61 * Adds a missing page title for the Statistical Popularity Badges admin page
62 * (https://bugs.launchpad.net/evergreen/+bug/1826890[Bug #1826890])
63
64
65 Acknowledgments
66 ~~~~~~~~~~~~~~~
67 We would like to thank the following individuals who contributed code,
68 testing and documentation patches to the 3.2.6 point release of
69 Evergreen:
70
71 * John Amundson
72 * Jason Boyer
73 * Galen Charlton
74 * Garry Collum
75 * Jeff Davis
76 * Bill Erickson
77 * Blake Graham-Henderson
78 * Rogan Hamby
79 * Millissa Macomber
80 * Terran McCanna
81 * Mike Rylander
82 * Jane Sandberg
83 * Janet Schrader
84 * Remington Steed
85 * Jason Stephenson
86 * Josh Stompro
87 * Dan Wells
88 * Beth Willis
89 * John Yorio
90
91
92 Evergreen 3.2.5
93 ---------------
94
95 This release contains bug fixes improving on Evergreen 3.2.4.
96 All bug fixes refer to the web staff client unless otherwise specified.
97
98 Bug fixes
99 ~~~~~~~~~
100
101 General
102 ^^^^^^^
103
104 * Improves the web client splash screen by linking the images along with their links
105   (https://bugs.launchpad.net/evergreen/+bug/1802662[Bug #1802662])
106
107 Circulation
108 ^^^^^^^^^^^
109
110 * Allows the Title Hold screen to remember previously selected pickup library
111   (https://bugs.launchpad.net/evergreen/+bug/1665534[Bug #1665534])
112 * Sorting improvements for printing the Holds Pull List
113   (https://bugs.launchpad.net/evergreen/+bug/1749502[Bug #1749502])
114 * Better display for non-catalogued checkouts in the offline checkout preview
115   pane (https://bugs.launchpad.net/evergreen/+bug/1818576[Bug #1818576])
116
117 Cataloging
118 ^^^^^^^^^^
119
120 * Fixes a bug that changed subfield order in bib record after editing a linked
121   authority (https://bugs.launchpad.net/evergreen/+bug/712490[Bug #712490])
122 * Allows opening multiple selected items in Item Status screen from the Holdings
123   View (https://bugs.launchpad.net/evergreen/+bug/1734775[Bug #1734775])
124 * Adds missing "Deleted?" column choice to Record Buckets
125   (https://bugs.launchpad.net/evergreen/+bug/1746360[Bug #1746360])
126 * Fixes the batch Call Number label field on the Call Number editor to populate
127   from the MARC record (https://bugs.launchpad.net/evergreen/+bug/1793196[Bug
128   #1793196])
129 * Fixes a bug to allow editing the call number label for some but not all
130   attached items (https://bugs.launchpad.net/evergreen/+bug/1794588[Bug
131   #1794588])
132 * Fixes the sort order of Parts on the Holdings View
133   (https://bugs.launchpad.net/evergreen/+bug/1800178[Bug #1800178])
134 * Adds missing action "Find Originating Acquisition" to Cataloging actions menu
135   (https://bugs.launchpad.net/evergreen/+bug/1705497[Bug #1705497])
136 * Keeps the Item Status screen updated after editing items
137   (https://bugs.launchpad.net/evergreen/+bug/1721109[Bug #1721109])
138 * Fixes a bug with the "checked" state of the Item note "Public Note" checkbox
139   (https://bugs.launchpad.net/evergreen/+bug/1778571[Bug #1778571])
140 * Fixes a bug with Item Alert counts in the Holdings view
141   (https://bugs.launchpad.net/evergreen/+bug/1798628[Bug #1798628])
142 * Improved display when merging bib records from a bucket (side by side, with
143   optional holdings) (https://bugs.launchpad.net/evergreen/+bug/1739293[Bug
144   #1739293])
145 * Fixes issues where edits to MARC records would fail to save during merge
146   (https://bugs.launchpad.net/evergreen/+bug/1776736[Bug #1776736])
147
148 System administration
149 ^^^^^^^^^^^^^^^^^^^^^
150
151 * Web client (websocket) logins are now properly tracked as user activity
152   (https://bugs.launchpad.net/evergreen/+bug/1818153[Bug #1818153])
153 * Fixes some log warnings related to Holds Depth
154   (https://bugs.launchpad.net/evergreen/+bug/1667497[Bug #1667497])
155 * Fixes a bug in the fine generator related to Bookings
156   (https://bugs.launchpad.net/evergreen/+bug/1819796[Bug #1819796])
157 * Fixes the Group Penalty Threshold link under the Local Administration menu
158   (https://bugs.launchpad.net/evergreen/+bug/1812389[Bug #1812389])
159 * Fixes a typo in seed data and all related PO files for translation
160   (https://bugs.launchpad.net/evergreen/+bug/1759238[Bug #1759238])
161 * Fixes an error in the sitemap_generator script when using the shortname
162   parameter (https://bugs.launchpad.net/evergreen/+bug/1808006[Bug #1808006])
163
164
165 Acknowledgments
166 ~~~~~~~~~~~~~~~
167 We would like to thank the following individuals who contributed code,
168 testing and documentation patches to the 3.2.5 point release of
169 Evergreen:
170
171 * John Amundson
172 * Jason Boyer
173 * Adam Bowling
174 * Steven Callender
175 * Galen Charlton
176 * Garry Collum
177 * Bill Erickson
178 * Jason Etheridge
179 * Rogan Hamby
180 * Elaine Hardy
181 * Kyle Huckins
182 * Sam Link
183 * Tiffany Little
184 * Terran McCanna
185 * Michele Morgan
186 * Geoff Sams
187 * Jane Sandberg
188 * Janet Schrader
189 * Chris Sharp
190 * Ben Shum
191 * Remington Steed
192 * Jason Stephenson
193 * Josh Stompro
194 * Dan Wells
195
196
197 Evergreen 3.2.4
198 ---------------
199
200 This release contains bug fixes improving on Evergreen 3.2.3.
201 All bug fixes refer to the web staff client unless otherwise specified.
202
203 Bug fixes
204 ~~~~~~~~~
205
206 Accessibility
207 ^^^^^^^^^^^^^
208
209 * Adds appropriate alt text to the Evergreen splash page (https://bugs.launchpad.net/evergreen/+bug/1802594[Bug #1802594])
210 * The public catalog search box now only autofocuses when searching is the main purpose of the page (https://bugs.launchpad.net/evergreen/+bug/1796225[Bug #1796225])
211
212 Acquisitions
213 ^^^^^^^^^^^^
214
215 * Fixes an issue that prevented purchase orders to not open in a new tab (https://bugs.launchpad.net/evergreen/+bug/1813290[Bug #1813290])
216
217 Circulation
218 ^^^^^^^^^^^
219
220 * The Billing History grids now save their configuration in the database (https://bugs.launchpad.net/evergreen/+bug/1806709[Bug #1806709])
221
222 Cataloging
223 ^^^^^^^^^^
224
225 * Catalogers can now set the Bib Source in the Z39.50 Overlay and Import interfaces (https://bugs.launchpad.net/evergreen/+bug/1727345[Bug #1727345])
226 * Fixes an issue where publishers display in the publication date column in copy buckets (https://bugs.launchpad.net/evergreen/+bug/1812698[Bug #1812698])
227 * Electronic reources no longer display a call number called _##URI##_ in the Volume Editor (https://bugs.launchpad.net/evergreen/+bug/1752665[Bug #1752665])
228 * Spine/pocket label templates can now include circulation library and owning library (https://bugs.launchpad.net/evergreen/+bug/1726568[Bug #1726568])
229
230
231 Reports
232 ^^^^^^^
233
234 * Fixes an issue where external documentation links can open in the reports module (https://bugs.launchpad.net/evergreen/+bug/1784893[Bug #1784893])
235 * Fixes an issue where publishers display as a publication date in reports (https://bugs.launchpad.net/evergreen/+bug/1812698[Bug #1812698])
236
237 Search
238 ^^^^^^
239
240 * Staff users can now set their prefered default Advanced Search pane (https://bugs.launchpad.net/evergreen/+bug/1799963[Bug #1799963])
241 * The public catalog search box now only autofocuses when searching is the main purpose of the page (https://bugs.launchpad.net/evergreen/+bug/1796225[Bug #1796225])
242
243 System administration
244 ^^^^^^^^^^^^^^^^^^^^^
245
246 * The _DELETE_COPY_ALERT_ permission no longer needs to be granted on the consortium level (https://bugs.launchpad.net/evergreen/+bug/1783421[Bug #1783421])
247
248 Angular client
249 ^^^^^^^^^^^^^^
250
251 * The angular client now uses Angular 7 (https://bugs.launchpad.net/evergreen/+bug/1801984[Bug #1801984])
252 * The angular client grid actions can now be disabled depending on the criteria of which rows are selected (https://bugs.launchpad.net/evergreen/+bug/1808268[Bug #1808268])
253 * Angular client pages now display their own titles in the browser tab, rather than _AngEG_ (https://bugs.launchpad.net/evergreen/+bug/1813647[Bug #1813647])
254
255
256 Acknowledgments
257 ~~~~~~~~~~~~~~~
258 We would like to thank the following individuals who contributed code,
259 tests and documentation patches to the 3.2.4 point release of
260 Evergreen:
261
262 * John Amundson
263 * Jason Boyer
264 * Galen Charlton
265 * Jeff Davis
266 * James Fournie
267 * Angela Kilsdonk
268 * Sam Link
269 * Tiffany Little
270 * Terran McCanna
271 * Michele Morgan
272 * Mike Rylander
273 * Jane Sandberg
274 * Chris Sharp
275 * Jason Stephenson
276 * Ben Shum
277 * Cesar Velez
278 * Dan Wells
279
280 Evergreen 3.2.3
281 ----------------
282 This release contains bug fixes improving on Evergreen 3.2.3.
283 All bug fixes refer to the staff client unless otherwise specified.
284
285 Bug fixes
286 ~~~~~~~~~
287
288 General
289 ^^^^^^^
290
291 * Hatch is now deprecated for local data storage.  Hatch is
292 still recommended for printing in certain situations.
293
294 Acquisitions
295 ^^^^^^^^^^^^
296
297 * The new `edi_order_pusher.pl` now only pushes purchase orders
298 with a state of "on-order", to prevent older purchase orders
299 from being unintentionally pushed to vendors.
300
301 Cataloging
302 ^^^^^^^^^^
303
304 * The Z39.50 and record bucket interfaces now open relevant 
305 catalog records in new tabs.
306 * Fixes a bug that prevented batch importing authority records.
307 * The template dropdown in the holdings editor now provides more
308 space to accommodate longer template names.
309 * The drop-down of copy tag types in the Manage Copy Tags dialog
310 now includes the owning library of the copy tag type.
311
312 Circulation
313 ^^^^^^^^^^^
314
315 * Fixes an issue with recalling checked-out materials.
316 * Added several missing columns to the patron bills grid.
317 * Corrected the display of the Bill Type column in the patron bills grid.
318 * Clarified the names of the "Billing Location" and "Grocery Billing
319 Location" columns in the patron bills grid.
320 * The Bill Full Details grid now includes a billing location column
321 for both circulation and grocery bills, as well as the owning library for
322 circulation bills.
323 * The Billing History transactions grid now remembers any changes that
324 users make to the column settings.
325 * Fixes an issue with printing multiple copies of bills.
326 * Fixes an issue with saving self-registered patron accounts.
327 * Staff can now delete self-registered patron accounts.
328
329 System administration
330 ^^^^^^^^^^^^^^^^^^^^^
331
332 * Fixes the marc_stream_importer to be compatible with Vandelay session
333 tracking.
334 * Includes an accessibility improvement for the Acquisitions
335 Administration interfaces.
336
337
338 Acknowledgments
339 ~~~~~~~~~~~~~~~
340 We would like to thank the following individuals who contributed code,
341 tests and documentation patches to the 3.2.3 point release of
342 Evergreen:
343
344 * John Amundson
345 * Jason Boyer
346 * Andrea Buntz Neiman
347 * Jeff Davis
348 * Bill Erickson
349 * Kyle Huckins
350 * Angela Kilsdonk
351 * Katie G. Martin
352 * Terran McCanna
353 * Mike Rylander
354 * Jane Sandberg
355 * Janet Schrader
356 * Chris Sharp
357 * Remington Steed
358 * Jason Stephenson
359 * Cesar Velez
360
361
362 Evergreen 3.2.2
363 ----------------
364 This release contains bug fixes improving on Evergreen 3.2.1.
365 All bug fixes refer to the web staff client unless otherwise specified.
366
367 Bug fixes
368 ~~~~~~~~~
369
370 General
371 ^^^^^^^
372
373 * Fixes a bug that blocked logging in from mobile browsers
374 * Fixes a readability issue with mobile menus
375 * Fixes performance issue related to grid tooltips.
376 * Fixes an issue that caused some grid columns to appear
377 empty.
378
379 Cataloging
380 ^^^^^^^^^^
381
382 * Improves the functionality of setting a default tab of a bib record
383 * The web client now remembers the most recently selected copy template
384 * Adds help tips to Print Item Labels Settings tab
385 * If you add or edit copies and/or volumes from the Holdings View tab,
386 the view now automatically refreshes to show your changes.
387 * Provides an upgrade to MODS 3.3 for older Evergreen installations.
388 * Improves usability of Z39.50 MARC View.
389
390
391 Circulation
392 ^^^^^^^^^^^
393
394 * Fixes a daylight savings time-related circulation bug.
395 * Fixes a bug that caused deleted items to show up on the holds shelf.
396 * Staff can now place multiple email addresses into the patron registration/
397 edit form, depending on the value of the `ui.patron.edit.au.email.regex`
398 library setting.
399 * Fixes an issue with the offline circulation module.
400 * When merging two users, the non-lead account is now completely purged from
401 the database, rather than simply being marked as deleted.
402 * Fixes a bug which prevented the canceling of holds from the title
403 record.
404
405 Public catalog
406 ^^^^^^^^^^^^^^
407
408 * Removes incorrect copy counts from metarecord search results pages
409 * Electronic resources now display in the browse interfaces
410 * Restores ability to request password resets
411
412 System administration
413 ^^^^^^^^^^^^^^^^^^^^^
414
415 * The example Apache 2.4 configuration now enables remoteip.
416 * Improves syntax in the fm_idl file.
417
418
419 Acknowledgements
420 ~~~~~~~~~~~~~~~~
421 We would like to thank the following individuals who contributed code,
422 tests and documentation patches to the 3.2.2 point release of
423 Evergreen:
424
425 * Jason Boyer
426 * Galen Charlton
427 * Garry Collum
428 * Bill Erickson
429 * Rogan Hamby
430 * Rosie Le Faive
431 * Jeanette Lundgren
432 * Kathy Lussier
433 * Michele Morgan
434 * Mike Rylander
435 * Jane Sandberg
436 * Janet Schrader
437 * Chris Sharp
438 * Ben Shum
439 * Remington Steed
440 * Jason Stephenson
441 * Cesar Velez
442 * Dan Wells
443
444 Evergreen 3.2.1
445 ----------------
446 This release contains bug fixes improving on Evergreen 3.2.0.
447
448 Bug fixes
449 ~~~~~~~~~
450
451 * Adds several columns to the items out grid.
452 * Adds the ability to copy patron addresses to the clipboard.
453 * Fixes several issues with adding new items and call numbers.
454 * Adds links to catalog records from the query and pending tabs of the Record Buckets interface.
455 * Corrects the date format used in several bucket interfaces.
456 * Adds a loading spinner to interfaces that are embedded in the web staff client via iframe
457 (such as the catalog).
458 * The new Angular 6 interfaces now use the correct favicon.
459
460 Acknowledgements
461 ~~~~~~~~~~~~~~~~
462 We would like to thank the following individuals who contributed code,
463 tests and documentation patches to the 3.2.1 point release of
464 Evergreen:
465
466 * John Amundson
467 * a. bellenir
468 * Jason Boyer
469 * Galen Charlton
470 * Garry Collum
471 * Dawn Dale
472 * Bill Erickson
473 * Kathy Lussier
474 * Mike Rylander
475 * Jane Sandberg
476 * Jason Stephenson
477 * Cesar Velez
478 * Dan Wells
479
480
481 3.2.0 Upgrade notes
482 -------------------
483
484 Disabling of Legacy XUL Staff Client
485 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
486 The legacy XUL staff client is no longer supported in Evergreen
487 3.2.x and the server-side installation no longer supports a
488 direct connection by a version XUL client by default.  *All
489 users of Evergreen 3.2.x are strongly urged to complete their
490 switch to the web staff client as part of upgrading to 3.2.x.*
491
492 Evergreen administrators who for some reason continue to wish
493 to deploy the XUL staff client can do so at their risk by
494 supplying `STAFF_CLIENT_STAMP_ID` during the `make install` step
495 and using `make_release` to create installers for the staff client.
496 However, no community support will be provided for the XUL client.
497
498
499
500 Acq Invoice Reports
501 ~~~~~~~~~~~~~~~~~~~
502
503 Existing Acquisitions report templates that reference the invoice 'complete'
504 field should be modified to check whether the new close_date field is NOT NULL
505 instead.
506
507 At deploy time, all invoices with a 'complete' value of TRUE will have their
508 'close_date' field set to NOW.  A value is required, since this field is
509 now the source of whether an invoice is open or closed.
510
511 However, no values will be applied to the closed_by field for already closed
512 invoices.
513
514
515 Angular6 Base Application
516 ~~~~~~~~~~~~~~~~~~~~~~~~~
517
518 System Admin Upgrade Notes
519 ^^^^^^^^^^^^^^^^^^^^^^^^^^
520
521 Like the AngularJS application, Evergreen releases will come with all
522 web browser staff client code pre-compiled.  Admins only need to add an
523 Apache configuration change.
524
525 Add the following stanza to /etc/apache2/eg_vhost.conf.
526
527 [source,conf]
528 --------------------------------------------------------------------------
529 RewriteCond %{REQUEST_URI}  ^/eg2/
530 RewriteCond %{REQUEST_URI}  !^/eg2/([a-z]{2}-[A-Z]{2})/
531 RewriteRule ^/eg2/(.*) https://%{HTTP_HOST}/eg2/en-US/$1 [R=307,L]
532
533 <Directory "/openils/var/web/eg2/en-US">
534     FallbackResource /eg2/en-US/index.html
535 </Directory>
536 --------------------------------------------------------------------------
537
538 For multi-locale sites, see the bottom section of
539 Open-ILS/examples/apache[_24]/eg_vhost.conf.in for a sample fr-CA
540 configuration.  The section starts with "/eg2/ client setup and locale
541 configuration"
542
543 Developer Upgrade Notes
544 ^^^^^^^^^^^^^^^^^^^^^^^
545
546 Developers building Angular code on existing installations need to update
547 their version of NodeJS by re-running the -developer prereqs installer.
548
549 [source,sh]
550 --------------------------------------------------------------------------
551 sudo make -f Open-ILS/src/extras/Makefile.install <osname>-developer
552 --------------------------------------------------------------------------
553
554
555 Asynchronous Vandelay Imports
556 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
557
558 Users of NGINX as a reverse proxy may need to set a suitable
559 `client_max_body_size` value in the NGINX configuration so that large
560 MARC record uploads are not truncated. Note that this would have
561 always been necessary, but since this feature allows larger files
562 to be more reliably queued and imported, the need to set `client_max_body_size`
563 became more apparent.
564
565
566 Browser Client Settings & Preferences Stored on the Server
567 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
568
569 A new permission APPLY_WORKSTATION_SETTING has been added to control who
570 may apply values to workstation settings.  Use something like the following
571 to apply the permission to all staff accounts (mileage may vary):
572
573 [source,sh]
574 --------------------------------------------------------------------------
575 INSERT INTO permission.grp_perm_map (grp, perm, depth)
576 VALUES (
577     (SELECT id FROM permission.grp_tree WHERE name = 'Staff'), -- name may vary
578     (SELECT id FROM permission.perm_list WHERE code =
579 'APPLY_WORKSTATION_SETTING'),
580     0 -- or 1, 2, etc.
581 );
582 --------------------------------------------------------------------------
583
584 Workstation setting types matching values previously stored in the browser
585 (via localStorage or Hatch) are created as part of this feature.  During
586 upgrade, admins should consider whether any of these new setting types
587 should be transferred to user and/or org unit settings instead.  Setting
588 type changes can be made at any time, but when a setting type is deleted
589 all of its data is deleted, so a change in type means re-applying the
590 settings in the browser client.
591
592 Values stored in the browser will automatically migrate to server settings
593 as each setting is accessed in the browser client.  Once migrated, the
594 in-browser copies are deleted.
595
596 If a setting type does not exist where the browser expects one, the
597 value is stored in-browser instead and a warning is issued in the console.
598
599
600
601
602 3.2.0 New Features
603 ------------------
604
605
606 Acquisitions
607 ~~~~~~~~~~~~
608
609 Auto-Cancel Line items When All Copies Are Canceled
610 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
611 When a copy (line item detail) is canceled through the Acquisitions interface, 
612 the parent line item is also canceled if all copies for that line item are also 
613 canceled.  The cancel reason given will come from:
614
615 . The cancel reason for the just-canceled copy if it's a Keep Debits true 
616 cancel reason.
617 . The cancel reason from any other copy on the lineitem that has a Keep 
618 Debits true cancel reason.
619 . The cancel reason for the just-canceled copy if no copies have a Keep
620 Debits true cancel reason.
621
622
623 Invoice Closed Date and Closed By Fields
624 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
625 Acquisitions invoices have 2 new fields:
626
627 * Close Date -- This is set to the time when the ACQ user clicks the "Close"
628   button in the invoice interface.
629   ** This field 'replaces' the existing 'complete' field.  An invoice is
630      considered complete if a close date value is set.
631 * Closed By -- This is set to the logged in staff user who performs the 
632   "Close" action.
633
634 As with the now-defunct 'complete' field, but new fields are cleared in the 
635 event an invoice is reopened.
636
637 These new fields are visible in the invoice interface under the 
638 'Show Details' action for closed invoices.
639
640 Upgrading Invoice Reports
641 +++++++++++++++++++++++++
642
643 Existing report templates that reference the invoice 'complete' field 
644 should be modified to check whether the new close_date field is NOT NULL
645 instead.
646
647 Other Upgrade Considerations
648 ++++++++++++++++++++++++++++
649
650 At deploy time, all invoices with a 'complete' value of TRUE will have their
651 'close_date' field set to NOW.  A value is required, since this field is
652 now the source of whether an invoice is open or closed.
653
654 However, no values will be applied to the closed_by field for already closed
655 invoices.
656
657
658
659 Patron Acquisitions Requests
660 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
661
662 The existing interface for staff-mediated patron acquisition requests has been replaced in the web staff client with a re-implementation written in AngularJS, with some minor bug fixes (including access from the Patron interface) and other improvements.
663
664
665
666 Administration
667 ~~~~~~~~~~~~~~
668
669 Hold Targeter Script has been Replaced
670 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
671
672 The original hold_targeter.pl script has been renamed to
673 "hold_targeter_legacy.pl", and the new-style hold targeting
674 script has been renamed to "hold_targeter.pl".  Administrators
675 will want to change their crontab files to reflect this.
676
677 .Previous Syntax
678 [source,bash]
679 ---------------------------------------------------------------------
680 -*/15 * * * *   . ~/.bashrc && $EG_BIN_DIR/hold_targeter.pl $SRF_CORE
681 ---------------------------------------------------------------------
682
683 .New Syntax
684 [source,bash]
685 -----------------------------------------------------------------------------------
686 -*/15 * * * *   . ~/.bashrc && $EG_BIN_DIR/hold_targeter.pl --osrf-config
687 $SRF_CORE
688 -----------------------------------------------------------------------------------
689
690 The sample crontab file at `Open-ILS/examples/crontab.example` reflects
691 this change.
692
693
694
695 Architecture
696 ~~~~~~~~~~~~
697
698 Angular6 Base Application
699 ^^^^^^^^^^^^^^^^^^^^^^^^^
700 With Evergreen 3.2, we introduce the initial infrastructure for
701 migrating to a new version of Angular.  The structure of the new code
702 is quite different from the AngularJS code and it runs as a separate
703 application which communicates with the AngularJS app via shared storage
704 and in-page URLs that link back and forth between the two.
705
706 For this release, users will only be directed to the new Angular site
707 when navigating to Administration => Acquisitions Administration.  Once
708 on this page, some of the admin interfaces will presented as Angular6
709 interfaces, while others will direct users back to the AngularJS
710 application.  The Angular6 interfaces are the simpler, grid-based
711 interfaces.
712
713 Acquisitions Admin Angular6 Interfaces
714 ++++++++++++++++++++++++++++++++++++++
715
716  * Cancel Reasons
717  * Claim Event Types
718  * Claim Policies
719  * Claim Policy Actions
720  * Claim Types
721  * Currency Types
722  * EDI Accounts
723  * EDI Messages
724  * Exchange Rates
725  * Fund Tags
726  * Invoice Item Types
727  * Invoice Payment Method
728  * Line Item Alerts
729  * Line Item MARC Attribute Definitions
730
731 System Admin Upgrade Notes
732 ++++++++++++++++++++++++++
733
734 Like the AngularJS application, Evergreen releases will come with all
735 web browser staff client code pre-compiled.  Admins only need to add an
736 Apache configuration change.
737
738 Add the following stanza to /etc/apache2/eg_vhost.conf.
739
740 [source,conf]
741 --------------------------------------------------------------------------
742 RewriteCond %{REQUEST_URI}  ^/eg2/
743 RewriteCond %{REQUEST_URI}  !^/eg2/([a-z]{2}-[A-Z]{2})/
744 RewriteRule ^/eg2/(.*) https://%{HTTP_HOST}/eg2/en-US/$1 [R=307,L]
745
746 <Directory "/openils/var/web/eg2/en-US">                                       
747     FallbackResource /eg2/en-US/index.html                                     
748 </Directory>  
749 --------------------------------------------------------------------------
750
751 For multi-locale sites, see the bottom section of
752 Open-ILS/examples/apache[_24]/eg_vhost.conf.in for a sample fr-CA
753 configuration.  The section starts with "/eg2/ client setup and locale
754 configuration"
755
756 Developer Upgrade Notes
757 +++++++++++++++++++++++
758
759 Developers building Angular code on existing installations need to update 
760 their version of NodeJS by re-running the -developer prereqs installer.
761
762 [source,sh]
763 --------------------------------------------------------------------------
764 sudo make -f Open-ILS/src/extras/Makefile.install <osname>-developer
765 --------------------------------------------------------------------------
766
767
768 Cataloging
769 ~~~~~~~~~~
770
771 Add UPC to z39.50 search for OCLC and LOC
772 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
773 Add UPC as a search attribute for both OCLC and LOC targets in
774 z39.50 for cataloging.
775
776
777 Asynchronous Vandelay Imports
778 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
779
780 Vandelay imports are now monitored from the browser client asynchronously,
781 meaning the client requests updates from the server instead of waiting for 
782 the server to respond to the original import request.  This changes allows 
783 for incremental progress updates in the browser client.
784
785 New Database Table
786 ++++++++++++++++++
787
788 This adds a new database table vandelay.session_tracker for tracking
789 in-progress vandelay upload activity.  A new tracker row is added for
790 each of "upload", "enqueue", and "import" actions, linked for a given
791 session by the value stored in the "session_key" field.
792
793 The table tracks other potentially useful data, like the staff member
794 and workstation where the action was performed.
795
796 Upgrade notes
797 +++++++++++++
798 Users of NGINX as a reverse proxy may need to set a suitable
799 `client_max_body_size` value in the NGINX configuration so that large
800 MARC record uploads are not truncated. Note that this would have
801 always been necessary, but since this feature allows larger files
802 to be more reliably queued and imported, the need to set `client_max_body_size`
803 became more apparent.
804
805
806
807
808 Support for Last Inventory Date
809 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
810 Evergreen now provides an option to add an inventory date to items to facilitate
811 the process of performing inventory in libraries. Staff can add an inventory
812 date to an item in one of the following ways:
813  * From the check in screen, there is now an Update Inventory check in modifier.
814 When selected, scanned barcodes will have the current date/time added as the
815 inventory date while the item is checked in.
816  * From the Item Status screen, an action is available to add the current 
817 date/time as the inventory date to selected items.
818
819 This new feature will also store the workstation that was used when the
820 inventory date was updated.
821
822
823
824 Parallel Ingest with pingest.pl
825 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
826 A program named pingest.pl is now installed to allow faster bibliographic record
827 ingest.  It performs ingest in parallel so that multiple batches can
828 be done simultaneously.  It operates by splitting the records to be
829 ingested up into batches and running all of the ingest methods on each
830 batch.  You may pass in options to control how many batches are run at
831 the same time, how many records there are per batch, and which ingest
832 operations to skip.
833
834 NOTE: The browse ingest is presently done in a single process over all
835 of the input records as it cannot run in parallel with itself.  It
836 does, however, run in parallel with the other ingests.
837
838 Command Line Options
839 ++++++++++++++++++++
840 pingest.pl accepts the following command line options:
841
842 --host::
843     The server where PostgreSQL runs (either host name or IP address).
844     The default is read from the PGHOST environment variable or
845     "localhost."
846
847 --port::
848     The port that PostgreSQL listens to on host.  The default is read
849     from the PGPORT environment variable or 5432.
850
851 --db::
852     The database to connect to on the host.  The default is read from
853     the PGDATABASE environment variable or "evergreen."
854
855 --user::
856     The username for database connections.  The default is read from
857     the PGUSER environment variable or "evergreen."
858
859 --password::
860     The password for database connections.  The default is read from
861     the PGPASSWORD environment variable or "evergreen."
862
863 --batch-size::
864     Number of records to process per batch.  The default is 10,000.
865
866 --max-child::
867     Max number of worker processes (i.e. the number of batches to
868     process simultaneously).  The default is 8.
869
870 --skip-browse::
871 --skip-attrs::
872 --skip-search::
873 --skip-facets::
874 --skip-display::
875     Skip the selected reingest component.
876
877 --start-id::
878     Start processing at this record ID.
879
880 --end-id::
881     Stop processing when this record ID is reached.
882
883 --pipe::
884     Read record IDs to reingest from standard input.  This option
885     conflicts with --start-id and/or --end-id.
886
887 --max-duration::
888     Stop processing after this many total seconds have passed.  The
889     default is to run until all records have been processed.
890
891 --help::
892     Show the help text.
893
894
895
896 View Authority Record by Database ID
897 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
898
899 A new interface allows catalogers to retrieve a specific
900 authority record using its database ID.  Catalogers can
901 find those IDs in subfield $0 of matching fields in
902 bibliographic records.
903
904 To use the new authority record viewer:
905
906 . Click *Cataloging -> Retrieve Authority Record by ID*.
907 . Type in the ID number of the authority record you are
908 interested in. Don't include any prefixes, just the ID
909 number.
910 . Click *Submit*.
911 . View or edit the authority record as needed.
912
913
914
915 Circulation
916 ~~~~~~~~~~~
917
918
919
920 Autorenewal of Loans
921 ^^^^^^^^^^^^^^^^^^^^
922 Circulation policies in Evergreen can now be configured to automatically renew
923 certain items checked out on patron accounts. Circulations will be renewed
924 automatically up to a custom limit (the `max_auto_renewal` field) and patrons
925 will not need to log in to their OPAC accounts or ask library staff to manually
926 renew materials.
927
928 Two new action triggers have been added to Evergreen that permit the Auto-Renew
929 feature. They can be found, configured, and enabled in Administration>Local
930 Administration>Notifications/Action Triggers. They are named **Autorenew** and
931 **AutorenewNotify**.
932
933 The **Autorenew** A/T definition uses the `checkout.due` hook to automatically
934 validate and renew (in the reactor) circulations on the day they are due,
935 grouped by user. The output events of this definition is is the input used by
936 the related **AutorenewNotify** A/T that simply uses a new hook called
937 `autorenewal` to notify patrons via email of their currently due or
938 auto-renewed items.
939
940 In the webstaff's Patron Items Out page, the new column `AutoRenewalsRemaining`
941 indicates how many autorenewals are available for a particular circulation.
942
943
944
945
946
947 Emergency Closing Handler
948 ^^^^^^^^^^^^^^^^^^^^^^^^
949
950 Staff are provided with interfaces and mechanisms to create library closings
951 that, in addition to affecting future circulation and booking due dates, and
952 hold shelf expirations, will automatically move existing circulation and booking
953 due dates and hold shelf expiration times. This new functionality is
954 conceptually described as Emergency Closings and business logic implementing it
955 as the Emergency Closing Handler. It contains additions and adjustments to the
956 user interface, business logic, and database layers. Access to this
957 functionality is available through the Closed Dates Editor interface in the
958 staff client which has been ported to AngularJS.
959
960 Overview
961 ++++++++
962
963 This development has created new business logic code to inspect, in real time,
964 existing circulation, booking, and hold records, and modify such date and time
965 stamps so that the circulation, booking, or hold will end in the same state it
966 would have if the closing had existed at the time the circulation or booking
967 occurred, or the hold was placed and captured. Of specific note, hourly loans
968 will have their due date adjusted to be the end of the day following the
969 closing.
970
971 When the Emergency Closing is saved, any fines accrued during the closing may be
972 voided, as settings dictate, with the exception of circulations that have been
973 marked as LOST or LONG OVERDUE. That is, even for LOST and LONG OVERDUE
974 circulations with due dates that fall within the Emergency Closing, no fine
975 adjustment will be applied. Emergency Closing processing is permanent, and
976 cannot be rolled back.
977
978 This functionality is explicitly initiated by staff action. If staff do not
979 request an Emergency Closing, existing circulations, bookings, and holds will
980 not be processed and adjusted. However, if staff request any Closing that starts
981 nearer in time than the length of the longest circulation duration configured
982 for use in the Evergreen instance they will be prompted with the option to
983 create the closing as an Emergency Closing.
984
985 Action/Trigger hooks have been created for circulations and bookings that are
986 adjusted by the Emergency Closing Handler. These will facilitate the creation of
987 notifications to patrons that the due date has changed and to alert them to
988 potential changes in accrued fines.
989
990 Booking start dates are explicitly ignored in this implementation. Because an
991 Emergency Closing is, by its nature, an unexpected event, it will be up to staff
992 to address any bookings which intersect with a new Emergency Closings. Reports
993 can be used to identify booking start dates that overlap with a closing and that
994 may require staff intervention.
995
996 Staff requesting and Emergency Closing must have the new EMERGENCY_CLOSING
997 permission.  Some text describing the feature.
998
999
1000
1001
1002
1003 Patron Preferred Name and Name Search Keywords
1004 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1005
1006 Preferred Name
1007 ++++++++++++++
1008
1009 Adds a new set of patron preferred name fields for prefix, first,
1010 middle, last, and suffix allowing patrons to provide preferred name
1011 information.  Preferred names are optional and each acts as an overlay
1012 to the analogous primary name field, making it possible to provide
1013 preferred name values for individual fields.
1014
1015 For example, a patron named William Erickson may have a preferred first
1016 name (pref_first_given_name) of Bill, in which case the preferred name
1017 would be Bill Erickson.  Note a preferred last name is not required in
1018 this case as the code uses primary name values as defaults when not
1019 replaced with a preferred version.
1020
1021 * Patrons will see primary names displayed in the catalog when set.
1022 * Staff will see both primary name and preferred name in the patron
1023   summary side bar.
1024 * Patron searches for any given name field will search both the primary
1025   and preferred name data.
1026 * Preferred name fields are available in Action/Trigger templates and
1027   are present in various patron-focused print templates.
1028
1029 Name Keywords
1030 ++++++++++++++
1031
1032 Adds a new field to store miscellaneous patron name search terms.  These
1033 values are only for searching and do not appear in any interfaces, apart
1034 from the patron summary side bar and the patron edit UI.
1035
1036 Included is a new search field in the patron search UI which searches
1037 keyword values and all other name fields.  It's essentially a global patron
1038 name keyword search.
1039
1040
1041
1042
1043 Client
1044 ~~~~~~
1045
1046 Disabling of legacy XUL staff client
1047 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1048 The legacy XUL staff client is no longer supported in Evergreen
1049 3.2.x and the server-side installation no longer supports a
1050 direct connection by a version XUL client by default.  All
1051 users of Evergreen 3.2.x are strongly urged to complete their
1052 switch to the web staff client as part of upgrading to 3.2.x.
1053
1054 Evergreen administrators who for some reason continue to wish
1055 to deploy the XUL staff client can do so at their risk by
1056 supplying `STAFF_CLIENT_STAMP_ID` during the `make install` step
1057 and using `make_release` to create installers for the staff client.
1058 However, no community support will be provided for the XUL client.
1059
1060
1061
1062
1063 Permission Group Display Entries
1064 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1065 In some cases, it is useful to have the ability to reorder permission, or to make
1066 only specific groups available in the permission group selector for specific
1067 Org Units. An interface has been made available to allow this.
1068
1069 Group Tree Display Entry Interface
1070 ++++++++++++++++++++++++++++++++++
1071
1072 Permission Group Display Entries can be reordered, added, or removed via
1073 _Administration -> Local Admin -> Permission Tree Display Entries_.
1074 Select the Org Unit you wish to edit the entries in.
1075
1076 Entries may be added using the Add functionality, creating entries based
1077 on permission groups that have not been added to the tree for the Org
1078 Unit you wish to add them to.
1079
1080 image::media/pgtde_01.png[Group Tree Display Entry Admin UI]
1081
1082 Moving an Entry
1083 +++++++++++++++
1084 Moving an entry will shift its position up or down in the patron profile
1085 selector for a given Org Unit.
1086
1087 * Select an entry
1088 * Press either the *Move Up* or *Move Down* button. The entry will be 
1089 moved up or down, accordingly.
1090 * Click *Save* to save your edits.  
1091
1092 NOTE: You may only move up or down entries that have sibling entries.
1093
1094 Removing an Entry
1095 +++++++++++++++++
1096 If you want a particular Org Unit to not have access to specific
1097 entries, you may remove an entry. Removing an entry will remove it from 
1098 view. The entry will be removed from the database.
1099
1100 * Select an entry and press the *Remove* button.
1101
1102 Adding an Entry
1103 +++++++++++++++
1104 You may add entries from permission groups that are not currently
1105 reflected in the permission group tree. This is useful for moving 
1106 entries to different parents, or making them root entries.
1107
1108 image::media/pgtde_02.png[Add Entry modal]
1109
1110 * If desired, select an entry to be used as the parent entry. 
1111 * Press the *Add* button. 
1112 * Select a permission group from the dropdown.
1113 * If you've selected a parent entry, you may check the *Add Root Entry*
1114 box to override that parent and add the entry on the root level. 
1115 * If you did not select a parent entry, the entry will be added on the root 
1116 level of the tree.
1117
1118
1119
1120 Browser Client Settings & Preferences Stored on the Server
1121 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1122 Browser client settings and preferences that should persist over time are
1123 now stored as settings on the server.  This allows settings to follow
1124 users and workstations and reduces problems associated with losing settings 
1125 as a result of clearing browser data.
1126
1127 The browser client honors setting values stored as user settings, workstation
1128 settings, and org unit settings, depending on which setting types are
1129 locally configured.
1130
1131 Setting Types
1132 +++++++++++++
1133
1134 * No setting can be both a user and workstation setting.  They are mutually
1135   exclusive.
1136 * Any setting can be an org unit setting in addition to being a user or
1137   workstation setting.
1138
1139 Read-Only Settings
1140 ++++++++++++++++++
1141
1142 Read-only settings are useful for defining values that staff can use but
1143 not modify.  For example, admins may wish to prevent users from locally
1144 modifying the grid configuration for a given interface so it remains
1145 consistent for all users.
1146
1147 A setting is read-only when an org unit setting type exists (regardless of 
1148 whether a value is applied) and no user or workstation setting type exists.
1149
1150 Server-Stored Workstation Settings Workstation Admin View
1151 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1152
1153 There's a new "Server Workstation Prefs" tab to the stored preferences
1154 workstation admin interface.  From here, users can view which
1155 preferences are stored as server-stored workstation preferences and
1156 delete select values.
1157
1158 Upgrade Notes
1159 +++++++++++++
1160
1161 A new permission APPLY_WORKSTATION_SETTING has been added to control who
1162 may apply values to workstation settings.  Use something like the following
1163 to apply the permission to all staff accounts (mileage may vary):
1164
1165 [source,sh]
1166 --------------------------------------------------------------------------
1167 INSERT INTO permission.grp_perm_map (grp, perm, depth) 
1168 VALUES (
1169     (SELECT id FROM permission.grp_tree WHERE name = 'Staff'), -- name may vary
1170     (SELECT id FROM permission.perm_list WHERE code = 'APPLY_WORKSTATION_SETTING'),
1171     0 -- or 1, 2, etc.
1172 );
1173 --------------------------------------------------------------------------
1174
1175 Workstation setting types matching values previously stored in the browser
1176 (via localStorage or Hatch) are created as part of this feature.  During
1177 upgrade, admins should consider whether any of these new setting types 
1178 should be transferred to user and/or org unit settings instead.  Setting
1179 type changes can be made at any time, but when a setting type is deleted
1180 all of its data is deleted, so a change in type means re-applying the 
1181 settings in the browser client.
1182
1183 Values stored in the browser will automatically migrate to server settings
1184 as each setting is accessed in the browser client.  Once migrated, the
1185 in-browser copies are deleted.  
1186
1187 If a setting type does not exist where the browser expects one, the 
1188 value is stored in-browser instead and a warning is issued in the console.
1189
1190
1191 More consistent terminology in the client
1192 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1193 Terminology has been updated in the staff client so that we consistently use
1194 the same name to describe the same thing. The following updates have been made:
1195
1196   * The term 'item' is now consistently used to describe the barcoded entity
1197 that had been previously been called both an 'item' and a 'copy'. As a result,
1198 we now use the terms 'item buckets', 'item tags', and 'item alerts'.
1199   * The term 'volume' is no longer used in the client, with the exception of
1200 serials, where the term is used to describe serial volumes. The term 'call
1201 number' will replace volume in most other places.
1202   * 'Holdings' is a more general term used to describe a combination of items
1203 and call numbers.
1204   * The term 'Shelving Location' is used consistently in favor of 'Copy
1205 Location.'
1206
1207
1208
1209
1210 OPAC
1211 ~~~~
1212
1213
1214
1215 Batch Actions In the Public Catalog
1216 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1217 The public catalog now displays checkboxes on the bibliographic and
1218 metarecord constituents results pages. Selecting one or more titles
1219 by using the checkboxes will dynamically add those title to the
1220 temporary list, which is now renamed the cart.
1221
1222 Above the results lists there is now a bar with a select-all checkbox,
1223 a link to the cart management page that also indicates the number of
1224 of titles in the cart, and a link to remove from the cart titles that
1225 are selected on the currently displayed results page.
1226
1227 The search bar now includes an icon of a cart and displays the number
1228 of titles currently in the cart. Next to that icon is a menu of cart
1229 actions.
1230
1231 The cart actions available are Place Hold, Print Title Details,
1232 Email Title Details, Add Cart to Saved List, and Clear Cart. In the
1233 web staff client, the cart actions also include Add Cart to Bucket.
1234 When an action is selected from this menu, the user is given an
1235 opportunity to confirm the action and to optionally empty the cart
1236 when the action is complete. The action is applied to all titles
1237 in the cart.
1238
1239 Clicking on the cart icon brings the user to a page listing the
1240 titles in the cart. From there, the user can select specific records
1241 to request, print, email, add to a list, or remove from the cart.
1242
1243 The list of actions on the record details page now provides separate
1244 links for adding the title to a cart or to a permanent list.
1245
1246 The permanent list management page in the public catalog now also
1247 includes batch print and email actions.
1248
1249 Additional information
1250 ++++++++++++++++++++++
1251 * The checkboxes do not display on the metarecord results page, as
1252   metarecords currently cannot be put into carts or lists.
1253 * The checkboxes are displayed only if JavaScript is enabled. However,
1254   users can still add items to the cart and perform batch actions on
1255   the cart and on lists.
1256 * A template `config.tt2` setting, `ctx.max_cart_size`, can be used to
1257   set a soft limit on the number of titles that can be added to the
1258   cart. If this limit is reached, checkboxes to add more records to the
1259   cart are disabled unless existing titles in the cart are removed
1260   first. The default value for this setting is 500.
1261
1262 Developer notes
1263 +++++++++++++++
1264
1265 This patch adds to the public catalog two routes that return JSON
1266 rather than HTML:
1267
1268 * `GET /eg/opac/api/mylist/add?record=45`
1269 * `GET /eg/opac/api/mylist/delete?record=45`
1270
1271 The JSON response is a hash containing a mylist key pointing to the list
1272 of bib IDs of contents of the cart.
1273
1274 The record parameter can be repeated to allow adding or removing
1275 records as an atomic operation. Note that this change also now available
1276 to `/eg/opac/mylist/{add,delete}`
1277
1278 More generally, this adds a way for EGWeb context loaders to specify that
1279 a response should be emitted as JSON rather than rendering an HTML
1280 page using `Template::Toolkit`.
1281
1282 Specifically, if the context as munged by the context loader contains
1283 a `json_response` key, the contents of that key will to provide a
1284 JSON response. The `json_response_cookie` key, if present, can be used
1285 to set a cookie as part of the response.
1286
1287 Template Toolkit processing is bypassed entirely when emitting a JSON
1288 response, so the context loader would be entirely responsible for
1289 localization of strings in the response meant for direct human
1290 consumption.
1291
1292
1293
1294
1295 New class for searchbar when on the homepage
1296 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1297
1298 This adds the `.searchbar-home` class to the div that contains the searchbar
1299 when on the homepage.  This allows sites to customize the searchbar differently
1300 on the homepage than in other places the search bar appears (for example,
1301 offering a large, Google-style search bar on the homepage only).
1302
1303
1304 Username Login Hint
1305 ^^^^^^^^^^^^^^^^^^^
1306 To make customization easier, the username hint on the OPAC login page ("Please
1307 include leading zeros...") has been moved to a separate TT2 template.  If you
1308 have customized the hint text, you will need to add your modifications to
1309 username_hint.tt2.
1310
1311
1312
1313 Acknowledgments
1314 ---------------
1315 The Evergreen project would like to acknowledge the following
1316 organizations that commissioned developments in this release of
1317 Evergreen:
1318
1319 * BC Libraries Cooperative
1320 * Consortium Of Ohio Libraries
1321 * CW MARS
1322 * Georgia Public Library Service
1323 * Indiana State Library
1324 * Lake Agassiz Regrional Library
1325 * MassLNC
1326 * North Texas Library Consortium
1327 * Northwest Regional Library
1328 * Pennsylvania Integrated Library System
1329 * South Carolina State Library
1330
1331 We would also like to thank the following individuals who contributed
1332 code, translations, documentations patches and tests to this release of
1333 Evergreen:
1334
1335 * Felicia Beaudry
1336 * Jason Boyer
1337 * Andrea Buntz Neiman
1338 * Eva Cerninakova
1339 * Galen Charlton
1340 * Garry Collum
1341 * Jeff Davis
1342 * Bill Erickson
1343 * Jason Etheridge
1344 * Lynn Floyd
1345 * Jeff Godin
1346 * Blake Graham-Henderson
1347 * Francisco J Guel-Mendoza
1348 * Kyle Huckins
1349 * Mary Jinglewski
1350 * Angela Kilsdonk
1351 * Kathy Lussier
1352 * Katie G. Martin
1353 * Jennifer Pringle
1354 * Morkor Quarshie
1355 * Mike Rylander
1356 * Jane Sandberg
1357 * Chris Sharp
1358 * Ben Shum
1359 * Remington Steed
1360 * Jason Stephenson
1361 * Cesar Velez
1362 * Dan Wells
1363 * Stephan Woidowski
1364
1365 We also thank the following organizations whose employees contributed
1366 patches:
1367
1368 * BC Libraries Cooperative
1369 * Calvin College
1370 * Catalyte
1371 * Equinox Open Library Initiative
1372 * Government of Manitoba
1373 * Kenton County Public Library
1374 * King County Library System
1375 * Linn-Benton Community College
1376 * MassLNC
1377 * Sigio
1378
1379 We regret any omissions.  If a contributor has been inadvertently
1380 missed, please open a bug at http://bugs.launchpad.net/evergreen/
1381 with a correction.
1382