Cesar Velez [Tue, 23 May 2017 13:58:39 +0000 (09:58 -0400)]
LP#1669534 - OPAC hold request should not default to first SMS carrier
Added empty <option> tag to address this and related form validation issues.
To test
-------
[0] Ensure that SMS messaging is enabled.
[1] Apply the patch and go to the place hold form in the public
catalog. Verify that no mobile carrier is selected.
[2] Set the default SMS carrier and number for the user account
and go back to the place hold form. Verify that the user's
default carrier and number appear in the form.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Chris Sharp [Fri, 7 Jul 2017 17:04:35 +0000 (13:04 -0400)]
LP#1702968 - Add missing error string - mark item damaged.
When marking an item damaged for a circulation that has been
archived/aged, the patron receives an error that the string
associated with staff.cat.util.mark_item_damaged.item_no_linked_patron
is not there. This branch adds it.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
LP#1706148 - Hide "Hold is behind Circ Desk" checkbox in XUL patron registration.
When the library setting for "Behind Desk Pickup Supported" is not enabled then
the checkbox for "Hold is behind Circ Desk" should be hidden.
Test Plan - before fix:
1. Check to make sure that the "Behind Desk Pickup Supported" library setting is
unset or false.
2. Open the patron registration screen in the XUL staff client and see that the
user settings checkbox for "Hold is behind Circ Desk" exists.
After Fix Applied:
1. Check to make sure that the "Behind Desk Pickup Supported" library setting is
unset or false.
2. Open the patron registration screen in the XUL staff client and see that the
user settings checkbox for "Hold is behind Circ Desk" no longer is shown.
3. Change the library setting in question to True.
4. Reload/reopen the patron registration screen and see that the checkbox now
is visible.
Signed-off-by: Josh Stompro <stomproj@larl.org> Signed-off-by: Dan Pearl <dpearl@cwmars.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Tue, 14 Feb 2017 20:59:53 +0000 (15:59 -0500)]
LP#1664715: Hold ratio template ignores some copies
The relatively new report template "Hold/Copy Ratio per Bib and Pickup Library
(and Descendants)" only includes copies that are at locations that are
actually pickup libraries of holds. For instance, if you have two branches (A
and B) in a system, each with 10 copies attached to a bib, but a hold only at
branch A, the ratio calculated at the system level sees 10 copies rather than
twenty. This has the effect of inflating the hold side of the hold/copy ratio.
The SQL definition is adjusted here to count copies across the entire branch
of the org tree per bib, rather than through a join that restricts to those
branches that are pickup libraries for a relevant hold.
Upgrade note: Report templates using the Hold/Copy Ratio at Pickup Library
and Descendants data source will need to be re-created to benefit from this
bug fix.
Adjust to zero was not actually adjusting to zero on negative balances
in at least some cases. This patch corrects that behavior.
Test plan:
[1] Generate multiple overdue billings on an overdue circ.
[2] Apply a payment (cash or forgive) to resolve the overdue billings.
[3] Checkin the item using backdated checkin or amnesty mode, such that
the overdue billings are automatically voided, resulting in a
negative balance.
[4] Adjust to zero. A single new manual adjustment billing is created,
reinstating one overdue billing, and then the adjust-to-zero process
exits. The negative balance has been reduced by the amount of one
overdue billing, rather than being fully adjusted to zero.
[5] Apply the patch and restart services.
[6] Repeat steps 1-3 with a new circulation.
[7] Adjust to zero. This time, the balance should be correctly adjusted
to zero, instead of exiting prematurely with an outstanding
negative balance.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Dan Wells <dbw2@calvin.edu>
The copy details table was styled to not wrap, which sometimes pushed table
contents off the page, particularly when some of the copies are conjoined
items. This commit removes the style that was preventing wrapping.
Test plan:
Load record 15 in the Concerto dataset. Before the patch is loaded, you'll
see that some of the content in the copy details table is pushed off the
screen and requires horizontal scrolling. Post-patch, all of the copy
details will display on screen without horizontal scrolling. In addition
to the change in the Conjoined Items, you also might see some text wrapping
in the Shelving Location and Status columns.
When trying to utilize the Recall functionality, Evergreen would fail to update
targeted circulations (truncate the due date, etc.) In the logs, we would have
an error like this:
[] open-ils.storage [ERR ::action.pm:1597:] Processing of hold failed:
Can't locate object method "workstation" via package "action::circulation" at
/usr/local/share/perl/5.14.2/OpenILS/Application/Storage/CDBI.pm line 181.
We first tried adding the workstation column to Storage/CDBI/action.pm, but a
similar message would then appear instead: Can't locate object method
"checkin_workstation"
This sidesteps the problem entirely.
Thanks to Mike for the solution!
Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Fri, 26 Jul 2013 04:05:49 +0000 (00:05 -0400)]
LP#1205190: TPAC: Improve style.css to reduce warnings
* Improve specificity: use background-image (for gradients) or
background-color (for color) instead of just background, because we
are only specifying the image or color, and not the rest of the
background properties.
* Declare the background-color first, followed by the background-images;
these will only override if recognized by the browser.
* Declare the standard (unprefixed) CSS linear-gradient last to prevent
prefixed browser quirk versions from overriding the standardized form.
* Remove the -moz- prefix from -moz-border-radius as that has not been
supported by Gecko since Firefox 13.0; just plain border-radius now.
* Fix bad selector ##rdetail_extras_expand (only one #, please).
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Conflicts:
Open-ILS/src/templates/opac/css/style.css.tt2
Pasi Kallinen [Thu, 1 Aug 2013 08:21:17 +0000 (11:21 +0300)]
LP#1205190: quiet some CSS Mozilla extensions warnings.
* -moz-dialog-text is actually -moz-dialogtext
* -moz-outline is deprecated, use outline
* -moz-border-radius has been removed, use border-radius
* -moz-border-radius-topleft (etc) are now border-top-left-radius
* Fix some other CSS errors.
Chris Sharp [Wed, 31 May 2017 12:22:58 +0000 (08:22 -0400)]
LP#1694696 - Check for blank SMS Carriers in A/T reactor
Currently, the get_sms_gateway_email subroutine does not check
for the truthiness of sms_carrier, which can result in catastrophic
failure for a running server. This adds that check.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Dan Wells [Mon, 24 Apr 2017 18:29:04 +0000 (14:29 -0400)]
LP#1686194 Account for adjustments when generating fines
Fine generation stops at a predetermined 'max fines' amount, but this
does not account for possible adjustments which lower the effective
fine amount. This situation is common in cases where lost items are
returned, and the library wants to generate additional overdues upon
that event.
With this commit, fine generation will pull in any adjustments applied
to overdue fines, and use those to offset the current total fine when
checking for max fines.
Also includes test for this condition.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> 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>
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.
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.
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>
Conflicts:
Open-ILS/src/templates/opac/parts/searchbar.tt2
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>
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> Signed-off-by: Kathy Lussier <klussier@masslnc.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
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.
[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>
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".
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>
Jason Stephenson [Tue, 11 Apr 2017 14:52:09 +0000 (10:52 -0400)]
LP 1665933: Skip XUL staff client build in make_release.
Add a -x option to skip building the XulRunner staff clients. This is
useful for making custom tarballs for local installation where you
will build the staff client on the server.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Mike Rylander [Thu, 9 Mar 2017 20:26:44 +0000 (15:26 -0500)]
LP#1167541: Use Patron home org for pickup lib instead of staff's
When staff are placing a hold for a patron, we should use the patron's
preferred pickup location, and failing that, their home library rather
than the staff's home library.
To test
-------
[1] In the web staff client, search for a title to place
a hold request on, using a patron record
whose home library is different from the home library of
the staff member you are logged in as.
[2] Note that the pickup location defaults to the staff
account's home library.
[3] Apply the patch and repeat step #1. This time, the default
pickup library should be the home library of the patron.
[4] Set a preferred pickup location for the patron, then
repeat step #1. This time, the default pickup library
should be the preferred pickup location just set.
[5] Repeat steps #1-#4 using the XUL staff client; note that
for step #3, it will be necessary to rebuild the client.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Ben Shum [Tue, 21 Mar 2017 13:37:48 +0000 (09:37 -0400)]
Docs: README to include Debian for changing ownership of /var/lock/apache2
Minor tweak to also include Debian among distributions where it might
be necessary to change ownership of /var/lock/apache2 to opensrf user.
Previously this had been Ubuntu only issue, but has since been encountered
during new Debian installations.
LP#1586567 Always return Fund Years sorted descending
Currently, fund year selectors in Acq interfaces (at least Acq Admin ->
Funds, and Acq -> Load MARC Order Records) show the fund years in
database order. This commit adds a descending sort to the perl function
that retrieves fund years for those interfaces. It also removes the
unsuccessful attempt at sorting that was present in the dojo code.
Jason Etheridge [Wed, 2 Nov 2016 18:28:08 +0000 (14:28 -0400)]
lp1261835 stop colliding bill UI refreshes
for want of promises in Angular :)
population of the bill list in this implementation is asynchronous, but the rest
of the refresh action is not, and it's sadly being invoked multiple times. There
are different ways to fix this, but using a semaphore seems to work.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Dawn Dale <ddale@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Dan Wells [Wed, 2 Nov 2016 18:35:16 +0000 (14:35 -0400)]
LP#1175293 Use filtered fund dropdown in funding source interface
The exising interface for allocating to funds from a funding source
view lists all funds by code only. Since many (most?) orgs reuse
fund codes year to year, you eventually end up with a bunch of
dupes you cannot tell apart.
Let's "borrow" an AutoFieldWidget to do the heavy lifting of creating
a filtered list of active funds, and include the year for further
user validation.
This is inspired by a few other fund dropdowns, but may not be the
best overall solution.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Bill Erickson [Tue, 28 Feb 2017 16:33:25 +0000 (11:33 -0500)]
LP#1668682 Checkout holds fullfill ignores expire time
Checking out a hold-captured item for a hold whose expire time is in the
past, but has not yet been canceled by the hold targeter, now marks the
hold as fulfilled.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
The SuperCat transform methods for records retrieved by record ID or ISBN call
toString on the XSLT output object, which results in a byte string and thus
corrupted output. Instead, call output_as_chars() on the stylesheet object to
generate a character string and avoid corruption.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
In moving from the deprecated XML::LibXSLT::output_string() to output_as_chars(),
add a regression test to ensure that we do not suffer from corrputed encoding
output in the future.
We test both the case where an output encoding has been explicitly declared,
as well as the case where an output encoding has not been explicitly declared.
It was this subtle difference that was causing the problem with output_string().
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Dan Scott [Fri, 3 Mar 2017 06:40:19 +0000 (01:40 -0500)]
LP#1442276 Prevent corrupted Unicode chars in MARCTXT and RIS
The MARCTXT and RIS feeds use the deprecated XML::LibXSLT::output_string()
method which, depending on the stylesheet, generated either a byte string
or characters. Using output_as_bytes() ensures it is always a byte string
and avoids the resulting MARCTXT and RIS output from corrupting Unicode
characters.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
The XML::LibXSLT::output_string() method was deprecated in favour of
output_as_bytes() and output_as_chars(). The latter always generates
UTF8 output as characters, which is what we need, while output_string()
behaviour depended on the stylesheet.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Bower install was grabbing a later version of angular-cookies than we wanted,
resulting in errors when attempting to build the web client. Changing a
caret to a tilde in the bower.json files keeps us to a 1.5.x version of
angular-cookies, making web client builds happy.
Many thanks to Ben Shum for finding the solution to this problem!
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Conflicts:
Open-ILS/web/js/ui/default/staff/bower.json
Jeff Davis [Fri, 27 May 2016 20:10:29 +0000 (13:10 -0700)]
LP#1576435: Include inactive patrons on patron reg duplicate search in web client
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Jeff Davis [Sun, 24 Apr 2016 02:12:27 +0000 (19:12 -0700)]
LP#1576435: Force "Include inactive patrons?" on patron reg duplicate search
In the XUL client, duplicate patron checking in the patron registration
interface now includes inactive patrons (see LP#1217052). However, if
you click on the link "Found X patron(s) with the same name," the
resulting patron search does not always include inactive patrons by
default (instead, the value of the "Include inactive patrons?" checkbox
is cached from your last patron search, as usual).
To prevent user confusion in this scenario, this commit forces the
linked patron search in the XUL client to always include inactive
patrons.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Dan Scott [Wed, 22 Feb 2017 16:29:21 +0000 (11:29 -0500)]
LP1584891: Export MARC holdings with UTF8 subfields
The --items option of marc_export adds a new MARC 852 field with a
number of subfields that it retrieves from the database. If those
subfields (such as call number, copy location, etc) contain Unicode
characters, then we need to decode the incoming UTF8 characters
when adding the subfield values to avoid corrupting the MARC.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Galen Charlton [Fri, 24 Feb 2017 23:04:29 +0000 (18:04 -0500)]
LP#1667835: avoid edi_fetcher.pl crash upon fetching zero-length file
This patch fixes an issue that could cause edi_fetcher.pl to crash
if the EDI partner supplies a zero-length file for Net::FTP to
download; such files are now skipped.
Testing would entail setting up an FTP server that contains a
zero-length file, then setting up an EDI remote account and
using edi_fetcher.pl to try to retrieve the file.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>