Galen Charlton [Tue, 9 Aug 2011 19:30:56 +0000 (15:30 -0400)]
lp 823496: don't fail to index personal names that have relators
The default definition for the author|other index inadvertantly
excluded names from 600, 700, 720, and 800 fields that have
relator values ($e) or codes ($4).
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Thu, 11 Aug 2011 18:16:24 +0000 (14:16 -0400)]
in lieu of Ready Item Editor
We're trying to prevent folks from using the item attribute editor in the
unified interface when the volume pane is still updating its information
(i.e. building the copies to feed to the attribute editor), so that a
given editing widget isn't ripped out from under staff while its being
used. This change removes the heavy-handed Ready Item Editor button and
instead tries to more gracefully manage the editor state based on change
and keypress events. Also change the color scheme for a disabled editor
from red to light pink.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Mon, 8 Aug 2011 18:06:57 +0000 (14:06 -0400)]
Fix stop sign page race condition with checkout
This would happen most often when retrieving multiple patrons at the same time
from patron search--the stop sign page would show but then get trampled by the
checkout interface, which normally loads first.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
In a middle-layer method for returning holdable formats on a metarecord,
Do a better test of copy holdability than we were doing previously.
We can't do a perfect test: we don't really know what patron we're doing
this for, and even if we did, from here it's nontrivial to figure out
whether we're doing indb holds or script-based, much less run the tests.
Still, we can test whether a copy's in a holdable status, a holdable
location, and is itself not explicitly marked unholdable.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
AKA:
Lang is 3 characters long. Entering 1 character would cause focus to leave.
MARC would also update incorrectly.
This only triggers the update when the full 3 characters are entered.
This not only prevents issues with catalogers editing multi-character fixed
fields but also makes it less likely they accidentally corrupt the records.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Mon, 1 Aug 2011 06:10:15 +0000 (02:10 -0400)]
Fix overzealous template application
The idea was that we'd track templates if they were applied prior to copies
actually being specified in the unified interface, and then apply them "for
real" once copies were entered. But these remembered templates kept applying
themselves whenever changes were made in the volume/copy creator portion of
the interface (possibly overriding tweaks made by staff). So now we delete
the list of tracked templates once they're applied to actual copies.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Disable/style the Item Editor while changes in the volume/item pane are being
considered, and require an explicit press of a Ready Item Editor button to
enable the interface. This reduces the chance of editing widgets in the item
editor from being ripped out from under you (for example, if you try to go
straight from editing a call number to editing an item attribute).
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Wells [Fri, 29 Jul 2011 22:09:19 +0000 (18:09 -0400)]
Vandelay fix for merging without loading new
This fix is derivative of da3a453442050482a419deff91d3dc92fdbf132a
in master, but with new feature code removed for backport to 2.1
and 2.0. It does the following:
- renames 'vlUploadQueueAutoImport' to 'vlUploadQueueImportNoMatch' to
match identical change in master and to increase code clarity
- honors this flag when doing a merge.
Previously, if you checked one of the two auto-merge boxes, any records
which did not merge loaded as new records even if the 'Auto-Import
Non-Colliding Records' box was not checked. You can now do one, the
other, or both together (auto-importing and merging) as needed.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Deleted a line the removed single quotes (') from search strings
The multiclass_query function replaces single quotes with spaces (') ( ).
This causes a problem when toggling between Advanced and Basic search.
If a search is conducted with a ' in it, that quote appears in the
basic search box displayed above the results. However, if the user
then clicks the 'Advanced' button to toggle to the advanced search
the single quote is missing from the search term. By removing the line
$query =~ /s/'/ /go; from Biblio.pm this problem is resolved.
Signed-off-by: Liam Whalen <lwhalen@evergreen-dev.catalogue.nrcan.gc.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Thu, 21 Jul 2011 21:39:49 +0000 (17:39 -0400)]
Update the README to include database installation instructions
A long time ago, the database server was installed by default.
Nowadays, installing the database server is a separate step
reserved for whatever machine you want to devote to PostgreSQL.
Not that you can't put it on the same machine as the rest of
Evergreen and OpenSRF...
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Dan Scott [Thu, 21 Jul 2011 21:16:32 +0000 (17:16 -0400)]
Correct varname for PostgreSQL RPMs
On Fedora, Red Hat, and CentOS, we were still trying to install
the set of PostgreSQL RPMs for PostgreSQL 8.4 using PGSQL_84_RPMS.
This had been updated to PGSQL_90_RPMS to match the updated
database version - using the right varname resolves the problem
(at least on Fedora).
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Bill Erickson [Mon, 1 Aug 2011 18:09:23 +0000 (14:09 -0400)]
Avoid xml_transform retrieval in record attr def editor
config.xml_transform stores large chunks of XML. Fetching it angers
Ejabberd on my test system. All we need is the name, so use the new
AutoFieldWidget.searchOptions param to do just that.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Bill Erickson [Mon, 1 Aug 2011 18:04:24 +0000 (14:04 -0400)]
AutoFieldWidget support for augmenting pcrud search options
Adds a new searchOptions attribute to AutoFieldWidget for specifying
additional parameters to pcrud when retrieving linked objects. The
initial use case is for supporting a "select" list to allow
AutoFieldWidget to retrieve only the display column of a linked object
and not the whole object.
Example:
// fetch 'remote_field_name' on the remote objects instead of
// fetching the entire object
Dan Scott [Thu, 28 Jul 2011 19:49:12 +0000 (15:49 -0400)]
Fix broken builds due to test that can't find its data
LP 817699 reports a problem that began with commit e9cd992fa4dbf1013346336193cb7469ecee10a8, reintroducing a problem that
had previously been resolved with commit f017d1261c369b9b5cc3c9cfc4f50d3cdf12a445. In short, tests can and are
run from different directories, but a new test opened a file without
making any allowance that the test might be run from anything other than
the /test/ directory.
This fix uses the dirname(__FILE__) approach to provide the appropriate
relative directory for the test data, and enables the tests to be
processed without dying.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Make users confirm they really want to delete lineitems from POs...
... when they've already been ordered. There's really no reason to ever
make such a deletion this that I can think of, but I use a confirm()
instead of stricter measures in case I'm missing something.
Dan Wells [Thu, 21 Jul 2011 16:14:02 +0000 (12:14 -0400)]
Prevent control numbers from duplicating
In maintain_control_numbers(), if you have more than one 001 or
003, and at least one is the correct one, you will end up
duplicating the correct number every time the record is saved.
For example, if the incoming record was record ID # 12345, and
the record contained:
001: 12345
001: ocm10202
... then after maintain_control_numbers() ran, the record would
contain:
001: 12345
001: 12345
Also, clean up some leftovers from the refactor I suggested in the
previous commit.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Thu, 21 Jul 2011 15:12:36 +0000 (11:12 -0400)]
Add an unwrapped upgrade script for OCLC-aware control numbers
The upgrade script creates the SCN and LCCN search indexes and
populates them using metabib.full_rec as a source; cheating, but
the normalized values will work for non-exact search purposes. Sites can
reingest all of their bibs if they want exact search to work.
Also, refactor maintain_control_numbers() using a suggestion by
Dan Wells to eliminate some duplicate code.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Thu, 21 Jul 2011 14:18:55 +0000 (10:18 -0400)]
Treat OCLC numbers specially in maintain_control_numbers
For some reason, many records that come with OCLC numbers in the 001
field are not populated with a 003 field. This resulted in the OCLC
number being thrown away entirely, rather than being moved into the 035,
as there was no corresponding control number identifier field.
However, given that we know that control numbers starting with "ocm" or
"ocn" are special OCLC numbers, we can generate the 035 accordingly even
in the absence of a 003. This update to maintain_control_numbers()
teaches it to do the right thing for OCLC numbers.
In addition, add an identifier search index so we can easily find
records by their system control numbers (035 $a subfields).
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Tue, 26 Jul 2011 00:09:18 +0000 (20:09 -0400)]
Ubuntu Lucid needs MARC::Record from CPAN
As Ubuntu Lucid ships with MARC::Record 2.0.0, and Serials requires
2.0.1 or greater, we must install MARC::Record from CPAN or face failing
open-ils.search requests.
Michael Peters [Thu, 21 Jul 2011 15:21:34 +0000 (11:21 -0400)]
LP#813151 Copy Location sort order in Advanced Search
This patch addresses the unintuitive copy location sort order in
Advanced Search when searching at a specific branch. Thanks to
Dan Wells for the code suggestion which changes the order in the listbox
to alphabetical sort by asset.copy_location.name.
Tested, and confirmed working in 2.0.4 test and production environments.
Signed-off-by: Michael Peters <mrpeters@library.in.gov> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Jason Etheridge [Mon, 18 Jul 2011 19:27:22 +0000 (15:27 -0400)]
Better sort support for xul lists (see launchpad bug ://bugs.launchpad.net/evergreen/+bug/751745)
Example of supplying a sort_value function for item Create Date, and automatic sort_value for fm_columns-generated timestamp and money column definitions.
Need to provide more such functions, and eventually move everything over to fm_columns
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Bill Erickson [Mon, 25 Jul 2011 15:38:17 +0000 (11:38 -0400)]
Manage parts holds warning (and removal) w/ CSS
Use add/removeCSSClass to apply and remove holds parts selector
warning instead of inline style.border management, which (when using
'auto') causes problems in IE.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Michael Peters [Wed, 20 Jul 2011 15:09:40 +0000 (11:09 -0400)]
LP#647121 Event handling on override abort
Discussed on IRC, phasefx discovered that several events were not being properly
handled when they were empty strings. Tested and working on Evergreen 2.0.4.
Signed-off-by: Michael Peters <mrpeters@library.in.gov> Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Dan Wells [Tue, 19 Jul 2011 16:02:17 +0000 (12:02 -0400)]
MFHD compressed holding fixes
1. Add new utility method to MFHD.pm:
holdings_by_caption(): return all holdings attached to a
given caption
2. Add 'passthru_open_ended' option to get_decompressed_holdings()
Previously, attempts to decompress an open-ended holding
would error out. Now, in the absence of this option,
open-ended holdings are discarded and you get a warning
(since they cannot logically be decompressed), while if
this option is 'true' they are passed back unaffected
3. compressed_to_last() on an open-ended holding now more
correctly returns 'undef' rather than the unaltered holding
4. get_compressed_holdings() will now honor an open-ended holding
by treating it as "infinite", and thus absorbing any holdings
which would follow
5. Overloaded comparison operator now correctly detects "swap"
cases (where only the second operand is a holding)
6. Overloaded comparison operator now consistently treats
open-ended holdings as "greater-than" a single or closed
holding which has the same starting point
7. Fix 2 thinkos in comparison operator for overlapping
compressed holdings
8. Add new compressed_end() method to Holding.pm which can add
or set a new ending to a holding, making compressed if needed
9. Correctly recognize partially compressed holdings
If a holding is defined as:
863 40 $81.1 $a1 $b2-10
this actually means:
863 40 $81.1 $a1-1 $b2-10
so let's make sure to treat it that way.
9. Expand the MFHD test suite to better cover the improvements
in this commit
There is also the beginnings of a _get_truncated_holdings()
method for handling odd cases where an open-ended holding is
followed by a single/closed holding, but it is currently
commented out, pending further design consideration.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
This implements the same update as 0582.schema.aging_circ_view.sql,
and exists purely the the sake of avoid a potential upgrade
glitch for somebody who's upgrading from 2.0.8+ that includes
a version of this fix that's not compatible with with 2.1+.
James Fournie [Mon, 6 Jun 2011 17:00:22 +0000 (10:00 -0700)]
Spine label editor assumes LC as reported in LP #780665.
This patch encapsulates the LC-assuming code in an IF block which
considers the asset.call_number.volume.label_class. If that is equal to
3, it will use the LC formatting.
Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca> Signed-off-by: Dan Scott <dan@coffeecode.net>
LP795032 Fix cursor rendering and dropdown position in holdings maintenance OU dropdown Signed-off-by: mrpeters-isl <mrpeters@library.in.gov> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Fixes multiple potential issues:
1 - Bad home ou on patron breaks circ rules
Ex. Patron edited while editor would let you pick bad home ou
2 - Item not allowed to circ at patron home ou
Ex. Patron went to where they were allowed to pick it up
3 - Fines change to patron home ou fine rules
Ex. Patron's home ou doesn't charge fines but circ lib does
Ex. Circ lib doesn't charge fines but Patron's home ou does
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Wells [Thu, 7 Jul 2011 21:18:16 +0000 (17:18 -0400)]
Make spell-checking case insensitive
As it stands, if you search for a proper noun using
lower case, but manage to trigger the "did you mean"
functionality, all the words are 'corrected' even if
just the case is wrong. However, we are stripping
out the best correction precisely because it is the
same word, different case. It is a bit confusing to
explain, but here is an example:
daniel potatoe
gets corrected to:
Daniela potato
This happens because the current spell check is case
sensitive, so 'daniel' is spelled wrong, but then we
remove 'Daniel' from the list of corrections
(presumably to avoid possibly suggesting terms which
would yield the same exact result set).
So, we either need to make the spell-check itself case
insensitive, or stop removing the re-cased corrections.
Since the catalog search itself is already
case-insensitive, I think it makes sense that the spell
check should follow suit.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Corrected the logic of format string building for metarecord holds and...
made hold possiblity checking for metarecord holds respect the format
string (so you can't place holds on formats for which there will never
be anything targetable)
Made possible by much concerted effort from Mike Rylander
Bill Erickson [Fri, 3 Jun 2011 13:27:26 +0000 (09:27 -0400)]
Permission to control patron-collections-exempt
Adds a new permission 'UPDATE_PATRON_COLLECTIONS_EXEMPT' which controls
who can toggle the circ.collections.exempt user setting in the patron
registration interface.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>