]> git.evergreen-ils.org Git - Evergreen.git/blob - docs/RELEASE_NOTES_3_6.adoc
Docs: 3.8 Release Notes updates
[Evergreen.git] / docs / RELEASE_NOTES_3_6.adoc
1 = Evergreen 3.6 Release Notes =
2 :toc:
3 :numbered:
4
5 == Evergreen  3.6.4 ==
6
7 This release contains bug fixes improving on Evergreen 3.6.3.
8
9 === Upgrade notes ===
10
11 The addition of the Angular Staff Catalog surfaced a double-encoding issue
12 with redirects in certain Apache versions. This caused searches for multiple
13 words to have %20 in place of spaces, almost certainly resulting in 0 results.
14
15 In order to apply this fix, change the Angular redirects in eg_vhost.conf from
16
17  RewriteRule ^/eg2/(.*) https://%{HTTP_HOST}/eg2/en-US/$1 [R=307,L]
18
19 to
20
21  RewriteRule ^/eg2/(.*) https://%{HTTP_HOST}/eg2/en-US/$1 [NE,R=307,L]
22
23
24 === Bug Fixes ===
25
26 ==== Acquisitions ====
27
28 * Acq PO Search cancel reason column shows description (https://bugs.launchpad.net/bugs/1906825[Bug 1906825])
29 * Date columns in Acq Search now also show time (https://bugs.launchpad.net/bugs/1912097[Bug 1912097])
30
31 ==== Administration ====
32
33 * Fixes an issue with editing carousels (https://bugs.launchpad.net/bugs/1879769[Bug 1879769])
34 * Carousel admin grid now has a link to edit the relevant bucket (https://bugs.launchpad.net/bugs/1901893[Bug 1901893])
35 * The Active Column in SMS Carrier administration now displays properly (https://bugs.launchpad.net/bugs/1873539[Bug 1873539])
36 * Fixes upgrade script for Enhanced Print/Email (https://bugs.launchpad.net/bugs/1905091[Bug 1905091])
37 * Cleans up numerous Perl warnings in logs (https://bugs.launchpad.net/bugs/1895660[Bug 1895660])
38
39
40 ==== Catalog ====
41
42 * Fixes an issue displaying highlighting in traditional and bootstrap catalogue (https://bugs.launchpad.net/bugs/1923225[Bug 1923225])
43 * Fixes an issue displaying works with the word "hidden" in the title (https://bugs.launchpad.net/bugs/1930933[Bug 1930933])
44 * Bootstrap OPAC: Simple Selector for Lang now works in Advanced Search (https://bugs.launchpad.net/bugs/1920042[Bug 1920042])
45 * Bootstrap OPAC: My account summary now displays ebook references according to config file (https://bugs.launchpad.net/bugs/1910288[Bug 1910288])
46 * Bootstrap OPAC: Item tags no longer display as separate copies on an x-small screen (https://bugs.launchpad.net/bugs/1916936[Bug 1916936])
47 * Fixes nesting issues on the Bootstrap OPAC Record Detail Page (https://bugs.launchpad.net/bugs/1901710[Bug 1901710])
48 * Opac SMS and Carrier Fields display according to OU Setting when Editing a Hold (https://bugs.launchpad.net/bugs/1902302[Bug 1902302])
49 * Better controls for collapsing and expanding the staff catalog search form (https://bugs.launchpad.net/bugs/1913338[Bug 1913338])
50
51 ==== Cataloging ====
52
53 * Angular Catalog: "Edit" link no longer ignores UPDATE_COPY perm (https://bugs.launchpad.net/bugs/1920815[Bug 1920815])
54 * Angular catalog: fixes an issue with metarecord search (https://bugs.launchpad.net/bugs/1930088[Bug 1930088])
55 * Angular staff catalog now displays e-resource links (https://bugs.launchpad.net/bugs/1881607[Bug 1881607])
56 * Record bucket Batch Edit now navigates to the Angular batch editor (https://bugs.launchpad.net/bugs/1926310[Bug 1926310])
57 * Angular Catalog: Shelving locations assigned to the top level OU now display in list (https://bugs.launchpad.net/bugs/1927527[Bug 1927527])
58 * Add to Carousel added back to the Other Actions menu in the Bib Record (https://bugs.launchpad.net/bugs/1922120[Bug 1922120])
59 * Makes terminology more consistent in Angular Catalog (https://bugs.launchpad.net/bugs/1925725[Bug 1925725])
60
61
62 ==== Circulation ====
63
64 * Preferred Name is now the prominent display name (https://bugs.launchpad.net/bugs/1924185[Bug 1924185])
65 * Unchanged workstation settings are no longer re-applied on every checkin (https://bugs.launchpad.net/bugs/1918362[Bug 1918362])
66 * Adds accessible field labels in patron search and edit (https://bugs.launchpad.net/bugs/1615800[Bug 1615800])
67 * Fixes an issue with the embedded "Place a hold" catalog in the checkout interface (https://bugs.launchpad.net/bugs/1887876[Bug 1887876])
68 * Angular Catalog: Hold status in View Holds is now saved (https://bugs.launchpad.net/bugs/1917495[Bug 1917495])
69 * Angular Staff Catalog: Hold Pickup Library no longer sometimes empty (https://bugs.launchpad.net/bugs/1917944[Bug 1917944])
70 * Fixes an issue with the Angular catalog view holds sort by patron barcode (https://bugs.launchpad.net/bugs/1928684[Bug 1928684])
71 * Staff catalog hold detail page now supports hold notes/notifications (https://bugs.launchpad.net/bugs/1910145[Bug 1910145])
72
73 ==== Client ====
74
75 * Angular grid column field picker has a better sort order (https://bugs.launchpad.net/bugs/1891699[Bug 1891699])
76 * Angular grids now support shift-click multi-row selection (https://bugs.launchpad.net/bugs/1911238[Bug 1911238])
77 * Fixes an issue with multi-word queries in the splash page catalog search (https://bugs.launchpad.net/bugs/1892435[Bug 1892435])
78
79 ==== Database ====
80
81 * Evergreen now uses the builtin array_remove() function rather than its own custom version (https://bugs.launchpad.net/bugs/1778955[Bug 1778955])
82 * Adds seed data for the eg.orgselect.hopeless.wide_holds setting (https://bugs.launchpad.net/bugs/1895738[Bug 1895738])
83
84
85 ==== Documentation ====
86
87 * Adds documentation on how to contribute Documentation (https://bugs.launchpad.net/bugs/1927534[Bug 1927534])
88 * Adds IDL acronym to the glossary (https://bugs.launchpad.net/bugs/1857917[Bug 1857917])
89 * Adds documentation on how to use the browser client efficiently (https://bugs.launchpad.net/bugs/1250528[Bug 1250528] and https://bugs.launchpad.net/bugs/1751146[Bug 1751146])
90
91
92
93
94 === Acknowledgements ===
95
96 We would like to thank the following individuals who contributed code,
97 testing and documentation patches to the 3.6.4 point release of Evergreen:
98
99 * Jason Boyer
100 * Dan Briem
101 * Galen Charlton
102 * Garry Collum
103 * Jeff Davis
104 * Bill Erickson
105 * Jason Etheridge
106 * Blake Graham Henderson
107 * Rogan Hamby
108 * Elaine Hardy
109 * Kyle Huckins
110 * Tiffany Little
111 * Mary Llewellyn
112 * Terran McCanna
113 * Gina Monti
114 * Michele Morgan
115 * Andrea Buntz Neiman
116 * Mike Risher
117 * Mike Rylander
118 * Jane Sandberg
119 * Chris Sharp
120 * Chrisy Schroth
121 * Jason Stephenson
122 * Stephen Wills
123
124 == Evergreen  3.6.3 ==
125
126 This release contains bug fixes improving on Evergreen 3.6.2,
127 including a security bug fix.
128
129 === Bug Fixes ===
130
131 ==== Security ====
132
133 * Fixes an XSS bug in MARC fields that are rendered as HTML (https://bugs.launchpad.net/bugs/1902965[Bug 1902965])
134
135
136 ==== Administration ====
137
138 * Angular admin pages "Library" scope (https://bugs.launchpad.net/bugs/1873322[Bug 1873322])
139 * No Access to Composite Attribute Entry Definitions from MARC Coded Value Maps (https://bugs.launchpad.net/bugs/1843969[Bug 1843969])
140 * Use consistent terminology in Local Admin Interfaces (https://bugs.launchpad.net/bugs/1871510[Bug 1871510])
141
142
143 ==== Circulation ====
144
145 * In house use: it would be nice if the item barcode column linked to item status (https://bugs.launchpad.net/bugs/1859513[Bug 1859513])
146
147 ==== Client ====
148
149 * Angular grids: interval columns are not filterable (https://bugs.launchpad.net/bugs/1848579[Bug 1848579])
150 * Angular Staff Client Hamburger Menu no longer clipped off screen (https://bugs.launchpad.net/bugs/1915323[Bug 1915323])
151
152 ==== Course materials ====
153
154 * Display course name when editing reserve item (https://bugs.launchpad.net/bugs/1907977[Bug 1907977])
155 * "Instructor" search/browse option does not always display in OPAC (https://bugs.launchpad.net/bugs/1907979[Bug 1907979])
156
157 ==== OPAC ====
158
159 * Bootstrap OPAC: add support for Stripe v3 (Elements) (https://bugs.launchpad.net/bugs/1895679[Bug 1895679])
160 * Bootstrap OPAC: Pagination on copy table now works (https://bugs.launchpad.net/bugs/1916085[Bug 1916085])
161 * Terms Governing Use and Reproduction Note Displays Twice in Record Details (https://bugs.launchpad.net/bugs/1917804[Bug 1917804])
162 * Email now displays when editing hold prefs in OPAC (https://bugs.launchpad.net/bugs/1908616[Bug 1908616])
163 * Bootstrap OPAC:  Call number on search results page (https://bugs.launchpad.net/bugs/1916904[Bug 1916904])
164
165 ==== Performance ====
166
167 * Search indexes now use GIN by default (https://bugs.launchpad.net/bugs/1703658[Bug 1703658])
168 * Record bucket 'Add To Bucket' actions should be batched or serialized. (https://bugs.launchpad.net/bugs/1913458[Bug 1913458])
169
170 ==== Staff catalog ====
171
172 * Angular Catalog: Part column no longer missing from Item table (https://bugs.launchpad.net/bugs/1899405[Bug 1899405])
173 * Publication information in angular search results now displays from tag 260 or 264 (https://bugs.launchpad.net/bugs/1896840[Bug 1896840])
174 * Angular catalog can now sort browse result record lists (https://bugs.launchpad.net/bugs/1908444[Bug 1908444])
175 * No Pagination Navigation at the Bottom of a Catalog Search (https://bugs.launchpad.net/bugs/1912380[Bug 1912380])
176
177 === Upgrade Notes ===
178
179 A partial reingest is required to extract the new publisher data for display.
180 This query may be long-running.
181
182 [source,sql]
183 --------------------------------------------------------------------------
184 WITH affected_bibs AS (
185     SELECT DISTINCT(bre.id) AS id
186     FROM biblio.record_entry bre
187     JOIN metabib.real_full_rec mrfr
188     ON (mrfr.record = bre.id AND mrfr.tag = '264')
189     WHERE NOT bre.deleted
190 )
191 SELECT metabib.reingest_metabib_field_entries(id, TRUE, FALSE, TRUE, TRUE)
192 FROM affected_bibs;
193 --------------------------------------------------------------------------
194
195
196
197 === Acknowledgements ===
198
199 We would like to thank the following individuals who contributed code,
200 testing and documentation patches to the 3.6.3 point release of Evergreen:
201
202
203 * Jason Boyer
204 * Dan Briem
205 * Galen Charlton
206 * Garry Collum
207 * Jeff Davis
208 * Bill Erickson
209 * Tiffany Little
210 * Terran McCanna
211 * Michele Morgan
212 * Jennifer Pringle
213 * Mike Risher
214 * Jane Sandberg
215 * Chris Sharp
216 * Jason Stephenson
217 * Beth Willis
218
219 == Evergreen 3.6.2 ==
220
221
222 This release contains bug fixes improving on Evergreen 3.6.1,
223 including a security bug fix.
224
225 === Bug Fixes ===
226
227 ==== Security ====
228
229 * Fix an issue where `open-ils.pcrud` backends could crash with
230 a segmentation fault under certain conditions that could be invoked
231 by an external attacker, thus leading to a potential denial
232 of service attack.
233
234 ==== Staff Interface ====
235 * Expert Search in the staff interface now respects the search library.
236 (https://bugs.launchpad.net/evergreen/+bug/1468132[Bug 1468132])
237 * The Items Out page is now less prone to cause `open-ils.actor` backend
238 exhaustion. It now also displays a progress bar while loading.
239 (https://bugs.launchpad.net/evergreen/+bug/1913811[Bug 1913811])
240 * Grids in the staff interface no longer require that a row
241 be selected in order to activate a grid action that doesn't
242 logically require that at least one row be selected.
243 (https://bugs.launchpad.net/evergreen/+bug/1670457[Bug 1670457])
244 * The display of total amounted billed, owed, and paid on the patron
245 Bills page now reflects just open bills with a non-zero balance, fixing
246 an issue where the totals could include paid billings for transactions
247 that are still open.
248 (https://bugs.launchpad.net/evergreen/+bug/1772955[Bug 1772955])
249 * The pending patron interface now respects the library setting whether
250 to set the patron's initial password to the last four digits of their
251 phone number.
252 (https://bugs.launchpad.net/evergreen/+bug/1887852[Bug 1887852])
253 * Several interfaces, including Mark Missing, adding patrons to a bucket
254 from a search, and applying a default item status now use batch
255 API calls for better efficiency.
256 (https://bugs.launchpad.net/evergreen/+bug/1896285[Bug 1896285])
257 * Fix an issue where the holdings editor would not close its window
258 when the Save & Exit button was clicked.
259 (https://bugs.launchpad.net/evergreen/+bug/1913219[Bug 1913219])
260 * Fix an issue where a double barcode scan could create a precat
261 item without giving the staff member the chance to review the
262 form before submitting it.
263 (https://bugs.launchpad.net/evergreen/+bug/1778522[Bug 1778522])
264 * Fix an issue preventing the staff interface from being used
265 on various Android and iOS devices.
266 (https://bugs.launchpad.net/evergreen/+bug/1901760[Bug 1901760])
267 * Fix an issue where the report editor could supply the wrong
268 kind of input for an aggregate filter.
269 (https://bugs.launchpad.net/evergreen/+bug/1858114[Bug 1858114])
270 * The staff interfaces now warns if the user attempts to delete
271 a bib record that has active holds on it.
272 (https://bugs.launchpad.net/evergreen/+bug/1398107[Bug 1398107])
273 * Expired staff accounts can no longer log into the staff interface
274 (https://bugs.launchpad.net/evergreen/+bug/1474029[Bug 1474029])
275 * Most Angular administration pages now include grid filters
276 (https://bugs.launchpad.net/evergreen/+bug/1846042[Bug 1846042])
277 * The grid header in most Angular admin interfaces is now sticky
278 (https://bugs.launchpad.net/evergreen/+bug/1855457[Bug 1855457])
279 * The Angular staff catalog now supports more easily placing multiple
280 holds on the same target
281 (https://bugs.launchpad.net/evergreen/+bug/1889128[Bug 1889128])
282 * The Angular staff catalog now respects the 'Not a Pickup Library'
283 setting
284 (https://bugs.launchpad.net/evergreen/+bug/1908743[Bug 1908743])
285 * Fix an issue where the staff catalog hold request form was not
286 registering a change of pickup library.
287 (https://bugs.launchpad.net/evergreen/+bug/1911031[Bug 1911031])
288 * In some cases, an upgraded database would fail to honor a request
289 to delete an item tag. This is now fixed.
290 (https://bugs.launchpad.net/evergreen/+bug/1786100[Bug 1786100])
291 * The order of fields in various staff interface record editing
292 forms has been improved.
293 (https://bugs.launchpad.net/evergreen/+bug/1857351[Bug 1857351])
294 * Fix an issue where the Angular MARC editor would sometimes fail
295 to display fields.
296 (https://bugs.launchpad.net/evergreen/+bug/1907115[Bug 1907115])
297 * Fix the retrieve last bib record feature in the Angular staff
298 catalog
299 (https://bugs.launchpad.net/evergreen/+bug/1907286[Bug 1907286])
300 * Improve the placement of the 'Add Materials' button in the Course
301 Material interface
302 (https://bugs.launchpad.net/evergreen/+bug/1907923[Bug 1907923])
303 * Catalog links in the line item manager now link to the Angular
304 staff catalog
305 (https://bugs.launchpad.net/evergreen/+bug/1908420[Bug 1908420])
306 * Fix an issue where MARC Batch Edit's Go button could be disabled
307 during a CSV file upload.
308 (https://bugs.launchpad.net/evergreen/+bug/1910409[Bug 1910409])
309 * Improve the labeling of publication date sort option in the
310 Angular staff catalog
311 (https://bugs.launchpad.net/evergreen/+bug/1908724[Bug 1908724])
312 * Fix sorting of the surveys administration grid.
313 (https://bugs.launchpad.net/evergreen/+bug/1908763[Bug 1908763])
314 * Saving a record created via 'Create New MARC Record' now directs
315 the user to the Angular staff catalog.
316 (https://bugs.launchpad.net/evergreen/+bug/1914630[Bug 1914630])
317 * Fix a couple typos.
318
319 ==== Public Catalog ====
320
321 * Fix an issue where titles could run together when viewing a
322 carousel with a mobile browser.
323 (https://bugs.launchpad.net/evergreen/+bug/1868147[Bug 1868147])
324 * The order that items in a carousel display in is now more
325 predictable. For example, for 'Top Circulated Items' carousels,
326 the order is from most circulated to least circulated.
327 (https://bugs.launchpad.net/evergreen/+bug/1866406[Bug 1866406])
328 * Carousels no longer display deleted items.
329 (https://bugs.launchpad.net/evergreen/+bug/1836254[Bug 1836254])
330 * CGI parameters in the public catalog are now consistently forced
331 to be separated by ampersands rather than semicolons.
332 (https://bugs.launchpad.net/evergreen/+bug/1687545[Bug 1687545]) and
333 (https://bugs.launchpad.net/evergreen/+bug/1914116[Bug 1914116])
334
335 ==== Public Catalog (Bootstrap theme) ====
336
337 * The Bootstrap public catalog now allows patrons to update
338 hold notification preferences.
339 (https://bugs.launchpad.net/evergreen/+bug/1902265[Bug 1902265])
340 * Fix an issue where email and phone number notification information
341 was not saved when placing a hold.
342 (https://bugs.launchpad.net/evergreen/+bug/1903424[Bug 1903424])
343 * Suspending a hold at the time of placement now works in the Bootstrap
344 public catalog.
345 (https://bugs.launchpad.net/evergreen/+bug/1903594[Bug 1903594])
346 * Add the Type filter to the Bootstrap public catalog's Advanced
347 Search page
348 (https://bugs.launchpad.net/evergreen/+bug/1908298[Bug 1908298])
349 * The Bootstrap public catalog now includes the record emailing
350 and printing enhancements added in 3.6.0.
351 (https://bugs.launchpad.net/evergreen/+bug/1895676[Bug 1895676])
352 * The Bootstrap public catalog is now implements course
353 materials search and display.
354 (https://bugs.launchpad.net/evergreen/+bug/1895678[Bug 1895678])
355 * Carousels in the Bootstrap public catalog now link to their titles.
356 (https://bugs.launchpad.net/evergreen/+bug/1908113[Bug 1908113])
357 * Fix an issue with saving list notes in the Bootstrap public catalog.
358 (https://bugs.launchpad.net/evergreen/+bug/1908766[Bug 1908766])
359 * The My Account circulation history display now includes the
360 title and author of loans of precat items.
361 (https://bugs.launchpad.net/evergreen/+bug/1910138[Bug 1910138])
362 * Fix an issue with adding a basket to an existing list.
363 (https://bugs.launchpad.net/evergreen/+bug/1907866[Bug 1907866])
364
365 ==== Administration ====
366
367 * The EDI Webrick installer now works on Ubuntu 18.04
368 (https://bugs.launchpad.net/evergreen/+bug/1901900[Bug 1901900])
369
370 === Acknowledgements ===
371
372 We would like to thank the following individuals who contributed code,
373 testing and documentation patches to the 3.6.1 point release of Evergreen:
374
375 * John Amundson
376 * Zavier Banks
377 * Jason Boyer
378 * Dan Briem
379 * Galen Charlton
380 * Garry Collum
381 * Jeff Davis
382 * Bill Erickson
383 * Ruth Frasur
384 * Blake Graham-Henderson
385 * Rogan Hamby
386 * Elaine Hardy
387 * Angela Kilsdonk
388 * Tiffany Little
389 * Terran McCanna
390 * Michele Morgan
391 * Jane Sandberg
392 * Mike Risher
393 * Mike Rylander
394 * Chris Sharp
395 * Jason Stephenson
396
397 == Evergreen 3.6.1 ==
398
399 This release contains bug fixes improving on Evergreen 3.6.0.
400
401 === Bug Fixes ===
402
403 ==== Administration ====
404
405 * Improves description of an org unit setting
406 (https://bugs.launchpad.net/evergreen/+bug/1325704[Bug 1325704])
407
408 ==== Cataloging ====
409
410 * Fixes the journal title search in the Angular Staff Catalog
411 (https://bugs.launchpad.net/evergreen/+bug/1901038[Bug 1901038])
412
413 ==== Circulation ====
414
415 * The Register Patron form can now set default password according to a patron's
416 phone number when the org setting "Patron: password from phone #" is TRUE
417 (https://bugs.launchpad.net/evergreen/+bug/1900184[Bug 1900184])
418 * Fixes an issue with the hold targeter
419 (https://bugs.launchpad.net/evergreen/+bug/1508208[Bug 1508208])
420 * Fixes an issue that prevents items from circulating when OpenSRF is installed
421 with non-default router names
422 (https://bugs.launchpad.net/evergreen/+bug/1904220[Bug 1904220])
423
424
425 ==== Client ====
426
427 * Fixes an issue that caused a blank screen to appear
428 (https://bugs.launchpad.net/evergreen/+bug/1855737[Bug 1855737])
429
430
431 === Acknowledgements ===
432
433 We would like to thank the following individuals who contributed code,
434 testing and documentation patches to the 3.6.1 point release of Evergreen:
435
436 * Jason Boyer
437 * Dan Briem
438 * Galen Charlton
439 * Garry Collum
440 * Bill Erickson
441 * Jason Etheridge
442 * Katie Greenleaf Martin
443 * Terran McCanna
444 * Mike Rylander
445 * Jane Sandberg
446 * Chris Sharp
447 * Remington Steed
448
449
450 == Evergreen 3.6.0 ==
451
452 === Upgrade notes ===
453
454 This release adds a new OpenSRF service called `open-ils.courses`.
455 While strictly speaking this is an optional service and could be
456 omitted if you are not planning on using the new Course Materials
457 module, it is recommended that the service be run in case future
458 work bakes in an assumption that it will always be present.
459
460 This release also a new OpenSRF service, `open-ils.curbside`, which
461 must be enabled and registered with the public router for the
462 Curbside Pickup feature to function.
463
464 This release also includes a new experimental public catalog skin
465 based on the Bootstrap framework. Instructions for turning it on
466 can be found below.
467
468 This release adds a new Perl module dependency, `Config::General`.
469
470 This release adds two new rows to action_trigger.event_definition,
471 two into action_trigger.hook, and six into action_trigger.environment.
472
473 === New Features ===
474
475 ==== Acquisitions ====
476
477 ===== Angular Acquisitions Search =====
478
479 The acquisitions search interfaces are now written in Angular
480 and provide a new centralized place for searching Line Items,
481 Purchase Orders, Invoices, and Selection Lists in the Acquisitions
482 module of Evergreen. The Acquisitions Search interface can be accessed
483 under Acquisitions -> General Search.
484
485 The search interface has four tabs for line item search, purchase order
486 search, invoices search, and selection list search.  Each tab
487 offers a search form allowing the user to select one or more
488 fields to search on. Each search tab stores a separate default search
489 that the user can update; for example, a user could have their
490 line item search default to showing all on-order line items from
491 a particular provider.
492
493 The grid that displays search results in each tab is filterable.
494
495 The line items and PO search interfaces allow the user to navigate to
496 linked POs, invoices, and so forth, but offers no direct actions. The
497 invoices search tab includes a 'Print Selected Invoices' action,
498 while the selection lists search tab offers actions to create,
499 clone, delete, and merge selection lists.
500
501 The Angular search page contains a link to the legacy Dojo search
502 interface if needed. The Dojo interface will be removed in a future
503 release of Evergreen.
504
505 The Angular search interface offers various usability improvements
506 over the Dojo interface, including:
507
508 * only the search operators that are relevant for a given field
509   are displayed.
510 * search fields that are associated with controlled vocabularies
511   will display drop-downs on the search form.
512 * results are sortable.
513 * the line item and PO state fields have been relabeled to "Status".
514 * greater than and less than are now available as search operators.
515 * publication date searches are more flexible.
516
517 As part of this feature, the stock permissions for the Acquisitions
518 and Acquisitions Administrator profiles have been expanded. In
519 particular, the Acquisitions Administrator profile can now be
520 more readily used to perform normal acquisitions work in addition
521 to configuring the acquisitions module.
522
523 ===== Angular Providers Interface =====
524
525 The interfaces for searching for and managing Acquisitions provider
526 records have been rewritten in Angular. This rewrite includes the
527 following significant changes:
528
529 * The provider search interface is now available directly from the
530   Acquisitions menu, supplementing its longstanding availability from
531   the Acquisitions Administration page.
532 * The search interface is modeled after the patron interface, including
533   a search form that can be hidden or displayed, a provider summary box,
534   and a multi-tabbed interface for managing the provider itself.
535 * The grid displaying search results is filterable and sortable.
536 * The provider display tabs are
537 ** Details, allowing the user to view, and if permitted, edit the base provider record.
538 ** Addresses
539 ** Contacts
540 ** Attribute Definitions
541 ** Holdings Definitions
542 ** EDI
543 ** Invoices, providing an interface for viewing the invoices associated with the provider.
544 ** POs, providing an interface for viewing the purchase orders associated with the provider.
545 * The new interface makes it possible to edit contact addresses.
546 * The base provider record now has an optional primary contact field.
547   Selecting a contact as the primary one is managed on the Contacts
548   tab.  The primary contact, if set, is displayed on the provider
549   summary box.
550
551 Interfaces that used to link to the Dojo provider interface now link
552 to the Angular one instead.
553
554 ==== Administration ====
555
556
557 ===== Changes to Autorenewal Action/Trigger Failure Reasons =====
558
559 Previously the "reason" field in the userdata for an Autorenewal
560 event would contain both the failure code and the description for
561 the failure event as a single string such as
562 "MAX_RENEWALS_REACHED : Circulation has no more renewals remaining."
563
564 Now the "reason" field will only contain the description of the issue
565 (Circulation has ...) while a new "textcode" field will contain the
566 event code (MAX_RENEWALS_REACHED) if administrators still want to
567 display it in template outputs.
568
569
570 ===== EZProxy authentication =====
571
572 Evergreen can now provide CGI authentication for EZProxy.
573 To enable this, you will need to:
574
575 . Add a new User Activity Type to Evergreen for EZProxy CGI authentications.
576 . Add a new Remote Authentication Profile to Evergreen. You will probably want
577 to use `EZProxyCGI` as the name.
578 . Edit the `<Location /api/ezproxy>` stanza in Evergreen's eg_vhost configuration
579 file. In particular, you will need to allow access to from your EZProxy server,
580 fill in the base uri of your EZProxy server, and add a secret to the
581 _OILSRemoteAuthEZProxySecret_ variable.
582 . Restart Apache.
583 . Edit the EZProxy user.txt file.  You will likely want to add a stanza such
584 as the following:
585
586 .Sample user.txt stanza
587 ----
588 ::CGI=http://your-evergreen-catalog.com/api/ezproxy?url=^R
589 ::Ticket
590 MD5 <same secret as in eg_vhost config>
591 Expired; Deny expiredticket.htm
592 /Ticket
593 ----
594
595 When this feature is enabled, users will see an Evergreen-based login screen.
596 You may customize the look and feel of this login screen by editing the relevant
597 template toolkit files.
598
599 ===== Matomo Support =====
600
601 Support for the open source web analytics platform Matomo is now
602 native to Evergreen. Support is on an org unit level so different
603 libraries can have separate or no analytics. Once you setup
604 a Matomo service you will need the URL and site ID. Typically
605 Matomo will give you a block of javascript you can insert into
606 web sites. One line will look like :
607
608 `var u="http://mylibrary.lib/matomo/";`
609
610 The full URL in the double quotes will be your URL.  Another line
611 will look like:
612
613 `_paq.push(['setSiteId', '1']);`
614
615 In this case the number 1 will be your site ID.
616
617 These are set by the Library Settings opac.analytics.matomo_url and
618 opac.analytics.matomo_id respectively.  A new permission,
619 MATOMO_UPDATE_SETTINGS, controls access to these.
620
621 ===== "PatronAPI" authentication =====
622
623 Evergreen now supports the III "PatronAPI" scheme for authenticating
624 patrons and supplying some information about them.
625
626 To enable this, you will need to:
627
628 . Add a new User Activity Type to Evergreen for PatronAPI authentications.
629 . Add a new Remote Authentication Profile to Evergreen. You will probably want
630 to use `PatronAPI` as the name.
631 . Edit the `<Location /api/patronapi>` stanza in Evergreen's eg_vhost configuration
632 file. In particular, you will need to allow access to it from the server(s)
633 wanting to make PatronAPI requests, determine whether to enable the PatronAPI
634 "dump" feature, and specify whether users can be identified by username
635 or barcode.
636 . Restart Apache.
637 . Update the PatronAPI client to use https://your.evergreen.server/api/patronapi
638   as its base URL.
639
640 Example PatronAPI URLs look something like this:
641
642 .PatronAPI URLs
643 ----
644 # test a patron's PIN:
645 https://evergreen.example.org/api/patronapi/USERNAME/PASSWORD/pintest
646
647 # dump some information about the patron. Note that this
648 # does _not_ require the the patron's password be supplied.
649 https://evergreen.example.org/api/patronapi/USERNAME/dump
650 ----
651
652 The responses for the `pintest` and `dump` actions are specified by
653 Template Toolkit templates under (e.g.) `/openils/var/templates/remoteauth`.
654
655
656 ===== Preloaded Audio Icon and Search Format =====
657
658 A new search and icon format called Preloaded Audio now exists
659 that overlaps with the eAudio format.  If you want to exclude
660 the Preloaded Audio format from overlapping with eAudio
661 you can use the following SQL:
662
663 ----
664 UPDATE config.composite_attr_entry_definition SET definition = '{"0":{"_attr":"item_type","_val":"i"},"1":[{"_attr":"item_form","_val":"o"},{"_attr":"item_form","_val":"s"}]}'
665     WHERE coded_value IN (SELECT id FROM config.coded_value_map WHERE code = 'eaudio');
666 ----
667
668 It is also recommended that you reingest your bibliographic records
669 to updated the fixed field indexes. You can accomplish this by running
670 the following query in your database:
671
672 ----
673 SELECT metabib.reingest_record_attributes(source)
674 FROM metabib.record_attr_vector_list WHERE
675 (SELECT id FROM config.coded_value_map WHERE ctype = 'item_form' AND code = 'q') = ANY(vlist)
676 AND (SELECT id FROM config.coded_value_map WHERE ctype = 'item_type' AND code = 'i') = ANY(vlist);
677 ----
678
679
680
681
682
683 ==== API ====
684
685
686
687 ===== Override Label for draw_field_label Patron Edit Fields =====
688
689 Evergreen developers may now specify a label for fields in
690 the patron registration/patron edit form (generated by
691 the draw_field_label macro). By default,
692 draw_field_label uses the label of supplied IDL field class.
693 Now a developer may supply an additional third parameter,
694 label_override, which overrides the default IDL-based label.
695 This would typically be done in the course of customizing
696 the web staff client template `circ/patron/t_edit.tt2`.
697
698
699
700
701 ==== Architecture ====
702
703
704
705
706 ===== New Action/Trigger reactor for 3rd party signaling =====
707
708 This new Action/Trigger reactor module allows an Evergreen administrator to
709 create event definitions that use HTTP (or HTTPS) to contact external services
710 and let them know that something has happened in Evergreen.
711
712 For instance, a discovery layer can be informed when a bib record is updated
713 or when a user's barcode changes.
714
715 ====== Reactor Template Syntax ======
716
717 The new reactor module uses a template to define its behavior.  While the
718 template is processed by Template Toolkit, as with any A/T templates, its
719 output format is new to Evergreen.
720
721 The template should output data that can be parsed by the Config::General Perl
722 module.  See: https://metacpan.org/pod/Config::General
723
724 Top level settings should include the HTTP *method* and the *url*.
725
726 A block called *Headers* can be used to supply arbitrary HTTP headers.
727
728 A block called *Parameters* can be used to append CGI parameters to the URL,
729 most useful for GET form submission.  Repeated parameters are allowed.  If
730 this block is used, the URL should /not/ contain any parameters, use one or
731 the other.
732
733 A HEREDOC called *content* can be used with POST or PUT to send an arbitrary block
734 of content to the remote server.
735
736 If the requested URL requires Basic or Digest authentication, the template can
737 include top level configuration parameters to supply a *user*, *password*, *realm*,
738 and hostname:port *location*.
739
740 A default user agent string of "EvergreenReactor/1.0" is used when sending requests.
741 This can be overridden using the top level *agent* setting.
742
743 Here is an example template that could be used by a definition attached to the
744 *bib.edit* hook:
745
746 [source,conf]
747 ----
748 method   post # Valid values are post, get, put, delete, head
749 url      https://example.com/api/incoming-update
750 agent    MySpecialAgent/0.1
751
752 user     updater
753 password uPd4t3StufF
754 realm    "Secret area"
755 location example.com:443
756
757 <Headers>
758   Accept-Language en
759 </Headers>
760
761 <Parameters>
762   type bib
763   id   [% target.id %]
764 </Parameters>
765
766 content <<MARC
767 [% target.marc %]
768 MARC
769 ----
770
771
772
773
774
775 ===== Documentation Now Uses the Antora Toolchain =====
776
777 The core Evergreen documentation under the `docs/` subdirectory
778 has been changed to use Antora, a documentation site generator
779 for AsciiDoc. The result of this change is the ability to generate
780 documentation for the `docs.evergreen-ils.org` website that is
781 searchable, easier to maintain, and readily installable on a
782 local Evergreen site if desired.
783
784 For instructions on how to build the documentation, consult
785 the file `README.adoc` under the `docs` directory.
786
787
788
789
790 ==== Cataloging ====
791
792
793
794 ===== Manage Authorities Angular Port =====
795
796 The Cataloging -> Manage Authorities interface has been ported to Angular.
797
798 New functionality includes displaying additional authority data, like create
799 and edit dates, etc.  It's also possible to view the list of linked bib
800 records.
801
802
803
804
805 ===== MARC Batch Edit UI Angular Port =====
806
807 The MARC Batch Edit interface has been ported to Angular.
808
809
810
811
812 ===== Preloaded Audio Icon and Search Format =====
813
814 A new search and icon format called Preloaded Audio now exists
815 using the following atttributes: itemtype i, item form q.  This
816 overlaps with the eAudio format.  If you want to exclude
817 preloaded audio from eAudio there is a script in the Administration
818 notes to exclude it.
819
820
821
822
823 ===== Item Status Allows Pasting a List of Barcodes in csv Format =====
824
825 The item status input box will now accept a string of barcodes, separated with commas, as well as a single barcode.
826
827
828 ===== Fix For "Blank" (Empty String) TCN Source =====
829
830 Previously, it was possible for sparsely-populated MARC records to be
831 saved with a TCN Source of '' (the "empty string"), which caused the
832 901 $b subfield to be void of data, causing errors when exporting
833 MARC records to such third-party programs as Zotero.
834
835 A site that has been running without this patch for a long time might want to
836 check how many bib records they have with an empty tcn_source:
837
838 ----
839 SELECT COUNT(*) FROM biblio.record_entry WHERE deleted IS FALSE AND tcn_source = '';
840 ----
841
842 Sites can fix the problem by issuing UPDATE statements to set the 901$b to a value
843 like 'AUTOGEN' or 'Unknown'. They should probably do it per-record, however, to
844 avoid locking the table in a huge commit.
845
846
847 ==== Circulation ====
848
849
850
851 ===== Booking Capture is now in Angular =====
852
853
854 The interface to capture resources for booking
855 reservations has been re-implemented in Angular.
856 Other booking screens, such as Pick Up and
857 Manage Reservations, now include an option to
858 re-print capture slips.
859
860 System administrators can now edit the template
861 for booking capture slips in Administration ->
862 Server administration -> Print templates.
863
864
865
866
867
868 ===== New Fields for AutorenewNotify Event Template =====
869
870
871 Two new fields, `auto_renewal_remaining`, and `total_renewal_remaining` have
872 been added to the AutorenewNotify action/trigger event code.  They will
873 report the number of autorenewals and regular renewals, respectively,
874 remaining on the new circulation if renewed, or on the old circulation
875 if not renewed.  This is provided as a convenience to avoid possibly
876 inaccurate math in the template.  You may access them in the template via
877 the `udata`:
878
879 ----
880 Automatic Renewals Remaining: [% udata.auto_renewal_remaining %]
881 Total Renewals Remaining: [% udata.total_renewal_remaining %]
882 ----
883
884
885
886
887
888 ===== Course Materials Module =====
889
890 This version of Evergreen includes an optional course materials module.
891 Like course reserves modules in other library software, this module
892 makes reserves collections more discoverable and easier to manage.
893 The module also provides similar functionality for library electronic
894 resources and open educational resources, whether they have been
895 cataloged or not.
896
897 To enable the course materials module, go to Administration ->
898 Local Administration -> Library Settings Editor. Find the setting
899 called "Opt Org Unit into the Course Materials Module".  Set it to
900 True for the org units that want to use the module.
901
902 To use the course materials module effectively, staff will need a
903 new permission called _MANAGE_RESERVES_.  By default, circulation
904 administrators will receive this permission.
905
906 Staff members with the _MANAGE_RESERVES_ permission can create
907 courses, attach materials to them, attach users to them, and
908 archive them when they are no longer needed.
909
910 When associating physical materials from the catalog to a
911 course, staff members can choose temporary item attributes.
912 These attributes will last until the course is archived or
913 the item is detached from the course, whichever happens
914 first.
915
916 Staff can also choose to associate electronic resources from
917 the catalog (which must have a transcendent bib source or
918 a located URI).  They can also create a brief bib record
919 to attach to the course from within the course materials
920 module.
921
922 Staff members can attach users to the course.  These users
923 can have either a public role (e.g. instructor) or private
924 roles (e.g. student).  The public roles will be displayed
925 in the OPAC.
926
927
928 If the module is enabled, the OPAC will include a course search
929 and a course browse option.
930
931
932 Libraries may also want to use this module to manage their
933 displays.  Each display can be treated as a course, and staff
934 can attach the items they wish to display to the course along
935 with the temporary attributes (e.g. a shelving location called
936 "On display").  When the display is over, staff members can
937 archive the course.
938
939
940
941
942 ===== Hopeless Holds Interface =====
943
944 A new interface under Local Administration has been added called
945 Hopeless Holds.  Using a new Hopeless Date field on hold requests,
946 this interface gives staff a way to resolve issues with hold
947 requests that may have become unfulfillable or "hopeless".
948
949 The Hopeless Date is set for a given request by the hold targeter
950 whenever the potential items list for the hold is empty, or when
951 all potential items have a copy status that has been designated
952 as Hopeless Prone (a new boolean field on Item Statuses).
953
954
955
956
957
958 ===== In-house use now records workstations =====
959
960 Evergreen now records the workstation along with each
961 in-house use.  Staff can now run reports on which
962 workstation created which in-house use.
963
964
965
966
967 ===== Option to Make Effective Date of Checkin Sticky =====
968
969 Adds a checkbox to the Checkin screen that will make the backdate effective until logout.
970
971
972
973
974 ===== Purge User Preferred Names =====
975
976 The new, user preferred name fields are now set to NULL in the
977 database when a user account is purged via the staff client or using
978 the actor.usr_delete function in the database.
979
980 To clear the preferred name fields from records that have already been
981 purged, run the following SQL update:
982
983 [source,sql]
984 ----
985 UPDATE actor.usr
986 SET pref_prefix = NULL,
987     pref_first_given_name = NULL,
988     pref_second_given_name = NULL,
989     pref_family_name = NULL,
990     pref_suffix = NULL,
991     name_keywords = NULL
992 WHERE usrname ~ ('^' || id || '-PURGED')
993 AND NOT active
994 AND deleted
995 AND (
996   pref_prefix IS NOT NULL OR
997   pref_first_given_name IS NOT NULL OR
998   pref_second_given_name IS NOT NULL OR
999   pref_family_name IS NOT NULL OR
1000   pref_suffix IS NOT NULL OR
1001   name_keywords IS NOT NULL
1002 );
1003 ----
1004
1005
1006
1007
1008 ===== Test Notification Method =====
1009
1010 Patrons and staff may request a test notification for a patron's default email address or SMS
1011 number via the Patron Registration interface in the staff client or the OPAC preferences interface. The OPAC_LOGIN permissions are required to
1012 request a notification. When a notification is sent, it will be sent to either the user's default email or default SMS number, depending on what was requested.
1013
1014 ====== Upgrade Notes ======
1015
1016 This feature adds two new rows to action_trigger.event_definition, two into
1017 action_trigger.hook, and six into action_trigger.environment.
1018
1019
1020
1021 ===== Curbside Pickup =====
1022
1023 The Curbside Pickup feature in Evergreen provides an interface to help
1024 facilitate contact-free pickup of library materials.  It provides a dedicated
1025 interface in the staff client for library staff to track and manage curbside
1026 pickup appointments and materials through the various stages of the process.
1027 Staff can also schedule pickup appointments on behalf of patrons.  This feature
1028 also allows patrons to schedule their own curbside pickup appointments in their
1029 OPAC account, as well as inform the library when they have arrived and are
1030 waiting for their materials.  
1031
1032 This is an extension of the existing holds functionality in Evergreen.  A hold
1033 must be placed for an item to be eligible for curbside pickup.  After an item
1034 has been captured for a hold and is available for pickup from the holds shelf,
1035 a curbside pickup appointment can be scheduled to allow the materials to be
1036 obtained in a contact-free transaction.
1037
1038 It can accommodate several different workflows depending on how the library
1039 decides to implement curbside pickup services.  It can help library staff track and
1040 checkout batches of items to be picked up curbside and help facilitate
1041 communication between library staff and patrons.  It does not prescribe nor require a
1042 specific workflow for curbside pickup.
1043
1044 It can be used alongside regular (i.e. inside the library) hold pickup.  Curbside pickup
1045 can be an option offered patrons in addition to regular pickup or it can
1046 be the primary pickup option depending on the library’s current service plan.
1047
1048 It assumes the library will have a staff member assigned to managing curbside
1049 pickup throughout the day.
1050
1051 ====== Library Settings ======
1052
1053 This feature adds the following library settings:
1054
1055  * `circ.curbside`: whether to enable curbside appointments for
1056    picking up available hold requests. This defaults to off.
1057     
1058  * `circ.curbside.granularity`: interval between appointment slots. This
1059    defaults to 15 minutes.
1060  
1061  * `circ.curbside.max_concurrent`: how many appointments to permit per
1062    time slot.  This defaults to 10.
1063
1064  * `circ.curbside.disable_patron_input`: if turned on, display scheduled
1065     and pending appointments in My Account in the public catalog but
1066     do not give the patron the ability to change them from My Account.
1067     This defaults to false, i.e., allowing patrons to modify appointments
1068     from My Account.
1069
1070 ====== Notifications And Action Triggers ======
1071
1072 There are several new patron notice options related to curbside pickup.
1073
1074 When a patron’s holds are marked as ready for pickup in Evergreen, an email or
1075 text/SMS notification can be sent to let them know that curbside pickup is an
1076 option at their library.  This notice can be used to promote this service and
1077 the default message will prompt patrons to log in to their OPAC account to
1078 schedule an appointment or call the library to schedule an appointment.
1079 Notice message is customizable.  The Trigger Event Definitions for this notice
1080 are called:
1081
1082  * Curbside offer Email notification, triggered by CurbsideSlot reactor on a
1083    definition attached to the hold available hook.
1084  * Curbside offer SMS notification, triggered by CurbsideSlot reactor on a
1085    definition attached to the hold available hook.
1086
1087 If a patron has scheduled a curbside pickup appointment, an email or text/SMS
1088 notification can be sent to confirm the appointment.  It will also prompt them
1089 to log into their account or call the library when they have arrived for their
1090 pickup appointment.  The Trigger Event Definitions for this notice are called:
1091
1092  * Curbside confirmation Email notification.
1093  * Curbside confirmation SMS notification.
1094
1095 Patrons can receive an email with a list of the items they checked out.  To
1096 receive this notice patrons must have an email address associated with their
1097 account and the option for “Email checkout receipts by default?” must be
1098 selected in their account.  This is an existing notice in Evergreen that ties
1099 in to the curbside pickup workflow.
1100
1101 There is another action trigger called “Trigger curbside offer events and
1102 create a placeholder for the patron, where applicable”.  This action trigger
1103 does not send a notice to patrons or staff.  It is a silent action behind the
1104 scenes that initiates the curbside offer email or SMS notification described
1105 above.  
1106
1107 ====== Upgrade Notes ======
1108
1109 This feature adds a new OpenSRF service, `open-ils.curbside`, which must be
1110 enabled and registered with the public router for the feature to function.
1111
1112 This feature adds no new staff permissions.
1113
1114
1115
1116 ===== Allow Use of Adjusted Proximity for Age-protection =====
1117
1118 Introduces a new library setting to consult adjusted proximity for age-protected items at hold placement time.
1119
1120
1121
1122
1123 ==== Client ====
1124
1125
1126
1127 ===== New Angular Staff Catalog Default =====
1128
1129 The experimental Angular staff catalog has been promoted to operate as the
1130 default catalog in the browser staff client.  It will be used for all
1131 catalog entry points, except for the menu entries for the traditional
1132 catalog and any links within the traditional catalog.
1133
1134 ====== Menu Changes ======
1135
1136 * Search -> 'Search The Catalog' now searches to new catalog.
1137 * Cataloging -> 'Search The Catalog' now searches to new catalog.
1138 * Cataloging -> 'Search The Catalog (Traditional)' searches the traditional
1139   TPAC-style catalog.
1140 * Staff client splash page -> 'Search the catalog' inline form uses the
1141   new catalog.
1142
1143
1144
1145
1146
1147 ===== Basket To Bucket Action Now Allows Adding To Shared Buckets =====
1148
1149 The Angular staff catalog's 'Add Basket to Bucket' action now
1150 gives the user the option of adding the contents of the basket
1151 to a shared bucket.
1152
1153
1154 ===== Angular catalog recall/force/part holds =====
1155
1156 The Angular staff catalog now has entry points for placing Recall,
1157 Force, and Part-level holds.
1158
1159 For any item-level hold type, the user now has the option to cycle
1160 between Item, Recall, and Force hold types.  The selected type affects
1161 the full batch of holds.
1162
1163 For title-level holds, the user now has the option to select a part
1164 as the hold target for each record in the list.  Part selection is
1165 optional.
1166
1167
1168 ==== OPAC ====
1169
1170
1171 ===== New Bootstrap-based OPAC =====
1172
1173
1174 This release includes a new experimental OPAC with a cleaner, more modern design.
1175
1176 To enable the new OPAC design, open the `/etc/apache2/eg_vhost.conf` file.
1177
1178 Find the following line:
1179
1180 ----
1181 PerlAddVar OILSWebTemplatePath "/openils/var/templates"
1182 ----
1183
1184 Add the following line directly below it:
1185
1186 ----
1187 PerlAddVar OILSWebTemplatePath "/openils/var/templates-bootstrap"
1188 ----
1189
1190 Be sure that, if you have any local customizations, that they are referenced below
1191 this line.  This way, your customizations will still appear in the new OPAC design
1192 (although they may need to be adjusted to better fit the new style).
1193
1194 You can also turn on the new OPAC for some virtual hosts only, by adding it to the
1195 appropriate virtual host entry.  Be sure to reference the OILSWebTemplatePath for
1196 the `templates-bootstrap` directory before referencing any local customizations
1197 used by that virtual host.
1198
1199 To emphasize, the new OPAC skin is considered experimental for 3.6.x. There
1200 are some discrepancies between its functionality and the functionality
1201 present in the original "TPAC" skin. The Evergreen community aims to
1202 resolve those discrepancies and make the Bootstrap skin become the default
1203 OPAC for the Spring 2021 release (though the original TPAC skin will still
1204 be available). Using the Bootstrap skin in production for 3.6 is at your own risk.
1205
1206
1207
1208
1209 ===== Enhanced Public Catalog Printing and Email =====
1210
1211 Evergreen now provides additional functionality for printing and emailing
1212 bibliographic record and holdings information from the catalog, including
1213 from an individual record or from a list or basket.
1214
1215 After selecting Print or Email, the user will be presented with a preview of
1216 the printout or email, respectively.  From the preview users can chose to view
1217 Brief or Full record information (Full includes holdings information) and how
1218 records should be sorted (Author, Title, Publication Date).  Holdings
1219 information can also be limited to a certain library.
1220
1221 Users can be required to log in to their OPAC account to send an email, or this
1222 feature can be configured to allow sending an email without signing in to the
1223 public catalog. If the option to allow emailing without signing in is enabled
1224 (by turning on the new 'Allow record emailing without login' library setting),
1225 user will be asked to solve an arithmetic CAPTCHA in order to send the email.
1226
1227 ====== Administration ======
1228
1229 Two new interfaces have been added to Local Administration: Event Definition
1230 Groups and Event Definition Group Members.  The Event Definition Groups defines
1231 the various groups for Action Trigger Event Definitions -- currently Print
1232 Record(s) or Email Record(s).  The Event Definition Group Members defines the
1233 options within each group -- currently Brief or Full record information.
1234
1235 These two interfaces expose the infrastructure behind the new print and
1236 email functionality and library staff will not need to make any changes to
1237 these interfaces to use the existing print and email options.  The stock print
1238 and email Action Trigger Event Definitions can be cloned and modified to
1239 provide additional bibliographic format options.  After creating the custom
1240 Event Definition, add it to the appropriate Event Definition Group (Print
1241 Record or Email Record) and the new format will be available in the catalog.
1242
1243
1244
1245
1246
1247 ===== Credit card payments using Stripe now on version 3 (Elements) =====
1248
1249 When Stripe payments are enabled, the public catalog will now
1250 use version 3 of the Stripe client library, as well as its
1251 Elements API for building the credit card form.  For
1252 technical reasons, this more easily lends a site to PCI
1253 compliance.
1254
1255 On the staff side, the credit card option is disabled for
1256 Stripe, as that has not been implemented and in the past
1257 would just give an error.
1258
1259
1260
1261
1262 ===== Improve Access to Library Info in OPAC =====
1263
1264 Adds the library's address, email, phone, and website link to the myopac patron account preferences page.
1265
1266
1267
1268
1269 ==== Reports ====
1270
1271
1272
1273 ===== Combined Aged and Active Circulations Source Naming =====
1274
1275 A recent improvement to aid web client data retrieval
1276 speed resulted in a new reports source that was named
1277 nearly identically to a long-existing one, and both
1278 were appearing in the "Core Sources" section of reports.
1279 The newer source has been renamed for clarity and removed
1280 from the core sources to prevent confusion:
1281
1282  * "Combined Aged and Active Circulations" is now named "Combined Aged and Active Circulations (Slim Version)"
1283    and is removed from the Core Sources.
1284  * "Combined Aged and Active Circulations", which contains more linkages to other data sources, remains in the
1285    Core Sources list.
1286
1287
1288
1289
1290 ===== Reports Subtotals =====
1291
1292 Reports now allow group subtotals and grand totals.  By checking the
1293 new "Calculate grouping subtotals" checkbox under "Output Options",
1294 a new unlabeled row or column is created with the subtotals for each
1295 grouping and an unlabeled grand total row or column.
1296
1297 This takes advantage of PostreSQL's built-in ROLLUP feature.  See the
1298 PostgreSQL documentation for details:
1299
1300 https://www.postgresql.org/docs/9.6/queries-table-expressions.html#QUERIES-GROUPING-SETS
1301
1302 An example of a report that could use this new feature is
1303 one based on the Circulation source with the following fields:
1304
1305  * Circulation -> Checkout / Renewal Library -> Short (Policy) Name (Raw Data)
1306  * Circulation -> Checkout Date/Time (Year)
1307  * Circulation -> Shelving Location -> Name (Raw Data)
1308  * Circulation -> Circ ID (Count Distinct)
1309
1310 Turning on the "Calculate grouping subtotals" checkbox would make
1311 the report show subtotals for each combination of
1312 short name, checkout year, and shelving location name.
1313
1314
1315
1316
1317 ==== SIP ====
1318
1319
1320
1321 ===== Allow Username in Patron ID =====
1322
1323 Evergreen now accepts a patron's username in the SIP2 Patron ID field
1324 (AA) in addition to the barcode.  This modification is useful for
1325 vendors, such as Overdrive, who can accept a user's username.
1326 Additionally, it is easier for a patron to find and remember their
1327 username over their barcode.
1328
1329 The new feature determines if the value in the Patron ID field is a
1330 barcode or username by comparing the field value against the
1331 `opac.barcode_regex` setting for the organizational unit of the logged
1332 in SIP2 account as configured in the oils_sip.xml file.  This is
1333 similar to what the OPAC does when a patron logs in.
1334
1335 This feature requires activation.  To activate, uncomment (or add) the
1336 following line in the oils_sip.xml configuration file and change the
1337 value from 'false' to 'true'.
1338
1339 [source,xml]
1340 ----
1341 <option name='support_patron_username_login' value='true' />
1342 ----
1343
1344
1345
1346 === Acknowledgments ===
1347
1348 The Evergreen project would like to acknowledge the following
1349 organizations that commissioned developments in this release of
1350 Evergreen:
1351
1352 * C/W MARS
1353 * Equinox Open Library Initiative
1354 * Evergreen Community Development Initiative
1355 * Georgia Public Library Service
1356 * Indiana State Library
1357 * Linn-Benton Community College
1358 * MassLNC
1359 * NOBLE
1360 * PaILS
1361 * Treasure Valley Community College
1362
1363 We would also like to thank the following individuals who contributed
1364 code, translations, documentation, patches, and tests to this release of
1365 Evergreen:
1366
1367 * John Amundson
1368 * Nelson Appell
1369 * Zavier Banks
1370 * a. bellenir
1371 * Felicia Beaudry
1372 * Jason Boyer
1373 * Dan Briem
1374 * Chris Burton
1375 * Steven Callender
1376 * Lisa Carlucci
1377 * Galen Charlton
1378 * Garry Collum
1379 * Dawn Dale
1380 * Jeff Davis
1381 * Diane Disbro
1382 * Bill Erickson
1383 * Jason Etheridge
1384 * Lynn Floyd
1385 * Ruth Frasur
1386 * Blake Graham-Henderson
1387 * Rogan Hamby
1388 * Elaine Hardy
1389 * Kyle Huckins
1390 * Angela Kilsdonk
1391 * Owen Leonard
1392 * Troy Leonard
1393 * Shula Link
1394 * Tiffany Little
1395 * Mary Llewellyn
1396 * Terran McCanna
1397 * Gina Monti
1398 * Christine Morgan
1399 * Michele Morgan
1400 * Andrea Buntz Neiman
1401 * Jennifer Pringle
1402 * Mike Risher
1403 * Mike Rylander
1404 * Jane Sandberg
1405 * Dan Scott
1406 * Chris Sharp
1407 * Remington Steed
1408 * Jason Stephenson
1409 * Josh Stompro
1410 * Dan Wells
1411 * Jennifer Weston
1412 * Beth Willis
1413 * John Yorio
1414
1415 We also thank the following organizations whose employees contributed
1416 patches:
1417
1418 * Ann Arbor District Library
1419 * BC Libraries Cooperative
1420 * Bibliomation
1421 * Calvin College
1422 * Catalyte
1423 * C/W MARS
1424 * Equinox Open Library Initiative
1425 * Georgia Public Library Service
1426 * Grand Rapids Public Library
1427 * Greater Clark Hills Regional Library System
1428 * Indiana State Library
1429 * Kenton County Public Library
1430 * King County Library System
1431 * Laurentian University
1432 * Linn-Benton Community College
1433 * MOBIUS
1434 * Niagara Falls Public Library
1435 * NOBLE
1436 * Scenic Regional Library
1437 * Sigio
1438 * Washington County (MO) Public Library
1439 * Westchester Library System
1440 * Zivot Design
1441
1442 We regret any omissions.  If a contributor has been inadvertently
1443 missed, please open a bug at http://bugs.launchpad.net/evergreen/
1444 with a correction.
1445