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>
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>
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>
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.
Kathy Lussier [Tue, 2 May 2017 17:33:54 +0000 (13:33 -0400)]
Docs: Documentation for default metarecord search
Adding documentation on how to configure a default metarecord search in the
admin section. The catalog section also containts a tip about this option with
a link to the admin section for further details on how to configure it.
Rather than adding the right-to-left stylesheet
Open-ILS/src/templates/opac/css/style-rtl.css.tt2 as something that
gets included in addition to the LTR style.css.tt2 when a RTL language is in
play, merge the logic directly into the stylesheet so that we save bytes over
the network, browser rendering time, and reduce the possibility that RTL will
be forgotten about when new features are added or styles are optimized.
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
[1] Create a purchase order with, say, 3 lineitems and 2
copies on each of these.
[2] Receive the first two lineitems outright.
[3] Receive one of the copies on the last lineitem and cancel
the other with a cancellation reason that's permanent (e.g.,
bad ISBN) rather than temporary (e.g., backordered).
[4] Note that the purchase order's state remains 'on-order'
[5] Apply the patch.
[6] Repeat steps #1-4. This time, the PO's state should be
'received'.
[7] Repeat steps #1-4, but this time, choose backordered as
the cancellation reason. This time, the PO's state should
remain 'on-order'.
It should be noted that the patches for this bug do *not*
retrospectively mark purchase orders as being received.
Repaire the json_query used to determine if a PO is ready to be marked
received.
A PO is non-receiveable if it has any lineitems that are not in the
received/cancelled [sic] state OR any that are canceled with a
keep_debits=true cancel reason.
Prior to this change, simply having a state of "cancelled" was enough to
prevent receiving.
* Replace tabs w/ spaces
* Remove unnecessary "or return 0" clause which was causing Perl
precedence warnings.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Chris Sharp [Wed, 5 Apr 2017 13:52:50 +0000 (09:52 -0400)]
LP#1257915 - Mark POs received when all lineitems are received or canceled.
Previously, Evergreen only considered lineitems not in a "received" status
when deciding whether to consider a purchase order to be "received". Now
items with cancel reasons that do not keep debits (e.g. not backordered)
are considered "done".
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Linda Jansova [Tue, 29 Nov 2016 13:49:52 +0000 (08:49 -0500)]
LP#1628655: Do not show Patron Reviews if Chilifresh is not in use
The Patron reviews header used for Chilifresh content displays in the catalog
even for Evergreen sites that do not use Chilifresh. This patch hides it if
a site is not using Chilifresh.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
LP#1680142: Fix responsive design issue with ebook display
Fixes the following responsive design issues:
* Removes the e-book dashboard display when the screen size is reduced.
* Changes the table display for e-items currently checked out, e-items on hold,
and e-iterms ready for checkout interfaces to mimic the responsive behavior of
other My Account screens.
* Fixes a couple of Holds History CSS problems discovered while I was here.
Test Plan:
Enable ebook services. Log into your account and resize the screen to the size
of a mobile device. The ebook dashboard will display while the main account
dashboard disappears. Go into My Account, click Items checked out and then
click E-Items Currently Checked Out. The table has not reformatted itself for
responsive design view.
Post-patch: When you log in and resize the screen, the e-items dashboard
display will disappear along with the main account dashboard. When you access
the E-Items Currently Checked Out interface, the table will reformat itself
with column headers along the left side.
LP#1681466: move text to body of confirm dialog and add title
This patch tweaks the opt-in confirm dialog to add a
title and move the text to the body of the dialog, making it
consistent with other dialogs that ask long questions.
Test case for the entire bug fix
--------------------------------
[1] Ensure that <opt_in> is set to true in opensrf.xml.
[2] In the web staff client, open the checkout page
and do a barcode search for a patron is *not* the
same system as the workstation that the staff user
is registered to.
[3] Verify that a dialog box is presented asking the
staff user to confirm that personal information can be
shared with the workstation's library.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
This commit fixes the following kinds of warnings given by asciidoc when
building the docs HTML:
- Incorrect header level
- Incorrect list numbering
- List numbering interrupted by an image (needs '+' on blank lines)
- In one case, a list used '1)' style numbering, which AsciiDoc
doesn't recognize. This commit corrects that, even though it caused
no errors.
These are minor issues, but fixing them is easy and prevents future
confusion and errors.
This commit renames all AsciiDoc files to have the ".adoc" extension.
Also, this commit updates all "include::" references in the root.adoc
file.
RATIONALE: Some editing tools, including GitHub, will auto-generate an
HTML preview for AsciiDoc files if they have the filename extension
".adoc" or ".asciidoc". The community agreed to this change in 2015 (see
http://markmail.org/thread/z2s7xnxavpjzirwx).
NOTE: The docs build script will need to change the reference from
"root.txt" to "root.adoc".
LP#1684011: My Account summary ebook link correction
The links on the My Account Summary page to the user's ebook checkouts and holds
go to the incorrect URL. The links are updated in this commit to the correct
URL.
Test Plan:
* If your test system is not configured for ebook access, enabled it in the
config.tt2 file by setting ebook_api_enabled to true and
ebook_api.ebook_test.enabled to true.
* Log into a patron account
* The Account Summary page will show links to E-Items Currently Checked out,
E-Items Currently on Hold, and E-Items ready for pickup. Pre-patch, clicking one
of those links will bring you to a 404 page. Post-patch, clicking those links
should bring you to the appropriate My Account tab.
LP#1680554: fix upgrade of subject|temporal_browse and subject|geographic_browse indexes
This patch fixes an issue where an Evergreen database that was
upgraded to 2.12.0 from an earlier version may not have had
the browsability of the subject|temporal and subject|geographic
indexes turned off in favor of the new *_browse versions. It also
fixes mapping of the new *_browse indexes to authority control
set bib fields.
Note that if the database started at 2.12.0, the browse
reingest can be cancelled.
To test
-------
[1] On a database that was upgraded to 2.12.0 from an earlier
version, verify that after applying the database update and
performing the browse reingest, that there are no
metabib.browse_entry_def_map rows where def is 11 or 13. Also
Also verify that the query that runs as part of the update
[2] On a database that was installed starting at 2.12.0, verify
that the database update is a no-op.
Avoid storing full transaction data with each work log entry. Only
store data need for work log display and actions.
Includes the addition of a new field (entry.hold_id) for hold requests
so that the value does not have live in the large data blob.
To test:
1. Peform checkouts, holds placements, and other log-tracked actions
in the client.
2. Open Administration -> Workstation -> Stored Preferences and see
values for key "eg.patron_log". Values added after the patch will only
contain ~8 keys with string values, no large nested objects.
3. Open Administration -> Local Administration -> Work Log and confirm
recent log-tracked actions are all represented in the grid.
Dan Wells [Tue, 18 Apr 2017 15:06:03 +0000 (11:06 -0400)]
LP#1670407 Add tests for xact_finish close/re-open
Since this bug came about due to negative balance changes (and it was
easier), this commit extends the existing negative balances test suite
to include basic tests for checking both xact_finish conditions.
One of these tests fails without the fix from the previous commit.
Avoid re-closing a circulation that was re-opened during checkin because
it acquired a non-zero balance. This is typically caused by, for
example, voiding a lost item fee during checkin and/or generating
overdues for lost-then-found items.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>