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>
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>
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>
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.
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>
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.
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>
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.
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
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"
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>
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:
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>
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>
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>
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>
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.
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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.
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
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>
[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>
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
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>
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>
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>
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.
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>
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>
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'.
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>
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.
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>
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>
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>
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>
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>
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>