Evergreen.git
7 years agoLP#169787 High contrast text in patron summary alert buttons
Dan Scott [Thu, 8 Jun 2017 15:32:36 +0000 (11:32 -0400)]
LP#169787 High contrast text in patron summary alert buttons

Rather than displaying red text on the default blue background for alert text
on an active button, display the alert text as a much higher contrast
red-on-white.

Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP1690434: Date Comparisons in the Reporter
Jason Boyer [Fri, 12 May 2017 19:14:54 +0000 (15:14 -0400)]
LP1690434: Date Comparisons in the Reporter

Because of the way the where clause is constructed
in queries using the Year + Month Transform reports
using some types of operators could produce invalid
SQL.

To test:
put together a simple report template with a date
in the Basic Filters section, using the Year + Month
transform and the On or After operator. (a count of
circs with an xact_start filter is a simple way to
set this up.) Schedule it with a relative date
such as 1 month ago and run it.

Pre Patch: the report will fail and the error text
will reference a missing text >= double precision
comparison function.

Post Patch: you'll get a count of how many circs
were opened last month (or whatever report you
wrote).

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP#1694497: fix record links on 2nd+ page of grouped results
Galen Charlton [Tue, 30 May 2017 19:51:23 +0000 (15:51 -0400)]
LP#1694497: fix record links on 2nd+ page of grouped results

This patch fixes a bug wherein the second (and subsequent)
pages of search results in the public catalog (when group
formats and editions is in effect) does not correctly generate
links to hits that are not part of of a multi-bib metarecords.

To test
-------
1. Keyword search concerto for "piano"
2. Check the box for "Group formats and Editions"
3. Click Page 2
4. Click any result that is not a group (missing the parentheses after
   the title). You will get redirected to the my account page.
5. Apply the patch and do steps #1-4 again. This time, you should
   end up on the record details page.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
7 years agoLP#1312824: follow-up to fix whitespace
Galen Charlton [Tue, 30 May 2017 14:05:57 +0000 (10:05 -0400)]
LP#1312824: follow-up to fix whitespace

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1312824: Change success message for transferred holds
Kathy Lussier [Fri, 19 May 2017 15:38:53 +0000 (11:38 -0400)]
LP#1312824: Change success message for transferred holds

The holds transferred success message should clarify which holds were
transferred to mitigate potential confusion.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP1312824 open-ils.circ.hold.change_title fix
Jason Boyer [Fri, 25 Apr 2014 16:45:34 +0000 (12:45 -0400)]
LP1312824 open-ils.circ.hold.change_title fix

Add a capture_time => undef limit to both change_title
APIs to prevent currently captured holds from being reset
when moving holds from one title to another.
More work is needed to prevent items currently in transit
from having their transits canceled.

Test plan
---------
1. Create a bib with multiple holdings
2. Add multiple holds to this title and capture one of them - Item
   will have a status of On Holds Shelf
3. Open another bib record, open Actions for this Record menu,
   Mark as Hold Transfer Destination
4. Return to the record that has a captured hold, open Actions for
   this Record, Transfer all Title Holds
5. Check Captured hold, Item status is Available, hold has been reset
   and now points to the new bib record.

With the patch applied, steps 2-5 above should be repeated, but this
time in step 5 the hold will still be on the original record and the
item's status will still be On Holds Shelf.

Signed-off-by: Jason Boyer <JBoyer1@library.in.gov>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1672775 Stamping A/T purge SQL upgrade
Bill Erickson [Fri, 26 May 2017 16:09:49 +0000 (12:09 -0400)]
LP#1672775 Stamping A/T purge SQL upgrade

Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1672775: add purge_at_events.srfsh to example crontab
Galen Charlton [Fri, 26 May 2017 14:24:53 +0000 (10:24 -0400)]
LP#1672775: add purge_at_events.srfsh to example crontab

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1672775 Action/Trigger retention interval release notes
Bill Erickson [Thu, 16 Mar 2017 16:33:55 +0000 (12:33 -0400)]
LP#1672775 Action/Trigger retention interval release notes

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1672775 Action/Trigger CRON-able purge script
Bill Erickson [Thu, 16 Mar 2017 15:46:06 +0000 (11:46 -0400)]
LP#1672775 Action/Trigger CRON-able purge script

Installs a new purge_at_events.sh script into the Evergreen bin
directory.  Invoked at regular intervals to remove expired events.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1672775 Action/Trigger purge PGTAP tests
Bill Erickson [Thu, 16 Mar 2017 14:53:43 +0000 (10:53 -0400)]
LP#1672775 Action/Trigger purge PGTAP tests

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1672775 Action/Trigger retention interval SQL/IDL
Bill Erickson [Wed, 15 Mar 2017 19:39:55 +0000 (15:39 -0400)]
LP#1672775 Action/Trigger retention interval SQL/IDL

Adds a new 'retention_interval' column for Action/Trigger Event
Definitions and an action_trigger.purge_events() function for deleting
events that have exceeded their configured retention time, including any
outputs linked to those events.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1691284 alpha sort circ modifiers on the copy editor
Cesar Velez [Thu, 18 May 2017 22:10:03 +0000 (18:10 -0400)]
LP#1691284 alpha sort circ modifiers on the copy editor

