Galen Charlton [Thu, 6 Oct 2011 18:57:38 +0000 (14:57 -0400)]
fix authentication failure
Ensure that the auth_limit values are read when open-ils.auth
initializes, not during oilsAuthInit(). This solves a problem
observed on brick-based setups where authentication could
incorrectly fail because the drone that processes
open-ils.auth.authenticate.complete didn't have the the block
count value initialized yet.
Also fixed type nit when compare the fail count to the block
limit.
Amount of time seed is valid
Amount of time to keep failure count in memcache since last auth event
Number of failures before locking out auth attempts
Also, remove seed from memcache once it has been used once.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
miker [Tue, 29 Mar 2011 16:59:41 +0000 (16:59 +0000)]
Patch from Brandon Uhlman addressing SIP2 unavailable holds display.
The unavail_holds() function in OpenILS::SIP::Patron is a placeholder that returns an empty set, instead of an actual list of a patrons' holds not cur
rently ready for pickup.
When an SC determines whether a patron has holds ready for pickup by comparing the cardinalities of hold_items() and unavail_holds() [*] using the exi
sting unavail_holds() logic, it effectively reports every currently placed hold as ready for pickup, which is generally not true.
The attached patch assumes that unavailable holds are those that meet one of two sets of conditions:
- hold requests that are not cancelled (cancel_time = null), not fulfilled (fulfillment time = null), and not captured (capture_time = null)
- hold requests that are neither cancelled nor fulfilled (as above), are captured (capture_time != null), and for which, additionally, the current_cop
y does not have the status 'On holds shelf' (status = 8). The only items that should meet this condition are those that are in transit to a location w
here they will be added to the holds shelf.
The patch iterates through the items meeting each condition, and adds them to a master list of relevant holds, which it then processes (in the same wa
y that hold_items is processed) and returns.
This patch was developed against and tested on rel_1_6_0 from SVN (~ 1.6.0.2), but should apply cleanly against current rel_1_6_0 and trunk; OpenSRF 1
.2.2, PostgreSQL 8.3.8, Ubuntu Hardy 64-bit.
[*] The two cardinalities are returned by SIP message 64 as fixed-length integers in positions 35-38 and 55-58 respectively, so we don't need to itera
te through the list ourseles.
dbs [Wed, 9 Mar 2011 19:17:17 +0000 (19:17 +0000)]
Draw pre-cataloged items (author and title) in My Account checkedout screen
Two problems: FETCH_MODS_FROM_COPY returns an object, so we weren't
getting to the point of fetching the raw copy itself, and there was
some confusion about pre-cataloged vs. non-cataloged items that is
hopefully straightened out now.
dbs [Mon, 7 Mar 2011 15:15:08 +0000 (15:15 +0000)]
Fix cloning of AutoField widgets: LP #728055
Cloning Action/Trigger event definitions was not working properly, as
all values were being copied from the original object using their display
strings rather than the underlying values.
Bill Erickson suggested a fix in IRC that works, so full credit to him
for this change!
dbs [Wed, 23 Feb 2011 02:16:50 +0000 (02:16 +0000)]
Correct the install location for Dojo i18n bundles
We had been converting xx-YY into xx/yy for a directory structure,
but current evidence shows that it should be xx-yy. Hard to believe
we've overlooked this for so long. Also, with the exception of the
en-ca/en-gb/en-us locales, we should probably trim the locale to
just xx - but that's a different problem, and let's just focus on
getting this working to begin with.
senator [Thu, 17 Feb 2011 20:58:41 +0000 (20:58 +0000)]
Backport r19470 from trunk
Booking: fix the targeter in the I'm-reserving-this-exact-resource-with-this-
exact-barcode case.
It should have always worked like this. This should better mirror the behavior
in the holds targeter when placing a copy-level hold. Basically don't fail
to target a resource for a reservation later just because it's not in an
available status right at this moment.
dbs [Fri, 11 Feb 2011 22:00:02 +0000 (22:00 +0000)]
Normalize ISBNs by stripping hyphens in search methods and in reporter.materialized_simple_record
We weren't normalizing ISBNs in search or in reporter.materialized_simple_record
which required users to exactly match the form of the ISBN as entered in the
MARC record to get a successful search result - pretty hit or miss.
The longer term fix in 2.0 and above is to make the ISBN search search against
the identifier|isbn index, which also gets ISBN10/ISBN13 equivalence goodness.
But this patch will be relatively easy to backport through to 1.6.1 and plugs
some of the holes in our exposed APIs and search points in the short term.
erickson [Wed, 9 Feb 2011 18:27:33 +0000 (18:27 +0000)]
allow item status update if either status-specific perm is allowed or UPDATE_COPY is allowed. fire off related A/T events after the initial transaction has been committed
gmc [Mon, 24 Jan 2011 18:43:03 +0000 (18:43 +0000)]
improve performance of multi-class searches
Backport of trunk commit 18233.
For as yet unknown reasons, Postgres sometimes uses
nested loops instead of hash joins when joining subqueries
in a multi-class bib search. This can result in searches
such as "author:rowling title:harry potter" never completing.
Removing the interior limit clause can both speed up the query
and make search results more accurate when combining queries
of two or more common words.
senator [Wed, 19 Jan 2011 21:56:04 +0000 (21:56 +0000)]
Backport r19214 from trunk
Booking: Robert Soulliere spotted and fixed a bug in processing reservation-
related overdue fines. See https://bugs.launchpad.net/evergreen/+bug/705061
miker [Wed, 19 Jan 2011 19:54:05 +0000 (19:54 +0000)]
Build and flatten a tree, correcting a sorting issue in some OU dropdowns.
The previous code assumed that work org units would be delivered in hierarchical order, but alas, they are not. Thus, we build the hierarchy and then flatten it, sorting at each level.
This will be non-fast with many work OUs, but the common case is a small set, which is not painful.
Further improvement is warranted when the above proves false.
phasefx [Wed, 19 Jan 2011 19:45:04 +0000 (19:45 +0000)]
some interfaces (or at least org_unit_settings.js) was not infering the identifier value here. This helps the filtering org select dijit in that interface
dbs [Sat, 1 Jan 2011 21:20:18 +0000 (21:20 +0000)]
Fix exception thrown in MARC editor searching for bib sources
As reported in https://bugs.launchpad.net/evergreen/+bug/695526,
the attempt to retrieve all of the config.bib_source values using
openils.PermaCrud was failing because the retrieveAll() method
relies on fieldmapper.IDL's setting of the
fieldmapper[hint].Identifier property for each class - but in the
1.6 releases, we're still using fmclasses in XUL instead of
fieldmapper.AutoIDL.
So, to fix the direct problem, we can simply set the property
ourselves on the desired class before invoking retrieveAll();
this avoids touching code paths that might have wider unintended
consequences.
gmc [Thu, 23 Dec 2010 13:51:08 +0000 (13:51 +0000)]
When the subfield delimiter is configured as "$" (the default), use {dollar} to represent a literal dollar sign. This is apparently in line with other Breaker-format tools. Fix suggested by Galen Charlton, thanks gmc!
gmc [Thu, 23 Dec 2010 13:51:04 +0000 (13:51 +0000)]
addressing two Breaker-format issues: 1) supply an "empty" (space) value for indicators in the internal format if they are left out and 2) add indicator placeholders to incoming Breaker datafield lines if they seem to be missing. Addresses https://bugs.launchpad.net/evergreen/+bug/693468
miker [Fri, 10 Dec 2010 17:21:54 +0000 (17:21 +0000)]
Patch from James Fournie to address https://bugs.launchpad.net/evergreen/+bug/622908 wherein we learn that related item physical description might be used as the main PD of the main item, if the main item lacks such a field in the MARC
miker [Fri, 10 Dec 2010 14:33:42 +0000 (14:33 +0000)]
partial backport of r18957 to capture the fixes for vandelay.replace_field -- specifically, normalizing the XML for comparison when deciding if the "add" side of a replace should proceed
dbs [Thu, 9 Dec 2010 04:44:14 +0000 (04:44 +0000)]
Enable Ingest to ingest multiple located URIs for a single org-unit at once
Previous logic incorrectly restricted a given bib record to have one located
URI per org-unit - unless you reingested it multiple times, each time adding
one more URI per org-unit.
We also add the strict pragma and adjust some syntax accordingly.
senator [Fri, 3 Dec 2010 15:33:17 +0000 (15:33 +0000)]
Be consistent with a misspelled field. Credit to Robert Soulliere for pointing
out my mistaken understanding of where this was already fixed and where it
wasn't.
senator [Tue, 30 Nov 2010 15:47:40 +0000 (15:47 +0000)]
Backport some booking related commits from trunk.
r17980: more transaction cleanups
--
r18502: Booking: make the circ module avoid booking code if the booking service
isn't up
Previously, it was not possible to turn the booking service off and have
working circ. Now you should be able to turn it off if you don't need it.
--
r18514: If we already know we're not using booking, skip a redundant and
expensive test for the possibility of capturing a hold. We're just going to
try actually doing it a little farther down.
phasefx [Fri, 19 Nov 2010 16:34:28 +0000 (16:34 +0000)]
merge r18716 from rel_2_0 to cache this setting. Thanks to James Fournie for https://bugs.launchpad.net/evergreen/+bug/677311 We should probably do this as a cookie instead for even fewer network calls. I can't see the setting changing all that frequently
dbs [Mon, 15 Nov 2010 22:29:47 +0000 (22:29 +0000)]
asset.uri needs a seed entry for queries of its ID values
To fix a problem with ingesting URIs, Ingest.pm was changed to reflect
the maximum asset.uri.id value rather than the asset.call_number.id
value. However, with no entries in asset.uri, the query returned a
NULL object which broke ingest entirely. Adding a seed entry avoids
this problem.
gmc [Wed, 10 Nov 2010 13:21:25 +0000 (13:21 +0000)]
do not use TRUNCATE when refreshing reporter.materialized_simple_record
Previous behavior would break Slony replication after doing a
bib load. Since a deletion is slower than a truncate, if you're
not using Slony replication, you may prefer to truncate rmsr
prior to calling reporter.enable_materialized_simple_record_trigger.
miker [Mon, 8 Nov 2010 16:28:47 +0000 (16:28 +0000)]
Backporting r18652: Teach vandelay.replace_field to be a little smarter by allowing simple cases of both replacing and regexp-testing the same subfield
gmc [Fri, 5 Nov 2010 17:12:51 +0000 (17:12 +0000)]
fix user password reset request time column def
Needs to be a timestamp with time zone; fixes a bug
where it was interpreted as a UTC time, throwing off
the calculation of the expiration of the password reset
request.
dbs [Thu, 28 Oct 2010 15:21:42 +0000 (15:21 +0000)]
Backport r18516: Ensure call numbers are returned to the holdings editor in ascending sorted order
James Fournie in https://bugs.launchpad.net/evergreen/+bug/635121 reported
that call numbers were being displayed in the order that they had been
added to the database, rather than in sorted call number label order.
Although I have been unable to reproduce this problem on two different
test systems, the patch he provided for 1.6.1 (which fixes the problem on their
test system) shouldn't hurt other systems.
gmc [Wed, 27 Oct 2010 19:21:10 +0000 (19:21 +0000)]
adjust user tests that get done when retargeting holds
Fixes bug where a user having the maximum number of
active hold requests allowed to them by policy would
prevent items from being targeted to fill their requests.
Backport of rel_2_0 commits r18189, r18197, r18201, and
r18229 by Mike Rylander and Galen Charlton.