[open-ils-commits] [GIT] Evergreen ILS branch tags/rel_2_8_0 created. d75295c8f8c9a49a58cc5daacbaf7218fc6fbd61
Evergreen Git
git at git.evergreen-ils.org
Tue Mar 31 10:52:03 EDT 2015
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Evergreen ILS".
The branch, tags/rel_2_8_0 has been created
at d75295c8f8c9a49a58cc5daacbaf7218fc6fbd61 (commit)
- Log -----------------------------------------------------------------
commit d75295c8f8c9a49a58cc5daacbaf7218fc6fbd61
Author: Bill Erickson <berickxx at gmail.com>
Date: Tue Mar 17 11:20:40 2015 -0400
Bumping version numbers, adding Upgrade Script and Changelog
Signed-off-by: Bill Erickson <berickxx at gmail.com>
diff --git a/ChangeLog b/ChangeLog
index 1f72b2c..2c0cd09 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,4501 @@
-Evergreen doesn't keep a GNU-style ChangeLog except in release tarballs.
-Those seeking a change log are encouraged to run 'git log -v', or read
-it online at: http://git.evergreen-ils.org/?p=Evergreen.git;a=log
+commit 2e2105e55b9192a4944a1f8d1215f04a0ddd40b9
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Tue Mar 3 17:38:40 2015 -0500
+
+ Bumping Perl version for 2.8.0
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/perlmods/lib/OpenILS.pm
+
+commit 395036d4a7086b1021ce444f52ef2725ac128a63
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Thu Mar 12 09:15:37 2015 -0400
+
+ Docs: Link optional docs from Apache config
+
+ This commit links to the new optional Apache config docs from the Apache
+ config step in the installation instructions.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+4 0 docs/installation/server_installation.txt
+
+commit 339634e66786983294522abd32fe1e9d8231276b
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Wed Mar 11 17:23:57 2015 -0400
+
+ LP#1413624 Docs: Move Access Handler docs to official docs
+
+ This commit moves the new Access Handler doc file to the official docs
+ folder, adds the file reference to the root.txt, changes the main header
+ text for easier linking, adds the missing block delimiter lines around a
+ code block, and adds a blank line at the end of another doc file to
+ prevent the docs from running together.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+0 139 docs/TechRef/Apache/apache_access_handler.txt
+141 0 docs/admin/apache_access_handler.txt
+1 0 docs/admin/apache_rewrite_tricks.txt
+3 0 docs/root.txt
+ delete mode 100644 docs/TechRef/Apache/apache_access_handler.txt
+ create mode 100644 docs/admin/apache_access_handler.txt
+
+commit 998871453a8df31bb03471580cb5b84b7dd7d9ca
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Wed Jan 21 14:14:00 2015 -0500
+
+ LP#1413621 Docs: Minor changes to Apache Rewrite Tricks
+
+ This commit moves this doc file from TechRef into the official docs
+ area, adds it to the root.txt file, and adds line breaks for easier
+ viewing and editing of the file.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+0 130 docs/TechRef/Apache/rewrite_tricks.txt
+147 0 docs/admin/apache_rewrite_tricks.txt
+2 0 docs/root.txt
+ delete mode 100644 docs/TechRef/Apache/rewrite_tricks.txt
+ create mode 100644 docs/admin/apache_rewrite_tricks.txt
+
+commit 056b3ebbf3e0824b4198fb1857806123497fea77
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date: Wed Jan 21 14:14:00 2015 -0500
+
+ LP#1413621 Docs: Apache Rewrite Tricks
+
+ Because multiple sites have found this kind of thing useful in the past.
+
+ Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+130 0 docs/TechRef/Apache/rewrite_tricks.txt
+ create mode 100644 docs/TechRef/Apache/rewrite_tricks.txt
+
+commit bb5e1261519c0551af1a490291848b020b69e558
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Tue Mar 10 09:00:06 2015 -0400
+
+ Docs: Fix AsciiDoc processing errors
+
+ This commit fixes an AsciiDoc link syntax error, and renames section ids
+ to prevent duplicate names in the preview version of the Web Client
+ docs.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+1 1 docs/TechRef/KidsOPAC.txt
+21 21 docs/circulation/circulation_patron_records_web_client.txt
+
+commit a48d60408422cb6faf7c842f20ed6d861ec4b375
+Author: Yamil Suarez <yamil at yamil.com>
+Date: Fri Mar 6 16:26:02 2015 -0500
+
+ Docs: Eliminate accidental invalid level 5 AsciiDoc headings
+
+ To properly integrate updated receipt template editor documentation
+ we origimally used invalid level 5 AsciiDoc headings. Asciidoc only
+ supports 4 levels of headings
+
+ Signed-off-by: Yamil Suarez <yamil at yamil.com>
+
+5 10 docs/admin/workstation_admin_receipt_template_editor.txt
+
+commit da9f138949ecdd250d287e6f9a4188a195fd1058
+Author: Yamil Suarez <yamil at yamil.com>
+Date: Fri Mar 6 16:03:54 2015 -0500
+
+ Docs: Add authority section and Authority subject heading thesaurus
+
+ Signed-off-by: Yamil Suarez <yamil at yamil.com>
+
+42 0 docs/cataloging/authorities.txt
+2 0 docs/root.txt
+ create mode 100644 docs/cataloging/authorities.txt
+
+commit c01a9b0ca969ff99b60b41ecc08162f637effb6a
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Fri Mar 6 12:22:51 2015 -0500
+
+ Docs: 2.8 feature correction
+
+ This commit corrects a mistake in the new feature documentation for
+ deleting copy locations.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+1 1 docs/admin_initial_setup/borrowing_items.txt
+
+commit 59cd2c03e7a260565d0df8353cc34de8103aac33
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Fri Mar 6 10:46:50 2015 -0500
+
+ Docs: 2.8 feature "Deleted flag for copy locations"
+
+ This commit documents the new 2.8 feature, the ability to delete copy
+ locations. It also updates the screenshot, and adds lines to document
+ other common features of the interface.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+16 4 docs/admin_initial_setup/borrowing_items.txt
+- - docs/media/copy_locations_editor.png
+ create mode 100644 docs/media/copy_locations_editor.png
+
+commit 6da9fdaab984845dbc5924de6047caa674ffe294
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Mar 13 17:23:56 2015 -0400
+
+ LP#1234220 Stamping DB upgrade copy/ratio messages
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+29 0 Open-ILS/src/sql/Pg/upgrade/0915.data.hold_copy_ratio_override.sql
+0 29 Open-ILS/src/sql/Pg/upgrade/XXXX.data.hold_copy_ratio_override.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0915.data.hold_copy_ratio_override.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.hold_copy_ratio_override.sql
+
+commit f02fd0f307d5afdc0051b27bfaf685da224a9b2c
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Mar 6 11:43:43 2015 -0500
+
+ LP#1234220 hold ratio renewal override perms
+
+ New permissions for overriding renewal failure events:
+
+ TOTAL_HOLD_COPY_RATIO_EXCEEDED.override
+ AVAIL_HOLD_COPY_RATIO_EXCEEDED.override
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+5 1 Open-ILS/src/sql/Pg/950.data.seed-values.sql
+29 0 Open-ILS/src/sql/Pg/upgrade/XXXX.data.hold_copy_ratio_override.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.hold_copy_ratio_override.sql
+
+commit 7b92be384301b37a0082e6611ee728acb2493521
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Mar 6 11:04:01 2015 -0500
+
+ LP#1234220 Improve hold/copy ratio renewal messages
+
+ Display friendlier messages in the TPAC and staff client client when a
+ hold/copy ratio rule prevents a renewal.
+
+ This creates top-level ILS events for total/avail hold copy ratios,
+ since that's what best works with the staff client. The TPAC displays a
+ simple "item is needed for a hold" message, whereas the staff client
+ displays the raw event description, which is slightly more descriptive.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+7 0 Open-ILS/src/extras/ils_events.xml
+4 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+13 1 Open-ILS/src/templates/opac/myopac/circs.tt2
+0 2 Open-ILS/src/templates/opac/parts/hold_error_messages.tt2
+4 0 Open-ILS/xul/staff_client/server/circ/util.js
+
+commit b69afbe9a6e7649791bf3614fd6e6e74af08c083
+Author: Ben Shum <bshum at biblio.org>
+Date: Tue Mar 3 18:01:13 2015 -0500
+
+ Forward-port 2.7.3-2.7.4 upgrade script
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+114 0 Open-ILS/src/sql/Pg/version-upgrade/2.7.3-2.7.4-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.7.3-2.7.4-upgrade-db.sql
+
+commit bab547295d1fd77b7db09108af02ac563f4ab1df
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Feb 27 12:14:32 2015 -0500
+
+ 2.8 release notes creation and cleanup
+
+ * Create RELEASE_NOTES_2_8.txt
+ * Clean up RELEASE_NOTE_NEXT
+ * Bump doc header level for security announcement
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+491 0 docs/RELEASE_NOTES_2_8.txt
+0 31 docs/RELEASE_NOTES_NEXT/Acquisitions/acq-dupe-po-detect.txt
+0 139 docs/RELEASE_NOTES_NEXT/Administration/apache_access_handler.txt
+0 10 docs/RELEASE_NOTES_NEXT/Administration/copy_location_deleted_flag.txt
+0 12 docs/RELEASE_NOTES_NEXT/Administration/show-more-details.txt
+0 14 docs/RELEASE_NOTES_NEXT/Cataloging/vandelay-authority-match-sets.txt
+0 7 docs/RELEASE_NOTES_NEXT/Circulation/display_active_date.txt
+0 16 docs/RELEASE_NOTES_NEXT/Circulation/no-change-on-zero-balance-lost-LO.txt
+0 35 docs/RELEASE_NOTES_NEXT/Circulation/patron-message-center.txt
+0 14 docs/RELEASE_NOTES_NEXT/Circulation/void-lost-on-claims-returned.txt
+0 46 docs/RELEASE_NOTES_NEXT/OPAC/discoverability.txt
+0 5 docs/RELEASE_NOTES_NEXT/OPAC/my-lists-link.txt
+0 8 docs/RELEASE_NOTES_NEXT/OPAC/permalink.txt
+0 7 docs/RELEASE_NOTES_NEXT/OPAC/place-another-hold-link.txt
+0 9 docs/RELEASE_NOTES_NEXT/OPAC/remove-bib-cn.txt
+0 6 docs/RELEASE_NOTES_NEXT/OPAC/text-call-number-styling.txt
+0 9 docs/RELEASE_NOTES_NEXT/security-bug-fix.txt
+ create mode 100644 docs/RELEASE_NOTES_2_8.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Acquisitions/acq-dupe-po-detect.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Administration/apache_access_handler.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Administration/copy_location_deleted_flag.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Administration/show-more-details.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Cataloging/vandelay-authority-match-sets.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/display_active_date.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/no-change-on-zero-balance-lost-LO.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/patron-message-center.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/void-lost-on-claims-returned.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/discoverability.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/my-lists-link.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/permalink.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/place-another-hold-link.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/remove-bib-cn.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/text-call-number-styling.txt
+ delete mode 100644 docs/RELEASE_NOTES_NEXT/security-bug-fix.txt
+
+commit c42b46b54aba5f1d5682fd8a5493c8c5a764e77e
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Feb 27 11:45:17 2015 -0500
+
+ Bumping Perl version string for 2.8 series
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/perlmods/lib/OpenILS.pm
+
+commit 2cde189a3629493cce7f046f7905958b7d26b220
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Feb 27 11:44:54 2015 -0500
+
+ 2.8 translation import
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 build/i18n/po/AutoFieldWidget.js/AutoFieldWidget.js.pot
+63 11 build/i18n/po/AutoFieldWidget.js/fi-FI.po
+1 1 build/i18n/po/FlattenerGrid.js/FlattenerGrid.js.pot
+1 1 build/i18n/po/PCrudFilterPane.js/PCrudFilterPane.js.pot
+1 1 build/i18n/po/Searcher.js/Searcher.js.pot
+4 5 build/i18n/po/Searcher.js/fi-FI.po
+1 1 build/i18n/po/TranslatorPopup.js/TranslatorPopup.js.pot
+4 5 build/i18n/po/TranslatorPopup.js/fi-FI.po
+1 1 build/i18n/po/URLVerify.js/URLVerify.js.pot
+114 0 build/i18n/po/URLVerify.js/pt-BR.po
+1 1 build/i18n/po/User.js/User.js.pot
+4 4 build/i18n/po/User.js/fi-FI.po
+1 1 build/i18n/po/XULTermLoader.js/XULTermLoader.js.pot
+5 5 build/i18n/po/XULTermLoader.js/fi-FI.po
+27 9 build/i18n/po/acq.js/acq.js.pot
+16 2 build/i18n/po/acq.js/cs-CZ.po
+82 45 build/i18n/po/acq.js/fi-FI.po
+1 1 build/i18n/po/admin.properties/admin.properties.pot
+6 7 build/i18n/po/admin.properties/fi-FI.po
+3 3 build/i18n/po/auth.properties/ar-AR.po
+1 1 build/i18n/po/auth.properties/auth.properties.pot
+3 3 build/i18n/po/auth.properties/cs-CZ.po
+3 3 build/i18n/po/auth.properties/de-DE.po
+3 3 build/i18n/po/auth.properties/en-CA.po
+3 3 build/i18n/po/auth.properties/en-GB.po
+3 3 build/i18n/po/auth.properties/es-ES.po
+6 7 build/i18n/po/auth.properties/fi-FI.po
+3 3 build/i18n/po/auth.properties/fr-CA.po
+3 3 build/i18n/po/auth.properties/hy-AM.po
+3 3 build/i18n/po/auth.properties/oc-FR.po
+4 4 build/i18n/po/auth.properties/pt-BR.po
+3 3 build/i18n/po/auth.properties/ru-RU.po
+3 3 build/i18n/po/auth.properties/tr-TR.po
+1 1 build/i18n/po/authority.js/authority.js.pot
+4 4 build/i18n/po/authority.js/fi-FI.po
+1 1 build/i18n/po/capture.js/capture.js.pot
+8 8 build/i18n/po/capture.js/fi-FI.po
+1 1 build/i18n/po/cat.properties/cat.properties.pot
+38 106 build/i18n/po/cat.properties/fi-FI.po
+1 1 build/i18n/po/circ.properties/circ.properties.pot
+6 4 build/i18n/po/circ.properties/cs-CZ.po
+6 6 build/i18n/po/circ.properties/de-DE.po
+3 3 build/i18n/po/circ.properties/en-CA.po
+3 3 build/i18n/po/circ.properties/en-GB.po
+3 3 build/i18n/po/circ.properties/es-ES.po
+38 32 build/i18n/po/circ.properties/fi-FI.po
+3 3 build/i18n/po/circ.properties/fr-CA.po
+3 3 build/i18n/po/circ.properties/hy-AM.po
+3 3 build/i18n/po/circ.properties/oc-FR.po
+3 3 build/i18n/po/circ.properties/pt-BR.po
+3 3 build/i18n/po/circ.properties/ru-RU.po
+3 3 build/i18n/po/circ.properties/tr-TR.po
+1 1 build/i18n/po/common.properties/common.properties.pot
+7 23 build/i18n/po/common.properties/fi-FI.po
+3 2 build/i18n/po/conify.dtd/conify.dtd.pot
+4 6 build/i18n/po/conify.dtd/fi-FI.po
+1 1 build/i18n/po/conify.js/conify.js.pot
+6 6 build/i18n/po/conify.js/fi-FI.po
+42 22 build/i18n/po/db.seed/cs-CZ.po
+1172 1116 build/i18n/po/db.seed/db.seed.pot
+2996 4185 build/i18n/po/db.seed/fi-FI.po
+70 94 build/i18n/po/db.seed/fr-CA.po
+5 5 build/i18n/po/db.seed/pt-BR.po
+2063 2059 build/i18n/po/fm_IDL.dtd/cs-CZ.po
+2057 2053 build/i18n/po/fm_IDL.dtd/de-DE.po
+2057 2053 build/i18n/po/fm_IDL.dtd/en-CA.po
+2057 2053 build/i18n/po/fm_IDL.dtd/en-GB.po
+2057 2053 build/i18n/po/fm_IDL.dtd/es-ES.po
+2579 2513 build/i18n/po/fm_IDL.dtd/fi-FI.po
+2603 2552 build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot
+2057 2053 build/i18n/po/fm_IDL.dtd/fr-CA.po
+2057 2053 build/i18n/po/fm_IDL.dtd/hy-AM.po
+2057 2053 build/i18n/po/fm_IDL.dtd/oc-FR.po
+2057 2053 build/i18n/po/fm_IDL.dtd/pt-BR.po
+2057 2053 build/i18n/po/fm_IDL.dtd/ru-RU.po
+2057 2053 build/i18n/po/fm_IDL.dtd/tr-TR.po
+292 282 build/i18n/po/ils_events.xml/fi-FI.po
+97 89 build/i18n/po/ils_events.xml/ils_events.xml.pot
+18 7 build/i18n/po/lang.dtd/cs-CZ.po
+755 796 build/i18n/po/lang.dtd/fi-FI.po
+6 1 build/i18n/po/lang.dtd/lang.dtd.pot
+5 1 build/i18n/po/match_set.js/match_set.js.pot
+30 26 build/i18n/po/offline.properties/fi-FI.po
+1 1 build/i18n/po/offline.properties/offline.properties.pot
+22 17 build/i18n/po/opac.dtd/fi-FI.po
+3 2 build/i18n/po/opac.dtd/opac.dtd.pot
+5 5 build/i18n/po/opac.js/de-DE.po
+8 8 build/i18n/po/opac.js/fi-FI.po
+1 1 build/i18n/po/opac.js/opac.js.pot
+3 3 build/i18n/po/patron.properties/cs-CZ.po
+3 3 build/i18n/po/patron.properties/de-DE.po
+3 3 build/i18n/po/patron.properties/en-CA.po
+3 3 build/i18n/po/patron.properties/en-GB.po
+3 3 build/i18n/po/patron.properties/es-ES.po
+64 60 build/i18n/po/patron.properties/fi-FI.po
+3 3 build/i18n/po/patron.properties/fr-CA.po
+3 3 build/i18n/po/patron.properties/hy-AM.po
+3 3 build/i18n/po/patron.properties/oc-FR.po
+1 1 build/i18n/po/patron.properties/patron.properties.pot
+3 3 build/i18n/po/patron.properties/pt-BR.po
+3 3 build/i18n/po/patron.properties/ru-RU.po
+3 3 build/i18n/po/patron.properties/tr-TR.po
+4 5 build/i18n/po/pickup_and_return.js/fi-FI.po
+1 1 build/i18n/po/pickup_and_return.js/pickup_and_return.js.pot
+4 5 build/i18n/po/pull_list.js/fi-FI.po
+1 1 build/i18n/po/pull_list.js/pull_list.js.pot
+8 8 build/i18n/po/register.js/cs-CZ.po
+58 28 build/i18n/po/register.js/fi-FI.po
+1 1 build/i18n/po/register.js/register.js.pot
+15 13 build/i18n/po/reports.dtd/cs-CZ.po
+77 17 build/i18n/po/reports.dtd/fi-FI.po
+1 1 build/i18n/po/reports.dtd/reports.dtd.pot
+26 17 build/i18n/po/reports.js/fi-FI.po
+1 1 build/i18n/po/reports.js/reports.js.pot
+12 9 build/i18n/po/reservation.js/fi-FI.po
+1 1 build/i18n/po/reservation.js/reservation.js.pot
+26 9 build/i18n/po/selfcheck.js/fi-FI.po
+1 1 build/i18n/po/selfcheck.js/selfcheck.js.pot
+1 1 build/i18n/po/serial.js/serial.js.pot
+19 10 build/i18n/po/serial.properties/fi-FI.po
+1 1 build/i18n/po/serial.properties/serial.properties.pot
+9 9 build/i18n/po/tpac/cs-CZ.po
+3 3 build/i18n/po/tpac/de-DE.po
+3 3 build/i18n/po/tpac/en-CA.po
+3 3 build/i18n/po/tpac/en-GB.po
+3 3 build/i18n/po/tpac/es-ES.po
+1096 4163 build/i18n/po/tpac/fi-FI.po
+418 407 build/i18n/po/tpac/fr-CA.po
+3 3 build/i18n/po/tpac/hy-AM.po
+3 3 build/i18n/po/tpac/oc-FR.po
+3 3 build/i18n/po/tpac/pt-BR.po
+495 195 build/i18n/po/tpac/tpac.pot
+3 3 build/i18n/po/tpac/tr-TR.po
+90 90 build/i18n/po/vandelay.dtd/fi-FI.po
+1 1 build/i18n/po/vandelay.js/vandelay.js.pot
+ create mode 100644 build/i18n/po/URLVerify.js/pt-BR.po
+
+commit 05fd625e59b8b63b99c8890083b3949aedf2786c
+Author: Bill Erickson <berick at esilibrary.com>
+Date: Tue Aug 12 12:03:05 2014 -0400
+
+ LP#1287370: apply filter/offset persistence to the fund search page
+
+ This patch completes the AutoGrid work and applies the
+ filter & offset persistence to the fund search page.
+
+ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Erica Rohlfs <erohlfs at esilibrary.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 0 Open-ILS/src/templates/acq/fund/list.tt2
+46 21 Open-ILS/web/js/dojo/openils/widget/AutoGrid.js
+18 2 Open-ILS/web/js/ui/default/acq/financial/list_funds.js
+
+commit d364097cf97040cc6b15bf52b6e2ca51891faa93
+Author: Adam Bowling <abowling at emeralddata.net>
+Date: Tue Jan 20 16:54:11 2015 -0500
+
+ LP #1406350 Mobile Device Navigation Issue Fix for Shelf Browser
+
+ Currently, when a browser window is narrowed too much, whether
+ in a mobile browser, or on a desktop or laptop machine, the
+ "Previous Page" and "Next Page" navigation links disappear. The
+ only solution that seems to solve this is by removing the
+ "THEAD" element from the shelf browser table.
+
+ This patch removes that tag, adds a new row to imitate a new
+ border as existed before, and modifies the CSS in .../opac/
+ css/style.css.tt2 to address that difference.
+
+ Signed-off-by: Adam Bowling <abowling at emeralddata.net>
+ Signed-off-by: Yamil Suarez <yamil at yamil.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3 1 Open-ILS/src/templates/opac/css/style.css.tt2
+3 2 Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2
+
+commit 86066c494609a05940e03d5e933447f597c74f80
+Author: Ben Shum <bshum at biblio.org>
+Date: Fri Feb 27 10:25:48 2015 -0500
+
+ LP#1426133: Stamping upgrade script for set merge_profile_id_seq
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+24 0 Open-ILS/src/sql/Pg/upgrade/0913.schema.redo_vandelay_merge_profile_sequence.sql
+0 24 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.redo_vandelay_merge_profile_sequence.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0913.schema.redo_vandelay_merge_profile_sequence.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.redo_vandelay_merge_profile_sequence.sql
+
+commit 0ba3e77dc9e406deb348f7bc5149bac273d470e5
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Sat Feb 21 09:50:13 2015 -0500
+
+ lp1373203: Allow users to escape metarecord holds
+
+ Provides a means for users to escape a metarecord hold if they accidentally
+ clicked the Advanced Hold Options link. A Basic Hold Options link will be
+ provided to allow the user to return to a title hold. If the hold starts as a
+ metarecord hold, the basic hold options link won't display since we don't know
+ which bib the patron wants.
+
+ Also fixes an issue where the hold cancel button always returned the user to
+ the previous screen. We will instead utilize the existing hold_source_page
+ parameter to identify the return page.
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+10 3 Open-ILS/src/templates/opac/parts/place_hold.tt2
+1 1 Open-ILS/src/templates/opac/parts/place_hold_result.tt2
+
+commit 0af2c2526ca73ea8e50acd647f483018c2731d9b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Feb 20 11:59:23 2015 -0500
+
+ LP#1402797 Open item status in a new tab
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+commit 6de17d3c74b274c96e077538bf0af4890ce9b679
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Feb 20 10:59:17 2015 -0500
+
+ LP#1402797 Allow (and use) a default cancel cause for holds by passing around a scalar instead of an object
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/share/t_cancel_hold_dialog.tt2
+1 1 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+
+commit 988cfd0941bbb2582c5796fbf1d46150f177b99b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Feb 19 15:54:38 2015 -0500
+
+ LP#1402797 Do not allow workstations as org units that cannot have user
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/admin/workstation/t_splash.tt2
+2 0 Open-ILS/web/js/ui/default/staff/admin/workstation/app.js
+
+commit d0b04cb7d863129907adb0b00df45cb24f5bb304
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 17 17:14:23 2015 -0500
+
+ LP#1402797 Test value directly, and invert test for the a-disabled test
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/share/t_hold_edit_pickup_lib.tt2
+1 1 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+4 4 Open-ILS/web/js/ui/default/staff/services/org.js
+
+commit 8b54b723dadf87b2ca058499bf1a8d832c9fa70b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 17 17:13:32 2015 -0500
+
+ LP#1402797 Move aDisabled from patron/app to services/ui so it can be used everywhere
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+0 25 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+28 3 Open-ILS/web/js/ui/default/staff/services/ui.js
+
+commit 4829da8c5ad114f38295044efb45cf51a4ab9ab3
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 17:05:29 2015 -0500
+
+ LP#1402797 Attempt to implement disabling tests for orgs in the magic dropdown
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/share/t_hold_edit_pickup_lib.tt2
+2 1 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+16 0 Open-ILS/web/js/ui/default/staff/services/org.js
+7 2 Open-ILS/web/js/ui/default/staff/services/ui.js
+
+commit 6924c6dc8f0057d561113e83973146559b3bf80b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 17 16:25:30 2015 -0500
+
+ LP#1402797 clean up action rows and styling
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+7 12 Open-ILS/src/templates/staff/cat/share/t_marcedit.tt2
+7 6 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit 68c50a6d1c2d6e5efb6c3548a10851bb6cefe58e
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 17 13:30:57 2015 -0500
+
+ LP#1402797 Add (stub) fast item add, and (working) bib source selection
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+37 0 Open-ILS/src/templates/staff/cat/share/t_marcedit.tt2
+5 1 Open-ILS/src/templates/staff/css/cat.css.tt2
+36 17 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+ create mode 100644 Open-ILS/src/templates/staff/cat/share/t_marcedit.tt2
+
+commit 41eb6d1b678aa5e6724ca1a80675b432e0b52a03
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 16:52:59 2015 -0500
+
+ LP#1402797 Mangle the 005 when saving, and support any record_entry type
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+42 6 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit 591d4092dfd1bb8c343413af5f9ed9a3aed43f07
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 16:12:24 2015 -0500
+
+ LP#1402797 handle up/down arrow (navigate) and ctrl + up/down (duplicate field)
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+113 4 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit 75b7a3b3d658376d2e4f1125a2e24617d8dd9479
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 16:11:54 2015 -0500
+
+ LP#1402797 canonicalize field.postion after inserting or removing fields
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+9 6 Open-ILS/web/js/ui/default/staff/marcrecord.js
+
+commit 5616ce84394fb142545fe92fb1a9407ca97a7d2c
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 12:08:40 2015 -0500
+
+ LP#1402797 insert 00[678], building 008 from record data
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+59 3 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+82 29 Open-ILS/web/js/ui/default/staff/marcrecord.js
+
+commit a9a3c4338e0e941529e424a57b0a4ba78aaedcf5
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 15 20:06:50 2015 -0500
+
+ LP#1402797 Improve styling; marcrecord bug fixes; implement field/subfield insert and remove
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+16 0 Open-ILS/src/templates/staff/css/cat.css.tt2
+169 12 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+42 9 Open-ILS/web/js/ui/default/staff/marcrecord.js
+
+commit 3c1a03e5fc3a2480041e52399892e4abe2efd6a5
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Feb 13 18:13:44 2015 -0500
+
+ LP#1402797 Start styling marc editor via css
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/base.tt2
+120 0 Open-ILS/src/templates/staff/css/cat.css.tt2
+14 10 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+ create mode 100644 Open-ILS/src/templates/staff/css/cat.css.tt2
+
+commit 96efbaef736cff91829ca196c2eb19cfe8c3682a
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Feb 13 13:17:32 2015 -0500
+
+ LP#1402797 Code layout cleanup
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+47 7 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit d69daf1e7ac4bd41c186224fcf66a180fb088524
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 11 19:47:59 2015 -0500
+
+ LP#1402797 Should prompt when there is unsaved data, but does not. More to do...
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+13 4 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit fd2b7b48a17613bbdfd3de240e4fd6bc54dc6e37
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 11 19:23:32 2015 -0500
+
+ LP#1402797 Global undo/redo stack stack
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+167 37 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+18 10 Open-ILS/web/js/ui/default/staff/marcrecord.js
+
+commit 1b16bcf78e898166fe5603353e9a27c22afae428
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 11 08:49:12 2015 -0500
+
+ LP#1402797 Make grid action context menu safe for multiple grids per page
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+16 20 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit d1e3c82aa48a7aef4663d0ed1139535198fee225
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 10 12:24:14 2015 -0500
+
+ LP#1402797 Allow forgive-fines on forced checkout
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+16 6 Open-ILS/src/templates/staff/circ/share/t_circ_exists_dialog.tt2
+9 5 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit b787314e7a5ddf07c73903bc2ce2da3c98c4c17d
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 10 10:48:11 2015 -0500
+
+ LP#1402797 If no row is currently selected on right-click, select the clicked row
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 0 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit c678719f0b404091cf17f533714305a1d90b36a3
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 17:19:34 2015 -0500
+
+ LP#1402797 Make grid context menu safer and more state-aware
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+19 8 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit 520abb8d737aa0f9816f83ee0cc8c04e43553c45
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 17:09:35 2015 -0500
+
+ LP#1402797 Typo
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/share/t_circ_exists_dialog.tt2
+
+commit cc0436de3ceffc3f265a5ffc8dcd2a5bd62a3fdb
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 16:58:00 2015 -0500
+
+ LP#1402797 use ng-options so that the default option works
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+5 6 Open-ILS/src/templates/staff/circ/share/t_new_message_dialog.tt2
+
+commit 79893c1d9b43744c3e8a8ae99445753e9ccbc940
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 16:42:47 2015 -0500
+
+ LP#1402797 Attach the context menu to the body for proper coordinate mapping
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit c03bbc226c2f5346f459f5513f025fb749a63f88
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 16:33:47 2015 -0500
+
+ LP#1402797 Grid row context menu from Actions dropdown
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/share/t_autogrid.tt2
+49 7 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit aa0e52b253d866e3b4400ba79eca64d1fc1403da
+Author: Jason Etheridge <jason at esilibrary.com>
+Date: Mon Feb 9 15:44:10 2015 -0500
+
+ LP#1402797 add a Retrieve All These Patrons button
+
+ in the Item Status -> Circ History List
+
+ Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+10 0 Open-ILS/src/templates/staff/cat/item/t_circ_list_pane.tt2
+17 2 Open-ILS/web/js/ui/default/staff/cat/item/app.js
+
+commit cb44f54f562f3077249e0206da2a96af3f171810
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 14:54:53 2015 -0500
+
+ LP#1402797 Add user-related fields to some hold interfaces
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+5 1 Open-ILS/src/templates/staff/cat/catalog/t_holds.tt2
+4 0 Open-ILS/src/templates/staff/circ/holds/t_pull_list.tt2
+2 0 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+
+commit 5eaa585a6371537124988026a8332ae406eead74
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 13:24:11 2015 -0500
+
+ LP#1402797 Add missing columns to patron search result grid
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/circ/patron/t_search_results.tt2
+
+commit 444eb1599fe6fd9bd9666a29d4802a7dbe598411
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 13:06:10 2015 -0500
+
+ LP#1402797 Remove Uncancel Hold action where not useful
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+0 2 Open-ILS/src/templates/staff/cat/catalog/t_holds.tt2
+0 2 Open-ILS/src/templates/staff/circ/holds/t_pull_list.tt2
+
+commit eda33b0387c30e41378741d0e696bb593630364a
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 12:51:01 2015 -0500
+
+ LP#1402797 Hide cancel/uncancel as appropriate
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+8 0 Open-ILS/web/js/ui/default/staff/circ/patron/holds.js
+
+commit 50ac8524e2fd5e326f3a942cc672425a088aea6d
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 9 12:50:44 2015 -0500
+
+ LP#1402797 Teach the autogrid how to hide actions
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/share/t_autogrid.tt2
+10 0 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit ec079a18611e8ccbea55bbb79dced247415e7a9b
+Author: Jason Etheridge <jason at esilibrary.com>
+Date: Fri Feb 6 17:25:10 2015 -0500
+
+ LP#1402797 remove Group Actions from Group Member Details
+
+ place "Move Another Patron To This Group" under Actions
+
+ Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 4 Open-ILS/src/templates/staff/circ/patron/t_group.tt2
+
+commit d8c3b3e30c8a3c34088e443b096bb2362e4f35ce
+Author: Jason Etheridge <jason at esilibrary.com>
+Date: Fri Feb 6 16:33:51 2015 -0500
+
+ LP#1402797 change Retrieve Selected Patron
+
+ to Retrieve Selected Patrons for Other -> Group Member Details interface
+
+ Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/patron/t_group.tt2
+10 6 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit c62601137eceaeca988cf2c0da24157af076e788
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Feb 5 16:21:20 2015 -0500
+
+ LP#1402797 Context menu infrastructure
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+97 57 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit 1c9b48f215c582c260d0d3b838cc86cf872dcecc
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 4 22:46:20 2015 -0500
+
+ LP#1402797 Initial MARC editor -- load, edit content, save, see the Breaker version
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/cat/catalog/index.tt2
+6 0 Open-ILS/src/templates/staff/cat/catalog/t_catalog.tt2
+1 1 Open-ILS/web/js/ui/default/staff/cat/catalog/app.js
+214 0 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+2 2 Open-ILS/web/js/ui/default/staff/marcrecord.js
+ create mode 100644 Open-ILS/web/js/ui/default/staff/cat/services/marcedit.js
+
+commit c0ae713a572bb89d57c72645d81a8ab8aaf75d95
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 17:07:24 2015 -0500
+
+ LP#1402797 Use jquery xml parser, and appendChild()
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 3 Open-ILS/web/js/ui/default/staff/marcrecord.js
+
+commit a89ae52d90e3598bca4e35fed896298c528f334c
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 16:50:28 2015 -0500
+
+ LP#1402797 Initial commit and sourcing of the jquery-ified marcrecord.js module
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/base_js.tt2
+1 0 Open-ILS/src/templates/staff/cat/catalog/index.tt2
+2270 0 Open-ILS/web/js/ui/default/staff/marcrecord.js
+ create mode 100644 Open-ILS/web/js/ui/default/staff/marcrecord.js
+
+commit 2df05bef0da32c34d1b6f7e79fe7b8c8a4184ed5
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 14:55:17 2015 -0500
+
+ LP#1402797 Remove DOB valid test for now; Change alert valid test (expressions must be simple)
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 Open-ILS/src/templates/staff/circ/patron/t_summary.tt2
+
+commit e659af829ee95020bcb02eccf93811cea9d708f2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 13:43:48 2015 -0500
+
+ LP#1402797 Add Item Status to the circ menu
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+6 0 Open-ILS/src/templates/staff/navbar.tt2
+
+commit 18c1e4c59b4a5379b8e896eedfd5be021079fc34
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 13:20:55 2015 -0500
+
+ LP#1402797 Make the save box smaller to help avoid overlapping the input form
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/web/css/skin/default/register.css
+
+commit 7cb6a97ba64916c37c9ae036dbdb4cb99bce5d41
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 13:05:56 2015 -0500
+
+ LP#1402797 Add DOB and address validity styling
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 3 Open-ILS/src/templates/staff/circ/patron/t_summary.tt2
+
+commit cd5de415d4e9124b8c8e38814e34b933ac9c54d9
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 12:31:46 2015 -0500
+
+ LP#1402797 Add DOB to patron summary
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+4 0 Open-ILS/src/templates/staff/circ/patron/t_summary.tt2
+
+commit 757c6c6c4f11efb499dc2c294eeef409523f5e77
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 12:06:04 2015 -0500
+
+ LP#1402797 Profile Group no longer causes second search to fail, but it does not yet propagate
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+17 13 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 3e001d054b60d3082b03931f25905f221bc949f9
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 10:15:10 2015 -0500
+
+ LP#1402797 Add "forget" mode for grid limit; Use in hold clearing mode
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/web/js/ui/default/staff/circ/holds/app.js
+2 2 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit aafdbdfd4e3ab8f7c41a6a3e1cf7f3a399facecc
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 2 10:14:36 2015 -0500
+
+ LP#1402797 Pass the top-level class so that the proper tooltip can be generated
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+
+commit f17ec353a236ae0880defc0ca4cd0625bd2246aa
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 16:07:10 2015 -0500
+
+ LP#1402797 Focus the Print button
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/share/t_transit_dialog.tt2
+
+commit 51c1061a6271bd746732760ce1eb2162666049dc
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 15:55:39 2015 -0500
+
+ LP#1402797 Make Strict Barcode checkbox sticky upon actual use
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+4 0 Open-ILS/web/js/ui/default/staff/circ/checkin/app.js
+4 0 Open-ILS/web/js/ui/default/staff/circ/patron/checkout.js
+3 0 Open-ILS/web/js/ui/default/staff/circ/renew/app.js
+
+commit 54c3f600fc98bfd1a703e4ab92a139322c158f59
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 15:32:53 2015 -0500
+
+ LP#1402797 Pre-force tab change. There have been reports of the tab not changing on automatic redirect.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit b640e16f63bb7cc93696373af9b48c0e1ae3139b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 15:06:05 2015 -0500
+
+ LP#1402797 Add Cancel Cause column to hold grid and flesh that object
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+3 0 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+
+commit 30f4c7b5032885c622eaf7719a50b2541e6556b7
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 14:46:00 2015 -0500
+
+ LP#1402797 Default to staff-forced cancel cause
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+
+commit a171d5984e3b05ad9642188dea3eaff7727f733d
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sun Feb 1 14:12:45 2015 -0500
+
+ LP#1402797 Add Circulation Modifier to the column list (must add manually, as it is a link-type field)
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 0 Open-ILS/src/templates/staff/circ/patron/t_items_out.tt2
+
+commit 567982c3b7a03d4a8ffed692b4032d7dfc720b95
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Sat Jan 31 14:51:21 2015 -0500
+
+ LP#1402797 Make warnings more prominent, as in the XUL client
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+30 32 Open-ILS/src/templates/staff/circ/checkin/t_checkin.tt2
+
+commit a6b1295c0a505fcc9b6c68acbb441531b8c4f2db
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 17:33:08 2015 -0500
+
+ LP#1402797 Style search and clear buttons like action buttons to differentiate from text boxes
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 Open-ILS/src/templates/staff/circ/patron/t_search.tt2
+
+commit a304398ea54448ac5c1a5419776d65b3fe9a8bb2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 17:16:09 2015 -0500
+
+ LP#1402797 Protect against chrome autofill as best we can in Verfiy Credentials
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 3 Open-ILS/src/templates/staff/circ/patron/t_credentials.tt2
+5 1 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 9e09624986a8ede16d8591b066f215fef6de2ec9
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 16:56:56 2015 -0500
+
+ LP#1402797 Where possible, handle all circ events, not just the first one in the stack
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+7 5 Open-ILS/src/templates/staff/circ/share/t_event_override_dialog.tt2
+83 69 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit 7081631586ae6ad3df5e62a5e151cfdf15130fc5
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 15:47:53 2015 -0500
+
+ LP#1402797 Change Thaw Date column label to Activation Date
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+5 5 Open-ILS/examples/fm_IDL.xml
+
+commit d9cce1c07e2a46afbe4ea3b9ddeb233efb9a047c
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 15:38:27 2015 -0500
+
+ LP#1402797 Fixed typo stopping patron search expand/collapse stickiness
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit b3f9abee16e07d87a78dbd3850477697030f03e6
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 14:17:45 2015 -0500
+
+ LP#1402797 Renew instead of in/out when the item is already checked out to the user
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 1 Open-ILS/src/templates/staff/circ/share/t_circ_exists_dialog.tt2
+5 1 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit cde17e137d1084475fc1a5756348dc49bc47624b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 13:47:18 2015 -0500
+
+ LP#1402797 Enter sumbits the prompt dialog
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/share/t_prompt_dialog.tt2
+
+commit bdb574f5e4dd7244bbc27aa6fee11dee240d79c8
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 13:33:10 2015 -0500
+
+ LP#1402797 Just hide the statusbar by default. It gets in the way.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/statusbar.tt2
+
+commit 72830baa57aa4e6a81b5b96a545fa95b661b3352
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 13:05:26 2015 -0500
+
+ LP#1402797 Be explicit about which direction users are moving between groups, and provide an informational message when none are selected but should be
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 2 Open-ILS/src/templates/staff/circ/patron/t_move_to_group_dialog.tt2
+8 7 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 4ccbf980e1f2eadf9f99e015e7ac3d4765d046f2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 11:43:46 2015 -0500
+
+ LP#1402797 Hold Shefl: Use max_chunk_size to pass updates in a timely fashion; Notify on the correct array to allow paging back to work
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+8 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+4 3 Open-ILS/web/js/ui/default/staff/circ/holds/app.js
+
+commit afa3b5f9a08bb0fa8178bae4f0f3396f98d72d98
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Jan 27 18:40:18 2015 -0500
+
+ LP#1402797 Respect ui.staff.require_initials.patron_standing_penalty OU setting
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 Open-ILS/src/templates/staff/circ/share/t_new_message_dialog.tt2
+14 1 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit ca7710651c2d89078c961804db76a464c8b33cb6
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Jan 27 12:33:13 2015 -0500
+
+ LP#1402797 Require, and use, initials on penalty creation
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+10 2 Open-ILS/src/templates/staff/circ/share/t_new_message_dialog.tt2
+1 1 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit b149ca10bf198aa3fd00546e3f43a9a8b25a9138
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Mon Jan 26 22:30:03 2015 +0000
+
+ LP#1402797 add "Delete Selected Records From Catalog" action to record buckets
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+6 0 Open-ILS/src/templates/staff/cat/bucket/record/index.tt2
+19 0 Open-ILS/src/templates/staff/cat/bucket/record/t_records_not_deleted.tt2
+3 0 Open-ILS/src/templates/staff/cat/bucket/record/t_view.tt2
+56 2 Open-ILS/web/js/ui/default/staff/cat/bucket/record/app.js
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/record/t_records_not_deleted.tt2
+
+commit 91e08b415b5d19aaac56c2ba0fea427654cbf346
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Mon Jan 26 20:37:12 2015 +0000
+
+ LP#1402797 catch and allow overriding of COPY_DELETE_WARNING and TITLE_LAST_COPY
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+4 0 Open-ILS/src/templates/staff/cat/bucket/copy/index.tt2
+18 1 Open-ILS/web/js/ui/default/staff/cat/bucket/copy/app.js
+
+commit ad7e1b91f8c433dd737da404d8ba1f24183ac32b
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Mon Jan 26 19:54:41 2015 +0000
+
+ LP#1402797 make it "delete selected" rather than "delete all"
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/cat/bucket/copy/index.tt2
+1 1 Open-ILS/src/templates/staff/cat/bucket/copy/t_view.tt2
+3 3 Open-ILS/web/js/ui/default/staff/cat/bucket/copy/app.js
+
+commit 9a0705241adb554fd33788056b6395ced99b5144
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Jan 19 21:48:10 2015 -0500
+
+ LP#1402797 Implement "set bottom view as default"
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 0 Open-ILS/src/templates/staff/cat/catalog/t_catalog.tt2
+20 1 Open-ILS/web/js/ui/default/staff/cat/catalog/app.js
+
+commit 17b0f48cf1ec49049bdb6762448040c967e235bf
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Jan 19 17:22:20 2015 -0500
+
+ LP#1402797 Use target="_self" to force a top-level page load
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+1 1 Open-ILS/src/templates/staff/circ/patron/t_items_out.tt2
+1 1 Open-ILS/src/templates/staff/circ/patron/t_xact_details.tt2
+
+commit 06e505f2fee20e1b99c5087368a6f5c03022c1f2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Jan 19 17:15:53 2015 -0500
+
+ LP#1402797 Use the staff-wrapped catalog when jumping to a bib record
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/circ/patron/t_checkout.tt2
+1 1 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+1 1 Open-ILS/src/templates/staff/circ/patron/t_items_out.tt2
+1 1 Open-ILS/src/templates/staff/circ/patron/t_xact_details.tt2
+1 1 Open-ILS/src/templates/staff/circ/renew/t_renew.tt2
+
+commit 8fe98678d6e34e7b415148bb6fd5494d01a9bf6d
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Jan 19 17:05:12 2015 -0500
+
+ LP#1402797 For any grid with a persistKey, store the last selected row count as a localStorage value
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+14 2 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit 4cec7e69222e96c390fdb393be4a88793fd73605
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Jan 19 15:17:37 2015 -0500
+
+ LP#1402797 Add record summary bar to the catalog display, and hide Actions for this Record until usable
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+13 9 Open-ILS/src/templates/staff/cat/catalog/t_catalog.tt2
+
+commit 0ad7e3945d90cf0ab0a919e82ae49e96d477467e
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Fri Jan 16 22:12:01 2015 +0000
+
+ LP#1402797 implement "delete all from catalog" for copy buckets
+
+ TODO: at present, this is pretty optimistic
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+6 0 Open-ILS/src/templates/staff/cat/bucket/copy/index.tt2
+2 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_view.tt2
+38 2 Open-ILS/web/js/ui/default/staff/cat/bucket/copy/app.js
+
+commit 258b8e00578cd93fc7a4f9d5555f8167f96acd7c
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Jan 15 22:12:49 2015 +0000
+
+ LP#1402797 webstaff: add basic copy bucket management functionality
+
+ This adds an interface for managing copy buckets, including
+ adding and removing them, adding items to a pending list and to
+ copy buckets by barcode, and removing items from a bucket.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+57 0 Open-ILS/src/templates/staff/cat/bucket/copy/index.tt2
+35 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_create.tt2
+16 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_delete.tt2
+34 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_edit.tt2
+16 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_info.tt2
+27 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_selector.tt2
+20 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_grid_menu.tt2
+25 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_load_shared.tt2
+52 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_pending.tt2
+33 0 Open-ILS/src/templates/staff/cat/bucket/copy/t_view.tt2
+6 0 Open-ILS/src/templates/staff/navbar.tt2
+4 0 Open-ILS/src/templates/staff/t_splash.tt2
+453 0 Open-ILS/web/js/ui/default/staff/cat/bucket/copy/app.js
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/index.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_create.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_delete.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_edit.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_info.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_bucket_selector.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_grid_menu.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_load_shared.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_pending.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/bucket/copy/t_view.tt2
+ create mode 100644 Open-ILS/web/js/ui/default/staff/cat/bucket/copy/app.js
+
+commit 191c1426e8ac03cf00b02e995be51b32e313a665
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Jan 15 21:52:00 2015 +0000
+
+ LP#1402797 make clearing the record bucket pending list action functional
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/cat/bucket/record/t_pending.tt2
+1 0 Open-ILS/web/js/ui/default/staff/cat/bucket/record/app.js
+
+commit 46c3f0be689d3aad8c42b8bd68b6b3fd17d517d9
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Jan 15 16:16:03 2015 +0000
+
+ LP#1402797 implement Show All in Catalog action for record buckets
+
+ Note that this will typically require the brower's pop-up
+ blocker to be disabled for the webstaff site.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+3 0 Open-ILS/src/templates/staff/cat/bucket/record/t_view.tt2
+16 2 Open-ILS/web/js/ui/default/staff/cat/bucket/record/app.js
+
+commit e7c26bb5e792d8004064f69288743abd9cc556d9
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Jan 15 15:01:02 2015 +0000
+
+ LP#1402797 use staff search for record bucket queries
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/web/js/ui/default/staff/cat/bucket/record/app.js
+
+commit 4025380f9e8121364d6661d75a6c229272c431a2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Jan 15 09:11:26 2015 -0500
+
+ LP#1402797 Improve styling of retrieve-by pages
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+6 0 Open-ILS/src/templates/staff/cat/catalog/t_retrieve_by_id.tt2
+6 0 Open-ILS/src/templates/staff/cat/catalog/t_retrieve_by_tcn.tt2
+
+commit c24efb21fc8ffadba2154a90c05c6cffdc737a59
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Jan 14 17:20:23 2015 -0500
+
+ LP#1402797 Implement retrieve record by id and tcn
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+22 0 Open-ILS/src/templates/staff/cat/catalog/t_retrieve_by_id.tt2
+25 0 Open-ILS/src/templates/staff/cat/catalog/t_retrieve_by_tcn.tt2
+13 0 Open-ILS/src/templates/staff/navbar.tt2
+74 0 Open-ILS/web/js/ui/default/staff/cat/catalog/app.js
+ create mode 100644 Open-ILS/src/templates/staff/cat/catalog/t_retrieve_by_id.tt2
+ create mode 100644 Open-ILS/src/templates/staff/cat/catalog/t_retrieve_by_tcn.tt2
+
+commit 3b87bd33ce8eeae7ea75d37cfe695839e7778967
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Jan 14 15:27:15 2015 -0500
+
+ LP#1402797 Use egCore.env.basePath to construct the URL for last record
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 2 Open-ILS/web/js/ui/default/staff/services/navbar.js
+
+commit 601f011a113d14faaeac7d0f33201c61fc7348ae
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Jan 14 15:05:14 2015 -0500
+
+ LP#1402797 Implement "Retrieve Last Bib Record" using localStorage record cache
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+6 0 Open-ILS/src/templates/staff/navbar.tt2
+9 0 Open-ILS/web/js/ui/default/staff/services/navbar.js
+
+commit 71d31a63ab15580192a52b29d2a35aadfa8235e2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Jan 14 14:15:25 2015 -0500
+
+ LP#1402797 Save the record we land on from within the staff client as the "last record retrieved"
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+5 0 Open-ILS/web/js/ui/default/staff/cat/catalog/app.js
+
+commit 46b0f9c1a340d83b88fd6c49de2aad1a079c4c0d
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Wed Feb 18 11:34:53 2015 -0500
+
+ LP#957466: A simpler version of set_marc_905u.
+
+ This version only adds a 905$u if none already exist in the document. It
+ does so by creating a new 905 tag with subfield u. It does not add on
+ to any possibly existing 905 tag that does not have a subfield u.
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+13 32 Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+
+commit de9179216d01b2b3a7855846da2cfa00671863d6
+Author: Liam Whalen <whalen.ld at gmail.com>
+Date: Sat Feb 14 00:25:05 2015 -0800
+
+ LP#1282286 Tab is NULL error
+
+ When editing a MARC record in Vandelay or MFHD holdings in a popup XUL
+ WIndow, a tab is NULL error is presented to the user.
+
+ This happens because an undefined variable is being used when it should
+ not be. This code adds a check for that variable to ensure it exists
+ before using it. The variable used only matters in cases where tabs are
+ present, which is not the case with pop up MARC edit windows, so
+ ignoring the variable in these cases is fine.
+
+ Signed-off-by: Liam Whalen <liam.whalen at bc.libraries.coop>
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+7 3 Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+commit 4a1c335a4d229e66244dc0ce8a564dbe80be1049
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Mon Feb 23 21:03:41 2015 +0000
+
+ LP#1423813: adjust some queries to account for deleted copy locations
+
+ This patch adjusts some queries so that if a copy location
+ is deleted, any undeleted items that are attached to it
+ are considered deleted for the purpose of generating
+ OPAC item lists and seeing if items are potentially available
+ to fill hold request.
+
+ It should be noted that if a copy location is marked as
+ logically deleted, there shouldn't be any undeleted
+ copies associated with it. However, as this condition is not
+ presently enforced by a database contraint, adding additional
+ checks on acpl.deleted provides some additional defense.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4 1 Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+20 4 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+
+commit d93a8af77ac671a593e48224ac5682a0e20d62c2
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Fri Feb 20 09:03:13 2015 -0500
+
+ LP1423922: Quick staff option to place another hold
+
+ When a hold is successful in the staff client, provide a link to place another
+ hold on the same title. This is a time savings for staff when placing holds
+ for multiple patrons on a newly-added title or when doing book club requests.
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2 0 Open-ILS/src/templates/opac/css/style.css.tt2
+1 0 Open-ILS/src/templates/opac/parts/place_hold.tt2
+14 1 Open-ILS/src/templates/opac/parts/place_hold_result.tt2
+7 0 docs/RELEASE_NOTES_NEXT/OPAC/place-another-hold-link.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/place-another-hold-link.txt
+
+commit 51d2b34bc7ac85ea225d11311e73f00681e3372a
+Author: Ben Shum <bshum at biblio.org>
+Date: Sat Feb 21 02:25:36 2015 -0500
+
+ LP#121054: Stamping upgrade script for asset.copy_location-delete-rule
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+811 0 Open-ILS/src/sql/Pg/upgrade/0912.asset.copy_location-delete-rule.sql
+0 811 Open-ILS/src/sql/Pg/upgrade/XXXX.asset.copy_location-delete-rule.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0912.asset.copy_location-delete-rule.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.asset.copy_location-delete-rule.sql
+
+commit b1e8ab04c39838ec5de30e285903223aef47abb6
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Thu Feb 19 06:42:02 2015 -0500
+
+ LP#121054: Adding release notes entry for copy location delete flag
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+10 0 docs/RELEASE_NOTES_NEXT/Administration/copy_location_deleted_flag.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Administration/copy_location_deleted_flag.txt
+
+commit f0a598ea0974c0db5b2f358910100b25b9418840
+Author: Jason Boyer <JBoyer1 at library.in.gov>
+Date: Thu Sep 25 10:53:11 2014 -0400
+
+ LP#121054: Add Deleted Flag to asset.copy_location
+
+ Signed-off-by: Jason Boyer <JBoyer at library.in.gov>
+ Signed-off-by: Michele Morgan <mmorgan at noblenet.org>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 0 Open-ILS/examples/fm_IDL.xml
+6 0 Open-ILS/src/extras/ils_events.xml
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+2 2 Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+11 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm
+8 3 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CopyLocations.pm
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/asset.pm
+2 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/asset.pm
+7 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/biblio.pm
+8 6 Open-ILS/src/sql/Pg/040.schema.asset.sql
+9 0 Open-ILS/src/sql/Pg/800.fkeys.sql
+14 3 Open-ILS/src/sql/Pg/999.functions.global.sql
+811 0 Open-ILS/src/sql/Pg/upgrade/XXXX.asset.copy_location-delete-rule.sql
+2 2 Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js
+1 1 Open-ILS/web/js/ui/default/conify/global/asset/copy_location_group.js
+1 1 Open-ILS/web/js/ui/default/conify/global/asset/copy_location_order.js
+1 1 Open-ILS/web/js/ui/default/conify/global/config/circ_limit_set.js
+1 1 Open-ILS/web/js/ui/default/opac/copyloc.js
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.asset.copy_location-delete-rule.sql
+
+commit 580afa19bd100374f51ea30af242913cb7522bcf
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Sat Feb 21 02:39:40 2015 +0000
+
+ LP#1423585: add release notes entry
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2 0 docs/RELEASE_NOTES_NEXT/OPAC/discoverability.txt
+
+commit efd0c1f9cb4f971658f06cade9b052f1710229c7
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Thu Feb 19 11:08:32 2015 -0500
+
+ LP#1423585 Add Open Graph Protocol markup to TPAC
+
+ Very simplistic markup for now, just the basic http://ogp.me
+ requirements of title, url, image, and type (and we're reusing
+ the schema.org type in the short term).
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+3 0 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+1 1 Open-ILS/src/templates/opac/advanced.tt2
+1 1 Open-ILS/src/templates/opac/browse.tt2
+1 1 Open-ILS/src/templates/opac/cnbrowse.tt2
+3 1 Open-ILS/src/templates/opac/library.tt2
+1 1 Open-ILS/src/templates/opac/mylist.tt2
+4 2 Open-ILS/src/templates/opac/parts/base.tt2
+1 0 Open-ILS/src/templates/opac/parts/record/body.tt2
+1 0 Open-ILS/src/templates/opac/parts/record/summary.tt2
+2 1 Open-ILS/src/templates/opac/record.tt2
+1 1 Open-ILS/src/templates/opac/results.tt2
+
+commit b9ababa5f146beaa39326a34e081a1d26c9c2351
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Thu Feb 19 10:36:11 2015 -0500
+
+ LP#1413721: Adding release notes entry for styling on SMS screen
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+6 0 docs/RELEASE_NOTES_NEXT/OPAC/text-call-number-styling.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/text-call-number-styling.txt
+
+commit 33a682da638a1e42b8a5ff9f966b21f434ebaeda
+Author: Christine Morgan <cmorgan at noblenet.org>
+Date: Wed Feb 18 16:47:22 2015 -0500
+
+ LP1413721: Styling for sms Text Call Number page
+
+ Adds highlighting to call number text and makes font consistent.
+ Provides styling for mobile display.
+
+ Signed-off-by: Christine Morgan <cmorgan at noblenet.org>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+14 0 Open-ILS/src/templates/opac/css/style.css.tt2
+1 0 Open-ILS/src/templates/opac/parts/css/fonts.tt2
+2 6 Open-ILS/src/templates/opac/sms_cn.tt2
+
+commit 2135221774fc98edb2378bc929c763236bf1939c
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Feb 20 16:55:40 2015 -0500
+
+ LP#1410369 stamping TPAC message center DB upgrade
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+79 0 Open-ILS/src/sql/Pg/upgrade/0910.schema.message-center.sql
+97 0 Open-ILS/src/sql/Pg/upgrade/0911.data.message-center.sql
+0 79 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.message-center.sql
+0 95 Open-ILS/src/sql/Pg/upgrade/YYYY.data.message-center.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0910.schema.message-center.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0911.data.message-center.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.message-center.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/YYYY.data.message-center.sql
+
+commit 874f87022ef0e069926124585e615c9749e8803c
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Fri Feb 20 17:15:59 2015 +0000
+
+ LP#1410369: fix (old) thinko in A/T environment builder
+
+ If a label is set for a piece of the environment, e.g.,
+ [qw/foo bar/], ensure that we end up with $self->environment->{foo}{bar},
+ not $self->environment->{foo}{bar}{bar}
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Event.pm
+
+commit 67ceee7cfeb972511257e67368353632eae4609a
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Fri Feb 20 17:15:35 2015 +0000
+
+ LP#1410369: fix thinko in auml IDL
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/examples/fm_IDL.xml
+
+commit db8b96cf33e3c45d3df3575dc68359ed6cb41a13
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Feb 20 10:06:03 2015 -0500
+
+ LP#1410369: Pull message title from the environment
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Event.pm
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/EventGroup.pm
+
+commit 5357bfb9fcb004ce67ba4965a853564b655f0fa1
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Feb 20 09:57:25 2015 -0500
+
+ LP#1410369: Teach EventGroup how to process messages
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+28 5 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/EventGroup.pm
+
+commit 4e9eff2d2c898a0705dccd9884b6b17683eca86c
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Feb 19 21:25:32 2015 +0000
+
+ LP#1410369: fix issue with the order of the table creation statements
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+63 63 Open-ILS/src/sql/Pg/005.schema.actors.sql
+
+commit 88c27740de77dc53279fb088f55518b2276da071
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Feb 19 19:56:48 2015 +0000
+
+ LP#1410369: release notes for patron message center
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+35 0 docs/RELEASE_NOTES_NEXT/Circulation/patron-message-center.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/patron-message-center.txt
+
+commit 8125ece809a046715314d1c58c61f36feb66460c
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Feb 19 19:38:19 2015 +0000
+
+ LP#1410369: add a new view to restrict arbitrary editing access
+
+ The previous commit now allows owning_user in fm_IDL.xml to
+ specify that patrons can access their own messages, saving
+ the need to write some copy-and-paste middle-layer code.
+
+ However, we don't necessarily want a patron who figures
+ out how to use pcrud directly to change the content
+ of messages that are sent to them. To avoid that, this
+ patch adds a new view, actor.usr_message_limited, that is
+ allows updates of the read_date and deleted columns in
+ the underlying table, but nothing else.
+
+ This patch also fixes a couple typos.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+26 4 Open-ILS/examples/fm_IDL.xml
+9 9 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+23 6 Open-ILS/src/sql/Pg/005.schema.actors.sql
+20 0 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.message-center.sql
+
+commit 66185ad790663bb1293ab546556d3e4c69edede3
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Feb 19 13:35:29 2015 -0500
+
+ LP#1410369: PCRUD should respect the owning_user field
+
+ PCRUD should always respect the object owner, even when a context org is
+ specified.
+
+ [NOTE: use the -b option to diff to see the real change -- much is whitespace.]
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+70 67 Open-ILS/src/c-apps/oils_sql.c
+
+commit 7e1b5a0a45d5476ac24d006a9ba4de0dd33132ab
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Wed Feb 18 23:42:22 2015 +0000
+
+ LP#1410369: hook up patron message center to XUL staff client
+
+ This adds a new "Message Center" item in the "Other" menu
+ on the patron display.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+ LP#1410369: typo fix
+
+ (feel free to squash when merging)
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 0 Open-ILS/web/opac/locale/en-US/lang.dtd
+1 0 Open-ILS/xul/staff_client/chrome/content/main/constants.js
+14 0 Open-ILS/xul/staff_client/server/patron/display.js
+1 0 Open-ILS/xul/staff_client/server/patron/display.xul
+1 0 Open-ILS/xul/staff_client/server/patron/display_horiz.xul
+1 0 Open-ILS/xul/staff_client/server/patron/display_horiz_overlay.xul
+1 0 Open-ILS/xul/staff_client/server/patron/display_overlay.xul
+
+commit eeec7d2024c7c4ad923b5e9477991ce4b8369db7
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Wed Feb 18 23:41:10 2015 +0000
+
+ LP#1410369: AutoGrid-based staff interface for viewing patron messages
+
+ Falling as this does between the introduction of the web staff
+ interface and its production use, this patch implements a
+ quick AutoGrid interface for viewing patron messages from
+ the staff side.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+116 0 Open-ILS/src/templates/actor/user/message.tt2
+ create mode 100644 Open-ILS/src/templates/actor/user/message.tt2
+
+commit bf1756cfebc8f683fb2f09a90a0a8187ebe17fa2
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 18 17:05:43 2015 -0500
+
+ LP#1410369: adjust A/T event definition editor
+
+ Suppress message fields in the A/T setup grid,
+ and make the message template use a textarea for input
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/src/templates/conify/global/action_trigger/event_definition.tt2
+1 0 Open-ILS/web/js/ui/default/conify/global/action_trigger/event_definition.js
+
+commit 09d226a392ef57f7a78d351bc415ac015a8ed08c
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Wed Feb 18 22:17:46 2015 +0000
+
+ LP#1410369: update TPAC dashboard counts as needed
+
+ This factors the lookup of TPAC dashboard/"vital" stats
+ to a separate routine and invokes it a couple more times
+ as needed during patron message processing that can
+ affect the count of unread messages.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+13 4 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+3 0 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+
+commit ebcdb002e0e0f3afa67a578f80f70837cd0e6a88
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 18 16:40:50 2015 -0500
+
+ LP#1410369: Show unread message count in the patron dashboard
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+7 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm
+1 0 Open-ILS/src/templates/opac/css/style.css.tt2
+6 0 Open-ILS/src/templates/opac/parts/topnav.tt2
+
+commit 03efadddeb549573c23ac15272a3e5251efad8ed
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Wed Feb 18 21:39:48 2015 +0000
+
+ LP#1410369: add open-ils.actor method for fetching user messages
+
+ This patches adds open-ils.actor.message.retrieve as an
+ authenticated, public-router visible method for fetching
+ patron messages belong to the authenticated user. This
+ method exists, at present, solely for the benefit of potential
+ third-party API users; TPac itself uses pcrud.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+33 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm
+
+commit 86765b012fbdef3b53756da87c6cdc0369a45d83
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Wed Feb 18 21:29:41 2015 +0000
+
+ LP#1410369: patron message center page in TPac
+
+ This patch adds My Account tab in TPac for
+ displaying and managing patron messages. In particular,
+ a logged in patron will be able to:
+
+ - see a list of their (undeleted) messages
+ - open a particular message and see it's body;
+ doing this automatically marks the message as
+ read
+ - delete messages from either the list or
+ single-message views
+ - mark messages as unread from the list or
+ single-message views
+ - mark messages as read from the list view
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 0 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
+170 0 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm
+5 4 Open-ILS/src/templates/opac/css/style.css.tt2
+16 0 Open-ILS/src/templates/opac/myopac/messages.tt2
+113 0 Open-ILS/src/templates/opac/myopac/messages/list.tt2
+51 0 Open-ILS/src/templates/opac/myopac/messages/single_message.tt2
+1 0 Open-ILS/src/templates/opac/parts/myopac/base.tt2
+ create mode 100644 Open-ILS/src/templates/opac/myopac/messages.tt2
+ create mode 100644 Open-ILS/src/templates/opac/myopac/messages/list.tt2
+ create mode 100644 Open-ILS/src/templates/opac/myopac/messages/single_message.tt2
+
+commit 84e42951a28876c9b6e74bf78f78080538a456dc
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Wed Feb 18 13:52:06 2015 +0000
+
+ LP#1410369: remove direct display of user notes from TPac
+
+ This is supplanted by the new patron message center
+ page; note that during schema upgrade, existing
+ public user notes are converted to patron messages.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+0 14 Open-ILS/src/templates/opac/css/style.css.tt2
+0 11 Open-ILS/src/templates/opac/parts/myopac/main_base.tt2
+
+commit 6bf9c24d028df28905baba0afd12f43a69ff3119
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 18 10:39:58 2015 -0500
+
+ LP#1410369: Seed A/T definitions for hold cancellation
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+93 0 Open-ILS/src/sql/Pg/950.data.seed-values.sql
+95 0 Open-ILS/src/sql/Pg/upgrade/YYYY.data.message-center.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/YYYY.data.message-center.sql
+
+commit 6e373d0fe4be1cbe847035e62d6280e2b11aa2fa
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 14:07:57 2015 -0500
+
+ LP#1410369: Create user messages when configured to do so
+
+ When an A/T definition has both message_usr_path and message_template
+ defined, we gather the user, sending lib, template, and title and push those
+ into the environment. After the user-defined reactor has successfully run,
+ we pass the environment off to a special-purpose handler that generates
+ output for actor.usr_message.message and, upon success of that, we insert
+ the user message into the database.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+41 5 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Event.pm
+21 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm
+22 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/ProcessMessage.pm
+ create mode 100644 Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/ProcessMessage.pm
+
+commit 0e19de7f0444458a61569fa060b438c4210d624e
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 12:54:40 2015 -0500
+
+ LP#1410369: Schema and supporting IDL entries
+
+ This commit adds the table actor.usr_message,
+ a trigger to populate actor.usr_message as rows
+ get adding to actor.usr_note (or get updated to make
+ non-public notes become public), and new columns in
+ action.event_definition for specifying how to generate
+ user messages from A/T events.
+
+ It also copies over existing public user notes as
+ new, "read" user messages, as the current display
+ of the old user notes will be removed from TPac.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+27 0 Open-ILS/examples/fm_IDL.xml
+46 0 Open-ILS/src/sql/Pg/005.schema.actors.sql
+6 0 Open-ILS/src/sql/Pg/400.schema.action_trigger.sql
+59 0 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.message-center.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.message-center.sql
+
+commit 389820b7326f441a18a46e69a7e527bea80bcf08
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Feb 20 12:04:51 2015 -0500
+
+ LP#1198465 CircCommon fine generator repairs
+
+ * The latest fine generator uses ID-based transaction lookup.
+ Avoid calling ->to_fieldmapper on IDs.
+
+ * Consistent with the previous fine generator code, handle each circ,
+ reservation, etc. within its own transaction to avoid any long-running
+ transactions.
+
+ * cstore expects order_by's to be delineated by object class
+
+ * CStoreEditor requires all params that are passed through to cstore to
+ be contained within the first parameter to a search_*, etc. calls, so
+ wrap the query and order_by clauses in an array.
+
+ Without these changes, the fine generator would generate duplicate
+ billings when voided billings were present.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+19 19 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 170f947a36491f707c199e94d047dde29e2ffc46
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Tue Feb 17 18:00:09 2015 -0500
+
+ LP#1198465 Restore skipping of lost-returned overdue generation
+
+ We need overdues generated before the conditional negative balances
+ code runs, so we also need to check the setting to skip handling of
+ lost-zero-balance earlier on.
+
+ This code also slightly refactors the "skip" checks to a single point
+ in the lost handling code.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+38 18 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit 38fab9211ed8c830b511ba5e4f8c262c1253a9f3
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Mon Nov 24 17:10:31 2014 -0500
+
+ LP#1198465 Move fine generation into CircCommon
+
+ Allows circulation code to generate fines within the main circulation
+ database transaction.
+
+ Squahed commits:
+
+ LP#1198465 Initial copy of generate_fines to CircCommon.pm
+
+ Copy over generate_fines, including the necessary 'ceil' and $parser
+ bits, and the seconds_to_interval_hash helper function.
+
+ LP#1198465 First pass at generate_fines cstore conversion
+
+ Broadly speaking, this commit does two things:
+
+ 1) Rewrite bits of the generate_fines copy in CircCommon.pm to use
+ cstore in place of the DBI code bits.
+ 2) Gut the old generate_fines in Publisher/action.pm, including helper
+ bits, then make it a wrapper for the CircCommon verison.
+
+ This is a rough pass, but works in basic testing.
+
+ LP#1198465 Make generate_fines() chattiness optional
+
+ The old storage generate_fines() was really chatty with it's client. We
+ generally won't want that, so make it optional.
+
+ Also, remove one response which I added earlier while debugging.
+
+ LP#1198465 Stop using storage wrapper for generate_fines()
+
+ With pieces now in place, let's stop using the storage wrapper for
+ generate_fines() and call the code directly.
+
+ Also, to avoid potential confusion, rename the calling function in
+ Circulate.pm from generate_fines() to handle_fines(). This function
+ may also be taking on more than just fine generation in the near future.
+
+ Finally, since the new generate_fines() expects one or more pre-filtered
+ circ objects, add the requisite stop_fines check to handle_fines().
+
+ LP#1198465 Put penalty generation in the same xact
+
+ The penalties need to "see" any fines we may have just added, so they
+ need to happen in the same transaction. Passing in the optional editor
+ makes this an easy fix.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+307 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
+10 17 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+17 317 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 1d2a885426d74841bbc912e868b62e08bd65baec
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Fri Dec 5 12:33:09 2014 -0500
+
+ LP#1198465 Recombine generate_fines()
+
+ The generate_fines() method was split back in 2010. There is some
+ concern about the speed of checkin (e.g. via SIP for a sorter, where we
+ don't care about fines), and this may have been the reason for the
+ split. It might also have been the fact that waiting for the storage
+ xact to finish was causing the circ xact to timeout.
+
+ In any case, since we are bringing them into the same xact now, reason
+ number 2 is invalid, and reason number 1 won't be helped by the split
+ anymore (since there is no longer any parallel action). Let's bring it
+ back together.
+
+ Ultimately, as suggested by Mike, we will probably want to refactor a
+ bit and return a streaming response for sorting location, then a final
+ response once we have the fine generation figured out.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 28 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit 14de2b0e47813e76fff1b067ccf02afbefd9df3b
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Wed Dec 3 14:21:16 2014 -0500
+
+ LP#1198465 Allow null fields to stay null in to_fieldmapper()
+
+ In CDBI.pm, we can convert DB objects to Fieldmapper objects using
+ to_fieldmapper(). Part of the conversion was forcing stringification,
+ which does what we need for nested objects, but also converts 'nulls'
+ (undefineds) to 'empty' values. This causes problems when trying to
+ write these Fieldmapper objects back to the DB using cstore (or the
+ like).
+
+ This commit simply lets undefined values stay that way, which in turn
+ prevents NULLs from trying to become empty strings in the DB.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI.pm
+
+commit 54cd1b8c38ffab5cd48572a68b3544c88e7cd3eb
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Tue Feb 17 16:02:15 2015 -0500
+
+ LP#1198465 lost overdues generated in main xact
+
+ Generate overdue fines for lost checkins (if configured) within the main
+ body of the checkin transaction to avoid complications with negative
+ balance reconciliation.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+ Conflicts:
+ Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+ Ignoring introduction of bug for overdue catch-up on lost item return,
+ as it will be easier to restore later on.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+22 77 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit 8e8c2a8e4f7866ed6fd9815266f26f1b806c63fb
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Mon Oct 6 20:56:13 2014 -0700
+
+ LP#1378169: make context OU selector on funds page sticky
+
+ This patch uses local storage to persist the selected value of the
+ context OU selector on the funds page. This is meant to ease
+ workflows where an acquisitions administrator needs to frequently
+ transfer money between funds that are attached to children of
+ a system-level OU. Specifically, rather than defaulting to
+ the user's workstation OU, the selector will default to the
+ OU selected the last time the funds page was opened.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+6 1 Open-ILS/web/js/ui/default/acq/financial/list_funds.js
+
+commit 4b30fb84f74e46b9661704f18a89cb920126241e
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Thu Feb 19 13:58:21 2015 -0500
+
+ lp1422555: Link permalink icon on record summary
+
+ Make the permalink icon a link, in addition to the text for
+ "Permalink" itself, to be more consistent with the other
+ action icons.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4 2 Open-ILS/src/templates/opac/parts/record/summary.tt2
+
+commit e09409f00086adb082f29cf41584163a3384ff8f
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Thu Feb 19 16:36:39 2015 +0000
+
+ LP#1413624: update doc to reflect that spaces can also delimit option lists
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2 2 docs/RELEASE_NOTES_NEXT/Administration/apache_access_handler.txt
+2 2 docs/TechRef/Apache/apache_access_handler.txt
+
+commit abfa47343e5ac332f4f63b51cae975279929dee4
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date: Thu Jan 22 11:31:03 2015 -0500
+
+ LP#1413624: AccessHandler Space delimination and bugfix
+
+ In addition to commas, allow spaces to delimit option lists.
+
+ Also, I apparently left a "!=" where I wanted a "ne" in _get_org_id.
+
+ Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+3 3 Open-ILS/src/perlmods/lib/OpenILS/WWW/AccessHandler.pm
+
+commit a19bf2493ef737f67f90b26a9d404e7934344e6e
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date: Tue Jan 20 12:42:53 2015 -0500
+
+ LP#1413624: OpenILS::WWW::AccessHandler Module
+
+ Perl module compatible with Apache PerlAccessHandler directives.
+
+ Includes Release Notes and basic documentation (in the form of a mildly edited
+ copy of the release notes)
+
+ Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+216 0 Open-ILS/src/perlmods/lib/OpenILS/WWW/AccessHandler.pm
+139 0 docs/RELEASE_NOTES_NEXT/Administration/apache_access_handler.txt
+139 0 docs/TechRef/Apache/apache_access_handler.txt
+ create mode 100644 Open-ILS/src/perlmods/lib/OpenILS/WWW/AccessHandler.pm
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Administration/apache_access_handler.txt
+ create mode 100644 docs/TechRef/Apache/apache_access_handler.txt
+
+commit 55aaea83d127822b257bcb47876d7443a5ffd135
+Author: Steven Chan <schan at sitka.bclibraries.ca>
+Date: Mon Jul 22 12:39:48 2013 -0700
+
+ LP#1418772: Avoid internal server error on viewing full record when copy create_date is null
+
+ In the TPAC client, when it tries to show record details containing a copy
+ record with no create date, it shows an Internal Server Error instead.
+
+ 1. The error is caused by trying to execute the parse_datetime() method
+ in the parse_date() function in the WWW/EGCatLoader/util.pm module with
+ an empty date string. The function will normally translate a datetime
+ string from the database to a datetime string that is formatted for TPAC
+ templates. The fix is to not execute parse_datetime() and just return
+ an empty string.
+
+ 2. In the record/copy_table.tt2 template, if an empty datetime string is
+ the value for copy_info.create_date, the format() method of the Date
+ plugin will show the current datetime by default. The fix is to show '-'
+ in its place, replicating the same template logic as for
+ copy_info.due_date.
+
+ Signed-off-by: Jeff Davis <jdavis at sitka.bclibraries.ca>
+
+ Conflicts:
+ Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+3 0 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
+14 9 Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+commit d4af30e0d0042b6ef4d0b7c8e80a9d5a152cb385
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Thu Feb 19 08:02:40 2015 -0500
+
+ LP#1366026: Adding release notes entry for display active date
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+7 0 docs/RELEASE_NOTES_NEXT/Circulation/display_active_date.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/display_active_date.txt
+
+commit 45e2e058634f2eeedf3d2fa6efa3d210073d5426
+Author: Jason Boyer <jboyer1 at library.in.gov>
+Date: Fri Sep 5 10:16:26 2014 -0400
+
+ LP1366026: Add Active Date to Record Detail Page
+
+ Display active date in place of create date when
+ item circ_lib uses active date for hold age
+ protection calculations.
+
+ Signed-off-by: Jason Boyer <jboyer1 at library.in.gov>
+ Signed-off-by: Michele Morgan <mmorgan at noblenet.org>
+
+ Conflicts:
+ Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+10 3 Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+
+commit d7fd69d4502070a0cf4bbeae5b30f59b11c9995e
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Mon Feb 16 22:06:01 2015 -0500
+
+ lp1422555: Shorter permalink on record summary page
+
+ The record summary page will now offer a link to a shorter permalink with
+ most URL parameters removed. The locg and copy-depth parameters are maintained.
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+5 0 Open-ILS/src/templates/opac/css/style.css.tt2
+4 0 Open-ILS/src/templates/opac/parts/record/summary.tt2
+6 4 Open-ILS/web/images/licenses.txt
+- - Open-ILS/web/images/link.png
+8 0 docs/RELEASE_NOTES_NEXT/OPAC/permalink.txt
+ create mode 100644 Open-ILS/web/images/link.png
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/permalink.txt
+
+commit 269cb6a6fe5735013a906640a561c65d39bee37a
+Author: Bill Erickson <berick at esilibrary.com>
+Date: Thu Jul 31 13:03:00 2014 -0400
+
+ LP#1350371 ACQ dupe orders release notes
+
+ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+31 0 docs/RELEASE_NOTES_NEXT/Acquisitions/acq-dupe-po-detect.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Acquisitions/acq-dupe-po-detect.txt
+
+commit 74135fe601871f1e544b73582d59a893d4bc70ff
+Author: Bill Erickson <berick at esilibrary.com>
+Date: Wed Jul 30 17:34:07 2014 -0400
+
+ LP#1350371 display existing copies
+
+ In the picklist / PO lineitem list view, display the number of existing
+ catalog copies owned at or below the PO ordering agency or Picklist org
+ unit whose status is not in some form of lost or missing.
+
+ Value is displayed beside the lineitem ID and is styled bold/red if the
+ count is greater than zero.
+
+ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+67 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+2 1 Open-ILS/src/templates/acq/common/li_table.tt2
+5 0 Open-ILS/web/css/skin/default/acq.css
+2 1 Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+21 0 Open-ILS/web/js/ui/default/acq/common/li_table.js
+
+commit 87e8303b839835726d7f6380d309d7558d9d07eb
+Author: Bill Erickson <berick at esilibrary.com>
+Date: Wed Jul 30 15:59:02 2014 -0400
+
+ LP#1350371 detect dupe PO name on edit
+
+ When changing the name of an existing PO, if the selected name collides
+ w/ another PO at or below the ordering agency, a warning is shown to
+ the user, including a link to the matching PO, and the name change is
+ aborted.
+
+ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+7 2 Open-ILS/src/templates/acq/po/view.tt2
+57 0 Open-ILS/web/js/ui/default/acq/po/view_po.js
+
+commit 98028342870b2d5721e9043d42393c588d828604
+Author: Bill Erickson <berick at esilibrary.com>
+Date: Wed Jul 30 15:02:22 2014 -0400
+
+ LP#1350371 PO name on create w/ dupe detect
+
+ Adds support for entering a PO name at PO creation time, both from the
+ picklist page and from the PO create page. If a name is entered which
+ matches the name of an existing PO at or below the ordering agency, a
+ link to the matching PO is shown and the user is prevented from creating
+ the PO until the name is changed or cleared.
+
+ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm
+12 1 Open-ILS/src/templates/acq/common/li_table.tt2
+4 1 Open-ILS/web/js/dojo/openils/acq/nls/acq.js
+1 1 Open-ILS/web/js/dojo/openils/widget/EditPane.js
+6 0 Open-ILS/web/js/dojo/openils/widget/FilteringTreeSelect.js
+83 1 Open-ILS/web/js/ui/default/acq/common/li_table.js
+127 4 Open-ILS/web/js/ui/default/acq/po/create.js
+
+commit c0fabd04974b0abdfa4375d29b296faf229c9988
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Wed Feb 18 17:11:30 2015 -0500
+
+ Fix typo in release notes for TPAC discoverability
+
+ Thanks to Ben Shum for catching that!
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+1 1 docs/RELEASE_NOTES_NEXT/OPAC/discoverability.txt
+
+commit 985313e6cfe305ec7874535665016a48dcf06bdd
+Author: Yamil Suarez <yamil at yamil.com>
+Date: Tue Feb 17 14:29:46 2015 -0500
+
+ LP#1403967: show 'subject heading thesaurus' value in Manage Authorities results
+
+ The 'subject heading thesaurus' basically defines the issuing authority
+ that created the authority record. For example, a value of "a" means that
+ it came from LoC. A value of "n" means that it is a locally created
+ authority. Note that within the authority MARC editor the 'Subject
+ Heading Thesaurus' is stored/displayed in the 'Subj' fixed field.
+
+ Signed-off-by: Yamil Suarez <yamil at yamil.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+3 1 Open-ILS/src/templates/cat/authority/list.tt2
+3 2 Open-ILS/web/js/ui/default/cat/authority/list.js
+
+commit 12ee39da89f5480385258ced8d1a72bcbfe6026c
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Wed Feb 18 16:17:32 2015 -0500
+
+ TPAC discoverability release notes entry
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+44 0 docs/RELEASE_NOTES_NEXT/OPAC/discoverability.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/discoverability.txt
+
+commit 6d6130ea3d1671770f55c2ee82d0b96836fa46a1
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Feb 18 15:24:50 2015 -0500
+
+ LP1171984: Stamping upgrade script
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+373 0 Open-ILS/src/sql/Pg/upgrade/0909.schema.authority_match_sets.sql
+0 371 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority_match_sets.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0909.schema.authority_match_sets.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority_match_sets.sql
+
+commit fbaa6bbef84e80a9ad68ebc9d326a0d9c2a2f820
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Dec 19 10:53:23 2014 -0500
+
+ LP#1171984 vandelay authority rec attr create repair
+
+ After selecting a bib attribute to view then attempting to create an
+ authority record attribute, the editor would get confused and think it
+ was trying to update an existing attribute. This clears the "we are
+ editing attr X" flag so create will create instead of update.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+4 0 Open-ILS/web/js/ui/default/vandelay/vandelay.js
+
+commit fba2cd809bac8875e2eb58f0652b4762632ff43a
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Nov 28 15:48:14 2014 -0500
+
+ LP#1171984 Vandelay auth. match release notes
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+14 0 docs/RELEASE_NOTES_NEXT/Cataloging/vandelay-authority-match-sets.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Cataloging/vandelay-authority-match-sets.txt
+
+commit af7304c9d754159f9dac8fe60007e8b89ba639e9
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Nov 14 10:16:27 2014 -0500
+
+ LP#1171984 Vandelay authority record matching
+
+ Adds support for building and using authority match sets in vandelay for
+ import record matching. Match sets include MARC tag/subfield matching
+ and normalized authority heading + thesaurus matching.
+
+ Commit also contains various small Vandelay UI repairs related to
+ displaying authority queues and matches.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2 0 Open-ILS/examples/fm_IDL.xml
+5 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm
+238 15 Open-ILS/src/sql/Pg/012.schema.vandelay.sql
+371 0 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority_match_sets.sql
+1 1 Open-ILS/src/templates/conify/global/vandelay/match_set.tt2
+3 2 Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2
+12 3 Open-ILS/src/templates/vandelay/inc/matches.tt2
+2 0 Open-ILS/src/templates/vandelay/inc/queue.tt2
+2 1 Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js
+36 2 Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js
+13 3 Open-ILS/web/js/ui/default/vandelay/vandelay.js
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority_match_sets.sql
+
+commit fe073386ee82b3f6788db754aa01f3a05c0908e6
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Wed Feb 18 10:13:56 2015 -0500
+
+ LP#957466: Stamping Upgrade Script
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+66 0 Open-ILS/src/sql/Pg/upgrade/0908.function.vandelay-overlay_bib_record.sql
+0 66 Open-ILS/src/sql/Pg/upgrade/XXXX.function.vandelay-overlay_bib_record.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0908.function.vandelay-overlay_bib_record.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.function.vandelay-overlay_bib_record.sql
+
+commit 522b6ff61c36db7b6883f5db53f273a8fde7abf0
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Fri Feb 13 12:22:19 2015 -0500
+
+ LP#957466 Vandelay set the 905$u on imported bib records to current user.
+
+ This will cause the code in the previous commit to trigger and update the
+ appropriate fields in biblio.record_entry.
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Martha Driscoll <driscoll at noblenet.org>
+
+43 0 Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm
+5 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm
+
+commit 9238334caad810f09e53466e65a634a58e332931
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Feb 16 09:57:53 2015 -0500
+
+ LP#1413592: DB upgrade script numbering
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+15 0 Open-ILS/src/sql/Pg/upgrade/0907.data.avoid_lost_void_on_zero_balance.sql
+0 15 Open-ILS/src/sql/Pg/upgrade/XXX.data.avoid_lost_void_on_zero_balance.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0907.data.avoid_lost_void_on_zero_balance.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXX.data.avoid_lost_void_on_zero_balance.sql
+
+commit 78d7ce8ee4e5670c2af963bee2445d041b2f651d
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Sat Feb 14 16:43:02 2015 -0500
+
+ lp1413592: Release notes entry for no changes to fully-paid lost transactions
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+16 0 docs/RELEASE_NOTES_NEXT/Circulation/no-change-on-zero-balance-lost-LO.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/no-change-on-zero-balance-lost-LO.txt
+
+commit 43c8619f84ab200024f85f4e3cb5173b5c31a84e
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Feb 10 10:46:20 2015 -0500
+
+ LP#1413592: Avoid generating fines in "consider zero balance closed" mode
+
+ We will now also disable the behavior triggered by the "Lost Checkin
+ Generates New Overdues" org setting when the new "Do not change fines/fees
+ on zero-balance LOST transaction" org setting is enabled. This is to follow
+ the new rule that the new setting creates: a zero-balance LOST transaction is
+ considered handled, and should not be changed by the system.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit e65a76067dae8496ab56bb33f3ae4ef5a38fe026
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Jan 28 08:40:20 2015 -0500
+
+ LP#1413592: Don't change lost/long-overdue fines/fees on zero-balance
+
+ The situation that has been reported as the worst offender for creating
+ negative balances for folks that do not want that to happen goes like this:
+
+ 1) Item is lost or goes long-overdue
+ 2) Fees/fines charged
+ 3) Said fees/fines are paid in full
+ 4) Item is found and returned
+ 4a) "Void fines and fees on lost item return" settings are enabled
+ 4b) "Reinstate overdue fines on lost item return" setting is enabled
+ 4c) System dutifully voids the lost fines/fees
+ 4d) System dutifully reinstates the overdue fines
+
+ So we add an YAOUS to ensure that when a lost item is returned and the
+ balance of the transaction is exactly $0, the lost fines and fees are not
+ voided EVEN IF "void fines and fees on lost/long-overdue return" settings are
+ enabled, and voided overdue fees are likewise not reinstated EVEN IF
+ "restore overdue on lost/long-overdue return" settings are enabled.
+
+ The reason for the second condition is that the point of this new setting is
+ to have Evergreen consider zero-balance lost/long-overdue transactions as
+ "handled", and that they should not automatically change.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+16 3 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+10 0 Open-ILS/src/sql/Pg/950.data.seed-values.sql
+15 0 Open-ILS/src/sql/Pg/upgrade/XXX.data.avoid_lost_void_on_zero_balance.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXX.data.avoid_lost_void_on_zero_balance.sql
+
+commit d0455836db7bf38b286857682f929b7af8639e63
+Author: Ben Shum <bshum at biblio.org>
+Date: Mon Feb 16 04:46:08 2015 -0500
+
+ LP#1410532: Add release note for "show more details" option
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+12 0 docs/RELEASE_NOTES_NEXT/Administration/show-more-details.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Administration/show-more-details.txt
+
+commit 2ab14a84516acd676de268318bb8f7a81f41e0e0
+Author: Ben Shum <bshum at biblio.org>
+Date: Mon Feb 16 04:42:48 2015 -0500
+
+ LP#1413769: Add release note for new link to My Lists
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5 0 docs/RELEASE_NOTES_NEXT/OPAC/my-lists-link.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/my-lists-link.txt
+
+commit abfc6b4867b7791419ec524006e229f84585852d
+Author: Christine Morgan <cmorgan at noblenet.org>
+Date: Thu Feb 5 12:10:13 2015 -0500
+
+ LP#1413769: Better access to My Lists
+
+ Adds a link to My Lists from topnav for more direct access for patrons.
+
+ Signed-off-by: Christine Morgan <cmorgan at noblenet.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2 1 Open-ILS/src/templates/opac/parts/topnav.tt2
+
+commit e3e63c17cb9f76c7e51d5873b6993ae66084913f
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Wed Jan 14 23:38:09 2015 -0500
+
+ LP#1411106: Add URIs to the list of bib records for sitemaps
+
+ Also make the org unit ancestor / descendant checks much more
+ robust by using the appropriate functions.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+64 10 Open-ILS/src/support-scripts/sitemap_generator
+
+commit 628891a26dbea6660e68f3167138794942e593c6
+Author: Ben Shum <bshum at biblio.org>
+Date: Mon Feb 16 04:24:29 2015 -0500
+
+ LP#1410532: Follow-up to fix config option for "Show more details"
+
+ Somehow we got two entries in config.tt2 for the "Show more details". Remove
+ one of these so that there's no confusion over how the variable is set and
+ applied.
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0 8 Open-ILS/src/templates/opac/parts/config.tt2
+
+commit f6913869ee39126559f919b40afea814a4c3ccb8
+Author: Art Rhyno <art632000 at yahoo.ca>
+Date: Mon Aug 13 17:22:17 2012 -0400
+
+ LP#1410532: TPAC - Make "Show more details" in results optional
+
+ Academic sites typically handle a lot of electronic content and want to
+ bring most details about entries, such as availability, status, and
+ URLs, on a results screen to the front.
+
+ This adds a 'show_more_details.default' option in 'config.tt2' that can
+ have the values 'true', 'false' and 'hide'. The 'true' and 'false'
+ values set the default for the button to more and less respectively, and
+ 'hide' suppresses the button from showing at all.
+
+ Signed-off-by: Art Rhyno <art632000 at yahoo.ca>
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6 0 Open-ILS/src/templates/opac/parts/config.tt2
+3 0 Open-ILS/src/templates/opac/parts/searchbar.tt2
+6 1 Open-ILS/src/templates/opac/results.tt2
+
+commit 0a9ae15101471db50ca5483537b0c017b6a95524
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Tue Jan 13 16:30:35 2015 -0500
+
+ LP#1410532: TPAC "Show more details" config option
+
+ Enable sites to either enable the "Show more details in search results"
+ by default, or to turn on the detailed search results and hide the UI
+ widget entirely.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+7 0 Open-ILS/src/templates/opac/parts/config.tt2
+7 2 Open-ILS/src/templates/opac/parts/result/table.tt2
+
+commit 40da69d80697b8f09195cac9b065ca38165b73ba
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Sat Dec 27 22:35:37 2014 -0500
+
+ LP#1406025: Provide graceful human output for HTTP errors
+
+ For the expected HTTP errors of HTTP_GONE (record deleted)
+ and HTTP_NOT_FOUND (record never existed), return the HTML
+ pages that we used to return (red border warning that the
+ record was deleted, or just an empty template for
+ non-existing records) so that the user can at least try
+ another search. However, the HTTP status code gets set to
+ 410 or 404 as expected so that machines can react
+ accordingly.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+10 1 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm
+
+commit 2545634200b3af22cc83f97dda1a2a84461db263
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Sat Dec 27 20:25:50 2014 -0500
+
+ LP#1406025: Return 404 or 410 HTTP status codes for bibs
+
+ If a record has been deleted, return a 410 Gone status code; if it doesn't
+ exist at all, return a 404 Not Found code.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+11 1 Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
+
+commit d895d8d6363b72cc2e97e0e76674bebc96ba65bb
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Fri Feb 6 17:13:27 2015 -0500
+
+ LP#1414033: Add rel="nofollow" to search/browse links
+
+ Mark links in the TPAC that robots should not attempt to crawl (such as
+ search results, call number browsing, adding records to temporary lists,
+ placing holds, logging in) using the rel="nofollow" convention, per
+ https://support.google.com/webmasters/answer/96569?hl=en
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+9 9 Open-ILS/src/templates/opac/browse.tt2
+1 1 Open-ILS/src/templates/opac/parts/advanced/search.tt2
+1 1 Open-ILS/src/templates/opac/parts/record/addedcontent.tt2
+1 1 Open-ILS/src/templates/opac/parts/record/authors.tt2
+3 3 Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2
+2 2 Open-ILS/src/templates/opac/parts/record/copy_table.tt2
+1 1 Open-ILS/src/templates/opac/parts/record/extras.tt2
+3 3 Open-ILS/src/templates/opac/parts/record/navigation.tt2
+1 1 Open-ILS/src/templates/opac/parts/record/refworks.tt2
+1 1 Open-ILS/src/templates/opac/parts/record/series.tt2
+1 1 Open-ILS/src/templates/opac/parts/record/subjects.tt2
+4 4 Open-ILS/src/templates/opac/parts/record/summary.tt2
+5 5 Open-ILS/src/templates/opac/parts/result/facets.tt2
+3 3 Open-ILS/src/templates/opac/parts/result/paginate.tt2
+4 4 Open-ILS/src/templates/opac/parts/result/table.tt2
+3 3 Open-ILS/src/templates/opac/parts/searchbar.tt2
+6 6 Open-ILS/src/templates/opac/results.tt2
+
+commit a57a93911f38f760db2c075c2dc583f029d17408
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Mon Feb 9 15:26:17 2015 -0500
+
+ LP#1419977: Map subject headings to schema:about
+
+ http://schema.org/about is a more specific fit for subject headings,
+ which describe what a given title is about, than the more generic
+ http://schema.org/keywords. This is the emerging standard mapping
+ seen in other implementations.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3 1 Open-ILS/src/templates/opac/parts/record/subjects.tt2
+
+commit 6193df69f47eb29c0d92e5d99cc878dd8ca0a2f8
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Sat Jan 10 22:09:48 2015 -0500
+
+ LP#1406451: Prevent some catalogue pages from being indexed
+
+ Tell search engines that they should not index search results
+ pages, call number browsing pages, and the like. We really
+ just want them to focus on records and the library pages.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+2 0 Open-ILS/src/templates/opac/advanced.tt2
+1 0 Open-ILS/src/templates/opac/browse.tt2
+1 0 Open-ILS/src/templates/opac/cnbrowse.tt2
+1 0 Open-ILS/src/templates/opac/mylist.tt2
+3 0 Open-ILS/src/templates/opac/results.tt2
+
+commit df976621fb1e2163eae24f96f74d8809ebd66aaa
+Author: Ben Shum <bshum at biblio.org>
+Date: Mon Feb 16 03:59:00 2015 -0500
+
+ LP#1406451: Set rel=canonical for record and library pages
+
+ Search engines use the "<link rel=canonical>" convention to determine that, no
+ matter how many variations on a URL you might generate through the likes of
+ appending &query= parameters, etc, those URLs are all the same as the value of
+ the href attribute in the <link> element.
+
+ Start with a simple implementation that, first, provides a placeholder in the
+ TPAC base where any page-specific <meta> or <link> (or really, any other <head>
+ contents) should go; then denotes the current page URL (stripped of all query
+ params) as the canonical URL for record and library pages.
+
+ This should help prevent search engines from crawling endless variations of the
+ same page, lowering load on Evergreen servers and potentially improving the
+ ranking of the canonical URLs.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+ Conflicts:
+ Open-ILS/src/templates/opac/parts/base.tt2
+
+2 0 Open-ILS/src/templates/opac/library.tt2
+2 0 Open-ILS/src/templates/opac/parts/base.tt2
+2 0 Open-ILS/src/templates/opac/record.tt2
+
+commit 19b03c7da77a917351ab400ad5f41ef7d8668fb2
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Sat Dec 27 17:06:18 2014 -0500
+
+ LP#1406013: Improve schema.org expression for electronic resources
+
+ Specify the URL from which an electronic resource is available as the
+ schema:url of the associated schema:Offer. Also, if we have descriptive
+ link text and/or a note about the electronic resource, mark it up with
+ schema:description.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+9 1 Open-ILS/src/templates/opac/parts/record/summary.tt2
+
+commit 114bee120c08f6825997f274f03b119f2b6c5e3a
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Fri Dec 26 11:57:37 2014 -0500
+
+ LP#1405812: Relate contributors to the id.loc.gov relator vocab
+
+ If we have relator codes (subfield 4), then we can specify the
+ nature of the contribution being played much more accurately
+ for machines than just schema:contributor by including the
+ relator code as a second value of the @property.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6 2 Open-ILS/src/templates/opac/parts/record/authors.tt2
+
+commit 0aae1422959e80e9be7098b2a5005102af37a2b4
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Mon Dec 15 23:29:35 2014 -0500
+
+ LP#1402921: Add the ability to link to sameAs and exampleOfWork entities
+
+ Look for standard identifiers with known URIs, such as
+ LCCNs, OCLC numbers, and URIs identified in 024 fields,
+ and add http://schema.org/sameAs or
+ http://schema.org/exampleOfWork properties to the record.
+ This helps us link out to the broader linked data world,
+ and should help those consuming our data to better
+ understand what resources we have to offer.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+36 0 Open-ILS/src/templates/opac/parts/misc_util.tt2
+6 0 Open-ILS/src/templates/opac/parts/record/body.tt2
+
+commit 91a0e5cd65487ab5a7828377e0e94d2e173da884
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Fri Feb 13 10:17:48 2015 -0500
+
+ LP#1421673 Typo in webby: "Databse ID"
+
+ Fixes a typo in the record display in webby.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1 1 Open-ILS/src/templates/staff/cat/share/t_record_summary.tt2
+
+commit 34b334fb49e57c72454820dd1a188991cb91d3cd
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Jan 30 13:04:42 2015 -0500
+
+ LP#1402797 Check for a copy before trying to use it -- fixes non-cat checkout failure
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit c67694794cad3fba07af81b3fadd5777c88d22b7
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Dec 31 16:05:53 2014 -0500
+
+ LP#1402797 browser client noncat circ display
+
+ Adds a new tab to the patron items out page for Non-Cataloged
+ Circulations.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+27 5 Open-ILS/src/templates/staff/circ/patron/t_items_out.tt2
+51 1 Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js
+
+commit 158d365bbad58df9783b7ec2338d5f462f2ab7fc
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Dec 31 16:00:06 2014 -0500
+
+ LP#1402797 browser client noncat counts in patron summary
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+5 0 Open-ILS/src/templates/staff/circ/patron/t_summary.tt2
+17 1 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 75e466ec7beb7fa7a1af1eb2b430edaa492fc3dd
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Dec 31 15:28:48 2014 -0500
+
+ LP#1402797 browser client interval parser
+
+ Adds a new service on the core module for adding date handling
+ utilities. Included in this commit is a new function:
+
+ egDate.intervalToSeconds(interval);
+
+ Includes Gruntfile additions and unit tests.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 0 Open-ILS/src/templates/staff/base_js.tt2
+1 0 Open-ILS/web/js/ui/default/staff/Gruntfile.js
+4 3 Open-ILS/web/js/ui/default/staff/services/coresvc.js
+61 0 Open-ILS/web/js/ui/default/staff/services/date.js
+1 0 Open-ILS/web/js/ui/default/staff/test/karma.conf.js
+18 0 Open-ILS/web/js/ui/default/staff/test/unit/egDate.js
+ create mode 100644 Open-ILS/web/js/ui/default/staff/services/date.js
+ create mode 100644 Open-ILS/web/js/ui/default/staff/test/unit/egDate.js
+
+commit 8cc0b1c02681a4462313d4f2bdd1c7ab8c6d44e2
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Dec 31 15:26:03 2014 -0500
+
+ LP#1402797 PCRUD access for noncat circs in IDL
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+6 1 Open-ILS/examples/fm_IDL.xml
+
+commit 884a75ee4fdae2e7c8ce9a6cae2a2c7a98b7c3bf
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Jan 2 11:21:43 2015 -0500
+
+ LP#1402797 patron search form focus repairs cont.
+
+ Building on Mike's original work, use Angular ng-mouseover and the
+ Angular $document built-in.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+4 4 Open-ILS/src/templates/staff/circ/patron/t_search.tt2
+12 5 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 62497d71eaefa88809aee052b0ab7081fd7802bf
+Author: Galen Charlton <gmc at esilibrary.com>
+Date: Fri Dec 26 22:46:31 2014 +0000
+
+ LP#1402797 use null as default payment amount
+
+ This means that operator does not have to select the
+ previous default of "0" in the control to clear it out.
+
+ Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 2 Open-ILS/web/js/ui/default/staff/circ/patron/bills.js
+
+commit f985e0d91d0591321d6e776e189657cb359c6fe6
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Mon Dec 15 13:47:51 2014 -0500
+
+ LP#1402797 webby: catalog record -> view holds org filter repair
+
+ Selecting a pickup library from the filter in the Catalog -> View Holds
+ UI shows holds for the selected org unit and descendant org units.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/web/js/ui/default/staff/cat/catalog/app.js
+
+commit 87960a121a73aefa7bcad3bb6513a48596704483
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Mon Dec 15 13:46:14 2014 -0500
+
+ LP#1402797 Repair browser client dropdown buttons - #2
+
+ Repairs egOrgSelector.
+
+ Angular-ui-bootstrap as of version ~0.11.2 does not want bare
+ "dropdown-toggle" attributes within action link tags. When present,
+ they prevent the dropdown button from opening.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/web/js/ui/default/staff/services/ui.js
+
+commit c213d2fd4372004d7fc0307480b5751d774a8e6d
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Dec 17 11:31:24 2014 -0500
+
+ LP#1402797 Allow, and use, disabling of button-ish anchors
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+6 6 Open-ILS/src/templates/staff/circ/patron/index.tt2
+25 0 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit dfb3810197c7138fde9292945ee56ab72afecb2e
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Dec 17 10:57:28 2014 -0500
+
+ LP#1402797 Only enable the Apply Payment button when a bill is selected
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+5 1 Open-ILS/src/templates/staff/circ/patron/t_bills.tt2
+
+commit c9c44036eb7d640519e5b1ff638cccff3e9c5aac
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Dec 12 17:27:06 2014 -0500
+
+ LP#1402797 webby: checkin fine tally patron bills link
+
+ Checkin fine tally display now acts as a link which opens a new tab to
+ the patron bills page for the current checkin patron when fines exist.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+4 1 Open-ILS/src/templates/staff/circ/checkin/t_checkin.tt2
+2 0 Open-ILS/web/js/ui/default/staff/circ/checkin/app.js
+
+commit 9a95b21d7dcd5e3cdf84e6c1f515863b98f7244b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Dec 12 16:43:53 2014 -0500
+
+ LP#1402797 Actually do search button, too
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 0 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 75ac833a0eecfa4dddec70ebd197fb683bdf9e8a
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Dec 12 16:41:24 2014 -0500
+
+ LP#1402797 Focus patron search field on search, expand, clear
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+5 3 Open-ILS/src/templates/staff/circ/patron/t_search.tt2
+6 0 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 27b3ee4e33c7b1c90325a019b04c1c96cc2f8773
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Dec 12 14:02:29 2014 -0500
+
+ LP#1402797 Use .finally() instead of hash-y syntax~
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/web/js/ui/default/staff/circ/patron/checkout.js
+
+commit 0bc1a174b0ed23b34921b4b9ad66731a96202859
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Fri Dec 12 14:01:59 2014 -0500
+
+ LP#1402797 Apply focus in the .finally() in case there was a popup
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+3 1 Open-ILS/web/js/ui/default/staff/circ/patron/checkout.js
+
+commit b481c74c0a2ad59fad2ad2e90d6d3957b9800c14
+Author: Jason Etheridge <jason at esilibrary.com>
+Date: Fri Dec 5 16:59:30 2014 -0500
+
+ LP#1402797 fix checkout focus after patron load
+
+ Thanks to berick and jcamins, and to eeevil for actually nailing the solution
+
+ Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+3 2 Open-ILS/web/js/ui/default/staff/circ/patron/checkout.js
+
+commit d37e4d0bbaa9292577e413f1cb4166222411123c
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Thu Dec 4 17:22:46 2014 -0500
+
+ LP#1402797 Repair browser client dropdown buttons
+
+ Angular-ui-bootstrap as of version ~0.11.2 does not want bare
+ "dropdown-toggle" attributes within action link tags. When present,
+ they prevent the dropdown button from opening.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+5 5 Open-ILS/src/templates/staff/cat/catalog/t_catalog.tt2
+8 8 Open-ILS/src/templates/staff/circ/checkin/t_checkin.tt2
+2 2 Open-ILS/src/templates/staff/circ/in_house_use/index.tt2
+2 2 Open-ILS/src/templates/staff/circ/patron/t_checkout.tt2
+2 3 Open-ILS/src/templates/staff/share/t_autogrid.tt2
+
+commit bf5052ff0fe997d5c6b51ef196774952a68289ee
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Dec 3 14:57:54 2014 -0500
+
+ LP#1402797 webby: repair Hatch type=text printing
+
+ When printing text, Hatch was receiving no print content due to some
+ code refactoring. Repaired.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/web/js/ui/default/staff/services/print.js
+
+commit 7f6170bd1cca9fe41d7f6074e118231dda5e04e3
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Dec 3 12:48:12 2014 -0500
+
+ LP#1402797 Avoid org tree retrieval race condition on patron app
+
+ Avoid calling egOrg.ancestors() during startup, because the org unit
+ tree is not guarantee to be available until startup has completed. This
+ was causing an occasional JS excpetion in the patron app pages, which
+ prevented the pages from loading.
+
+ The error in question:
+
+ TypeError: Cannot read property 'map' of undefined
+ at Object.service.get (https://host/js/ui/default/staff/services/org.js:21:25)
+ at Object.service.ancestors (https://host/js/ui/default/staff/services/org.js:34:28)
+ at Object.egCore.env.classLoaders.actsc (https://host/js/ui/default/staff/circ/patron/app.js:41:37)
+ at https://host/js/ui/default/staff/services/env.js:77:55
+ at Object.r [as forEach] (https://host/js/ui/default/staff/build/js/angular.min.js:7:290)
+ at Object.service.load (https://host/js/ui/default/staff/services/env.js:76:17)
+ at https://host/js/ui/default/staff/services/startup.js:64:23
+ at J (https://host/js/ui/default/staff/build/js/angular.min.js:101:96)
+ at https://host/js/ui/default/staff/build/js/angular.min.js:102:259
+ at h.$eval (https://host/js/ui/default/staff/build/js/angular.min.js:113:32)
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+12 13 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 2c7d8eb5085e283d7e0e702e41053db58e5ef251
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Dec 3 16:40:50 2014 -0500
+
+ LP#1402797 Adjust timestamp with local timezone before truncating to the date
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+7 1 Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js
+
+commit 49c1dbc6f06a299ecbf1780f5b3439322f5b38aa
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Dec 3 10:54:34 2014 -0500
+
+ LP#1402797 Add usr and requestor columns to the hold pull list
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 0 Open-ILS/src/templates/staff/circ/holds/t_shelf_list.tt2
+4 4 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+
+commit 09ed139f362b41a93da82afb8457dfa623ac8374
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Dec 3 10:54:13 2014 -0500
+
+ LP#1402797 Begin teaching grid about class hierarchies for labels
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+40 30 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit 032944674c518d3fe99b9830f2ecdbbb71d559e3
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Dec 3 10:53:35 2014 -0500
+
+ LP#1402797 Fetch old circ when the user is not the same (API misuse)
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+21 0 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit c5670d423867fd13ca1e175bde954836b69e3b75
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Tue Dec 2 17:28:01 2014 -0500
+
+ LP#1402797 Browser client checkout 'Done' clears current user
+
+ Clicking the 'Done' button after checkout resets the patron side bar and
+ action tabs to completely hide the previous patron's data.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+14 6 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit f577998f61a22c503b9c64865044d44f4d99a6dd
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Nov 26 10:48:07 2014 -0500
+
+ LP#1402797 Remove useless options in record bucket export
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+0 2 Open-ILS/src/templates/staff/cat/bucket/record/t_bucket_export.tt2
+
+commit 8d4528d0c4495b7b68b699a37c5f2897015a48ff
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Nov 12 15:00:07 2014 -0500
+
+ LP#1402797 Allow the status bar to be hidden
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+8 0 Open-ILS/src/templates/staff/statusbar.tt2
+
+commit 9133c6f3fd31eb66c580d53b39810215356b6207
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Nov 12 10:46:43 2014 -0500
+
+ LP#1402797 Separate stock and custom penalty type models
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+3 3 Open-ILS/src/templates/staff/circ/share/t_new_message_dialog.tt2
+5 1 Open-ILS/web/js/ui/default/staff/circ/services/circ.js
+
+commit ab2f8bd76707647800d9e860319eff10e676bf45
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Nov 11 13:26:21 2014 -0500
+
+ LP#1402797 Supply top-level method for uncanceling holds
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+8 0 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+
+commit 0cdb0e5a40f5fe3c78750e193369706467754d63
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Nov 11 13:25:55 2014 -0500
+
+ LP#1402797 Fix boolean assumption
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit 354ada2cf8af416d9634a09cc81922a5ca052f30
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Nov 11 13:25:25 2014 -0500
+
+ LP#1402797 Sort by class, and keep columns from one class together
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/src/templates/staff/share/t_autogrid.tt2
+13 13 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit 843d2a2ebdfc161ea5883bb0e420dbf9bb8fff42
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Tue Nov 11 13:24:39 2014 -0500
+
+ LP#1402797 Adjust the default for penalty type so it is selected
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 2 Open-ILS/src/templates/staff/circ/share/t_new_message_dialog.tt2
+
+commit 0331e15f55c8c07a2188df66134402b746a28bb1
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 11:06:14 2014 -0400
+
+ LP#1402797 Add invalid-address alert
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+4 0 Open-ILS/src/templates/staff/circ/patron/t_alerts.tt2
+23 0 Open-ILS/web/js/ui/default/staff/circ/patron/app.js
+
+commit d14fc8865e68d8157956aed023a4cecc68b2dc90
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 10:50:03 2014 -0400
+
+ LP#1402797 Add Check Number input
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+9 0 Open-ILS/src/templates/staff/circ/patron/t_bills.tt2
+4 2 Open-ILS/web/js/ui/default/staff/circ/patron/bills.js
+
+commit ddf43665a6ad9050599d4cc63225b3d4b48231c5
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 10:38:15 2014 -0400
+
+ LP#1402797 Add the ability (and action) to uncancel holds
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 0 Open-ILS/src/templates/staff/cat/catalog/t_holds.tt2
+2 0 Open-ILS/src/templates/staff/circ/holds/t_pull_list.tt2
+2 0 Open-ILS/src/templates/staff/circ/holds/t_shelf_list.tt2
+2 0 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+17 0 Open-ILS/src/templates/staff/circ/share/t_uncancel_hold_dialog.tt2
+43 0 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+ create mode 100644 Open-ILS/src/templates/staff/circ/share/t_uncancel_hold_dialog.tt2
+
+commit 93c8a2e347804b89b59d7feb311cf09574122c0e
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 10:18:07 2014 -0400
+
+ LP#1402797 Ignore the "current_copy" field, we already get that separately
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 1 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+
+commit 466345920c0f7fa7d3cbb2f97462cd84a05621ba
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 10:17:49 2014 -0400
+
+ LP#1402797 Teach autogrid how to ignore fields explicitly
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+9 2 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit e705bbe28430a26c9da76ea0edbde5fb6484256c
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 09:57:11 2014 -0400
+
+ LP#1402797 Add patron barcode and alias to hold lists where appropriate
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+3 0 Open-ILS/src/templates/staff/cat/catalog/t_holds.tt2
+4 0 Open-ILS/src/templates/staff/circ/patron/t_holds_list.tt2
+8 2 Open-ILS/web/js/ui/default/staff/circ/services/holds.js
+
+commit 21e13fdfb07d26dce0440815817d737313ffddf9
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 09:06:53 2014 -0400
+
+ LP#1402797 Fix "scan item for missing pieces" label to say Item instead of Patron
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+3 3 Open-ILS/src/templates/staff/cat/item/missing_pieces.tt2
+
+commit 428a96c5292ea4b910fc6f58f8f8ca0006090c8b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 09:01:21 2014 -0400
+
+ LP#1402797 Make "Checkout" the consistent spelling in the IDL
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+4 4 Open-ILS/examples/fm_IDL.xml
+
+commit 751688cb2dca5e313faed3131b02d2f3b80ac4e6
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 08:59:02 2014 -0400
+
+ LP#1402797 Comment out Hide/Show All in autogrid
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 0 Open-ILS/src/templates/staff/share/t_autogrid.tt2
+
+commit d2c2967141402219c589ef2a17c3de5379a944c5
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Oct 30 08:57:45 2014 -0400
+
+ LP#1402797 Add label to custom penalty dropdown
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+1 0 Open-ILS/src/templates/staff/circ/share/t_new_message_dialog.tt2
+
+commit 6f7277e56ed56558483af7818f39939c10f1317c
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Sep 22 12:03:48 2014 -0400
+
+ LP#1402797 Push explicitly added columns to the top and keep the explicit order, then sort the rest by their labels
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+11 0 Open-ILS/web/js/ui/default/staff/services/grid.js
+
+commit 434f2de78ea8fb8470b7668ef4c76bc27dfe3288
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Sep 22 12:02:55 2014 -0400
+
+ LP#1402797 Add catalog search to the search menu in the nav bar
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+6 0 Open-ILS/src/templates/staff/navbar.tt2
+
+commit df2c16dc63c16ee37e7beb938ae1f5eb85580ffc
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Mon Sep 22 12:02:33 2014 -0400
+
+ LP#1402797 Add checkout/in workstation colums to the available set
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+2 0 Open-ILS/src/templates/staff/circ/patron/t_items_out.tt2
+1 1 Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js
+
+commit 3c7bd0b1b9edd1600f0db9bfff2bd14cc36a0301
+Author: Josh Stompro <stomproj at larl.org>
+Date: Wed Nov 12 09:19:11 2014 -0600
+
+ LP#1390138: Updating Upgrade and Install docs for 2.7
+
+ Upgrade Docs
+ - Bolded all linux user names so the format matches the install docs.
+ - Added note about postgres 9.3 being recommended version and 9.1 being the minium version.
+ - Added Fedora to list of supported linux distros so it matches install docs.
+ - Added a note about the different apache config files for apache 2.4+ vs Apache 2.2.
+ - Added a link to troubleshooting section of install docs.
+
+ Install Docs
+ - Added notes about 9.3 being recommened version of postgres and 9.1 being the minimum.
+ - Changed opensrf version from 2.3.0 to 2.4.0
+
+ Signed-off-by: Josh Stompro <stomproj at larl.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+18 7 docs/installation/server_installation.txt
+42 31 docs/installation/server_upgrade.txt
+
+commit 9452d114f63b2340ced3c301a05bf2c17f4d53df
+Author: Ben Shum <bshum at biblio.org>
+Date: Tue Feb 3 15:54:05 2015 -0500
+
+ LP#1414112: Stamping upgrade script for spaces in record attr values
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+250 0 Open-ILS/src/sql/Pg/upgrade/0904.schema.allow_spaces_as_ff_attr_values.sql
+0 250 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.allow_spaces_as_ff_attr_values.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0904.schema.allow_spaces_as_ff_attr_values.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.allow_spaces_as_ff_attr_values.sql
+
+commit eda58b7612de8c7438d545b6b97693b751d46e4b
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Mon Jan 12 13:13:03 2015 -0500
+
+ LP#1409844: Towards more meaningful catalogue <title> elements
+
+ Currently the catalogue <title> elements are formed by concatenating the page
+ title to "Catalog - ". This means that on browsers with more than a few tabs
+ open, users will only see "Catalog -", which doesn't help them navigate their
+ tabs. Also, in search results in general search engines, "Catalog - " is
+ expected to be a significant word as it appears first in the title of the page.
+
+ Instead, let's remove the "Catalog - " prefix entirely and add "- <library
+ name>" as a suffix to the page title. That way, a user will see the page title
+ in bookmarks, search results, and other contexts with the most important
+ information up front (whether that's the title of the work in record details,
+ or the fact that it's a search for some string), followed by the name of the
+ library to give it a specific context.
+
+ In addition, use the name of the library in the OpenSearch definition to be
+ more meaningful than the current hardcoded "Evergreen OpenSearch" (many users
+ will not even know what Evergreen is, if they stumble across the little "Add
+ search engine" widget at all).
+
+ And finally, use the HTML and URI filters appropriately to avoid any possible
+ damage :)
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+5 2 Open-ILS/src/templates/opac/parts/base.tt2
+
+commit e75501d30bda5b689c059559f59a4d58b2fe1388
+Author: Ben Shum <bshum at biblio.org>
+Date: Tue Jan 13 17:00:16 2015 -0500
+
+ LP#980296: Stamping upgrade script for void lost on claims returned, etc.
+
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+49 0 Open-ILS/src/sql/Pg/upgrade/0903.data.coust_void_lost_on_claimsreturned.sql
+0 49 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_void_lost_on_claimsreturned.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0903.data.coust_void_lost_on_claimsreturned.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_void_lost_on_claimsreturned.sql
+
+commit db91d15cea603053f6ff0f2a6bca9e2feac0c3dd
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Mon Feb 10 01:03:12 2014 -0500
+
+ LP#980296: Release notes entry for voiding lost on Claims Return
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+14 0 docs/RELEASE_NOTES_NEXT/Circulation/void-lost-on-claims-returned.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/Circulation/void-lost-on-claims-returned.txt
+
+commit a98eac1206a2a6713ad7e4cefb234311e9e91d41
+Author: Jason Stephenson <jason at sigio.com>
+Date: Sun Dec 7 13:55:53 2014 -0500
+
+ LP#980296: pgtap tests for the void on claims returned org settings.
+
+ A single pgtap file to check if the 4 new settings exist in the database.
+
+ Signed-off-by: Jason Stephenson <jason at sigio.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+45 0 Open-ILS/src/sql/Pg/t/lp980296-void-lost-lo-claims-returned.pg
+ create mode 100644 Open-ILS/src/sql/Pg/t/lp980296-void-lost-lo-claims-returned.pg
+
+commit fc361aa2f9c2f3fc9f001e534420dbd1a644e8a2
+Author: Jason Stephenson <jason at sigio.com>
+Date: Sun Dec 7 13:41:42 2014 -0500
+
+ LP#980296: Update void on claims returned for longoverdue status.
+
+ We add settings for voiding longoverdue fees on claims returned.
+
+ We modify code in Circ.pm to check those settings and void those
+ bills when a circulation is claims returned.
+
+ We also make some logical repairs to the new void_lost function
+ in CircCommon.pm and to event handling where that function is
+ called in set_circ_claims_returned in Circ.pm.
+
+ Signed-off-by: Jason Stephenson <jason at sigio.com>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+36 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm
+2 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
+22 0 Open-ILS/src/sql/Pg/950.data.seed-values.sql
+23 1 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_void_lost_on_claimsreturned.sql
+
+commit 806ecaaf37da2162d8cb507b2a20254c53fea531
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Mon Oct 1 17:10:25 2012 -0400
+
+ LP#980296: Add void of lost processing fee on claims returned.
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+11 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm
+1 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
+9 0 Open-ILS/src/sql/Pg/950.data.seed-values.sql
+9 0 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_void_lost_on_claimsreturned.sql
+
+commit 8efbcf3b1af96b740a0b43b279d09cd4cbbc301e
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Mon Oct 1 14:30:44 2012 -0400
+
+ LP#980296: Void Lost Fines if copy claims returned.
+
+ Add an ou setting (circ.void_lost_on_claimsreturned) to control whether or
+ not lost fines are voided when a lost circulation is claims returned.
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+11 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm
+29 0 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
+12 2 Open-ILS/src/sql/Pg/950.data.seed-values.sql
+18 0 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_void_lost_on_claimsreturned.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.data.coust_void_lost_on_claimsreturned.sql
+
+commit 615c79d7a6be08be43db7a162b47ab7704c8b608
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Jan 9 10:42:40 2015 -0500
+
+ LP#1392759 Add 'bzr' to 'packager' targets
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+1 0 Open-ILS/src/extras/install/Makefile.debian-jessie
+1 0 Open-ILS/src/extras/install/Makefile.debian-wheezy
+1 0 Open-ILS/src/extras/install/Makefile.ubuntu-precise
+1 0 Open-ILS/src/extras/install/Makefile.ubuntu-trusty
+
+commit e6ce8fe0cd03ac4b54f85cc0fbcdb3b707774348
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Thu Jan 8 10:09:08 2015 -0500
+
+ LP#1392759 dev/pack makefile.install repairs
+
+ * remove 'make', since you can't execute a Makefile without it.
+ * remove duplicate installation of auto* packages for debian-wheezy
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0 1 Open-ILS/src/extras/install/Makefile.debian-jessie
+0 5 Open-ILS/src/extras/install/Makefile.debian-wheezy
+0 1 Open-ILS/src/extras/install/Makefile.ubuntu-precise
+0 1 Open-ILS/src/extras/install/Makefile.ubuntu-trusty
+
+commit 239525e20265f0abf2191dec0259a9466660ebc8
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Jan 7 11:55:47 2015 -0500
+
+ LP#1392759 dev/packager Makefile.install additions
+
+ Add additional packages to the "packager" target to help support
+ building Evergreen packages on machines where Evergreen and its prereqs
+ are not installed.
+
+ The "packager" target now depends internally on the "developer" target,
+ since packagers have to build the browser client dependencies.
+
+ Since older OSes have to build the nodejs dependencies, the autoconf,
+ etc. targets have been moved into the developer target, again to support
+ "headless" packaging.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+13 1 Open-ILS/src/extras/install/Makefile.debian-jessie
+20 1 Open-ILS/src/extras/install/Makefile.debian-wheezy
+16 1 Open-ILS/src/extras/install/Makefile.ubuntu-precise
+13 1 Open-ILS/src/extras/install/Makefile.ubuntu-trusty
+
+commit 249ea3b9fc0b7f41e579c5bb5a1a2c3b6eb08629
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Nov 14 10:45:07 2014 -0500
+
+ LP#1392759 developer/packager Makefile.install targets
+
+ * Adds <osname>-developer target for installing packages only needed by
+ developers installing from source. Currently, this is limited to
+ packages needed for managing browser client dependencies, but others
+ could be added later.
+
+ * Adds <osname>-packager target for installing packages needed to build
+ Evergreen release bundles.
+
+ * Updates README install docs to reference these new targets.
+
+ * Updates README install docs to remove requirements for installing
+ libtool/automake/autoconf, since those packages will have been
+ installed during the OpenSRF install (which is required).
+
+ * NOTE: this does not include new Makefile.install targets for fedora
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+22 0 Open-ILS/src/extras/Makefile.install
+10 0 Open-ILS/src/extras/install/Makefile.common
+29 0 Open-ILS/src/extras/install/Makefile.debian-jessie
+18 0 Open-ILS/src/extras/install/Makefile.debian-wheezy
+18 0 Open-ILS/src/extras/install/Makefile.ubuntu-precise
+29 0 Open-ILS/src/extras/install/Makefile.ubuntu-trusty
+25 8 docs/installation/server_installation.txt
+
+commit 1cfbba3e3616874936967f98a734c8e9e87ed57f
+Author: Dan Scott <dscott at laurentian.ca>
+Date: Sun Jan 4 16:26:04 2015 -0500
+
+ LP#1407507: Update relator codes
+
+ Per bug # 1046149, we added a script that will generate the contents of the
+ opac/parts/relators.tt2 file to provide more granular credits for added entries
+ that have relator codes. However, we haven't run that script since 2013, and
+ as there are a number of new relator codes, along with some revisions to the
+ existing relator terms, we should update relators.tt2 accordingly.
+
+ Signed-off-by: Dan Scott <dscott at laurentian.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+56 8 Open-ILS/src/templates/opac/parts/relators.tt2
+
+commit 73f53276f558693126e0e681ea1dad172ff70231
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Thu Dec 11 12:12:51 2014 -0500
+
+ LP#1074096: Remove Bib Call Number Search
+
+ Removes the Bib Call Number search as a default numeric search in the
+ catalog. Release notes include instructions for restoring it for those
+ sites that wish to restore it.
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Rogan Hamby <rogan.hamby at gmail.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0 1 Open-ILS/src/templates/opac/parts/advanced/numeric.tt2
+9 0 docs/RELEASE_NOTES_NEXT/OPAC/remove-bib-cn.txt
+ create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/remove-bib-cn.txt
+
+commit 523ac8e56cfb93077e20ba8dfc0fdc0b9b1ec49c
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Mon Jan 12 11:58:40 2015 -0500
+
+ LP#1386347 stamping upgrade for hold clear copy maps
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+1 1 Open-ILS/src/sql/Pg/002.schema.config.sql
+22 0 Open-ILS/src/sql/Pg/upgrade/0902.schema.clear_hold_copy_map.sql
+0 20 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.clear_hold_copy_map.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/0902.schema.clear_hold_copy_map.sql
+ delete mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.clear_hold_copy_map.sql
+
+commit c6ff6f08d84bc4dcf00b2d78b0e8ebc9ba496240
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Thu Dec 11 14:36:11 2014 -0500
+
+ LP#1386347 clear maps at fulfillment time
+
+ For backwards compatibility with queue stats info on captured holds,
+ clear hold copy maps at fulfillment time instead of capture time, as
+ before.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+1 1 Open-ILS/src/sql/Pg/090.schema.action.sql
+1 1 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.clear_hold_copy_map.sql
+
+commit a04701774c43dbb0dd07ac5c33bac0581ed7d8fb
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Wed Oct 29 13:08:10 2014 -0400
+
+ LP#1386347 Remove more unneeded map deleters
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+0 7 Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm
+0 6 Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/BibCommon.pm
+
+commit 13ca7ffe3b65da038031b9d68015fd78d90db31c
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Wed Oct 29 10:37:29 2014 -0400
+
+ LP#1386347: Clear hold-copy-map efficiently
+
+ When capturing or canceling a hold, we can clear the hold-copy-map
+ with a trigger, saving the time of the user, and making the business
+ logic simpler.
+
+ LP#1386347 copy map trigger wants a RETURN
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+0 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+0 17 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm
+16 0 Open-ILS/src/sql/Pg/090.schema.action.sql
+20 0 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.clear_hold_copy_map.sql
+ create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.schema.clear_hold_copy_map.sql
+
+commit f3a031f28ca294229d842106b09a9065132787c6
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Thu Dec 4 16:28:32 2014 -0500
+
+ LP#1396359: Add entries for 345 and 346 tags to en-US/marcedit-tooltips.xml.
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+62 0 Open-ILS/xul/staff_client/server/locale/en-US/marcedit-tooltips.xml
+
+commit 605bce055e8727885b1a9b88bd25f9fb0c994603
+Author: Jason Stephenson <jstephenson at mvlc.org>
+Date: Tue Nov 25 16:29:26 2014 -0500
+
+ LP#1396359: Add tooltips for 264, 344, & 347 tags to en-US/marcedit-tooltips.xml.
+
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+138 0 Open-ILS/xul/staff_client/server/locale/en-US/marcedit-tooltips.xml
+
+commit 7af5e29c321acf2ec3c649c69ab23a936358b9f8
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Thu Jan 16 15:07:40 2014 -0500
+
+ Changes to smooth out make_release
+
+ 1) Make the fake 'HeadURL' into a URL which works with our web repo.
+ Note that this has 'tags/' hardcoded in, so it only works with true
+ release branches (e.g. rel_x_y_z) not "working" branches
+ (e.g. rel_x_y).
+
+ 2) Change range selector when building log to better exclude commits
+ from previous releases.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+2 2 build/tools/make_release
+
+commit 5e65e3026cf2165bf57b04216ccd0534f722fe03
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Tue Jan 6 16:59:01 2015 -0500
+
+ Forward-port 2.6.4 upgrade script
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+170 0 Open-ILS/src/sql/Pg/version-upgrade/2.6.3-2.6.4-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.6.3-2.6.4-upgrade-db.sql
+
+commit 78d6a87edb62fea501676432f5a2ca65f176fbe4
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Mon Dec 29 17:05:39 2014 -0500
+
+ LP#1406367 Fine generator skips no-fines transactions (parallel)
+
+ Avoid inspecting no-fines transactions when running the fine generator
+ in parallel mode.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+4 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 80b673db266e7bb3550469629aaf8f405935ea56
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Mon Dec 29 14:04:45 2014 -0500
+
+ LP#1406367 Fine generator skips no-fines transactions
+
+ Filter out any circs or booking reservations which will never be billed
+ in the initial overdue transactions query used by the fine generator.
+ This allows us to avoid loading rows into memory that the fine generator
+ will ignore anyway.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+14 1 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 09642a753fd2bd3addeb297380b2ff6b4fb414dc
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Fri Dec 19 12:14:10 2014 -0500
+
+ LP#1406367 Reduce Fine gen. API memory use
+
+ Avoid loading the full set of billable transaction objects into
+ memory when generating fines to reduce the memory footprint of the
+ open-ils.storage fine generater API. Instead, load transaction IDs
+ on startup, then fetch individual transactions as needed.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+29 3 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 21b6220b89c5f27452593200f8bea22cb2db33b2
+Author: Yamil Suarez <yamil at yamil.com>
+Date: Fri Dec 12 17:33:20 2014 -0500
+
+ Docs: Circulation - Patron Record web client updated content
+
+ There are still some sections missing, like 'Staff-Generated
+ Penalties/Messages' and 'merging patrons'.
+
+ Signed-off-by: Yamil Suarez <yamil at yamil.com>
+
+407 0 docs/circulation/circulation_patron_records_web_client.txt
+- - docs/media/circulation_patron_records-11_web_client.png
+- - docs/media/circulation_patron_records-18_web_client.png
+- - docs/media/circulation_patron_records-19_web_client.png
+- - docs/media/circulation_patron_records-1a_web_client.png
+- - docs/media/circulation_patron_records-1b_web_client.png
+- - docs/media/circulation_patron_records-23_web_client.png
+- - docs/media/circulation_patron_records-24_web_client.png
+- - docs/media/circulation_patron_records-2_web_client.png
+- - docs/media/circulation_patron_records-9_web_client.png
+2 0 docs/root.txt
+ create mode 100644 docs/circulation/circulation_patron_records_web_client.txt
+ create mode 100644 docs/media/circulation_patron_records-11_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-18_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-19_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-1a_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-1b_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-23_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-24_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-2_web_client.png
+ create mode 100644 docs/media/circulation_patron_records-9_web_client.png
+
+commit d7e1c5e5389db5b6bc3e4d25ef9942d78a76902c
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Fri Dec 5 14:28:02 2014 -0500
+
+ DOCS: Tab documentation for web client
+
+ Replacing the XUL-based tab docs with general tips for using web browser
+ controls, shortcuts, add-ons to support navigation in the web client.
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+23 0 docs/admin/web_client-browser-tab-shortcuts.txt
+10 0 docs/root.txt
+ create mode 100644 docs/admin/web_client-browser-tab-shortcuts.txt
+
+commit b3a7ce9d63ee6ab4e57ad81addeaf13f6cd42c02
+Author: Kathy Lussier <klussier at masslnc.org>
+Date: Fri Dec 5 12:24:45 2014 -0500
+
+ DOCS: Logging into the web client
+
+ Adding a login section to the web client docs.
+
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+
+53 0 docs/admin/web_client-login.txt
+ create mode 100644 docs/admin/web_client-login.txt
+
+commit 14784b37fada2826ba4cd445a4a3f2d83b297bb9
+Author: Remington Steed <rjs7 at calvin.edu>
+Date: Fri Dec 5 10:29:48 2014 -0500
+
+ Docs: Web Client preview intro
+
+ This commit adds an introduction for the Web Client preview. It explains
+ what to expect as development continues, and where to give feedback. It
+ also includes the rationale from the 2.7 release notes.
+
+ Signed-off-by: Remington Steed <rjs7 at calvin.edu>
+
+48 0 docs/root.txt
+
+commit b915d4bbf2cef462faa0df1bc6cfe324cdfba477
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Wed Nov 19 18:08:31 2014 -0500
+
+ Revert "LP#1198465 Allow fine generator to respect a stop_fines filter"
+
+ This reverts commit e1fdcd3a6885baac3f86402e330aef3d8b36c681.
+
+ The code failed in the case of restoring voided lost overdues together
+ with generating new lost overdues on checkin.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+6 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit ac6ba25fcc4c885060e22f57bfd662619a0e572b
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Wed Nov 19 18:06:18 2014 -0500
+
+ Revert "LP#1198465 lost overdues generated in main xact"
+
+ This reverts commit d2a521c0ff32e9921bfc93cb86b2c917e5eda92e.
+
+ The code failed in the case of restoring voided lost overdues together
+ with generating new lost overdues on checkin.
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+76 22 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit d2a521c0ff32e9921bfc93cb86b2c917e5eda92e
+Author: Bill Erickson <berickxx at gmail.com>
+Date: Thu Sep 25 12:49:17 2014 -0400
+
+ LP#1198465 lost overdues generated in main xact
+
+ Generate overdue fines for lost checkins (if configured) within the main
+ body of the checkin transaction to avoid complications with negative
+ balance reconciliation.
+
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+22 76 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit e1fdcd3a6885baac3f86402e330aef3d8b36c681
+Author: Mike Rylander <miker at esilibrary.com>
+Date: Thu Sep 25 12:58:45 2014 -0400
+
+ LP#1198465 Allow fine generator to respect a stop_fines filter
+
+ In order to support situations where billings should be generated on
+ specific circs, even when stop_fines is set, we allow a filter to
+ be passed. The default of not passing a filter is the same as requiring
+ that stop_fines be NULL, which is the pre-commit behavior.
+
+ We also remove a never-used parameter.
+
+ Signed-off-by: Mike Rylander <miker at esilibrary.com>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2 6 Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm
+
+commit 600b50819530a66b8e5260e579efc64634708017
+Author: Jason Etheridge <jason at esilibrary.com>
+Date: Fri Nov 7 13:38:39 2014 -0500
+
+ LP#1386260: DST bugs in perl live tests (04-overdue_with_closed_dates.t)
+
+ more fixes
+
+ Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+6 15 Open-ILS/src/perlmods/live_t/04-overdue_with_closed_dates.t
+
+commit af4686075df25a85ad60905a4f4266ff6c800059
+Author: Jason Etheridge <jason at esilibrary.com>
+Date: Fri Nov 7 13:00:10 2014 -0500
+
+ LP#1386260: DST bugs in perl live tests (03-overdue_circ.t)
+
+ Use safer date math to handle bug with DST
+
+ Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4 5 Open-ILS/src/perlmods/live_t/03-overdue_circ.t
+
+commit b343d1c308b6d7549f0289b470f58fd45afb5c58
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date: Tue Jun 12 14:08:04 2012 -0400
+
+ LP#1012308: Teach the staff client to use titlesort
+
+ At least in some places.
+
+ Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+ Signed-off-by: Michele Morgan <mmorgan at noblenet.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+39 2 Open-ILS/xul/staff_client/server/circ/util.js
+
+commit 64fcd3095f3a6ba9bc6148c81340fc108c890db6
+Author: Liam Whalen <liam.whalen at bc.libraries.coop>
+Date: Sun Jul 13 10:49:07 2014 -0700
+
+ LP1282277_LP1282286_Unitialized_Vars_FIx
+
+ The commit to prompt users if they are going to lose data in MARC edit
+ added some new variables (tabs, and tab) in various files. If the MARC
+ edit window does not appear in a tab, then these variables remain
+ unitialzed and cause problems for MARC edits that appear in their own
+ window. By checking for the existence of the variables before MARC
+ edito loads in its own windown, the problems are resolved.
+
+ Signed-off-by: Liam Whalen <liam.whalen at bc.libraries.coop>
+ Signed-off-by: Jennifer Pringle <jpringle at sitka.bclibraries.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+4 2 Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+40 31 Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+20 9 Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+commit 15162f6428c165aac10e3ffb25fa64f2df5d19a5
+Author: Liam Whalen <liam.whalen at bc.libraries.coop>
+Date: Mon Jul 7 13:55:05 2014 -0700
+
+ LP1282277 & LP1282286 Double call to MARC edit save fixed
+
+ The code currently calls the MARC edit save feature twice due to a copy
+ and paste error. This commit removes the duplicate call to save.
+
+ Signed-off-by: Liam Whalen <liam.whalen at bc.libraries.coop>
+ Signed-off-by: Jennifer Pringle <jpringle at sitka.bclibraries.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+0 1 Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+commit a4a165787fd88b6c3f1db8221c4d591c13b8d815
+Author: Liam Whalen <liam.whalen at bc.libraries.coop>
+Date: Sat Jun 28 13:52:45 2014 -0700
+
+ LP1282277 & LP1282286 Fixed error with Copy Editor
+
+ With the previous fix applied, it is impossible to edit values within the copy
+ editor. A javascript error occurs. This commit fixes that problem.
+
+ Signed-off-by: Liam Whalen <liam.whalen at bc.libraries.coop>
+ Signed-off-by: Jennifer Pringle <jpringle at sitka.bclibraries.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+24 13 Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+
+commit e9de9d7e1944ff0b467f204ba898b5f52073cac0
+Author: Liam Whalen <liam.whalen at bc.libraries.coop>
+Date: Sun Sep 15 19:26:16 2013 -0700
+
+ LP1282277 & LP1282286 MARC edit save warning & TCN search warning
+
+ LP1282286 TCN search shortcut incorrectly prompts for lost data
+
+ When cataloguing in the Marc Edit view, users can hit Shift-F3 to bring
+ up the TCN search dialog box. After entering a TCN and confirming their
+ entry, they will be taken to the record specified by the TCN entered.
+
+ However, if the user has edited some data on the current marc record,
+ then another dialog box should appear before the TCN search box that
+ gives them a warning that they will lose data if they go to a new
+ record.
+
+ Currently, whenver a user presses the Shift-F3 shortcut, they are given
+ a warning about losing data regardless of the current state of the marc
+ record being edited.
+
+ When a record is edited, a key press event is captured and the function
+ oils_lock_page is called to record the page as edited. In the case of
+ this bug, the Shift key is not being ignored. So, when the user
+ presses Shift-F3, the marc record is locked as if it were edited, then
+ the TCN search function is called. After the user enters a TCN and
+ presses OK, the warning about lost data is displayed because the
+ pressing of Shift marked the record as edited.
+
+ This fix adds a check for the ev.shiftKey event in the
+ set_lock_on_keypress function call in marcedit.js.
+
+ Currently, if the user has edited a marc record and
+ pressed Shift-F3 to retrieve another record via TCN, then the prompt for
+ the TCN appears and after the user ok's that prompt they are prompted to
+ make sure they are ok with losing data.
+
+ This modification causes the prompt for lost data to appear before the
+ prompt for the TCN value. It requires modifying
+ chrome/content/main/menu.js, which will require a staff client update.
+ This fix also ensures that if users confirm that it is ok to lose
+ data but then cancel their TCN searches that they will be prompted that
+ they might lose data again if they do more TCN retrieving.
+
+ LP1282277 Prompt for lost data in Marc Edit
+
+ When using the MARC editor, if you modify a record and then use another
+ UI element to leave the MARC editor, you will be prompted that you might
+ lose data if you leave the MARC editor. Currently, this prompt does not
+ happen if the user uses an Action for This Record drop down menu item.
+ As well, if the user then returns to the MARC editor, the changes are
+ still present, but leaving the MARC editor no longer prompts with a
+ lost data warning.
+
+ This fix, adds checks to the Actions for This Record menu items, and it
+ adds some tab variables to keep track of the state of the MARC editor.
+ That way, if the user leaves then comes back and changes are still
+ present, the user will still get a lose data warning if they try to
+ leave again.
+
+ As well, when ever a key is pressed in MARC Edit that would result in
+ modifying a record, a counter is increased on a semamphor stored on
+ the XUL tab containing the Marc Edit UI. Currently, when the record is
+ saved, this counter is decremented by 1. However, the code checks to
+ see that the counter is 0 in order to determine if the tab is still
+ locked and data might be lost.
+
+ So, to fix this, we check in the unlock_tab code to see if we are in the
+ MARC Editor, and if we are, then we set the counter to 0. The
+ unlock_tab code is used when saving via the Marc Editor. It may be
+ used elsewhere in other parts of the Staff Client, so I have left the
+ original decrement by 1 logic in for all cases other than being in the
+ Marc Editor.
+
+ Conflicts:
+
+ Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+ Open-ILS/xul/staff_client/server/cat/marcedit.js
+ Open-ILS/xul/staff_client/server/cat/marcedit.xul
+
+ The fix was modified, because the previous fix was storing the flags that
+ indicated a change to a MARC record at the window level.
+ This new fix stores them at the tab level. I am keeping this commit
+ message to indicate that there were more Conflicts when mergin Sitka's
+ code into the community code. In case, I missed something and a record
+ of what was done needs to be consulted.
+
+ Conflicts:
+
+ Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+ Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+ Open-ILS/xul/staff_client/chrome/content/main/menu.js
+ Open-ILS/xul/staff_client/server/cat/marcedit.js
+
+ LP1282277 & LP1282286 MARC edit TCN search lose data prompts
+
+ This commit modifies my previous commits. The code now uses the
+ previous versions code to mark a tab as locked and to record that data
+ is saved or not saved. However, when a user returns to the MARC edit
+ screen, if there are changes still present, then the code now locks the
+ tab again and records that there is unsaved data. This should allow all
+ previous functionality to remain while providing the proper warnings
+ when within the MARC editor.
+
+ LP1282277 & LP1282286 MARC Edit and TCN lose data prompt
+
+ This commit sets the tab.marc_edit_changed value to false when the tab
+ is set. This means if an MARC record is edited in a tab then the tab is
+ set to another view, if the user then goes back to MARC edit, the tab
+ will not be locked because the flag will now be set to false. This
+ results in no warning being shown when a user tries to leave a MARC edit
+ page when they have not edited the MARC.
+
+ Signed-off-by: Liam Whalen <liam.whalen at bc.libraries.coop>
+ Signed-off-by: Kyle Tomita <tomitakyle at gmail.com>
+ Signed-off-by: Jennifer Pringle <jpringle at sitka.bclibraries.ca>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+24 2 Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js
+85 37 Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+11 11 Open-ILS/xul/staff_client/chrome/content/cat/opac.xul
+59 2 Open-ILS/xul/staff_client/chrome/content/main/menu.js
+1 0 Open-ILS/xul/staff_client/chrome/content/main/menu_frame.xul
+18 2 Open-ILS/xul/staff_client/server/cat/marcedit.js
+0 3 Open-ILS/xul/staff_client/server/cat/marcedit.xul
+
+commit 321b1f9bad0e00c838e3488eed206a072940bb71
+Author: Pasi Kallinen <pasi.kallinen at pttk.fi>
+Date: Wed Jan 2 15:18:56 2013 +0200
+
+ LP#1095290: Wrap record navigation template next and previous arrows with spans.
+
+ Also affects one translatable string, by moving the arrow outside it;
+ there's no sense having it in the string.
+
+ Signed-off-by: Pasi Kallinen <pasi.kallinen at pttk.fi>
+ Signed-off-by: Kathy Lussier <klussier at masslnc.org>
+ Signed-off-by: Ben Shum <bshum at biblio.org>
+
+3 3 Open-ILS/src/templates/opac/parts/record/navigation.tt2
+
+commit 2df5aff9f202b9d2fa0cb5d2d63ccfbd358b5495
+Author: Thomas Berezansky <tsbere at mvlc.org>
+Date: Mon Sep 9 15:49:47 2013 -0400
+
+ Use xact_start for due date calc instead of now
+
+ If you don't supply a due date when creating a circulation with the
+ open-ils.circ.checkout family of calls, the due date is currently
+ calculated from now(). This code modification changes that so that
+ if a checkout_date is supplied that is used to calculate the due date
+ instead of now().
+
+ This enables some interesting uses of the open-ils.circ module for
+ batch circulation in the cases of offline use from a spreadsheet and
+ not the offline client or in the case of migrating circulations from
+ another ILS into Evergreen.
+
+ Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+ Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+3 2 Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+
+commit 63357cda158a2a70f0f4d99961ac81d1c537b9fc
+Author: Dan Wells <dbw2 at calvin.edu>
+Date: Wed Nov 5 14:21:44 2014 -0500
+
+ Forward-port 2.5.7 upgrade script
+
+ Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+373 0 Open-ILS/src/sql/Pg/version-upgrade/2.5.6-2.5.7-upgrade-db.sql
+ create mode 100644 Open-ILS/src/sql/Pg/version-upgrade/2.5.6-2.5.7-upgrade-db.sql
+
+commit 951b648d8fc770db14bec9d8621d090d8ccb0756
+Author: Bill Erickson <berick at esilibrary.com>
+Date: Fri Aug 1 13:29:41 2014 -0400
+
+ LP#1347774 CStoreEditor anonymous PCRUD additions
+
+ * Exporter repairs : use export_to_level
+ * pcrud personality call argument mod repair
+ * log pcrud personality json_query attempts loudly to ease transition
+ * CStoreEditor anon/pcrud personality live test
+
+ * CStoreEditor anon pcrud default to undef authtoken:
+ The presence of an authtoken ("ANONYMOUS") in the editor can be
+ misleading at higher levels of the code, since it implies a
+ presumably functional authtoken has been provided somewhow.
+ Apply ANONYMOUS only as needed to API calls instead.
+
+ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+ Signed-off-by: Mike Rylander <miker at esilibrary.com>
+
+13 13 Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm
+31 0 Open-ILS/src/perlmods/live_t/07-anon_pcrud.t
+ create mode 100644 Open-ILS/src/perlmods/live_t/07-anon_pcrud.t
+
+commit aa2931cf5e8a69eb06141bb34b86031347d1a67b
+Author: Mike Rylander <mrylander at gmail.com>
+Date: Thu Jul 24 15:03:37 2014 -0400
+
+ LP#1347774 Anonymous PCRUD mode
+
+ Support for anonymous access to public (field_safe=true) IDL data
+ via PCRUD without requiring an authtoken. To use, pass an authtoken of
+ ANONYMOUS.
+
+ Includes initial CStoreEditor plugin for anon pcrud.
+
+ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+ Signed-off-by: Bill Erickson <berickxx at gmail.com>
+
+62 37 Open-ILS/src/c-apps/oils_sql.c
+57 6 Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm
+
+commit 556c52e92f98c501fbd85679b652dc560d9e34b8
+Author: Yamil Suarez <yamil at yamil.com>
+Date: Fri Sep 19 14:56:47 2014 -0400
+
+ Docs: for new "Imported As" column in Vandelay queue results view
+
+ Added explanation of the new "Imported As" menu in "MARC Batch Import/Export"
+ queue results view, also updated screenshots.
+
+ Thanks to Joan Kranich of C/W MARS, for helping research were to make these
+ changes.
+
+ Signed-off-by: Yamil Suarez <yamil at yamil.com>
+
+2 2 docs/cataloging/batch_importing_MARC.txt
+- - docs/media/Batch_Importing_MARC_Records12.jpg
+- - docs/media/Batch_Importing_MARC_Records15.jpg
+- - docs/media/Vandelay_Integration_into_Acquisitions4.jpg
diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
index d750216..753c2db 100644
--- a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
+++ b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
@@ -7,7 +7,7 @@ use OpenILS::Utils::Fieldmapper;
sub ils_version {
# version format is "x-y-z", for example "2-0-0" for Evergreen 2.0.0
# For branches, format is "x-y"
- return "HEAD";
+ return "2-8-0";
}
__PACKAGE__->register_method(
diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 2d5f0f5..7151a33 100644
--- a/Open-ILS/src/sql/Pg/002.schema.config.sql
+++ b/Open-ILS/src/sql/Pg/002.schema.config.sql
@@ -92,6 +92,7 @@ CREATE TRIGGER no_overlapping_deps
FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates');
INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0915', :eg_version); -- berick
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.8.0', :eg_version);
CREATE TABLE config.bib_source (
id SERIAL PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/version-upgrade/2.7.4-2.8.0-upgrade-db.sql b/Open-ILS/src/sql/Pg/version-upgrade/2.7.4-2.8.0-upgrade-db.sql
new file mode 100644
index 0000000..a8a04aa
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/version-upgrade/2.7.4-2.8.0-upgrade-db.sql
@@ -0,0 +1,1464 @@
+--Upgrade Script for 2.7.4 to 2.8.0
+\set eg_version '''2.8.0'''
+BEGIN;
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.8.0', :eg_version);
+
+SELECT evergreen.upgrade_deps_block_check('0902', :eg_version);
+
+CREATE OR REPLACE FUNCTION action.hold_request_clear_map () RETURNS TRIGGER AS $$
+BEGIN
+ DELETE FROM action.hold_copy_map WHERE hold = NEW.id;
+ RETURN NEW;
+END;
+$$ LANGUAGE PLPGSQL;
+
+CREATE TRIGGER hold_request_clear_map_tgr
+ AFTER UPDATE ON action.hold_request
+ FOR EACH ROW
+ WHEN (
+ (NEW.cancel_time IS NOT NULL AND OLD.cancel_time IS NULL)
+ OR (NEW.fulfillment_time IS NOT NULL AND OLD.fulfillment_time IS NULL)
+ )
+ EXECUTE PROCEDURE action.hold_request_clear_map();
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0903', :eg_version);
+
+INSERT INTO config.org_unit_setting_type
+ (name, grp, label, description, datatype)
+ VALUES
+ ('circ.void_lost_on_claimsreturned',
+ 'circ',
+ oils_i18n_gettext('circ.void_lost_on_claimsreturned',
+ 'Void lost item billing when claims returned',
+ 'coust', 'label'),
+ oils_i18n_gettext('circ.void_lost_on_claimsreturned',
+ 'Void lost item billing when claims returned',
+ 'coust', 'description'),
+ 'bool'),
+ ('circ.void_lost_proc_fee_on_claimsreturned',
+ 'circ',
+ oils_i18n_gettext('circ.void_lost_proc_fee_on_claimsreturned',
+ 'Void lost item processing fee when claims returned',
+ 'coust', 'label'),
+ oils_i18n_gettext('circ.void_lost_proc_fee_on_claimsreturned',
+ 'Void lost item processing fee when claims returned',
+ 'coust', 'description'),
+ 'bool');
+
+INSERT INTO config.org_unit_setting_type
+ (name, grp, label, description, datatype)
+ VALUES
+ ('circ.void_longoverdue_on_claimsreturned',
+ 'circ',
+ oils_i18n_gettext('circ.void_longoverdue_on_claimsreturned',
+ 'Void long overdue item billing when claims returned',
+ 'coust', 'label'),
+ oils_i18n_gettext('circ.void_longoverdue_on_claimsreturned',
+ 'Void long overdue item billing when claims returned',
+ 'coust', 'description'),
+ 'bool'),
+ ('circ.void_longoverdue_proc_fee_on_claimsreturned',
+ 'circ',
+ oils_i18n_gettext('circ.void_longoverdue_proc_fee_on_claimsreturned',
+ 'Void long overdue item processing fee when claims returned',
+ 'coust', 'label'),
+ oils_i18n_gettext('circ.void_longoverdue_proc_fee_on_claimsreturned',
+ 'Void long overdue item processing fee when claims returned',
+ 'coust', 'description'),
+ 'bool');
+
+
+SELECT evergreen.upgrade_deps_block_check('0907', :eg_version);
+
+INSERT into config.org_unit_setting_type
+( name, grp, label, description, datatype ) VALUES
+
+( 'circ.checkin.lost_zero_balance.do_not_change',
+ 'circ',
+ 'Do not change fines/fees on zero-balance LOST transaction',
+ 'When an item has been marked lost and all fines/fees have been completely paid on the transaction, do not void or reinstate any fines/fees EVEN IF circ.void_lost_on_checkin and/or circ.void_lost_proc_fee_on_checkin are enabled',
+ 'bool');
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0909', :eg_version);
+
+ALTER TABLE vandelay.authority_match
+ ADD COLUMN match_score INT NOT NULL DEFAULT 0;
+
+-- support heading=TRUE match set points
+ALTER TABLE vandelay.match_set_point
+ ADD COLUMN heading BOOLEAN NOT NULL DEFAULT FALSE,
+ DROP CONSTRAINT vmsp_need_a_tag_or_a_ff_or_a_bo,
+ ADD CONSTRAINT vmsp_need_a_tag_or_a_ff_or_a_heading_or_a_bo
+ CHECK (
+ (tag IS NOT NULL AND svf IS NULL AND heading IS FALSE AND bool_op IS NULL) OR
+ (tag IS NULL AND svf IS NOT NULL AND heading IS FALSE AND bool_op IS NULL) OR
+ (tag IS NULL AND svf IS NULL AND heading IS TRUE AND bool_op IS NULL) OR
+ (tag IS NULL AND svf IS NULL AND heading IS FALSE AND bool_op IS NOT NULL)
+ );
+
+CREATE OR REPLACE FUNCTION vandelay.get_expr_from_match_set(
+ match_set_id INTEGER,
+ tags_rstore HSTORE,
+ auth_heading TEXT
+) RETURNS TEXT AS $$
+DECLARE
+ root vandelay.match_set_point;
+BEGIN
+ SELECT * INTO root FROM vandelay.match_set_point
+ WHERE parent IS NULL AND match_set = match_set_id;
+
+ RETURN vandelay.get_expr_from_match_set_point(
+ root, tags_rstore, auth_heading);
+END;
+$$ LANGUAGE PLPGSQL;
+
+-- backwards compat version so we don't have
+-- to modify vandelay.match_set_test_marcxml()
+CREATE OR REPLACE FUNCTION vandelay.get_expr_from_match_set(
+ match_set_id INTEGER,
+ tags_rstore HSTORE
+) RETURNS TEXT AS $$
+BEGIN
+ RETURN vandelay.get_expr_from_match_set(
+ match_set_id, tags_rstore, NULL);
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+DROP FUNCTION IF EXISTS
+ vandelay.get_expr_from_match_set_point(vandelay.match_set_point, HSTORE);
+
+CREATE OR REPLACE FUNCTION vandelay.get_expr_from_match_set_point(
+ node vandelay.match_set_point,
+ tags_rstore HSTORE,
+ auth_heading TEXT
+) RETURNS TEXT AS $$
+DECLARE
+ q TEXT;
+ i INTEGER;
+ this_op TEXT;
+ children INTEGER[];
+ child vandelay.match_set_point;
+BEGIN
+ SELECT ARRAY_AGG(id) INTO children FROM vandelay.match_set_point
+ WHERE parent = node.id;
+
+ IF ARRAY_LENGTH(children, 1) > 0 THEN
+ this_op := vandelay._get_expr_render_one(node);
+ q := '(';
+ i := 1;
+ WHILE children[i] IS NOT NULL LOOP
+ SELECT * INTO child FROM vandelay.match_set_point
+ WHERE id = children[i];
+ IF i > 1 THEN
+ q := q || ' ' || this_op || ' ';
+ END IF;
+ i := i + 1;
+ q := q || vandelay.get_expr_from_match_set_point(
+ child, tags_rstore, auth_heading);
+ END LOOP;
+ q := q || ')';
+ RETURN q;
+ ELSIF node.bool_op IS NULL THEN
+ PERFORM vandelay._get_expr_push_qrow(node);
+ PERFORM vandelay._get_expr_push_jrow(node, tags_rstore, auth_heading);
+ RETURN vandelay._get_expr_render_one(node);
+ ELSE
+ RETURN '';
+ END IF;
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+DROP FUNCTION IF EXISTS
+ vandelay._get_expr_push_jrow(vandelay.match_set_point, HSTORE);
+
+CREATE OR REPLACE FUNCTION vandelay._get_expr_push_jrow(
+ node vandelay.match_set_point,
+ tags_rstore HSTORE,
+ auth_heading TEXT
+) RETURNS VOID AS $$
+DECLARE
+ jrow TEXT;
+ my_alias TEXT;
+ op TEXT;
+ tagkey TEXT;
+ caseless BOOL;
+ jrow_count INT;
+ my_using TEXT;
+ my_join TEXT;
+ rec_table TEXT;
+BEGIN
+ -- remember $1 is tags_rstore, and $2 is svf_rstore
+ -- a non-NULL auth_heading means we're matching authority records
+
+ IF auth_heading IS NOT NULL THEN
+ rec_table := 'authority.full_rec';
+ ELSE
+ rec_table := 'metabib.full_rec';
+ END IF;
+
+ caseless := FALSE;
+ SELECT COUNT(*) INTO jrow_count FROM _vandelay_tmp_jrows;
+ IF jrow_count > 0 THEN
+ my_using := ' USING (record)';
+ my_join := 'FULL OUTER JOIN';
+ ELSE
+ my_using := '';
+ my_join := 'FROM';
+ END IF;
+
+ IF node.tag IS NOT NULL THEN
+ caseless := (node.tag IN ('020', '022', '024'));
+ tagkey := node.tag;
+ IF node.subfield IS NOT NULL THEN
+ tagkey := tagkey || node.subfield;
+ END IF;
+ END IF;
+
+ IF node.negate THEN
+ IF caseless THEN
+ op := 'NOT LIKE';
+ ELSE
+ op := '<>';
+ END IF;
+ ELSE
+ IF caseless THEN
+ op := 'LIKE';
+ ELSE
+ op := '=';
+ END IF;
+ END IF;
+
+ my_alias := 'n' || node.id::TEXT;
+
+ jrow := my_join || ' (SELECT *, ';
+ IF node.tag IS NOT NULL THEN
+ jrow := jrow || node.quality ||
+ ' AS quality FROM ' || rec_table || ' mfr WHERE mfr.tag = ''' ||
+ node.tag || '''';
+ IF node.subfield IS NOT NULL THEN
+ jrow := jrow || ' AND mfr.subfield = ''' ||
+ node.subfield || '''';
+ END IF;
+ jrow := jrow || ' AND (';
+ jrow := jrow || vandelay._node_tag_comparisons(caseless, op, tags_rstore, tagkey);
+ jrow := jrow || ')) ' || my_alias || my_using || E'\n';
+ ELSE -- svf
+ IF auth_heading IS NOT NULL THEN -- authority record
+ IF node.heading AND auth_heading <> '' THEN
+ jrow := jrow || 'id AS record, ' || node.quality ||
+ ' AS quality FROM authority.record_entry are ' ||
+ ' WHERE are.heading = ''' || auth_heading || '''';
+ jrow := jrow || ') ' || my_alias || my_using || E'\n';
+ END IF;
+ ELSE -- bib record
+ jrow := jrow || 'id AS record, ' || node.quality ||
+ ' AS quality FROM metabib.record_attr_flat mraf WHERE mraf.attr = ''' ||
+ node.svf || ''' AND mraf.value ' || op || ' $2->''' || node.svf || ''') ' ||
+ my_alias || my_using || E'\n';
+ END IF;
+ END IF;
+ INSERT INTO _vandelay_tmp_jrows (j) VALUES (jrow);
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+CREATE OR REPLACE FUNCTION vandelay.match_set_test_authxml(
+ match_set_id INTEGER, record_xml TEXT
+) RETURNS SETOF vandelay.match_set_test_result AS $$
+DECLARE
+ tags_rstore HSTORE;
+ heading TEXT;
+ coal TEXT;
+ joins TEXT;
+ query_ TEXT;
+ wq TEXT;
+ qvalue INTEGER;
+ rec RECORD;
+BEGIN
+ tags_rstore := vandelay.flatten_marc_hstore(record_xml);
+
+ SELECT normalize_heading INTO heading
+ FROM authority.normalize_heading(record_xml);
+
+ CREATE TEMPORARY TABLE _vandelay_tmp_qrows (q INTEGER);
+ CREATE TEMPORARY TABLE _vandelay_tmp_jrows (j TEXT);
+
+ -- generate the where clause and return that directly (into wq), and as
+ -- a side-effect, populate the _vandelay_tmp_[qj]rows tables.
+ wq := vandelay.get_expr_from_match_set(
+ match_set_id, tags_rstore, heading);
+
+ query_ := 'SELECT DISTINCT(record), ';
+
+ -- qrows table is for the quality bits we add to the SELECT clause
+ SELECT STRING_AGG(
+ 'COALESCE(n' || q::TEXT || '.quality, 0)', ' + '
+ ) INTO coal FROM _vandelay_tmp_qrows;
+
+ -- our query string so far is the SELECT clause and the inital FROM.
+ -- no JOINs yet nor the WHERE clause
+ query_ := query_ || coal || ' AS quality ' || E'\n';
+
+ -- jrows table is for the joins we must make (and the real text conditions)
+ SELECT STRING_AGG(j, E'\n') INTO joins
+ FROM _vandelay_tmp_jrows;
+
+ -- add those joins and the where clause to our query.
+ query_ := query_ || joins || E'\n';
+
+ query_ := query_ || 'JOIN authority.record_entry are ON (are.id = record) '
+ || 'WHERE ' || wq || ' AND not are.deleted';
+
+ -- this will return rows of record,quality
+ FOR rec IN EXECUTE query_ USING tags_rstore LOOP
+ RETURN NEXT rec;
+ END LOOP;
+
+ DROP TABLE _vandelay_tmp_qrows;
+ DROP TABLE _vandelay_tmp_jrows;
+ RETURN;
+END;
+$$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION vandelay.measure_auth_record_quality
+ ( xml TEXT, match_set_id INT ) RETURNS INT AS $_$
+DECLARE
+ out_q INT := 0;
+ rvalue TEXT;
+ test vandelay.match_set_quality%ROWTYPE;
+BEGIN
+
+ FOR test IN SELECT * FROM vandelay.match_set_quality
+ WHERE match_set = match_set_id LOOP
+ IF test.tag IS NOT NULL THEN
+ FOR rvalue IN SELECT value FROM vandelay.flatten_marc( xml )
+ WHERE tag = test.tag AND subfield = test.subfield LOOP
+ IF test.value = rvalue THEN
+ out_q := out_q + test.quality;
+ END IF;
+ END LOOP;
+ END IF;
+ END LOOP;
+
+ RETURN out_q;
+END;
+$_$ LANGUAGE PLPGSQL;
+
+
+
+CREATE OR REPLACE FUNCTION vandelay.match_authority_record() RETURNS TRIGGER AS $func$
+DECLARE
+ incoming_existing_id TEXT;
+ test_result vandelay.match_set_test_result%ROWTYPE;
+ tmp_rec BIGINT;
+ match_set INT;
+BEGIN
+ IF TG_OP IN ('INSERT','UPDATE') AND NEW.imported_as IS NOT NULL THEN
+ RETURN NEW;
+ END IF;
+
+ DELETE FROM vandelay.authority_match WHERE queued_record = NEW.id;
+
+ SELECT q.match_set INTO match_set FROM vandelay.authority_queue q WHERE q.id = NEW.queue;
+
+ IF match_set IS NOT NULL THEN
+ NEW.quality := vandelay.measure_auth_record_quality( NEW.marc, match_set );
+ END IF;
+
+ -- Perfect matches on 901$c exit early with a match with high quality.
+ incoming_existing_id :=
+ oils_xpath_string('//*[@tag="901"]/*[@code="c"][1]', NEW.marc);
+
+ IF incoming_existing_id IS NOT NULL AND incoming_existing_id != '' THEN
+ SELECT id INTO tmp_rec FROM authority.record_entry WHERE id = incoming_existing_id::bigint;
+ IF tmp_rec IS NOT NULL THEN
+ INSERT INTO vandelay.authority_match (queued_record, eg_record, match_score, quality)
+ SELECT
+ NEW.id,
+ b.id,
+ 9999,
+ -- note: no match_set means quality==0
+ vandelay.measure_auth_record_quality( b.marc, match_set )
+ FROM authority.record_entry b
+ WHERE id = incoming_existing_id::bigint;
+ END IF;
+ END IF;
+
+ IF match_set IS NULL THEN
+ RETURN NEW;
+ END IF;
+
+ FOR test_result IN SELECT * FROM
+ vandelay.match_set_test_authxml(match_set, NEW.marc) LOOP
+
+ INSERT INTO vandelay.authority_match ( queued_record, eg_record, match_score, quality )
+ SELECT
+ NEW.id,
+ test_result.record,
+ test_result.quality,
+ vandelay.measure_auth_record_quality( b.marc, match_set )
+ FROM authority.record_entry b
+ WHERE id = test_result.record;
+
+ END LOOP;
+
+ RETURN NEW;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+CREATE TRIGGER zz_match_auths_trigger
+ BEFORE INSERT OR UPDATE ON vandelay.queued_authority_record
+ FOR EACH ROW EXECUTE PROCEDURE vandelay.match_authority_record();
+
+CREATE OR REPLACE FUNCTION vandelay.auto_overlay_authority_record_with_best ( import_id BIGINT, merge_profile_id INT, lwm_ratio_value_p NUMERIC ) RETURNS BOOL AS $$
+DECLARE
+ eg_id BIGINT;
+ lwm_ratio_value NUMERIC;
+BEGIN
+
+ lwm_ratio_value := COALESCE(lwm_ratio_value_p, 0.0);
+
+ PERFORM * FROM vandelay.queued_authority_record WHERE import_time IS NOT NULL AND id = import_id;
+
+ IF FOUND THEN
+ -- RAISE NOTICE 'already imported, cannot auto-overlay'
+ RETURN FALSE;
+ END IF;
+
+ SELECT m.eg_record INTO eg_id
+ FROM vandelay.authority_match m
+ JOIN vandelay.queued_authority_record qr ON (m.queued_record = qr.id)
+ JOIN vandelay.authority_queue q ON (qr.queue = q.id)
+ JOIN authority.record_entry r ON (r.id = m.eg_record)
+ WHERE m.queued_record = import_id
+ AND qr.quality::NUMERIC / COALESCE(NULLIF(m.quality,0),1)::NUMERIC >= lwm_ratio_value
+ ORDER BY m.match_score DESC, -- required match score
+ qr.quality::NUMERIC / COALESCE(NULLIF(m.quality,0),1)::NUMERIC DESC, -- quality tie breaker
+ m.id -- when in doubt, use the first match
+ LIMIT 1;
+
+ IF eg_id IS NULL THEN
+ -- RAISE NOTICE 'incoming record is not of high enough quality';
+ RETURN FALSE;
+ END IF;
+
+ RETURN vandelay.overlay_authority_record( import_id, eg_id, merge_profile_id );
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0910', :eg_version);
+
+CREATE TABLE actor.usr_message (
+ id SERIAL PRIMARY KEY,
+ usr INT NOT NULL REFERENCES actor.usr (id) DEFERRABLE INITIALLY DEFERRED,
+ title TEXT,
+ message TEXT NOT NULL,
+ create_date TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW(),
+ deleted BOOL NOT NULL DEFAULT FALSE,
+ read_date TIMESTAMP WITH TIME ZONE,
+ sending_lib INT NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED
+);
+CREATE INDEX aum_usr ON actor.usr_message (usr);
+
+CREATE RULE protect_usr_message_delete AS
+ ON DELETE TO actor.usr_message DO INSTEAD (
+ UPDATE actor.usr_message
+ SET deleted = TRUE
+ WHERE OLD.id = actor.usr_message.id
+ );
+
+ALTER TABLE action_trigger.event_definition
+ ADD COLUMN message_template TEXT,
+ ADD COLUMN message_usr_path TEXT,
+ ADD COLUMN message_library_path TEXT,
+ ADD COLUMN message_title TEXT;
+
+CREATE FUNCTION actor.convert_usr_note_to_message () RETURNS TRIGGER AS $$
+BEGIN
+ IF NEW.pub THEN
+ IF TG_OP = 'UPDATE' THEN
+ IF OLD.pub = TRUE THEN
+ RETURN NEW;
+ END IF;
+ END IF;
+
+ INSERT INTO actor.usr_message (usr, title, message, sending_lib)
+ VALUES (NEW.usr, NEW.title, NEW.value, (SELECT home_ou FROM actor.usr WHERE id = NEW.creator));
+ END IF;
+
+ RETURN NEW;
+END;
+$$ LANGUAGE PLPGSQL;
+
+CREATE TRIGGER convert_usr_note_to_message_tgr
+ AFTER INSERT OR UPDATE ON actor.usr_note
+ FOR EACH ROW EXECUTE PROCEDURE actor.convert_usr_note_to_message();
+
+CREATE VIEW actor.usr_message_limited
+AS SELECT * FROM actor.usr_message;
+
+CREATE FUNCTION actor.restrict_usr_message_limited () RETURNS TRIGGER AS $$
+BEGIN
+ IF TG_OP = 'UPDATE' THEN
+ UPDATE actor.usr_message
+ SET read_date = NEW.read_date,
+ deleted = NEW.deleted
+ WHERE id = NEW.id;
+ RETURN NEW;
+ END IF;
+ RETURN NULL;
+END;
+$$ LANGUAGE PLPGSQL;
+
+CREATE TRIGGER restrict_usr_message_limited_tgr
+ INSTEAD OF UPDATE OR INSERT OR DELETE ON actor.usr_message_limited
+ FOR EACH ROW EXECUTE PROCEDURE actor.restrict_usr_message_limited();
+
+-- and copy over existing public user notes as (read) patron messages
+INSERT INTO actor.usr_message (usr, title, message, sending_lib, create_date, read_date)
+SELECT aun.usr, title, value, home_ou, aun.create_date, NOW()
+FROM actor.usr_note aun
+JOIN actor.usr au ON (au.id = aun.usr)
+WHERE aun.pub;
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0911', :eg_version);
+
+-- Auto-cancelled, no target
+INSERT INTO action_trigger.event_definition (
+ id, active, owner, name, hook,
+ validator, reactor, delay, delay_field,
+ group_field, message_usr_path, message_library_path, message_title,
+ message_template
+) VALUES (
+ 51, FALSE, 1, 'Hold Cancelled (No Target) User Message', 'hold_request.cancel.expire_no_target',
+ 'HoldIsCancelled', 'NOOP_True', '30 minutes', 'cancel_time',
+ 'usr', 'usr', 'usr.home_ou', 'Hold Request Cancelled',
+$$
+[%- USE date -%]
+[%- user = target.0.usr -%]
+The following holds were cancelled because no items were found to fullfil them.
+
+[% FOR hold IN target %]
+ Title: [% hold.bib_rec.bib_record.simple_record.title %]
+ Author: [% hold.bib_rec.bib_record.simple_record.author %]
+ Library: [% hold.pickup_lib.name %]
+ Request Date: [% date.format(helpers.format_date(hold.request_time), '%Y-%m-%d') %]
+[% END %]
+
+$$);
+
+INSERT INTO action_trigger.environment (event_def, path) VALUES
+ (51, 'usr'),
+ (51, 'pickup_lib'),
+ (51, 'bib_rec.bib_record.simple_record');
+
+
+-- Cancelled by staff
+INSERT INTO action_trigger.event_definition (
+ id, active, owner, name, hook,
+ validator, reactor, delay, delay_field,
+ group_field, message_usr_path, message_library_path, message_title,
+ message_template
+) VALUES (
+ 52, FALSE, 1, 'Hold Cancelled (Staff) User Message', 'hold_request.cancel.staff',
+ 'HoldIsCancelled', 'NOOP_True', '30 minutes', 'cancel_time',
+ 'usr', 'usr', 'usr.home_ou', 'Hold Request Cancelled',
+$$
+[%- USE date -%]
+[%- user = target.0.usr -%]
+The following holds were cancelled by a staff member.
+
+[% FOR hold IN target %]
+ Title: [% hold.bib_rec.bib_record.simple_record.title %]
+ Author: [% hold.bib_rec.bib_record.simple_record.author %]
+ Library: [% hold.pickup_lib.name %]
+ Request Date: [% date.format(helpers.format_date(hold.request_time), '%Y-%m-%d') %]
+ Cancellation Note: [% hold.cancel_note %]
+[% END %]
+
+$$);
+
+INSERT INTO action_trigger.environment (event_def, path) VALUES
+ (52, 'usr'),
+ (52, 'pickup_lib'),
+ (52, 'bib_rec.bib_record.simple_record');
+
+
+-- Shelf expired
+INSERT INTO action_trigger.event_definition (
+ id, active, owner, name, hook,
+ validator, reactor, delay, delay_field,
+ group_field, message_usr_path, message_library_path, message_title,
+ message_template
+) VALUES (
+ 53, TRUE, 1, 'Hold Cancelled (Shelf-Expired) User Message', 'hold_request.cancel.expire_holds_shelf',
+ 'HoldIsCancelled', 'NOOP_True', '30 minutes', 'cancel_time',
+ 'usr', 'usr', 'usr.home_ou', 'Hold Request Cancelled',
+$$
+[%- USE date -%]
+[%- user = target.0.usr -%]
+The following holds were cancelled because they were never picked up.
+
+[% FOR hold IN target %]
+ Title: [% hold.bib_rec.bib_record.simple_record.title %]
+ Author: [% hold.bib_rec.bib_record.simple_record.author %]
+ Library: [% hold.pickup_lib.name %]
+ Request Date: [% date.format(helpers.format_date(hold.request_time), '%Y-%m-%d') %]
+ Pickup By: [% date.format(helpers.format_date(hold.shelf_expire_time), '%Y-%m-%d') %]
+[% END %]
+
+$$);
+
+INSERT INTO action_trigger.environment (event_def, path) VALUES
+ (53, 'usr'),
+ (53, 'pickup_lib'),
+ (53, 'bib_rec.bib_record.simple_record');
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0912', :eg_version);
+
+ALTER TABLE asset.copy_location ADD COLUMN deleted BOOLEAN NOT NULL DEFAULT FALSE;
+
+CREATE OR REPLACE RULE protect_copy_location_delete AS
+ ON DELETE TO asset.copy_location DO INSTEAD (
+ UPDATE asset.copy_location SET deleted = TRUE WHERE OLD.id = asset.copy_location.id;
+ UPDATE acq.lineitem_detail SET location = NULL WHERE location = OLD.id;
+ DELETE FROM asset.copy_location_order WHERE location = OLD.id;
+ DELETE FROM asset.copy_location_group_map WHERE location = OLD.id;
+ DELETE FROM config.circ_limit_set_copy_loc_map WHERE copy_loc = OLD.id;
+ );
+
+ALTER TABLE asset.copy_location DROP CONSTRAINT acl_name_once_per_lib;
+CREATE UNIQUE INDEX acl_name_once_per_lib ON asset.copy_location (name, owning_lib) WHERE deleted = FALSE OR deleted IS FALSE;
+
+CREATE OR REPLACE FUNCTION asset.acp_location_fixer()
+RETURNS TRIGGER AS $$
+DECLARE
+ new_copy_location INT;
+BEGIN
+ IF (TG_OP = 'UPDATE') THEN
+ IF NEW.location = OLD.location AND NEW.call_number = OLD.call_number AND NEW.circ_lib = OLD.circ_lib THEN
+ RETURN NEW;
+ END IF;
+ END IF;
+ SELECT INTO new_copy_location acpl.id FROM asset.copy_location acpl JOIN actor.org_unit_ancestors_distance((SELECT owning_lib FROM asset.call_number WHERE id = NEW.call_number)) aouad ON acpl.owning_lib = aouad.id WHERE deleted IS FALSE AND name = (SELECT name FROM asset.copy_location WHERE id = NEW.location) ORDER BY distance LIMIT 1;
+ IF new_copy_location IS NULL THEN
+ SELECT INTO new_copy_location acpl.id FROM asset.copy_location acpl JOIN actor.org_unit_ancestors_distance(NEW.circ_lib) aouad ON acpl.owning_lib = aouad.id WHERE deleted IS FALSE AND name = (SELECT name FROM asset.copy_location WHERE id = NEW.location) ORDER BY distance LIMIT 1;
+ END IF;
+ IF new_copy_location IS NOT NULL THEN
+ NEW.location = new_copy_location;
+ END IF;
+ RETURN NEW;
+END;
+$$ LANGUAGE plpgsql;
+
+CREATE OR REPLACE FUNCTION asset.staff_ou_record_copy_count (org INT, rid BIGINT) RETURNS TABLE (depth INT, org_unit INT, visible BIGINT, available BIGINT, unshadow BIGINT, transcendant INT) AS $f$
+DECLARE
+ ans RECORD;
+ trans INT;
+BEGIN
+ SELECT 1 INTO trans FROM biblio.record_entry b JOIN config.bib_source src ON (b.source = src.id) WHERE src.transcendant AND b.id = rid;
+
+ FOR ans IN SELECT u.id, t.depth FROM actor.org_unit_ancestors(org) AS u JOIN actor.org_unit_type t ON (u.ou_type = t.id) LOOP
+ RETURN QUERY
+ SELECT ans.depth,
+ ans.id,
+ COUNT( cp.id ),
+ SUM( CASE WHEN cp.status IN (0,7,12) THEN 1 ELSE 0 END ),
+ SUM( CASE WHEN cl.opac_visible AND cp.opac_visible THEN 1 ELSE 0 END),
+ trans
+ FROM
+ actor.org_unit_descendants(ans.id) d
+ JOIN asset.copy cp ON (cp.circ_lib = d.id AND NOT cp.deleted)
+ JOIN asset.copy_location cl ON (cp.location = cl.id AND NOT cl.deleted)
+ JOIN asset.call_number cn ON (cn.record = rid AND cn.id = cp.call_number AND NOT cn.deleted)
+ GROUP BY 1,2,6;
+
+ IF NOT FOUND THEN
+ RETURN QUERY SELECT ans.depth, ans.id, 0::BIGINT, 0::BIGINT, 0::BIGINT, trans;
+ END IF;
+
+ END LOOP;
+
+ RETURN;
+END;
+$f$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION asset.staff_lasso_record_copy_count (i_lasso INT, rid BIGINT) RETURNS TABLE (depth INT, org_unit INT, visible BIGINT, available BIGINT, unshadow BIGINT, transcendant INT) AS $f$
+DECLARE
+ ans RECORD;
+ trans INT;
+BEGIN
+ SELECT 1 INTO trans FROM biblio.record_entry b JOIN config.bib_source src ON (b.source = src.id) WHERE src.transcendant AND b.id = rid;
+
+ FOR ans IN SELECT u.org_unit AS id FROM actor.org_lasso_map AS u WHERE lasso = i_lasso LOOP
+ RETURN QUERY
+ SELECT -1,
+ ans.id,
+ COUNT( cp.id ),
+ SUM( CASE WHEN cp.status IN (0,7,12) THEN 1 ELSE 0 END ),
+ SUM( CASE WHEN cl.opac_visible AND cp.opac_visible THEN 1 ELSE 0 END),
+ trans
+ FROM
+ actor.org_unit_descendants(ans.id) d
+ JOIN asset.copy cp ON (cp.circ_lib = d.id AND NOT cp.deleted)
+ JOIN asset.copy_location cl ON (cp.location = cl.id AND NOT cl.deleted)
+ JOIN asset.call_number cn ON (cn.record = rid AND cn.id = cp.call_number AND NOT cn.deleted)
+ GROUP BY 1,2,6;
+
+ IF NOT FOUND THEN
+ RETURN QUERY SELECT -1, ans.id, 0::BIGINT, 0::BIGINT, 0::BIGINT, trans;
+ END IF;
+
+ END LOOP;
+
+ RETURN;
+END;
+$f$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION asset.record_has_holdable_copy ( rid BIGINT, ou INT DEFAULT NULL) RETURNS BOOL AS $f$
+BEGIN
+ PERFORM 1
+ FROM
+ asset.copy acp
+ JOIN asset.call_number acn ON acp.call_number = acn.id
+ JOIN asset.copy_location acpl ON acp.location = acpl.id
+ JOIN config.copy_status ccs ON acp.status = ccs.id
+ WHERE
+ acn.record = rid
+ AND acp.holdable = true
+ AND acpl.holdable = true
+ AND ccs.holdable = true
+ AND acp.deleted = false
+ AND acpl.deleted = false
+ AND acp.circ_lib IN (SELECT id FROM actor.org_unit_descendants(COALESCE($2,(SELECT id FROM evergreen.org_top()))))
+ LIMIT 1;
+ IF FOUND THEN
+ RETURN true;
+ END IF;
+ RETURN FALSE;
+END;
+$f$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION asset.metarecord_has_holdable_copy ( rid BIGINT, ou INT DEFAULT NULL) RETURNS BOOL AS $f$
+BEGIN
+ PERFORM 1
+ FROM
+ asset.copy acp
+ JOIN asset.call_number acn ON acp.call_number = acn.id
+ JOIN asset.copy_location acpl ON acp.location = acpl.id
+ JOIN config.copy_status ccs ON acp.status = ccs.id
+ JOIN metabib.metarecord_source_map mmsm ON acn.record = mmsm.source
+ WHERE
+ mmsm.metarecord = rid
+ AND acp.holdable = true
+ AND acpl.holdable = true
+ AND ccs.holdable = true
+ AND acp.deleted = false
+ AND acpl.deleted = false
+ AND acp.circ_lib IN (SELECT id FROM actor.org_unit_descendants(COALESCE($2,(SELECT id FROM evergreen.org_top()))))
+ LIMIT 1;
+ IF FOUND THEN
+ RETURN true;
+ END IF;
+ RETURN FALSE;
+END;
+$f$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION asset.refresh_opac_visible_copies_mat_view () RETURNS VOID AS $$
+
+ TRUNCATE TABLE asset.opac_visible_copies;
+
+ INSERT INTO asset.opac_visible_copies (copy_id, circ_lib, record)
+ SELECT cp.id, cp.circ_lib, cn.record
+ FROM asset.copy cp
+ JOIN asset.call_number cn ON (cn.id = cp.call_number)
+ JOIN actor.org_unit a ON (cp.circ_lib = a.id)
+ JOIN asset.copy_location cl ON (cp.location = cl.id)
+ JOIN config.copy_status cs ON (cp.status = cs.id)
+ JOIN biblio.record_entry b ON (cn.record = b.id)
+ WHERE NOT cp.deleted
+ AND NOT cl.deleted
+ AND NOT cn.deleted
+ AND NOT b.deleted
+ AND cs.opac_visible
+ AND cl.opac_visible
+ AND cp.opac_visible
+ AND a.opac_visible
+ UNION
+ SELECT cp.id, cp.circ_lib, pbcm.peer_record AS record
+ FROM asset.copy cp
+ JOIN biblio.peer_bib_copy_map pbcm ON (pbcm.target_copy = cp.id)
+ JOIN actor.org_unit a ON (cp.circ_lib = a.id)
+ JOIN asset.copy_location cl ON (cp.location = cl.id)
+ JOIN config.copy_status cs ON (cp.status = cs.id)
+ WHERE NOT cp.deleted
+ AND NOT cl.deleted
+ AND cs.opac_visible
+ AND cl.opac_visible
+ AND cp.opac_visible
+ AND a.opac_visible;
+
+$$ LANGUAGE SQL;
+
+CREATE OR REPLACE FUNCTION asset.cache_copy_visibility () RETURNS TRIGGER as $func$
+DECLARE
+ add_front TEXT;
+ add_back TEXT;
+ add_base_query TEXT;
+ add_peer_query TEXT;
+ remove_query TEXT;
+ do_add BOOLEAN := false;
+ do_remove BOOLEAN := false;
+BEGIN
+ add_base_query := $$
+ SELECT cp.id, cp.circ_lib, cn.record, cn.id AS call_number, cp.location, cp.status
+ FROM asset.copy cp
+ JOIN asset.call_number cn ON (cn.id = cp.call_number)
+ JOIN actor.org_unit a ON (cp.circ_lib = a.id)
+ JOIN asset.copy_location cl ON (cp.location = cl.id)
+ JOIN config.copy_status cs ON (cp.status = cs.id)
+ JOIN biblio.record_entry b ON (cn.record = b.id)
+ WHERE NOT cp.deleted
+ AND NOT cl.deleted
+ AND NOT cn.deleted
+ AND NOT b.deleted
+ AND cs.opac_visible
+ AND cl.opac_visible
+ AND cp.opac_visible
+ AND a.opac_visible
+ $$;
+ add_peer_query := $$
+ SELECT cp.id, cp.circ_lib, pbcm.peer_record AS record, NULL AS call_number, cp.location, cp.status
+ FROM asset.copy cp
+ JOIN biblio.peer_bib_copy_map pbcm ON (pbcm.target_copy = cp.id)
+ JOIN actor.org_unit a ON (cp.circ_lib = a.id)
+ JOIN asset.copy_location cl ON (cp.location = cl.id)
+ JOIN config.copy_status cs ON (cp.status = cs.id)
+ WHERE NOT cp.deleted
+ AND NOT cl.deleted
+ AND cs.opac_visible
+ AND cl.opac_visible
+ AND cp.opac_visible
+ AND a.opac_visible
+ $$;
+ add_front := $$
+ INSERT INTO asset.opac_visible_copies (copy_id, circ_lib, record)
+ SELECT DISTINCT ON (id, record) id, circ_lib, record FROM (
+ $$;
+ add_back := $$
+ ) AS x
+ $$;
+
+ remove_query := $$ DELETE FROM asset.opac_visible_copies WHERE copy_id IN ( SELECT id FROM asset.copy WHERE $$;
+
+ IF TG_TABLE_NAME = 'peer_bib_copy_map' THEN
+ IF TG_OP = 'INSERT' THEN
+ add_peer_query := add_peer_query || ' AND cp.id = ' || NEW.target_copy || ' AND pbcm.peer_record = ' || NEW.peer_record;
+ EXECUTE add_front || add_peer_query || add_back;
+ RETURN NEW;
+ ELSE
+ remove_query := 'DELETE FROM asset.opac_visible_copies WHERE copy_id = ' || OLD.target_copy || ' AND record = ' || OLD.peer_record || ';';
+ EXECUTE remove_query;
+ RETURN OLD;
+ END IF;
+ END IF;
+
+ IF TG_OP = 'INSERT' THEN
+
+ IF TG_TABLE_NAME IN ('copy', 'unit') THEN
+ add_base_query := add_base_query || ' AND cp.id = ' || NEW.id;
+ EXECUTE add_front || add_base_query || add_back;
+ END IF;
+
+ RETURN NEW;
+
+ END IF;
+
+ -- handle items first, since with circulation activity
+ -- their statuses change frequently
+ IF TG_TABLE_NAME IN ('copy', 'unit') THEN
+
+ IF OLD.location <> NEW.location OR
+ OLD.call_number <> NEW.call_number OR
+ OLD.status <> NEW.status OR
+ OLD.circ_lib <> NEW.circ_lib THEN
+ -- any of these could change visibility, but
+ -- we'll save some queries and not try to calculate
+ -- the change directly
+ do_remove := true;
+ do_add := true;
+ ELSE
+
+ IF OLD.deleted <> NEW.deleted THEN
+ IF NEW.deleted THEN
+ do_remove := true;
+ ELSE
+ do_add := true;
+ END IF;
+ END IF;
+
+ IF OLD.opac_visible <> NEW.opac_visible THEN
+ IF OLD.opac_visible THEN
+ do_remove := true;
+ ELSIF NOT do_remove THEN -- handle edge case where deleted item
+ -- is also marked opac_visible
+ do_add := true;
+ END IF;
+ END IF;
+
+ END IF;
+
+ IF do_remove THEN
+ DELETE FROM asset.opac_visible_copies WHERE copy_id = NEW.id;
+ END IF;
+ IF do_add THEN
+ add_base_query := add_base_query || ' AND cp.id = ' || NEW.id;
+ add_peer_query := add_peer_query || ' AND cp.id = ' || NEW.id;
+ EXECUTE add_front || add_base_query || ' UNION ' || add_peer_query || add_back;
+ END IF;
+
+ RETURN NEW;
+
+ END IF;
+
+ IF TG_TABLE_NAME IN ('call_number', 'copy_location', 'record_entry') THEN -- these have a 'deleted' column
+
+ IF OLD.deleted AND NEW.deleted THEN -- do nothing
+
+ RETURN NEW;
+
+ ELSIF NEW.deleted THEN -- remove rows
+
+ IF TG_TABLE_NAME = 'call_number' THEN
+ DELETE FROM asset.opac_visible_copies WHERE copy_id IN (SELECT id FROM asset.copy WHERE call_number = NEW.id);
+ ELSIF TG_TABLE_NAME = 'copy_location' THEN
+ DELETE FROM asset.opac_visible_copies WHERE copy_id IN (SELECT id FROM asset.copy WHERE location = NEW.id);
+ ELSIF TG_TABLE_NAME = 'record_entry' THEN
+ DELETE FROM asset.opac_visible_copies WHERE record = NEW.id;
+ END IF;
+
+ RETURN NEW;
+
+ ELSIF OLD.deleted THEN -- add rows
+
+ IF TG_TABLE_NAME = 'call_number' THEN
+ add_base_query := add_base_query || ' AND cn.id = ' || NEW.id;
+ EXECUTE add_front || add_base_query || add_back;
+ ELSIF TG_TABLE_NAME = 'copy_location' THEN
+ add_base_query := add_base_query || 'AND cl.id = ' || NEW.id;
+ EXECUTE add_front || add_base_query || add_back;
+ ELSIF TG_TABLE_NAME = 'record_entry' THEN
+ add_base_query := add_base_query || ' AND cn.record = ' || NEW.id;
+ add_peer_query := add_peer_query || ' AND pbcm.peer_record = ' || NEW.id;
+ EXECUTE add_front || add_base_query || ' UNION ' || add_peer_query || add_back;
+ END IF;
+
+ RETURN NEW;
+
+ END IF;
+
+ END IF;
+
+ IF TG_TABLE_NAME = 'call_number' THEN
+
+ IF OLD.record <> NEW.record THEN
+ -- call number is linked to different bib
+ remove_query := remove_query || 'call_number = ' || NEW.id || ');';
+ EXECUTE remove_query;
+ add_base_query := add_base_query || ' AND cn.id = ' || NEW.id;
+ EXECUTE add_front || add_base_query || add_back;
+ END IF;
+
+ RETURN NEW;
+
+ END IF;
+
+ IF TG_TABLE_NAME IN ('record_entry') THEN
+ RETURN NEW; -- don't have 'opac_visible'
+ END IF;
+
+ -- actor.org_unit, asset.copy_location, asset.copy_status
+ IF NEW.opac_visible = OLD.opac_visible THEN -- do nothing
+
+ RETURN NEW;
+
+ ELSIF NEW.opac_visible THEN -- add rows
+
+ IF TG_TABLE_NAME = 'org_unit' THEN
+ add_base_query := add_base_query || ' AND cp.circ_lib = ' || NEW.id;
+ add_peer_query := add_peer_query || ' AND cp.circ_lib = ' || NEW.id;
+ ELSIF TG_TABLE_NAME = 'copy_location' THEN
+ add_base_query := add_base_query || ' AND cp.location = ' || NEW.id;
+ add_peer_query := add_peer_query || ' AND cp.location = ' || NEW.id;
+ ELSIF TG_TABLE_NAME = 'copy_status' THEN
+ add_base_query := add_base_query || ' AND cp.status = ' || NEW.id;
+ add_peer_query := add_peer_query || ' AND cp.status = ' || NEW.id;
+ END IF;
+
+ EXECUTE add_front || add_base_query || ' UNION ' || add_peer_query || add_back;
+
+ ELSE -- delete rows
+
+ IF TG_TABLE_NAME = 'org_unit' THEN
+ remove_query := 'DELETE FROM asset.opac_visible_copies WHERE circ_lib = ' || NEW.id || ';';
+ ELSIF TG_TABLE_NAME = 'copy_location' THEN
+ remove_query := remove_query || 'location = ' || NEW.id || ');';
+ ELSIF TG_TABLE_NAME = 'copy_status' THEN
+ remove_query := remove_query || 'status = ' || NEW.id || ');';
+ END IF;
+
+ EXECUTE remove_query;
+
+ END IF;
+
+ RETURN NEW;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+-- updated copy location validity test to disallow deleted locations
+CREATE OR REPLACE FUNCTION vandelay.ingest_items ( import_id BIGINT, attr_def_id BIGINT ) RETURNS SETOF vandelay.import_item AS $$
+DECLARE
+
+ owning_lib TEXT;
+ circ_lib TEXT;
+ call_number TEXT;
+ copy_number TEXT;
+ status TEXT;
+ location TEXT;
+ circulate TEXT;
+ deposit TEXT;
+ deposit_amount TEXT;
+ ref TEXT;
+ holdable TEXT;
+ price TEXT;
+ barcode TEXT;
+ circ_modifier TEXT;
+ circ_as_type TEXT;
+ alert_message TEXT;
+ opac_visible TEXT;
+ pub_note TEXT;
+ priv_note TEXT;
+ internal_id TEXT;
+
+ attr_def RECORD;
+ tmp_attr_set RECORD;
+ attr_set vandelay.import_item%ROWTYPE;
+
+ xpath TEXT;
+ tmp_str TEXT;
+
+BEGIN
+
+ SELECT * INTO attr_def FROM vandelay.import_item_attr_definition WHERE id = attr_def_id;
+
+ IF FOUND THEN
+
+ attr_set.definition := attr_def.id;
+
+ -- Build the combined XPath
+
+ owning_lib :=
+ CASE
+ WHEN attr_def.owning_lib IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.owning_lib ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.owning_lib || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.owning_lib
+ END;
+
+ circ_lib :=
+ CASE
+ WHEN attr_def.circ_lib IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.circ_lib ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.circ_lib || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.circ_lib
+ END;
+
+ call_number :=
+ CASE
+ WHEN attr_def.call_number IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.call_number ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.call_number || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.call_number
+ END;
+
+ copy_number :=
+ CASE
+ WHEN attr_def.copy_number IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.copy_number ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.copy_number || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.copy_number
+ END;
+
+ status :=
+ CASE
+ WHEN attr_def.status IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.status ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.status || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.status
+ END;
+
+ location :=
+ CASE
+ WHEN attr_def.location IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.location ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.location || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.location
+ END;
+
+ circulate :=
+ CASE
+ WHEN attr_def.circulate IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.circulate ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.circulate || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.circulate
+ END;
+
+ deposit :=
+ CASE
+ WHEN attr_def.deposit IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.deposit ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.deposit || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.deposit
+ END;
+
+ deposit_amount :=
+ CASE
+ WHEN attr_def.deposit_amount IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.deposit_amount ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.deposit_amount || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.deposit_amount
+ END;
+
+ ref :=
+ CASE
+ WHEN attr_def.ref IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.ref ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.ref || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.ref
+ END;
+
+ holdable :=
+ CASE
+ WHEN attr_def.holdable IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.holdable ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.holdable || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.holdable
+ END;
+
+ price :=
+ CASE
+ WHEN attr_def.price IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.price ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.price || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.price
+ END;
+
+ barcode :=
+ CASE
+ WHEN attr_def.barcode IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.barcode ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.barcode || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.barcode
+ END;
+
+ circ_modifier :=
+ CASE
+ WHEN attr_def.circ_modifier IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.circ_modifier ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.circ_modifier || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.circ_modifier
+ END;
+
+ circ_as_type :=
+ CASE
+ WHEN attr_def.circ_as_type IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.circ_as_type ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.circ_as_type || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.circ_as_type
+ END;
+
+ alert_message :=
+ CASE
+ WHEN attr_def.alert_message IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.alert_message ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.alert_message || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.alert_message
+ END;
+
+ opac_visible :=
+ CASE
+ WHEN attr_def.opac_visible IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.opac_visible ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.opac_visible || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.opac_visible
+ END;
+
+ pub_note :=
+ CASE
+ WHEN attr_def.pub_note IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.pub_note ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.pub_note || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.pub_note
+ END;
+ priv_note :=
+ CASE
+ WHEN attr_def.priv_note IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.priv_note ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.priv_note || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.priv_note
+ END;
+
+ internal_id :=
+ CASE
+ WHEN attr_def.internal_id IS NULL THEN 'null()'
+ WHEN LENGTH( attr_def.internal_id ) = 1 THEN '//*[@tag="' || attr_def.tag || '"]/*[@code="' || attr_def.internal_id || '"]'
+ ELSE '//*[@tag="' || attr_def.tag || '"]/*' || attr_def.internal_id
+ END;
+
+
+
+ xpath :=
+ owning_lib || '|' ||
+ circ_lib || '|' ||
+ call_number || '|' ||
+ copy_number || '|' ||
+ status || '|' ||
+ location || '|' ||
+ circulate || '|' ||
+ deposit || '|' ||
+ deposit_amount || '|' ||
+ ref || '|' ||
+ holdable || '|' ||
+ price || '|' ||
+ barcode || '|' ||
+ circ_modifier || '|' ||
+ circ_as_type || '|' ||
+ alert_message || '|' ||
+ pub_note || '|' ||
+ priv_note || '|' ||
+ internal_id || '|' ||
+ opac_visible;
+
+ FOR tmp_attr_set IN
+ SELECT *
+ FROM oils_xpath_table( 'id', 'marc', 'vandelay.queued_bib_record', xpath, 'id = ' || import_id )
+ AS t( id INT, ol TEXT, clib TEXT, cn TEXT, cnum TEXT, cs TEXT, cl TEXT, circ TEXT,
+ dep TEXT, dep_amount TEXT, r TEXT, hold TEXT, pr TEXT, bc TEXT, circ_mod TEXT,
+ circ_as TEXT, amessage TEXT, note TEXT, pnote TEXT, internal_id TEXT, opac_vis TEXT )
+ LOOP
+
+ attr_set.import_error := NULL;
+ attr_set.error_detail := NULL;
+ attr_set.deposit_amount := NULL;
+ attr_set.copy_number := NULL;
+ attr_set.price := NULL;
+ attr_set.circ_modifier := NULL;
+ attr_set.location := NULL;
+ attr_set.barcode := NULL;
+ attr_set.call_number := NULL;
+
+ IF tmp_attr_set.pr != '' THEN
+ tmp_str = REGEXP_REPLACE(tmp_attr_set.pr, E'[^0-9\\.]', '', 'g');
+ IF tmp_str = '' THEN
+ attr_set.import_error := 'import.item.invalid.price';
+ attr_set.error_detail := tmp_attr_set.pr; -- original value
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ attr_set.price := tmp_str::NUMERIC(8,2);
+ END IF;
+
+ IF tmp_attr_set.dep_amount != '' THEN
+ tmp_str = REGEXP_REPLACE(tmp_attr_set.dep_amount, E'[^0-9\\.]', '', 'g');
+ IF tmp_str = '' THEN
+ attr_set.import_error := 'import.item.invalid.deposit_amount';
+ attr_set.error_detail := tmp_attr_set.dep_amount;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ attr_set.deposit_amount := tmp_str::NUMERIC(8,2);
+ END IF;
+
+ IF tmp_attr_set.cnum != '' THEN
+ tmp_str = REGEXP_REPLACE(tmp_attr_set.cnum, E'[^0-9]', '', 'g');
+ IF tmp_str = '' THEN
+ attr_set.import_error := 'import.item.invalid.copy_number';
+ attr_set.error_detail := tmp_attr_set.cnum;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ attr_set.copy_number := tmp_str::INT;
+ END IF;
+
+ IF tmp_attr_set.ol != '' THEN
+ SELECT id INTO attr_set.owning_lib FROM actor.org_unit WHERE shortname = UPPER(tmp_attr_set.ol); -- INT
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.owning_lib';
+ attr_set.error_detail := tmp_attr_set.ol;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ END IF;
+
+ IF tmp_attr_set.clib != '' THEN
+ SELECT id INTO attr_set.circ_lib FROM actor.org_unit WHERE shortname = UPPER(tmp_attr_set.clib); -- INT
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.circ_lib';
+ attr_set.error_detail := tmp_attr_set.clib;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ END IF;
+
+ IF tmp_attr_set.cs != '' THEN
+ SELECT id INTO attr_set.status FROM config.copy_status WHERE LOWER(name) = LOWER(tmp_attr_set.cs); -- INT
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.status';
+ attr_set.error_detail := tmp_attr_set.cs;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ END IF;
+
+ IF COALESCE(tmp_attr_set.circ_mod, '') = '' THEN
+
+ -- no circ mod defined, see if we should apply a default
+ SELECT INTO attr_set.circ_modifier TRIM(BOTH '"' FROM value)
+ FROM actor.org_unit_ancestor_setting(
+ 'vandelay.item.circ_modifier.default',
+ attr_set.owning_lib
+ );
+
+ -- make sure the value from the org setting is still valid
+ PERFORM 1 FROM config.circ_modifier WHERE code = attr_set.circ_modifier;
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.circ_modifier';
+ attr_set.error_detail := tmp_attr_set.circ_mod;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+
+ ELSE
+
+ SELECT code INTO attr_set.circ_modifier FROM config.circ_modifier WHERE code = tmp_attr_set.circ_mod;
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.circ_modifier';
+ attr_set.error_detail := tmp_attr_set.circ_mod;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ END IF;
+
+ IF tmp_attr_set.circ_as != '' THEN
+ SELECT code INTO attr_set.circ_as_type FROM config.coded_value_map WHERE ctype = 'item_type' AND code = tmp_attr_set.circ_as;
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.circ_as_type';
+ attr_set.error_detail := tmp_attr_set.circ_as;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ END IF;
+
+ IF COALESCE(tmp_attr_set.cl, '') = '' THEN
+ -- no location specified, see if we should apply a default
+
+ SELECT INTO attr_set.location TRIM(BOTH '"' FROM value)
+ FROM actor.org_unit_ancestor_setting(
+ 'vandelay.item.copy_location.default',
+ attr_set.owning_lib
+ );
+
+ -- make sure the value from the org setting is still valid
+ PERFORM 1 FROM asset.copy_location
+ WHERE id = attr_set.location AND NOT deleted;
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.location';
+ attr_set.error_detail := tmp_attr_set.cs;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ ELSE
+
+ -- search up the org unit tree for a matching copy location
+ WITH RECURSIVE anscestor_depth AS (
+ SELECT ou.id,
+ out.depth AS depth,
+ ou.parent_ou
+ FROM actor.org_unit ou
+ JOIN actor.org_unit_type out ON (out.id = ou.ou_type)
+ WHERE ou.id = COALESCE(attr_set.owning_lib, attr_set.circ_lib)
+ UNION ALL
+ SELECT ou.id,
+ out.depth,
+ ou.parent_ou
+ FROM actor.org_unit ou
+ JOIN actor.org_unit_type out ON (out.id = ou.ou_type)
+ JOIN anscestor_depth ot ON (ot.parent_ou = ou.id)
+ ) SELECT cpl.id INTO attr_set.location
+ FROM anscestor_depth a
+ JOIN asset.copy_location cpl ON (cpl.owning_lib = a.id)
+ WHERE LOWER(cpl.name) = LOWER(tmp_attr_set.cl)
+ AND NOT cpl.deleted
+ ORDER BY a.depth DESC
+ LIMIT 1;
+
+ IF NOT FOUND THEN
+ attr_set.import_error := 'import.item.invalid.location';
+ attr_set.error_detail := tmp_attr_set.cs;
+ RETURN NEXT attr_set; CONTINUE;
+ END IF;
+ END IF;
+
+ attr_set.circulate :=
+ LOWER( SUBSTRING( tmp_attr_set.circ, 1, 1)) IN ('t','y','1')
+ OR LOWER(tmp_attr_set.circ) = 'circulating'; -- BOOL
+
+ attr_set.deposit :=
+ LOWER( SUBSTRING( tmp_attr_set.dep, 1, 1 ) ) IN ('t','y','1')
+ OR LOWER(tmp_attr_set.dep) = 'deposit'; -- BOOL
+
+ attr_set.holdable :=
+ LOWER( SUBSTRING( tmp_attr_set.hold, 1, 1 ) ) IN ('t','y','1')
+ OR LOWER(tmp_attr_set.hold) = 'holdable'; -- BOOL
+
+ attr_set.opac_visible :=
+ LOWER( SUBSTRING( tmp_attr_set.opac_vis, 1, 1 ) ) IN ('t','y','1')
+ OR LOWER(tmp_attr_set.opac_vis) = 'visible'; -- BOOL
+
+ attr_set.ref :=
+ LOWER( SUBSTRING( tmp_attr_set.r, 1, 1 ) ) IN ('t','y','1')
+ OR LOWER(tmp_attr_set.r) = 'reference'; -- BOOL
+
+ attr_set.call_number := tmp_attr_set.cn; -- TEXT
+ attr_set.barcode := tmp_attr_set.bc; -- TEXT,
+ attr_set.alert_message := tmp_attr_set.amessage; -- TEXT,
+ attr_set.pub_note := tmp_attr_set.note; -- TEXT,
+ attr_set.priv_note := tmp_attr_set.pnote; -- TEXT,
+ attr_set.alert_message := tmp_attr_set.amessage; -- TEXT,
+ attr_set.internal_id := tmp_attr_set.internal_id::BIGINT;
+
+ RETURN NEXT attr_set;
+
+ END LOOP;
+
+ END IF;
+
+ RETURN;
+
+END;
+$$ LANGUAGE PLPGSQL;
+
+
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0915', :eg_version);
+
+INSERT INTO permission.perm_list (id, code, description)
+VALUES (
+ 560,
+ 'TOTAL_HOLD_COPY_RATIO_EXCEEDED.override',
+ oils_i18n_gettext(
+ 560,
+ 'Override the TOTAL_HOLD_COPY_RATIO_EXCEEDED event',
+ 'ppl',
+ 'description'
+ )
+);
+
+INSERT INTO permission.perm_list (id, code, description)
+VALUES (
+ 561,
+ 'AVAIL_HOLD_COPY_RATIO_EXCEEDED.override',
+ oils_i18n_gettext(
+ 561,
+ 'Override the AVAIL_HOLD_COPY_RATIO_EXCEEDED event',
+ 'ppl',
+ 'description'
+ )
+);
+
+COMMIT;
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/about.html b/Open-ILS/xul/staff_client/chrome/content/main/about.html
index dd10653..7893010 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/about.html
+++ b/Open-ILS/xul/staff_client/chrome/content/main/about.html
@@ -1,7 +1,7 @@
<html><head><script></script></head><body onload="var x = document.getElementById('version'); var version ='/xul/server/'.split(/\//)[2]; if (version == 'server') { version = 'versionless debug build'; } x.appendChild(document.createTextNode(version));">
<h1 style="text-decoration: underline">Evergreen</h1>
<p>Target Server ID: <span id="version"></span></p>
-<p>$HeadURL$</p>
+<p>http://git.evergreen-ils.org/?p=Evergreen.git;a=shortlog;h=refs/heads/tags/rel_2_8_rc1</p>
<h2>What is Evergreen?</h2>
<blockquote>
<p>
diff --git a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
index 0613a13..764c4d5 100644
--- a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
+++ b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
@@ -11,7 +11,7 @@ pref("toolkit.singletonWindowType", "eg_main");
pref("open-ils.enable_join_tabs", true);
// We'll use this one to help brand some build information into the client, and rely on subversion keywords
-pref("open-ils.repository.headURL","$HeadURL$");
+pref("open-ils.repository.headURL","http://git.evergreen-ils.org/?p=Evergreen.git;a=shortlog;h=refs/heads/tags/rel_2_8_rc1");
pref("open-ils.repository.author","$Author$");
pref("open-ils.repository.revision","$Revision$");
pref("open-ils.repository.date","$Date$");
diff --git a/Open-ILS/xul/staff_client/windowssetup.nsi b/Open-ILS/xul/staff_client/windowssetup.nsi
index a954357..db9c66d 100644
--- a/Open-ILS/xul/staff_client/windowssetup.nsi
+++ b/Open-ILS/xul/staff_client/windowssetup.nsi
@@ -3,7 +3,7 @@
; HM NIS Edit Wizard helper defines
; Old versions of makensis don't like this, moved to Makefile
;!define /file PRODUCT_VERSION "client/VERSION"
-!define PRODUCT_TAG "Master"
+!define PRODUCT_TAG "2.8"
!define PRODUCT_INSTALL_TAG "${PRODUCT_TAG}"
!define UI_IMAGESET "beta"
;!define UI_IMAGESET "release"
diff --git a/README b/README
deleted file mode 120000
index b57451a..0000000
--- a/README
+++ /dev/null
@@ -1 +0,0 @@
-docs/installation/server_installation.txt
\ No newline at end of file
diff --git a/README b/README
new file mode 100644
index 0000000..04bf59b
--- /dev/null
+++ b/README
@@ -0,0 +1,640 @@
+Installing the Evergreen server
+===============================
+:toc:
+:numbered:
+
+Preamble: referenced user accounts
+----------------------------------
+
+In subsequent sections, we will refer to a number of different accounts, as
+follows:
+
+ * Linux user accounts:
+ ** The *user* Linux account is the account that you use to log onto the
+ Linux system as a regular user.
+ ** The *root* Linux account is an account that has system administrator
+ privileges. On Debian and Fedora you can switch to this account from
+ your *user* account by issuing the `su -` command and entering the
+ password for the *root* account when prompted. On Ubuntu you can switch
+ to this account from your *user* account using the `sudo su -` command
+ and entering the password for your *user* account when prompted.
+ ** The *opensrf* Linux account is an account that you create when installing
+ OpenSRF. You can switch to this account from the *root* account by
+ issuing the `su - opensrf` command.
+ ** The *postgres* Linux account is created automatically when you install
+ the PostgreSQL database server. You can switch to this account from the
+ *root* account by issuing the `su - postgres` command.
+ * PostgreSQL user accounts:
+ ** The *evergreen* PostgreSQL account is a superuser account that you will
+ create to connect to the PostgreSQL database server.
+ * Evergreen administrator account:
+ ** The *egadmin* Evergreen account is an administrator account for
+ Evergreen that you will use to test connectivity and configure your
+ Evergreen instance.
+
+Preamble: developer instructions
+--------------------------------
+
+[NOTE]
+Skip this section if you are using an official release tarball downloaded
+from http://evergreen-ils.org/egdownloads
+
+Developers working directly with the source code from the Git repository,
+rather than an official release tarball, must perform one step before they
+can proceed with the `./configure` step.
+
+As the *user* Linux account, issue the following command in the Evergreen
+source directory to generate the configure script and Makefiles:
+
+[source, bash]
+------------------------------------------------------------------------------
+autoreconf -i
+------------------------------------------------------------------------------
+
+Installing prerequisites
+------------------------
+
+ * **PostgreSQL**: Version 9.3 is recommended. The minimum supported version
+ is 9.1.
+ * **Linux**: Evergreen 2.7 has been tested on Debian Jessie (8.0),
+ Debian Wheezy (7.0), Debian Squeeze(6.0), Ubuntu Trusty Tahr (14.04),
+ Ubuntu Precise Pangolin (12.04), and Fedora.
+ If you are running an older version of these distributions, you may want
+ to upgrade before upgrading Evergreen. For instructions on upgrading these
+ distributions, visit the Debian, Ubuntu or Fedora websites.
+ * **OpenSRF**: The minimum supported version of OpenSRF is 2.4.0.
+
+
+Evergreen has a number of prerequisite packages that must be installed
+before you can successfully configure, compile, and install Evergreen.
+
+1. Begin by installing the most recent version of OpenSRF (2.4.0 or later).
+ You can download OpenSRF releases from http://evergreen-ils.org/opensrf-downloads/
+2. On many distributions, it is necessary to install PostgreSQL 9.1+ from external
+ repositories.
++
+ * On Debian Squeeze, open `/etc/apt/sources.list` in a text editor as the
+ *root* Linux account and add the following line:
++
+[source, bash]
+------------------------------------------------------------------------------
+deb http://backports.debian.org/debian-backports squeeze-backports main contrib
+------------------------------------------------------------------------------
++
+ * Ubuntu Precise and Trusty comes with PostgreSQL 9.1+, so no additional steps are required.
+ * Fedora 19 and 20 come with PostgreSQL 9.2+, so no additional steps are required.
++
+3. On Debian and Ubuntu, run `aptitude update` as the *root* Linux account to
+ retrieve the new packages from the backports repository.
+4. Issue the following commands as the *root* Linux account to install
+ prerequisites using the `Makefile.install` prerequisite installer,
+ substituting `debian-jessie`, `debian-wheezy`, `debian-squeeze`, `fedora`,
+ `ubuntu-trusty`, or `ubuntu-precise` for <osname> below:
++
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install <osname>
+------------------------------------------------------------------------------
++
+5. Add the libdbi-libdbd libraries to the system dynamic library path by
+ issuing the following commands as the *root* Linux account:
++
+[NOTE]
+You should skip this step if installing on Ubuntu Precise or Trusty. The ubuntu
+targets use libdbd-pgsql from packages.
++
+.Debian
+[source, bash]
+------------------------------------------------------------------------------
+echo "/usr/local/lib/dbd" > /etc/ld.so.conf.d/eg.conf
+ldconfig
+------------------------------------------------------------------------------
++
+.Fedora
+[source, bash]
+------------------------------------------------------------------------------
+echo "/usr/lib64/dbd" > /etc/ld.so.conf.d/eg.conf
+ldconfig
+------------------------------------------------------------------------------
+
+6. OPTIONAL: Developer additions
++
+To perform certain developer tasks from a Git source code checkout,
+additional packages may be required. As the *root* Linux account:
++
+ * To install packages needed for retriving and managing web dependencies,
+ use the <osname>-developer Makefile.install target. Currently,
+ this is only needed for building and installing the (preview) browser
+ staff client.
++
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install <osname>-developer
+------------------------------------------------------------------------------
++
+ * To install packages required for building Evergreen release bundles, use
+ the <osname>-packager Makefile.install target.
++
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install <osname>-packager
+------------------------------------------------------------------------------
+
+Configuration and compilation instructions
+------------------------------------------
+
+For the time being, we are still installing everything in the `/openils/`
+directory. From the Evergreen source directory, issue the following commands as
+the *user* Linux account to configure and build Evergreen:
+
+[source, bash]
+------------------------------------------------------------------------------
+PATH=/openils/bin:$PATH ./configure --prefix=/openils --sysconfdir=/openils/conf
+make
+------------------------------------------------------------------------------
+
+These instructions assume that you have also installed OpenSRF under `/openils/`.
+If not, please adjust PATH as needed so that the Evergreen `configure` script
+can find `osrf_config`.
+
+Installation instructions
+-------------------------
+
+1. Once you have configured and compiled Evergreen, issue the following
+ command as the *root* Linux account to install Evergreen, build the server
+ portion of the staff client, and copy example configuration files to
+ `/openils/conf`.
+ Change the value of the `STAFF_CLIENT_STAMP_ID` variable to match the version
+ of the staff client that you will use to connect to the Evergreen server.
++
+[source, bash]
+------------------------------------------------------------------------------
+make STAFF_CLIENT_STAMP_ID=rel_2_8_0 install
+------------------------------------------------------------------------------
++
+2. The server portion of the staff client expects `http://hostname/xul/server`
+ to resolve. Issue the following commands as the *root* Linux account to
+ create a symbolic link pointing to the `server` subdirectory of the server
+ portion of the staff client that we just built using the staff client ID
+ 'rel_name':
++
+[source, bash]
+------------------------------------------------------------------------------
+cd /openils/var/web/xul
+ln -sf rel_name/server server
+------------------------------------------------------------------------------
+
+Change ownership of the Evergreen files
+---------------------------------------
+
+All files in the `/openils/` directory and subdirectories must be owned by the
+`opensrf` user. Issue the following command as the *root* Linux account to
+change the ownership on the files:
+
+[source, bash]
+------------------------------------------------------------------------------
+chown -R opensrf:opensrf /openils
+------------------------------------------------------------------------------
+
+Additional Instructions for Developers
+--------------------------------------
+
+[NOTE]
+Skip this section if you are using an official release tarball downloaded
+from http://evergreen-ils.org/egdownloads
+
+Developers working directly with the source code from the Git repository,
+rather than an official release tarball, need to install the Dojo Toolkit
+set of JavaScript libraries. The appropriate version of Dojo is included in
+Evergreen release tarballs. Developers should install the Dojo 1.3.3 version
+of Dojo by issuing the following commands as the *opensrf* Linux account:
+
+[source, bash]
+------------------------------------------------------------------------------
+wget http://download.dojotoolkit.org/release-1.3.3/dojo-release-1.3.3.tar.gz
+tar -C /openils/var/web/js -xzf dojo-release-1.3.3.tar.gz
+cp -r /openils/var/web/js/dojo-release-1.3.3/* /openils/var/web/js/dojo/.
+------------------------------------------------------------------------------
+
+
+Configure the Apache Web server
+-------------------------------
+
+1. Use the example configuration files in `Open-ILS/examples/apache/` (for
+Apache versions below 2.4) or `Open-ILS/examples/apache_24/` (for Apache
+versions 2.4 or greater) to configure your Web server for the Evergreen
+catalog, staff client, Web services, and administration interfaces. Issue the
+following commands as the *root* Linux account:
++
+.Debian and Ubuntu Precise
+[source,bash]
+------------------------------------------------------------------------------
+cp Open-ILS/examples/apache/eg.conf /etc/apache2/sites-available/
+cp Open-ILS/examples/apache/eg_vhost.conf /etc/apache2/
+cp Open-ILS/examples/apache/eg_startup /etc/apache2/
+# Now set up SSL
+mkdir /etc/apache2/ssl
+cd /etc/apache2/ssl
+------------------------------------------------------------------------------
++
+.Ubuntu Trusty
+[source,bash]
+------------------------------------------------------------------------------------
+cp Open-ILS/examples/apache_24/eg_24.conf /etc/apache2/sites-available/eg.conf
+cp Open-ILS/examples/apache_24/eg_vhost_24.conf /etc/apache2/eg_vhost.conf
+cp Open-ILS/examples/apache/eg_startup /etc/apache2/
+# Now set up SSL
+mkdir /etc/apache2/ssl
+cd /etc/apache2/ssl
+------------------------------------------------------------------------------------
++
+.Fedora
+[source,bash]
+------------------------------------------------------------------------------
+cp Open-ILS/examples/apache_24/eg_24.conf /etc/httpd/conf.d/
+cp Open-ILS/examples/apache_24/eg_vhost_24.conf /etc/httpd/eg_vhost.conf
+cp Open-ILS/examples/apache/eg_startup /etc/httpd/
+# Now set up SSL
+mkdir /etc/httpd/ssl
+cd /etc/httpd/ssl
+------------------------------------------------------------------------------
++
+2. The `openssl` command cuts a new SSL key for your Apache server. For a
+production server, you should purchase a signed SSL certificate, but you can
+just use a self-signed certificate and accept the warnings in the staff client
+and browser during testing and development. Create an SSL key for the Apache
+server by issuing the following command as the *root* Linux account:
++
+[source,bash]
+------------------------------------------------------------------------------
+openssl req -new -x509 -days 365 -nodes -out server.crt -keyout server.key
+------------------------------------------------------------------------------
++
+3. As the *root* Linux account, edit the `eg.conf` file that you copied into
+place.
+ a. To enable access to the offline upload / execute interface from any
+ workstation on any network, make the following change (and note that
+ you *must* secure this for a production instance):
+ * (Apache 2.2): Replace `Allow from 10.0.0.0/8` with `Allow from all`
+ * (Apache 2.4): Replace `Require host 10.0.0.0/8` with `Require all granted`
+ b. (Fedora): Change references from the non-existent `/etc/apache2/` directory
+ to `/etc/httpd/`.
+4. Change the user for the Apache server.
+ * (Debian and Ubuntu): As the *root* Linux account, edit
+ `/etc/apache2/envvars`. Change `export APACHE_RUN_USER=www-data` to
+ `export APACHE_RUN_USER=opensrf`.
+ * (Fedora): As the *root* Linux account , edit `/etc/httpd/conf/httpd.conf`.
+ Change `User apache` to `User opensrf`.
+5. Configure Apache with performance settings appropriate for Evergreen:
+ * (Debian and Ubuntu): As the *root* Linux account, edit
+ `/etc/apache2/apache2.conf`:
+ * (Fedora): As the *root* Linux account, edit `/etc/httpd/conf/httpd.conf`:
+ a. Change `KeepAliveTimeout` to `1`. Higher values reduce the chance of
+ a request timing out unexpectedly, but increase the risk of using up
+ all available Apache child processes.
+ b. 'Optional': Change `MaxKeepAliveRequests` to `100`
+ c. (Debian, Ubuntu Precise, and Fedora) Update the prefork configuration
+ section to suit your environment. The following settings apply to a busy
+ system:
++
+[source,bash]
+------------------------------------------------------------------------------
+<IfModule mpm_prefork_module>
+ StartServers 20
+ MinSpareServers 5
+ MaxSpareServers 15
+ MaxClients 150
+ MaxRequestsPerChild 10000
+</IfModule>
+------------------------------------------------------------------------------
+ d. (Ubuntu Trusty) As the *root* user, edit
+ /etc/apache2/mods-available/mpm_prefork.conf to match the above values.
+ Then, also as the *root* user, enable the mpm_prefork module by doing:
++
+[source,bash]
+------------------------------------------------------------------------------
+a2dismod mpm_event
+a2enmod mpm_prefork
+------------------------------------------------------------------------------
++
+6. (Fedora): As the *root* Linux account, edit the `/etc/httpd/eg_vhost.conf`
+ file to change references from the non-existent `/etc/apache2/` directory
+ to `/etc/httpd/`.
+7. (Debian and Ubuntu Precise): As the *root* Linux account, enable the Evergreen site:
++
+[source,bash]
+------------------------------------------------------------------------------
+a2dissite default # OPTIONAL: disable the default site (the "It Works" page)
+a2ensite eg.conf
+------------------------------------------------------------------------------
++
+(Ubuntu Trusty):
++
+[source,bash]
+------------------------------------------------------------------------------
+a2dissite 000-default # OPTIONAL: disable the default site (the "It Works" page)
+a2ensite eg.conf
+------------------------------------------------------------------------------
++
+8. (Ubuntu): As the *root* Linux account, enable Apache to write
+ to the lock directory; this is currently necessary because Apache
+ is running as the `opensrf` user:
++
+[source,bash]
+------------------------------------------------------------------------------
+chown opensrf /var/lock/apache2
+------------------------------------------------------------------------------
++
+9. Learn more about additional Apache options in the following sections:
+ * <<_apache_rewrite_tricks,Apache Rewrite Tricks>>
+ * <<_apache_access_handler_perl_module,Apache Access Handler Perl Module>>
+
+Configure OpenSRF for the Evergreen application
+-----------------------------------------------
+There are a number of example OpenSRF configuration files in `/openils/conf/`
+that you can use as a template for your Evergreen installation. Issue the
+following commands as the *opensrf* Linux account:
+
+[source, bash]
+------------------------------------------------------------------------------
+cp -b /openils/conf/opensrf_core.xml.example /openils/conf/opensrf_core.xml
+cp -b /openils/conf/opensrf.xml.example /openils/conf/opensrf.xml
+------------------------------------------------------------------------------
+
+When you installed OpenSRF, you created four Jabber users on two
+separate domains and edited the `opensrf_core.xml` file accordingly. Please
+refer back to the OpenSRF README and, as the *opensrf* Linux account, edit the
+Evergreen version of the `opensrf_core.xml` file using the same Jabber users
+and domains as you used while installing and testing OpenSRF.
+
+[NOTE]
+The `-b` flag tells the `cp` command to create a backup version of the
+destination file. The backup version of the destination file has a tilde (`~`)
+appended to the file name, so if you have forgotten the Jabber users and
+domains, you can retrieve the settings from the backup version of the files.
+
+`eg_db_config`, described in the following section, sets the database
+connection information in `opensrf.xml` for you.
+
+Creating the Evergreen database
+-------------------------------
+
+Setting up the PostgreSQL server
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+For production use, most libraries install the PostgreSQL database server on a
+dedicated machine. Therefore, by default, the `Makefile.install` prerequisite
+installer does *not* install the PostgreSQL 9 database server that is required
+by every Evergreen system. You can install the packages required by Debian or
+Ubuntu on the machine of your choice using the following commands as the
+*root* Linux account:
+
+.(Debian / Ubuntu / Fedora) Installing PostgreSQL server packages
+
+Each OS build target provides the postgres server installation packages
+required for each operating system. To install Postgres server packages,
+use the make target 'postgres-server-<OSTYPE>'. Choose the most appropriate
+command below based on your operating system.
+
+[source, bash]
+------------------------------------------------------------------------------
+make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-wheezy
+make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-squeeze
+make -f Open-ILS/src/extras/Makefile.install postgres-server-ubuntu-precise
+make -f Open-ILS/src/extras/Makefile.install postgres-server-ubuntu-trusty
+make -f Open-ILS/src/extras/Makefile.install postgres-server-fedora
+------------------------------------------------------------------------------
+
+.(Fedora) Postgres initialization
+
+Installing Postgres on Fedora also requires you to initialize the PostgreSQL
+cluster and start the service. Issue the following commands as the *root* user:
+
+[source, bash]
+------------------------------------------------------------------------------
+postgresql-setup initdb
+systemctl start postgresql
+------------------------------------------------------------------------------
+
+For a standalone PostgreSQL server, install the following Perl modules for your
+distribution as the *root* Linux account:
+
+.(Ubuntu Precise)
+[source,bash]
+---------------------------------------------------------------------------------
+cpan Rose::URI
+---------------------------------------------------------------------------------
+
+.(Debian "wheezy" and Ubuntu Trusty)
+No extra modules required for these distributions.
+
+.(Fedora)
+[source, bash]
+------------------------------------------------------------------------------
+cpan Rose::URI
+------------------------------------------------------------------------------
+
+You need to create a PostgreSQL superuser to create and access the database.
+Issue the following command as the *postgres* Linux account to create a new
+PostgreSQL superuser named `evergreen`. When prompted, enter the new user's
+password:
+
+[source, bash]
+------------------------------------------------------------------------------
+createuser -s -P evergreen
+------------------------------------------------------------------------------
+
+.Enabling connections to the PostgreSQL database
+
+Your PostgreSQL database may be configured by default to prevent connections,
+for example, it might reject attempts to connect via TCP/IP or from other
+servers. To enable TCP/IP connections from localhost, check your `pg_hba.conf`
+file, found in the `/etc/postgresql/` directory on Debian and Ubuntu, and in
+the `/var/lib/pgsql/data/` directory on Fedora. A simple way to enable TCP/IP
+connections from localhost to all databases with password authentication, which
+would be suitable for a test install of Evergreen on a single server, is to
+ensure the file contains the following entries _before_ any "host ... ident"
+entries:
+
+------------------------------------------------------------------------------
+host all all ::1/128 md5
+host all all 127.0.0.1/32 md5
+------------------------------------------------------------------------------
+
+When you change the `pg_hba.conf` file, you will need to reload PostgreSQL to
+make the changes take effect. For more information on configuring connectivity
+to PostgreSQL, see
+http://www.postgresql.org/docs/devel/static/auth-pg-hba-conf.html
+
+Creating the Evergreen database and schema
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Once you have created the *evergreen* PostgreSQL account, you also need to
+create the database and schema, and configure your configuration files to point
+at the database server. Issue the following command as the *root* Linux account
+from inside the Evergreen source directory, replacing <user>, <password>,
+<hostname>, <port>, and <dbname> with the appropriate values for your
+PostgreSQL database (where <user> and <password> are for the *evergreen*
+PostgreSQL account you just created), and replace <admin-user> and <admin-pass>
+with the values you want for the *egadmin* Evergreen administrator account:
+
+[source, bash]
+------------------------------------------------------------------------------
+perl Open-ILS/src/support-scripts/eg_db_config --update-config \
+ --service all --create-database --create-schema --create-offline \
+ --user <user> --password <password> --hostname <hostname> --port <port> \
+ --database <dbname> --admin-user <admin-user> --admin-pass <admin-pass>
+------------------------------------------------------------------------------
+
+This creates the database and schema and configures all of the services in
+your `/openils/conf/opensrf.xml` configuration file to point to that database.
+It also creates the configuration files required by the Evergreen `cgi-bin`
+administration scripts, and sets the user name and password for the *egadmin*
+Evergreen administrator account to your requested values.
+
+You can get a complete set of options for `eg_db_config` by passing the
+`--help` parameter.
+
+Loading sample data
+~~~~~~~~~~~~~~~~~~~
+If you add the `--load-all-sample` parameter to the `eg_db_config` command,
+a set of authority and bibliographic records, call numbers, copies, staff
+and regular users, and transactions will be loaded into your target
+database. This sample dataset is commonly referred to as the _concerto_
+sample data, and can be useful for testing out Evergreen functionality and
+for creating problem reports that developers can easily recreate with their
+own copy of the _concerto_ sample data.
+
+Creating the database on a remote server
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In a production instance of Evergreen, your PostgreSQL server should be
+installed on a dedicated server.
+
+PostgreSQL 9.1 and later
+^^^^^^^^^^^^^^^^^^^^^^^^
+To create the database instance on a remote database server running PostgreSQL
+9.1 or later, simply use the `--create-database` flag on `eg_db_config`.
+
+Starting Evergreen
+------------------
+1. As the *root* Linux account, start the `memcached` and `ejabberd` services
+(if they aren't already running):
++
+[source, bash]
+------------------------------------------------------------------------------
+/etc/init.d/ejabberd start
+/etc/init.d/memcached start
+------------------------------------------------------------------------------
++
+2. As the *opensrf* Linux account, start Evergreen. The `-l` flag in the
+following command is only necessary if you want to force Evergreen to treat the
+hostname as `localhost`; if you configured `opensrf.xml` using the real
+hostname of your machine as returned by `perl -ENet::Domain 'print
+Net::Domain::hostfqdn() . "\n";'`, you should not use the `-l` flag.
++
+[source, bash]
+------------------------------------------------------------------------------
+osrf_control -l --start-all
+------------------------------------------------------------------------------
++
+ ** If you receive the error message `bash: osrf_control: command not found`,
+ then your environment variable `PATH` does not include the `/openils/bin`
+ directory; this should have been set in the *opensrf* Linux account's
+ `.bashrc` configuration file. To manually set the `PATH` variable, edit the
+ configuration file `~/.bashrc` as the *opensrf* Linux account and add the
+ following line:
++
+[source, bash]
+------------------------------------------------------------------------------
+export PATH=$PATH:/openils/bin
+------------------------------------------------------------------------------
++
+3. As the *opensrf* Linux account, generate the Web files needed by the staff
+ client and catalogue and update the organization unit proximity (you need to do
+ this the first time you start Evergreen, and after that each time you change the library org unit configuration.
+):
++
+[source, bash]
+------------------------------------------------------------------------------
+autogen.sh
+------------------------------------------------------------------------------
++
+4. As the *root* Linux account, restart the Apache Web server:
++
+[source, bash]
+------------------------------------------------------------------------------
+/etc/init.d/apache2 restart
+------------------------------------------------------------------------------
++
+If the Apache Web server was running when you started the OpenSRF services, you
+might not be able to successfully log in to the OPAC or staff client until the
+Apache Web server is restarted.
+
+Testing connections to Evergreen
+--------------------------------
+
+Once you have installed and started Evergreen, test your connection to
+Evergreen via `srfsh`. As the *opensrf* Linux account, issue the following
+commands to start `srfsh` and try to log onto the Evergreen server using the
+*egadmin* Evergreen administrator user name and password that you set using the
+`eg_db_config` command:
+
+[source, bash]
+------------------------------------------------------------------------------
+/openils/bin/srfsh
+srfsh% login <admin-user> <admin-pass>
+------------------------------------------------------------------------------
+
+You should see a result like:
+
+ Received Data: "250bf1518c7527a03249858687714376"
+ ------------------------------------
+ Request Completed Successfully
+ Request Time in seconds: 0.045286
+ ------------------------------------
+
+ Received Data: {
+ "ilsevent":0,
+ "textcode":"SUCCESS",
+ "desc":" ",
+ "pid":21616,
+ "stacktrace":"oils_auth.c:304",
+ "payload":{
+ "authtoken":"e5f9827cc0f93b503a1cc66bee6bdd1a",
+ "authtime":420
+ }
+
+ }
+
+ ------------------------------------
+ Request Completed Successfully
+ Request Time in seconds: 1.336568
+ ------------------------------------
+[[install-troubleshooting-1]]
+If this does not work, it's time to do some troubleshooting.
+
+ * As the *opensrf* Linux account, run the `settings-tester.pl` script to see
+ if it finds any system configuration problems. The script is found at
+ `Open-ILS/src/support-scripts/settings-tester.pl` in the Evergreen source
+ tree.
+ * Follow the steps in the http://evergreen-ils.org/dokuwiki/doku.php?id=troubleshooting:checking_for_errors[troubleshooting guide].
+ * If you have faithfully followed the entire set of installation steps
+ listed here, you are probably extremely close to a working system.
+ Gather your configuration files and log files and contact the
+ http://evergreen-ils.org/communicate/mailing-lists/[Evergreen development
+mailing list] for assistance before making any drastic changes to your system
+ configuration.
+
+Getting help
+------------
+
+Need help installing or using Evergreen? Join the mailing lists at
+http://evergreen-ils.org/communicate/mailing-lists/ or contact us on the Freenode
+IRC network on the #evergreen channel.
+
+License
+-------
+This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
+Unported License. To view a copy of this license, visit
+http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative
+Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
diff --git a/configure.ac b/configure.ac
index 585ab00..2575846 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,8 +20,8 @@
export PATH=${PATH}:/usr/sbin
AC_PREREQ(2.61)
-AC_INIT(Open-ILS, trunk, open-ils-dev at list.georgialibraries.org)
-AM_INIT_AUTOMAKE([OpenILS], [trunk])
+AC_INIT(Open-ILS, 2.8.0, open-ils-dev at list.georgialibraries.org)
+AM_INIT_AUTOMAKE([OpenILS], [2.8.0])
AC_REVISION($Revision: 0.1 $)
AC_CONFIG_SRCDIR([configure.ac])
AC_CONFIG_SUBDIRS([Open-ILS/xul/staff_client/external/libmar])
commit 2e2105e55b9192a4944a1f8d1215f04a0ddd40b9
Author: Bill Erickson <berickxx at gmail.com>
Date: Tue Mar 3 17:38:40 2015 -0500
Bumping Perl version for 2.8.0
Signed-off-by: Bill Erickson <berickxx at gmail.com>
diff --git a/Open-ILS/src/perlmods/lib/OpenILS.pm b/Open-ILS/src/perlmods/lib/OpenILS.pm
index 485edbc..0c61121 100644
--- a/Open-ILS/src/perlmods/lib/OpenILS.pm
+++ b/Open-ILS/src/perlmods/lib/OpenILS.pm
@@ -6,6 +6,6 @@ OpenILS - Client and server support for the Evergreen open source library system
=cut
-our $VERSION = '2.08';
+our $VERSION = '2.0800';
1;
-----------------------------------------------------------------------
hooks/post-receive
--
Evergreen ILS
More information about the open-ils-commits
mailing list