Alphabetically sort circ modifiers on webstaff, so large lists
are easier to use.

Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: Fix buggy AsciiDoc rendering of backticks
Remington Steed [Thu, 25 May 2017 18:32:57 +0000 (14:32 -0400)]
Docs: Fix buggy AsciiDoc rendering of backticks

Apparently, AsciiDoc matches backticks (`) with single quotes (') as a
valid quote pair, and this happens before matching a pair of backticks.
So in cases where a pair of backticks is followed by only one single
quote (not within a word), the first backtick is treated as a single
quote, thus breaking the backtick pair and not applying the intended
monospace formatting.

This commit fixes two such cases by escaping the backticks. This doesn't
prevent the same problem in the future, but I haven't found any way to
change this parsing behavior.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
7 years agoLP#1077212: add qstore to eg_db_config.pl --update-config list
Jason Etheridge [Fri, 9 Nov 2012 21:47:36 +0000 (16:47 -0500)]
LP#1077212: add qstore to eg_db_config.pl --update-config list

To test
-------
[1] After applying the patch, run eg_db_config --update-config --service all
    as per the upgrade instructions.
[2] Verify that the <open-ils.qstore> section of opensrf.xml contains
    the correct database credentials.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1687971: stamp DB update
Galen Charlton [Thu, 25 May 2017 13:31:27 +0000 (09:31 -0400)]
LP#1687971: stamp DB update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1687971: follow-up fix to copy location editor
Galen Charlton [Fri, 19 May 2017 01:11:20 +0000 (21:11 -0400)]
LP#1687971: follow-up fix to copy location editor

This fixes an issue where URLs of existing copy locations
could not be edited.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1687971 - Make copy locations in the OPAC clickable.
Michele Morgan [Mon, 8 May 2017 19:08:11 +0000 (15:08 -0400)]
LP#1687971 - Make copy locations in the OPAC clickable.

Adds a url field to asset.copy_location. The presence of a url in the
field will cause the copy location to display as a link in the OPAC. Urls
can be edited in the Copy Locations Editor.

Additional contributors: Martha Driscoll, Christine Morgan, Suzanne
Paterno.

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1498155: stamp DB update
Galen Charlton [Thu, 25 May 2017 13:24:24 +0000 (09:24 -0400)]
LP#1498155: stamp DB update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1498155 - Also remove user-assigned SET_CIRC_MISSING perm.
Chris Sharp [Sat, 20 Aug 2016 18:25:07 +0000 (14:25 -0400)]
LP#1498155 - Also remove user-assigned SET_CIRC_MISSING perm.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP1498155 - Remove SET_CIRC_MISSING permission.
Josh Stompro [Fri, 13 Nov 2015 03:53:36 +0000 (21:53 -0600)]
LP1498155 - Remove SET_CIRC_MISSING permission.

SET_CIRC_MISSING isn't used anywhere, remove it to avoid
confusing it with MARK_ITEM_MISSING permission.

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP1574141: add release notes
Galen Charlton [Fri, 19 May 2017 02:38:33 +0000 (22:38 -0400)]
LP1574141: add release notes

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP1574141: minor code tweaks
Galen Charlton [Fri, 19 May 2017 02:28:49 +0000 (22:28 -0400)]
LP1574141: minor code tweaks

- return the BAD_PARAMS event if client provides neither patron ID
  nor contact value
- more precisely identify missing parameters
- standardize indentation

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP1574141 - Allow invalidate for all patrons with the same contact.
Josh Stompro [Fri, 1 Jul 2016 20:29:42 +0000 (15:29 -0500)]
LP1574141 - Allow invalidate for all patrons with the same contact.

Teach the open-ils.actor.invalidate.* methods to allow invalidating
by the contact value, so all patrons with that contact value can have
it invalidated with one call.

This adds a new parameter for the contact value (email address, phone
number).  Then all customers with that value have it invalidated from
their account.

This somewhat simplifies writing a cli script for invalidating email
addresses since the script doesn't have to look up the user first.

The ability to invalidate all with the same contact value was already
there, it just wasn't exposed.

Testing:

1. Make sure the normal staff client invalidate buttons still work.
2. Use srfsh to try the call with a contact value.
  request open-ils.actor open-ils.actor.invalidate.email "<authkey>" "" "" "" "test@email.com"

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1691801 Webstaff grid column move controls
Bill Erickson [Thu, 18 May 2017 19:17:51 +0000 (15:17 -0400)]
LP#1691801 Webstaff grid column move controls

Add options to grid "Configure Columns" interface for moving a column
left or right by one, all the way left, and all the way right.

Most recently modified column is styled so it's easier for users to track
the movement of a column.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoTranslation updates - po files
Ben Shum [Thu, 25 May 2017 04:24:38 +0000 (00:24 -0400)]
Translation updates - po files

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoTranslation updates - newpot
Ben Shum [Thu, 25 May 2017 04:16:56 +0000 (00:16 -0400)]
Translation updates - newpot

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoforward-port 2.12.1-2.12.2 schema update
Galen Charlton [Wed, 24 May 2017 20:12:27 +0000 (16:12 -0400)]
forward-port 2.12.1-2.12.2 schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoforward-port 2.11.4-2.11.5 schema update
Galen Charlton [Wed, 24 May 2017 20:04:37 +0000 (16:04 -0400)]
forward-port 2.11.4-2.11.5 schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years ago2.10.11-2.10.12 schema update
Galen Charlton [Wed, 24 May 2017 16:35:09 +0000 (12:35 -0400)]
2.10.11-2.10.12 schema update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agorelease notes for 2.10.12
Galen Charlton [Wed, 24 May 2017 16:33:45 +0000 (12:33 -0400)]
release notes for 2.10.12

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoupdate 2.11.5 release notes
Galen Charlton [Wed, 24 May 2017 16:29:57 +0000 (12:29 -0400)]
update 2.11.5 release notes

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoupdate 2.12.2 release notes
Galen Charlton [Wed, 24 May 2017 16:26:45 +0000 (12:26 -0400)]
update 2.12.2 release notes

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1478128: Avoid XSS in public catalog
Dan Scott [Wed, 26 Apr 2017 04:19:42 +0000 (00:19 -0400)]
LP#1478128: Avoid XSS in public catalog

This patch escapes various GET param values by passing them through
the Template Toolkit html filter, including:

* in the locale picker
* in the searchbar
* in the login form

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoDocs: 2.12.2 Maintenance release notes
Kathy Lussier [Wed, 24 May 2017 04:00:38 +0000 (00:00 -0400)]
Docs: 2.12.2 Maintenance release notes

Well, this turned out to be a busy maintenance release. Lots of bug fixes
are now outlined in the 2.12.2 release notes.

This commit also adds a missing new feature - LSE setting for default
status for received acq line items - to the 2.12.0 notes.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: 2.11.5 maintenance release notes
Kathy Lussier [Wed, 24 May 2017 02:59:35 +0000 (22:59 -0400)]
Docs: 2.11.5 maintenance release notes

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1677902: Remove search formats from advanced search limiter block
Kathy Lussier [Wed, 17 May 2017 16:11:33 +0000 (12:11 -0400)]
LP#1677902: Remove search formats from advanced search limiter block

The original behavior of the advanced search limiter block was to remove
search formats from the display because it is available for limiting in the
search bar. Other code broke this behavior, and I've now restored it by
adding the ignore search format code to the searchbar.tt2 file. It also fixes
a problem where the search format limiters were incorrectly displaying on the
low hits page.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
7 years agoLP#1650410: include --days_back in synopsis and other tidying
Galen Charlton [Sat, 20 May 2017 12:39:18 +0000 (08:39 -0400)]
LP#1650410: include --days_back in synopsis and other tidying

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1650410: doc authority_control_fields.pl's --days_back flag
Jane Sandberg [Fri, 27 Jan 2017 00:00:53 +0000 (16:00 -0800)]
LP#1650410: doc authority_control_fields.pl's --days_back flag

This patch updates the POD that in turn is displayed when
running authority_control_fields.pl -h

Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1690468: fix Exclude Electronic Resources checkbox with advanced search limiters
Jeff Davis [Thu, 18 May 2017 22:43:53 +0000 (15:43 -0700)]
LP#1690468: fix Exclude Electronic Resources checkbox with advanced search limiters

When advanced search limiters are applied, you cannot successfully
uncheck the Exclude Electronic Resources checkbox.  When you uncheck it,
your current search is reloaded, but e-resources are still excluded
(and the box remains checked).

When you use the checkbox to exclude e-resources, the search form on the
results page contains a hidden input element:

<input type="hidden" name="fi:-search_format" value="electronic" />

This commit uses Javascript to remove that element from the search form
when the box is unchecked, before submitting the search.

Test plan:

[1] Enable the "Exclude Electronic Resources" checkbox in config.tt2.
[2] Do an advanced search, applying at least one search filter (e.g.
    Language = "English").
[3] On the search results page, check the Exclude Electronic Resources
    checkbox.  This repeats your search, excluding e-resources.
[4] Uncheck the Exclude Electronic Resources box.  Your search is
    repeated, but e-resources are still excluded and the box remains
    checked on your new results page.
[5] Apply this fix.
[6] Refresh the page or clear your browser cache, and try to uncheck the
    Exclude Electronic Resources box again.  This time, it should work:
    e-resources will no longer be excluded, and the box is unchecked
    when your new results page loads.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1678638: use new preferred extension for AsciiDoc files
Galen Charlton [Tue, 2 May 2017 14:57:23 +0000 (10:57 -0400)]
LP#1678638: use new preferred extension for AsciiDoc files

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP#1678638: add text versions the qstore and query_schema docs
Galen Charlton [Sun, 2 Apr 2017 19:15:56 +0000 (15:15 -0400)]
LP#1678638: add text versions the qstore and query_schema docs

qstore.txt includes some AsciiDoc markup, while query_schema.txt
is just the results of passing query_schema.odt through unoconv
and pandoc.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP#1678638: technical documentation for qstore
Galen Charlton [Sun, 2 Apr 2017 18:59:00 +0000 (14:59 -0400)]
LP#1678638: technical documentation for qstore

Technical documentation and sample stored queries for
the open-ils.qstore service, written by Scott McKellar
and copyright 2010 by the Equinox Open Library Initiative.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
7 years agoLP#1564508: disable selecting Hatch status menu item
Galen Charlton [Fri, 19 May 2017 13:37:49 +0000 (09:37 -0400)]
LP#1564508: disable selecting Hatch status menu item

Add the "disabled" class to the <li> for the navbar menu
item that displays Hatch's status, to avoid making users
think that there's an action available to them by selecting
that menu item.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1564508 Hatch status in hamburger, remove statusbar
Bill Erickson [Thu, 17 Nov 2016 20:33:02 +0000 (15:33 -0500)]
LP#1564508 Hatch status in hamburger, remove statusbar

* Move the Hatch connectivity status indicator into the upper-right
  hamburger menu.

* Removes the long-hidden hatch/websockets statusbar.

* Since the Hamburger forces a re-digest of the interface when opened,
  the code no longer attempts to force the page to re-$apply() when
  the Hatch connection opens or closes.  It's no longer necesssary
  (and was buggy).

* The WebSockets connectivity status is not added to the hamburger.  The
  websockets connection will go up and down regularly as connections
  expire and reset.  Having the indicator flash could lead to
  unneccesary panic.  Plus, if websockets are down, staff can't log in
  anyway.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP 1672519: Make marc_export descendants aware.
Jason Stephenson [Sat, 22 Apr 2017 12:17:53 +0000 (08:17 -0400)]
LP 1672519: Make marc_export descendants aware.

Add a --descendants option to marc_export to get records for an
org. unit and its descendants.

To test
-------
[1] Run marc_export with -i --library FOO. Verify that the resulting
    records have 852 fields only from FOO.
[2] Run marc_export with -i --descendants FOO. Verify that the resulting
    records have 852 fields from FOO *and* all descendants of FOO.
[3] Run marc_export using various combinations of --library and --descendants;
    verify that items from the expected libraries show up as 852 fields.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agodoc: fix location of a release note stub
Galen Charlton [Fri, 19 May 2017 02:55:42 +0000 (22:55 -0400)]
doc: fix location of a release note stub

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1610246: add upgrade note
Galen Charlton [Fri, 19 May 2017 01:59:28 +0000 (21:59 -0400)]
LP#1610246: add upgrade note

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1610246 Classic Circulation View excluding circulations
Chris Sharp [Fri, 5 Aug 2016 13:27:23 +0000 (09:27 -0400)]
LP#1610246 Classic Circulation View excluding circulations

The reporter.classic_current_circ view, which is available via
Open-ILS/src/sql/Pg/example.reporter-extension.sql, was excluding
circulations because it was assuming all users have a billing address
This branch corrects that with a LEFT JOIN.

No upgrade script will be included since these views are not assumed
to be installed by all Evergreen instances.  Please re-run the
example.reporter-extension.sql file to apply this change for your
instance.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1491875: avoid erroneous "unsaved data" popup during MARC record creation
Jason Etheridge [Wed, 26 Apr 2017 21:23:26 +0000 (17:23 -0400)]
LP#1491875: avoid erroneous "unsaved data" popup during MARC record creation

Test plan
---------
[1] Navigate to Cataloging -> Create New MARC Record.
[2] Choose a template, click Load
[3] Enter data in a fixed field, for example, Date1
[4] Enter data in a MARC field such as 100
[5] Click Create Record:

    The "This tab may have unsaved data. ..." pop up will appear.
    Clicking OK will save the record and take the user to their default
    view of the record.
    Clicking Cancel will save the record and return the user to the MARC
    Edit screen.
    The behavior when clicking Cancel can lead to confusion as to
    whether the record has actually been saved.

[6] Apply the patch and repeats steps #1-#5.
[7] This time, no extraneous unsaved data warning should appear.

Note that this patch's kludge doesn't fix all possible instances
of the warning; see https://bugs.launchpad.net/evergreen/+bug/1491875/comments/6
for details.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
SIgned-off-by: Andrea Neiman <abneiman@equinoxinitiative.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1677661 Hold targeter live test use API, etc.
Bill Erickson [Fri, 31 Mar 2017 14:21:45 +0000 (10:21 -0400)]
LP#1677661 Hold targeter live test use API, etc.

Teach the hold targeter live tests to call the open-ils.hold.targeter
API instead of calling the now-defunct Utils::HoldTargeter batch
targeter function.  Apart from the loss of this function, calling the
API allows the live tests to exercise more of the targeting code.

Teach the live tests to test --soft-retarget-interval instead of the
deprecated --skip-viable option.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1677661 Targeter V2 remove unused batch API
Bill Erickson [Fri, 31 Mar 2017 14:21:25 +0000 (10:21 -0400)]
LP#1677661 Targeter V2 remove unused batch API

Remove the unusued batch target() function from Utils::HoldTargeter to
avoid code duplication.  The same (but more resilient) batch targeting
construct exists in the open-ils.hold-targeter API.

Move API docs from Utils::HoldTargeter to the open-ils.hold-targeter API
docs for added visbility / findability.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1677661 Targeter V2 extras release notes
Bill Erickson [Thu, 30 Mar 2017 15:47:20 +0000 (11:47 -0400)]
LP#1677661 Targeter V2 extras release notes

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1677661 Hold Targeter V2 Repairs & Improvements
Bill Erickson [Wed, 22 Mar 2017 15:47:21 +0000 (11:47 -0400)]
LP#1677661 Hold Targeter V2 Repairs & Improvements

* Make the batch targeter more resilient to a single-hold failure.

* Additional batch targeter info logging.

* Set OSRF_LOG_CLIENT in hold_targeter_v2.pl for log tracing

* Removes the confusingly name --target-all option

* Adds a new --next-check-interval option for specifying when the
  targeter will next affect the currently processed holds, which may be
  different that now + retarget-interval in cases where the targeter is
  not constantly running.

* Replaces the --skip-viable option with a new --soft-retarget-interval
  option, allowing for time-based soft-targeting.

* Soft-targeting now updates hold_copy_maps for all affected holds, not
  just those requiring a full retarget.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP1274999: Next Link Appears at "End" of Copy List
Jason Boyer [Tue, 21 Feb 2017 21:31:31 +0000 (16:31 -0500)]
LP1274999: Next Link Appears at "End" of Copy List

The total number of copies wasn't checked against the
copy_limit and copy_offset, so anytime that the
number of copies per page mod copy_limit == 0 the
Next link would appear, even if there were only
copy_limit copies total. Now the offset and limit are
compared to the total number of copies available at
the current depth to determine if the Next link
should appear.

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
7 years agoLP#1618949 Required patron stats format repairs
Bill Erickson [Wed, 26 Apr 2017 16:42:21 +0000 (12:42 -0400)]
LP#1618949 Required patron stats format repairs

Fixes a broken div column class, which caused the patron stat cats to
stretch across the page.

Other div nesting/formatting fixes and additional inline code comments.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1618949 Patron edit forces required stat cats
Billy Horn [Mon, 7 Nov 2016 22:29:53 +0000 (14:29 -0800)]
LP#1618949 Patron edit forces required stat cats

Display required stat cats as required form fields and prevent the
patron editor form from submitting when required stat cats do not have
values.

Signed-off-by: Billy Horn <bhorn@catalystdevworks.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1670242 Webstaff checkin transit holds addr fix
Bill Erickson [Fri, 12 May 2017 20:22:14 +0000 (16:22 -0400)]
LP#1670242 Webstaff checkin transit holds addr fix

Gracefully handle cases where a checkin results in a transit to a branch
with no holds address.  Route dialog and print templates now display "We
do not have a holds address for this library. "

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoWebstaff: hide behind-desk option when not supported
Bill Erickson [Thu, 6 Oct 2016 14:27:15 +0000 (10:27 -0400)]
Webstaff: hide behind-desk option when not supported

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
7 years agoLP1244354 Unnecessary user refresh after deletion can cause permission error
blake [Fri, 1 Jul 2016 17:01:04 +0000 (12:01 -0500)]
LP1244354 Unnecessary user refresh after deletion can cause permission error

obj.refresh_all() was being called no matter what. It needs to be called only when
there is an issue deleting the patron. On success, this patch will simply present an
informational message to the user.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
7 years agoLP#1641208: util.file no longer mangles UTF8 when writing JSON
Galen Charlton [Fri, 11 Nov 2016 19:52:11 +0000 (14:52 -0500)]
LP#1641208: util.file no longer mangles UTF8 when writing JSON

This patch ensures that JSON strings are converted to UTF8
before they are writing to XUL profile files by util.file. Doing this
fixes a bug where by OU names like "ბიზნესისა" can get mangled
in certain XUL client interfaces.

To test
-------
[1] Set an OU name to ბიზნესისა
[2] In the transit list, note that the OU selector displays
    the name as ÑØÖÜÔáØáÐ.
[3] Apply the patch (note that it's not necessary to rebuild
    the staff client to test this).
[4] Restart the staff client, clearing cache beforehand.
[5] Note that the OU name is now displayed correctly in the transit
    list.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
7 years agoLP#1673799 Stamping EDI query SQL update
Bill Erickson [Wed, 17 May 2017 17:14:17 +0000 (13:14 -0400)]
LP#1673799 Stamping EDI query SQL update

Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1673799: new acqedim index to speed up duplicate file check
Galen Charlton [Fri, 17 Mar 2017 15:47:46 +0000 (11:47 -0400)]
LP#1673799: new acqedim index to speed up duplicate file check

This patch adds a new index on acq.edi_message to speed up
the check for duplicate EDI messages that edi_fetcher.pl runs,
replacing use of "ilike" with invocations of the evergreen.lowercase()
stored procedure.

To test
-------
[1] Arrange to create or simulate an EDI message that failed
    processing.
[2] Run edi_fetcher.pl to have it attempt to download the
    failed message in step #1; verify that the file is
    /not/ downloaded again and that no additonal acq.edi_message
    rows are created for it.
[3] (Extra credit) Try steps 1 and 2 in a database that has a
    very large number of rows in acq.edi_message.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1650807: fix rollover_phone_to_print.pl to ack failed calls
Josh Stompro [Wed, 21 Dec 2016 19:57:32 +0000 (13:57 -0600)]
LP#1650807: fix rollover_phone_to_print.pl to ack failed calls

This patch fixes a bug in rollover_phone_to_print.pl that kept
failed callfiles from being moved.

The list of new event ID's that the script created was being sent to the
mediator, which couldn't do anything with them.  The original event ID's
need to be sent to have those call files moved.

Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1672824 A/T complete_time set on grouped events
Bill Erickson [Tue, 14 Mar 2017 17:57:12 +0000 (13:57 -0400)]
LP#1672824 A/T complete_time set on grouped events

Set the complete_time value on grouped Action/Trigger events when an
event's state reaches "complete", consisten with non-grouped events.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#117794 - Remove references to "Keep" field in Vandelay docs.
Chris Sharp [Sat, 20 Aug 2016 14:46:11 +0000 (10:46 -0400)]
LP#117794 - Remove references to "Keep" field in Vandelay docs.

Since the "Keep" field of Vandelay Import Item Attributes is
not implemented, remove references to it in the documentation.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
7 years agoLP#1177794 - remove "Keep" field from Vandelay Import Item Attributes.
Chris Sharp [Sat, 20 Aug 2016 14:36:57 +0000 (10:36 -0400)]
LP#1177794 - remove "Keep" field from Vandelay Import Item Attributes.

The "Keep" field in Vandelay Import Item Attributes is not
currently implemented, so remove from all user interfaces.
However, I didn't change the vandelay.import_item_attr_definition
table, leaving the option for this to be implemented in the future.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Conflicts:
build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot

7 years agoLP1689576: Fix ALARM -> ALRM Typo
Jason Boyer [Tue, 9 May 2017 15:07:46 +0000 (11:07 -0400)]
LP1689576: Fix ALARM -> ALRM Typo

In Biblio.pm, when trying to set a timeout handler for $SIG{ALARM}
when retrieving cached facets as part of a catalog search,
a warning is dropped in the logs to this effect:
"No such signal: SIGALARM at
/usr/local/share/perl/5.18.2/OpenILS/Application/Search/Biblio.pm
line 1411"
When using $SIG{ALRM} instead the handler is set as expected.

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1552861: stamp database update
Galen Charlton [Mon, 15 May 2017 21:03:28 +0000 (17:03 -0400)]
LP#1552861: stamp database update

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1552861: add upgrade script
Galen Charlton [Wed, 10 May 2017 17:00:46 +0000 (10:00 -0700)]
LP#1552861: add upgrade script

Also, a test plan for the fix:

[1] Set the vandelay.default_match_set setting for several
    org units. In at least one case, set it to the ID
    of a valid vandelay.match_set entry; in another case,
    set it to a numeric ID that doesn't match any existing
    vms rows; and finally, in another case set it to the
    name of a match set.
[2] Apply the patch and run the database update. Verify that
    the update script will indicate that there are invalid
    settings, then delete.
[3] Open the library settings editor and verify that in the
    case where a valid match set was used, the editor provides
    a drop-down with possible vms values with the correct
    one selected.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1552861: use correct datatype for vandelay.default_match_set org setting
Jeff Davis [Thu, 3 Mar 2016 18:55:34 +0000 (10:55 -0800)]
LP#1552861: use correct datatype for vandelay.default_match_set org setting

Values for this setting should be links to vandelay.match_set, not strings.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Conflicts:
Open-ILS/src/sql/Pg/950.data.seed-values.sql

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1170514 Stamping vandelay bib-overlay resync SQL
Bill Erickson [Mon, 15 May 2017 18:16:05 +0000 (14:16 -0400)]
LP#1170514 Stamping vandelay bib-overlay resync SQL

Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoLP#1170514 - Upgrade script for vandelay.auto_overlay_bib_record
Chris Sharp [Tue, 11 Apr 2017 14:20:30 +0000 (10:20 -0400)]
LP#1170514 - Upgrade script for vandelay.auto_overlay_bib_record

This script got missed in the 2.1-2.2 era and finally makes it
in nearly six years later.  Not necessary for sites that began using
Evergreen since then, but harmless to run.

Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
7 years agoDocs: LP#1673841 Fix formatting in Apache docs
Jeanette Lundgren [Wed, 10 May 2017 21:00:39 +0000 (17:00 -0400)]
Docs: LP#1673841 Fix formatting in Apache docs

From Jeanette's comment on the bug:

"I converted into a simple unordered list and it is easier to read, but
the list bullet spacing makes for a long list.

To conserve some scrolling, do you want me to put it in a table instead
with 3 column headers (option | default | description)?"

Signed-off-by: Remington Steed <rjs7@calvin.edu>
7 years agoDocs: Update reporter_cloning_shared_templates.adoc
Jeanette Lundgren [Wed, 3 May 2017 20:17:19 +0000 (16:17 -0400)]
Docs: Update reporter_cloning_shared_templates.adoc

Small correction to match the new menu names and path in the web client.
Also fix the arrow character by changing from --> to ->.

Signed-off-by: Remington Steed <rjs7@calvin.edu>
7 years agoLP#1648234 Retain myopac redirect and keep refs
Bill Erickson [Wed, 3 May 2017 14:48:49 +0000 (10:48 -0400)]
LP#1648234 Retain myopac redirect and keep refs

Leave the myopac.xml redirect in eg_vhost.conf since of all the
redirects it's the most likely to be used.  This version of the redirect
is proxy-proofed.

Additionally keep all of the original myopac redirects in
Open-ILS/examples/jspac_redirects.conf for reference.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1648234 Remove Apache JSPAC redirects
Bill Erickson [Mon, 17 Apr 2017 18:20:17 +0000 (14:20 -0400)]
LP#1648234 Remove Apache JSPAC redirects

Remove automatic URL redirects from JSPAC URLs to TPAC URLs in the
example Apache configuration files.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1648234 IP Redirect honors client port
Bill Erickson [Mon, 17 Apr 2017 18:09:10 +0000 (14:09 -0400)]
LP#1648234 IP Redirect honors client port

IP-based redirection now redirects the client to the same port number
originally requsted by the client, instead of using the port that the
Apache server is listening on.  This prevents internal Apache from
leaking to the caller when a proxy is used.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1648234: fix Apache 2.2 version of redirect rules
Galen Charlton [Wed, 22 Mar 2017 16:15:06 +0000 (12:15 -0400)]
LP#1648234: fix Apache 2.2 version of redirect rules

Apache 2.2 doesn't actually set a REQUEST_SCHEME variable,
so we'll simulate it.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1648234 Apache redirects to standard ports
Bill Erickson [Fri, 24 Feb 2017 22:09:17 +0000 (17:09 -0500)]
LP#1648234 Apache redirects to standard ports

Certain Apache redirects now send the browser to standard 80/443 ports
instead of defaulting to the internally configured Apache ports,
which may be non-standard, particularly in a proxied environment.

Leaking the non-standard ports to the browser causes the browser to
bypass the proxy and could cause the browser to request inaccessible
pages.

Paths affected by this patch:

/
/eg/staff
/opac/extras/slimpac/start.html
/opac/extras/slimpac/advanced.html
/opac/extras/slimpac/.*?locale=.*

To test:

1. Configure Apache to use non-standard ports for port 80/443 (e.g. 7080
and 7443).
2. Confirm the issue by navigatigating to http://HOST/
3. This should redirect to http://HOST:7080/eg/opac/home
4. Apply the Apache config changes and reload/restart Apache.
5. Clear the browser cache to reset any redirects
6. Navigate to http://HOST/
7. Confirm it redirects the browser to http://HOST/eg/opac/home

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoDocs: Update MARC editor docs for web client
blake [Tue, 2 May 2017 19:04:37 +0000 (14:04 -0500)]
Docs: Update MARC editor docs for web client

Provided Webby screen shots and updated the language to match the web based
staff client.

Signed-off-by: blake <blake@mobiusconsortium.org>
Signed-off-by: Remington Steed <rjs7@calvin.edu>
7 years agoLP#1647852: Use correct method during adjust to zero on negative balance
Jeff Davis [Thu, 27 Apr 2017 20:54:12 +0000 (13:54 -0700)]
LP#1647852: Use correct method during adjust to zero on negative balance

Implementing Brent Mills' suggestion on Launchpad.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Dan Wells <dbw2@calvin.edu>
7 years agoDocs typo: s/minimum/maximum/
Dan Scott [Tue, 9 May 2017 02:51:42 +0000 (22:51 -0400)]
Docs typo: s/minimum/maximum/

A small thing, but it means exactly the opposite. Thanks to _adb in IRC for
pointing this out!

Signed-off-by: Dan Scott <dscott@laurentian.ca>
7 years agoLP#1687649 Z39.50 CQL query parser honors bools
Bill Erickson [Tue, 2 May 2017 15:51:12 +0000 (11:51 -0400)]
LP#1687649 Z39.50 CQL query parser honors bools

To test with yaz-client, Z server on localhost, database=evergreen:

Z> open localhost:2210/evergreen
Z> find @or @attr 1=4 @attr 4=6 "potter" @attr 1=4 @attr 4=6 "piano"

"Number of hits:" value should be greater than zero (~38) using the
concerto data set.

Similarly, opensrf logs should contain the line:

SRU search string [(title = potter or title = piano)] converted to
[title:potter || title:piano]

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1646638 - Fix SIP timeouts due to invalid sessions
Dan Scott [Thu, 1 Dec 2016 22:24:01 +0000 (17:24 -0500)]
LP#1646638 - Fix SIP timeouts due to invalid sessions

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1667221: (follow-up) remove comment that is now a lie
Galen Charlton [Mon, 1 May 2017 18:47:58 +0000 (14:47 -0400)]
LP#1667221: (follow-up) remove comment that is now a lie

Also, here's a test plan:

[1] Edit /openils/conf/oils_sip.xml and set the currency
    defined in the implementation section to be something
    other than USD.
[2] Start the SIP server and perform a patron information
    request; note that the BH field in the response contains
    'USD'.
[3] Apply the patch and restart the SIP server.
[4] Repeat step 2; this time, the currency should be whatever
    is specified in oils_sip.xml.
[5] Comment out the currency section in oils_sip.xml and restart
    the SIP server.
[6] Repeat step 2; this time, the currency should be back to 'USD'.

Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1667221: use library currency as SIP patron currency instead of always using USD
Jeff Davis [Tue, 21 Feb 2017 01:20:26 +0000 (17:20 -0800)]
LP#1667221: use library currency as SIP patron currency instead of always using USD

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1378829 Stamp Upgrade Script & Add Release Note
Jason Stephenson [Sat, 6 May 2017 18:16:57 +0000 (14:16 -0400)]
LP#1378829 Stamp Upgrade Script & Add Release Note

Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoLP#1378829 Fix long overdue override permission
Jeff Godin [Fri, 14 Apr 2017 14:21:40 +0000 (10:21 -0400)]
LP#1378829 Fix long overdue override permission

Fix override permission used when checking in a copy that is "long
overdue".

The existing permission was incorrectly created with a code of
COPY_STATUS_LONGOVERDUE.override, while the event thrown requires a
permission with a code of COPY_STATUS_LONG_OVERDUE.override

This commit updates the seed data and a few references to the
old/incorrect permission in documentation, and also includes an
upgrade script designed to accommodate the various likely ways in
which sites may have already locally addressed this issue.

A simple pgtap test is also included.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
7 years agoDocs: Remove stray bullet entry
Kathy Lussier [Fri, 5 May 2017 16:29:38 +0000 (12:29 -0400)]
Docs: Remove stray bullet entry

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoDocs: Add files to the list of tpac files that should be customized
Kathy Lussier [Fri, 5 May 2017 16:14:19 +0000 (12:14 -0400)]
Docs: Add files to the list of tpac files that should be customized

We have a list of tpac files that should be customized on an Evergreen system.
There are a couple of files related to password formats that should be included
here.

Signed-off-by: Kathy Lussier <klussier@masslnc.org>
7 years agoLP#1685840 Release notes for Google Books Preview rewrite
Dan Scott [Wed, 3 May 2017 03:02:17 +0000 (23:02 -0400)]
LP#1685840 Release notes for Google Books Preview rewrite

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1685840 Activate Google Preview "extras" bar on load
Dan Scott [Tue, 2 May 2017 04:37:17 +0000 (00:37 -0400)]
LP#1685840 Activate Google Preview "extras" bar on load

Thanks to Ben Shum for pointing out that users might expect the Google Preview
extras bar near the bottom of the screen to trigger loading the preview as
well. Another event listener handles this accordingly.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1685840: Dojoless Google Books Preview as external script
Dan Scott [Mon, 24 Apr 2017 16:18:12 +0000 (12:18 -0400)]
LP#1685840: Dojoless Google Books Preview as external script

Rather than including the JavaScript inline in each page, load the
JavaScript as a regular external JavaScript file so that browsers
can take advantage of caching, reduce network bandwidth, and reduce the
amount of TT2 processing required. Every little bit helps.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1685840: Dojoless Google Books Preview: remove TT2 dependency
Dan Scott [Mon, 24 Apr 2017 15:53:24 +0000 (11:53 -0400)]
LP#1685840: Dojoless Google Books Preview: remove TT2 dependency

Rather than process the template with TT2 to specify the language in
which the Google Books Preview should be displayed, use the @lang
attribute on the <html> element--and fall back to 'en' if for some
reason that attribute has been removed from the template.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1685840: Google Books Preview: responsive sizing
Dan Scott [Mon, 24 Apr 2017 15:29:37 +0000 (11:29 -0400)]
LP#1685840: Google Books Preview: responsive sizing

Use the viewport's actual height and width to display the book preview,
rather than hard-coding 600px x 800px. On a very wide screen, the book
will be centred; on a small screen such as a mobile device, the book
will not scroll indiscriminately off to the side, but instead stays
within the bounds of the viewport.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1685840: Dojoless Google Books Preview does not need want_dojo
Dan Scott [Mon, 17 Apr 2017 22:42:11 +0000 (18:42 -0400)]
LP#1685840: Dojoless Google Books Preview does not need want_dojo

Now that Dojo is no longer needed for Google Books Preview, we can load
the associated JavaScript without having to enable want_dojo.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1685840: Dojoless Google Books Preview
Dan Scott [Mon, 17 Apr 2017 02:27:52 +0000 (22:27 -0400)]
LP#1685840: Dojoless Google Books Preview

Avoid polluting the global namespace by wrapping the code in (function() {})().

Add event listeners to the DOM elements rather than the crufty
href=javascript:function approach.

Optimization: do not load the Google Books JSAPI unless there is a matching
embedded ISBN.

Use display style directly, rather than munging class names with hide_me

Supports IE 10/11, which does not handle responseType = 'json', through
the fallback to XHR responseText.

IE9 for now; it seems the new Google Books Loader wipes out the DOM in
IE9 instead of loading nicely in the <head>. Could go back to the old
Google JS loader, which still works, but is deprecated, so could
disappear at any point.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <ben@evergreener.net>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
7 years agoLP#1427392: Stamping upgrade script for hard due date value fix
Ben Shum [Wed, 3 May 2017 01:51:13 +0000 (21:51 -0400)]
LP#1427392: Stamping upgrade script for hard due date value fix

Signed-off-by: Ben Shum <ben@evergreener.net>
7 years agoLP#1427392: Add release note for hard due date values fix
Michele Morgan [Tue, 2 May 2017 13:17:55 +0000 (09:17 -0400)]
LP#1427392: Add release note for hard due date values fix

Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Signed-off-by: Ben Shum <ben@evergreener.net>