working/Evergreen.git
13 years agoUnwrapped upgrade script for descripition changes
Thomas Berezansky [Tue, 2 Aug 2011 18:15:44 +0000 (14:15 -0400)]
Unwrapped upgrade script for descripition changes

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoSeed data update for regex descriptions
Thomas Berezansky [Tue, 2 Aug 2011 18:15:06 +0000 (14:15 -0400)]
Seed data update for regex descriptions

Mention capture group stuff in day_phone
Add note about day_phone to generic phone

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoRegex check for "last 4 digits of phone number"
Thomas Berezansky [Mon, 13 Jun 2011 05:01:52 +0000 (01:01 -0400)]
Regex check for "last 4 digits of phone number"

If the day_phone regex (direct or from generic phone) has a capture group use it as the "last 4 digits".

For example, you might configure this for day_phone regex:

[2-9]\d{2}-\d{3}-(\d{4})( x\d+)?

With this patch the extension will be ignored for the last 4 digits.

Note: Does not require that the "last 4 digits" capture group actually contain 4 digits.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoA/T reactor 'AstCall' can't have global CStoreEditor
Lebbeous Fogle-Weekley [Wed, 7 Sep 2011 20:15:20 +0000 (16:15 -0400)]
A/T reactor 'AstCall' can't have global CStoreEditor

It's not good for any Evergreen service to try to have a global
cstoreeditor instance.  Scope it to the handler() sub that needs it, and
comment out the thus-far unused/unfinished retrieve() sub.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamping upgrade script for reservation capture notification~
Mike Rylander [Wed, 7 Sep 2011 20:59:31 +0000 (16:59 -0400)]
Stamping upgrade script for reservation capture notification~

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoEmail notification of reservation capture
Jeff Davis [Tue, 30 Aug 2011 21:03:16 +0000 (14:03 -0700)]
Email notification of reservation capture

When a reserved resource is captured, Evergreen does not notify the patron
that the resource is ready for pickup. (As far as I am aware this is true
of all versions of Evergreen that include bookings.) This could give rise
to situations where the patron goes to pick up the resource at the specified
time, only to find that it hasn't been captured and is currently unavailable.

This change gives you a checkbox to enable email notification when creating
the reservation, and adds a hook, reactor, and validator so that you can
create an action trigger to send the emails.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoFix unified interface w/ editing multiple volumes
Jason Etheridge [Wed, 7 Sep 2011 07:29:40 +0000 (03:29 -0400)]
Fix unified interface w/ editing multiple volumes

Breakage if editing existing items across volumes with non-default values for
call number class, prefix, or suffix.  This was due to some logic happening
within a loop that was sadly referencing data that changed out from under it
with every loop iteration (so for example, we were effectively referencing the
last rendered class menu instead of each in turn).

Remember folks:

for (var unsafe = 0; unsafe < 10; unsafe++) {
    setTimeout(
        function(safe) {
            return function() {
                do_something_with(safe); // good
                do_something_with(unsafe); // bad
            };
        }(unsafe),
        1000
    );
}

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoLP#838311 acn_id = undefined error in vol/copy ui
Jason Etheridge [Wed, 31 Aug 2011 19:07:52 +0000 (15:07 -0400)]
LP#838311 acn_id = undefined error in vol/copy ui

Fixes race condition between multiple event listeners on drop-down menus.  Bug
happened most often when batch applying values across multiple volumes and then
hitting save/create/update.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoAdd CSV filetype filter options Vandelay CSV export
Bill Erickson [Wed, 31 Aug 2011 20:05:50 +0000 (16:05 -0400)]
Add CSV filetype filter options Vandelay CSV export

Includes generic support for specifying default filename, extension, and
new filter types for the XUL NsIFilePicker wrapper

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoRemove "fallback to old style" UPDATE perm
Thomas Berezansky [Wed, 7 Sep 2011 17:39:32 +0000 (13:39 -0400)]
Remove "fallback to old style" UPDATE perm

The middle layer no longer supports the
UPDATE_ORG_UNIT_SETTING. + name
form of editing permissions. Don't use it as a fallback.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoLibrary Settings Editor: Use real perms
Thomas Berezansky [Tue, 30 Aug 2011 21:04:57 +0000 (17:04 -0400)]
Library Settings Editor: Use real perms

When update_perm exists use that permission, instead of a permission based
solely on the name of the permission.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoStamping the upgrade script for in-db OU proximity update
Mike Rylander [Wed, 7 Sep 2011 18:10:56 +0000 (14:10 -0400)]
Stamping the upgrade script for in-db OU proximity update

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoLP#836768 Proximity update trigger
Steven Callender [Mon, 29 Aug 2011 15:11:18 +0000 (15:11 +0000)]
LP#836768 Proximity update trigger

Update org proximity automatically when parent org unit is changed to avoid the need to use the autogen -u parameter,
by means of a trigger on the actor.org_unit table and a new function.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoFix for LP bug #702422.
Jason Stephenson [Tue, 30 Aug 2011 16:50:34 +0000 (12:50 -0400)]
Fix for LP bug #702422.

Add @libdir@/javascript/ path in legacy script section of
oils_sip.xml.example so that legacy scripts work with SIP2.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoAdding org unit context selector to providers screen
James Fournie [Wed, 31 Aug 2011 17:37:21 +0000 (10:37 -0700)]
Adding org unit context selector to providers screen
This helps alleviate the bug reported in LP 731510 and
generally improves usability.

Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoCorrect pg_config failure in eg_db_config.pl
Thomas Berezansky [Fri, 26 Aug 2011 17:56:21 +0000 (13:56 -0400)]
Correct pg_config failure in eg_db_config.pl

Missing a =s in getopts config means it becomes a 0 or 1, when it should
be a string.

The problem only occurs when you are specifying a particular postgresql
pg_config file (for example, if you have multiple versions of postgresql
installed).

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoClear org_unit cache fix for autogen.sh
Dan Wells [Wed, 7 Sep 2011 15:35:18 +0000 (11:35 -0400)]
Clear org_unit cache fix for autogen.sh

autogen.sh is not properly clearing the org_tree cache.  It is
unclear how this hasn't caused a problem before, but this fix
works for me and should be at least harmless in other enviroments.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
13 years agoStamp upgrade for generic mapping index normalizer
Mike Rylander [Tue, 6 Sep 2011 20:28:55 +0000 (16:28 -0400)]
Stamp upgrade for generic mapping index normalizer

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoGeneric mapping index normalizer
Bill Erickson [Tue, 6 Sep 2011 15:54:47 +0000 (11:54 -0400)]
Generic mapping index normalizer

Useful for mapping values extracted for SVF (metabib.record_attr.attrs)
attributes to alternate values.  For example, you can map collections of
MARC Audience codes into groups of codes for to create audience groups.

This normalizer takes a text parameter (in addition to the extracted value)
that defines a simple mapping between input and output.  Each mapping
consists of one or more comma separated strings on the left of a separator
(called the source group), a separator, and a alphanumeric string to the
right of the separator (called the mapping target). The format of a mapping
is:

  {string}[,{string}][..]=>{non-whitespace-string}

For example:

  a,b,c=>X

Multiple mappings can be supplied, separated by whitespace.  Each mapping
itself is not sensitive to most whitespace.  For instance, the following
are all equivalent:

 a,b,c=>X
 a, b, c => X
    a   ,   b   ,   c    =>     X

In each, "a", "b" and "c" are mapped to "X", and anything else is returned
without mapping.

Additionionally, whitespace within a string in the source group is tolerated.
Given a mapping of:

  a e i o u, y, w => V

The string "a e i o u", "y" or "w" will return "V".

In addition to explicit mapping, an empty source group will produce a default
mapping, where anything not matching another mapping will return the mapping
target.  For instance, given the following:

  =>X a,b,c=>Y

An input of "b" will return "Y" and an input of "k" will return "X".  The
Default mapping target may be the same as the mapping target with an explicit
source group.  For instance, the following can be interperated as "map a, b
and c to X, map 1, 2, 3 and anything we don't know about to Y":

 a,b,c=>X 1,2,3=>Y =>Y

As a practical example, simplifying the audience values in MARC fixed fields
to three groups and using those values in a new coded value map would allow
one to create a dynamically populated search interface that uses more patron-
friendly terms.  For instance:

  a,b,j=>K c,d=>T a=>A =>A g=>E

The above makes the assumption that Unknown, Specialized and Not Coded should
be lumped in with Audult, just to be safe, and General is for (E)veryone.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoPull in custom.js with offline/chrome overlays
Jason Etheridge [Tue, 6 Sep 2011 19:14:20 +0000 (15:14 -0400)]
Pull in custom.js with offline/chrome overlays

Or at least try to.  Main goal here is for browser.xul to see url constant
changes from custom.js and feed them to embedded Acquisition interfaces via
xulG.urls

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoRepaired field name thinko for config.record_attr_index_norm_map
Bill Erickson [Tue, 6 Sep 2011 15:28:00 +0000 (11:28 -0400)]
Repaired field name thinko for config.record_attr_index_norm_map

Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoHourly fine periods do not charge enough
Dan Wells [Thu, 1 Sep 2011 13:13:47 +0000 (09:13 -0400)]
Hourly fine periods do not charge enough

Hourly fine periods are not charging for the first period of
overdue-ness. If an item is due at 2:00pm and has a fine of
$.50 per hour, the first fine should be eligible for generation
at 2:01pm. As it stands, the first fine does not generate until
an entire fine period has elapsed, so in this case, 3:00pm.

The previous version of the code had a special case for day-
granular fine periods, so a majority of fines were not affected.
This commit expands the same idea (charging for the fine period
you are currently "in") to all fine periods.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamping upgrade script for LP#837566
Mike Rylander [Fri, 2 Sep 2011 16:07:14 +0000 (12:07 -0400)]
Stamping upgrade script for LP#837566

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoLP#837566 undeleting a bib record causes an error
Jason Etheridge [Fri, 2 Sep 2011 15:13:07 +0000 (11:13 -0400)]
LP#837566 undeleting a bib record causes an error

fixes a column reference

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agofix Acq -> Update Barcodes post-parts
Jason Etheridge [Fri, 2 Sep 2011 03:18:03 +0000 (23:18 -0400)]
fix Acq -> Update Barcodes post-parts

Items from acquisitions were having null instead of [] for .parts()

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoLP#838969 Silent print cannot be unselected
Jason Etheridge [Thu, 1 Sep 2011 18:06:53 +0000 (14:06 -0400)]
LP#838969 Silent print cannot be unselected

Thanks Bill!

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoAddress LP#837517, Vandelay ISxN matching user/mrpeters-isl/payment_type_fix
Lebbeous Fogle-Weekley [Wed, 31 Aug 2011 16:13:33 +0000 (12:13 -0400)]
Address LP#837517, Vandelay ISxN matching

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
13 years agoAdd the forgotten script-numbering to previous commit (db756e623a9)
Lebbeous Fogle-Weekley [Wed, 31 Aug 2011 15:55:47 +0000 (11:55 -0400)]
Add the forgotten script-numbering to previous commit (db756e623a9)

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
13 years agoAddress LP#837522, bib-killing authority overlay generation bug
Mike Rylander [Tue, 30 Aug 2011 18:25:27 +0000 (14:25 -0400)]
Address LP#837522, bib-killing authority overlay generation bug

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
13 years agoMerge branch 'collab/miker/acs-ui-repairs' from working/Evergreen.git
Lebbeous Fogle-Weekley [Tue, 30 Aug 2011 20:28:20 +0000 (16:28 -0400)]
Merge branch 'collab/miker/acs-ui-repairs' from working/Evergreen.git

Use bib tag instead to find the correct ACS, instead of the static field map
Use authority main entry instead of thesaurus to find the correct ACS
Add method for finding an ACS by authority tag

See https://bugs.launchpad.net/evergreen/+bug/837637

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
13 years agoMerge branch 'master' of git.evergreen-ils.org:Evergreen
Jason Etheridge [Fri, 26 Aug 2011 20:03:15 +0000 (16:03 -0400)]
Merge branch 'master' of git.evergreen-ils.org:Evergreen

13 years agopin upgrade version number for magic macros
Jason Etheridge [Fri, 26 Aug 2011 20:02:05 +0000 (16:02 -0400)]
pin upgrade version number for magic macros
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoExpose sort values from lists
Thomas Berezansky [Tue, 23 Aug 2011 16:06:55 +0000 (12:06 -0400)]
Expose sort values from lists

Specifically useful for things like receipt templates.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoFive initial OU settings for %INCLUDE()% use
Thomas Berezansky [Tue, 23 Aug 2011 12:33:04 +0000 (08:33 -0400)]
Five initial OU settings for %INCLUDE()% use

header_text
footer_text
notice_text
alert_text
event_text

None are really restricted to a specific purpose. Names are more of a
hint than a requirement.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoReceipt Macros: %INCLUDE()%
Thomas Berezansky [Mon, 22 Aug 2011 00:00:55 +0000 (20:00 -0400)]
Receipt Macros: %INCLUDE()%

Takes a single parameter: The name of the include.

Each include is an OU setting: circ.staff_client.receipt.<name>

The includes are done as the first substitution. This has the benefit
of allowing other substitutions within them (including additional calls
to %INCLUDE()%) and the downside of not allowing dynamic includes.

Because an include can contain includes the code keeps track of all
includes already done, skipping those already included. This prevents
infinite loops when A includes B and B includes A, or longer variants
thereof.

Primary intended use would be for libraries to place frequently changed
notices and such in their templates. Instead of having to edit every
template on every workstation they use the %INCLUDE()% macro and edit
the org unit settings. At the next login the updated text appears on
every workstation.

Due to the includes being processed first a library could use them to
centrally administer templates by using an include for each piece of
each template.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoReceipt Macros: %SORT()%
Thomas Berezansky [Fri, 19 Aug 2011 19:15:48 +0000 (15:15 -0400)]
Receipt Macros: %SORT()%

Added to line item templates.
Takes one or more comma separated parameters:
field AS type ASC/DESC

AS type is optional
ASC/DESC is optional

Field is the field name without % signs.
Type is DATE, INT, FLOAT, NUMBER, LOWER, or UPPER

DATE will sort based on wrapping both sides in "new Date"
INT will sort based on wrapping both sides in parseInt
FLOAT and NUMBER will sort based on wrapping both sides in parseFloat
LOWER will apply .toLowerCase to both sides
UPPER will apply .toUpperCase to both sides

ASC (default) will sort in ascending order.
DESC will sort in descending order.

Can be specified more than once:
%SORT(a,b)% %SORT(c)%
Would sort by a, then b, then c.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoAdd SIP2 chargeable loan support.
Jason Stephenson [Thu, 30 Jun 2011 17:43:24 +0000 (13:43 -0400)]
Add SIP2 chargeable loan support.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoLP#824257 Fix nasty overlapping when patron has more than 6 notes
Michael Peters [Thu, 11 Aug 2011 01:31:02 +0000 (21:31 -0400)]
LP#824257 Fix nasty overlapping when patron has more than 6 notes

Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoPush phrases down to be subqueries, so they can be ORed together
Mike Rylander [Thu, 25 Aug 2011 19:56:15 +0000 (15:56 -0400)]
Push phrases down to be subqueries, so they can be ORed together

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
13 years agoAdd IDs to offline import/export buttons
Thomas Berezansky [Thu, 25 Aug 2011 12:43:07 +0000 (08:43 -0400)]
Add IDs to offline import/export buttons

Ensures that the import one, at least, can be found and disabled when
pending transactions exist.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoAdd a new visible alert to the main client screen alerting about pending transactions
Atom Edoceo [Mon, 22 Aug 2011 18:23:14 +0000 (11:23 -0700)]
Add a new visible alert to the main client screen alerting about pending transactions

Signed-off-by: Edoceo <code@edoceo.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamped upgrade script for acq-copy-creator-from-receiver
Mike Rylander [Thu, 25 Aug 2011 00:16:28 +0000 (20:16 -0400)]
Stamped upgrade script for acq-copy-creator-from-receiver

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoOption to set copy creator value to ACQ receiver
Bill Erickson [Wed, 24 Aug 2011 17:57:11 +0000 (13:57 -0400)]
Option to set copy creator value to ACQ receiver

YAOUS to support updating the asset.copy.creator value to match the
staff user that marked the ACQ-copy (acq.lineitem_detail) as received.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamped upgrade script for acq-lineitem-detail-receiver
Mike Rylander [Thu, 25 Aug 2011 00:09:04 +0000 (20:09 -0400)]
Stamped upgrade script for acq-lineitem-detail-receiver

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoShow copy receiver in ACQ copy grid
Bill Erickson [Wed, 24 Aug 2011 19:28:56 +0000 (15:28 -0400)]
Show copy receiver in ACQ copy grid

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoColumn to track ACQ copy (lineitem_detail) receiver
Bill Erickson [Wed, 24 Aug 2011 18:24:54 +0000 (14:24 -0400)]
Column to track ACQ copy (lineitem_detail) receiver

Creates acq.lineitem_detail.receiver column, set to the staff that
marked the copy as received.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoProtect against div-by-0 for negated words
Mike Rylander [Wed, 24 Aug 2011 18:36:54 +0000 (14:36 -0400)]
Protect against div-by-0 for negated words

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoTrack count of dummy atoms and use a NULL tsquery when all dummy
Mike Rylander [Wed, 24 Aug 2011 17:44:04 +0000 (13:44 -0400)]
Track count of dummy atoms and use a NULL tsquery when all dummy

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoUse unphrases in SQL generation
Mike Rylander [Wed, 24 Aug 2011 15:05:55 +0000 (11:05 -0400)]
Use unphrases in SQL generation

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoadd "unphrases" to capture negated phrases ( -"foo bar" ) and make the negator config...
Mike Rylander [Wed, 24 Aug 2011 15:03:34 +0000 (11:03 -0400)]
add "unphrases" to capture negated phrases ( -"foo bar" ) and make the negator configurable

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoIgnore empty atoms in query decomposition
Mike Rylander [Tue, 23 Aug 2011 19:03:56 +0000 (15:03 -0400)]
Ignore empty atoms in query decomposition

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoAdd to existing PO (by ID) from related items page
Bill Erickson [Tue, 23 Aug 2011 21:03:28 +0000 (17:03 -0400)]
Add to existing PO (by ID) from related items page

In the View/Place orders page for a bib record, it's now possible to add
a lineitem representing the bib record to an existing purchase order.

Includes a new general API call for adding a LI to a PO.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoSupport labelFormat for read-only AutoFieldWidget's
Bill Erickson [Tue, 23 Aug 2011 18:22:06 +0000 (14:22 -0400)]
Support labelFormat for read-only AutoFieldWidget's

Previously only worked with edit widgets (e.g. drop-downs).  This also
takes into account the fact that different instances of AutoFieldWidget
for the same class and value may have different labelFormat's

One user-visible result of this change is the ACQ read-only fund display
in purchase orders.  Funds will now show the code and year for funds in
the copy grid before and after the data is rendered read-only.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoBranchify patch from Steven Chan on LP bug #821640.
Jason Stephenson [Tue, 9 Aug 2011 21:19:49 +0000 (17:19 -0400)]
Branchify patch from Steven Chan on LP bug #821640.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoReally stop the z39.50 daemon when a client is connected.
Jason Stephenson [Thu, 23 Jun 2011 14:19:50 +0000 (10:19 -0400)]
Really stop the z39.50 daemon when a client is connected.

Send a SIGTERM instead of SIGINT from do_action when the action is
stop in oils_ctl.sh.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoEnhance sample Z39.50 config file
Dan Scott [Thu, 23 Jun 2011 02:55:27 +0000 (22:55 -0400)]
Enhance sample Z39.50 config file

Make "expose holdings" the default; use specific indexes for ISBN and
ISSN; show how to scope results to a part of the org tree; and show that
multiple database configs can be specified in the same file.

Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoMake some oils_ctl.sh improvements.
Jason Stephenson [Fri, 10 Jun 2011 17:43:32 +0000 (13:43 -0400)]
Make some oils_ctl.sh improvements.

Add start|stop|restart commands for z39.50 to oils_ctl.sh.

Use LOCALSTATEDIR and SYSCONFDIR configuration variables in
oils_ctl.sh.

Modify the existing SIP2 commands in oils_ctl.sh to use these
configuration variables.

Modify src/Makefile.am to replace LOCALSTATEDIR and SYSCONFDIR
variables in oils_ctl.sh when installing.

Add example/default xml configurations for z39.50:
Open-ILS/examples/oils_yaz.xml.example
Open-ILS/examples/oils_z3950.xml.example

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Dan Scott <dan@coffeecode.net>
13 years agoMenu item for "portal"
Thomas Berezansky [Sun, 3 Jul 2011 20:38:56 +0000 (16:38 -0400)]
Menu item for "portal"

To return a tab to "new" state without close/reopen

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoMake portal name its tab.
Thomas Berezansky [Sun, 3 Jul 2011 20:50:25 +0000 (16:50 -0400)]
Make portal name its tab.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamped upgrade script for LP#825245
Mike Rylander [Tue, 23 Aug 2011 18:41:41 +0000 (14:41 -0400)]
Stamped upgrade script for LP#825245

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoVandelay: added some info to print/csv bib output
Bill Erickson [Fri, 12 Aug 2011 14:02:57 +0000 (10:02 -0400)]
Vandelay: added some info to print/csv bib output

Added bib match count, import error, and error detail to print and CSV
queued record export.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoVandelay: show record match counts in record queue UI
Bill Erickson [Fri, 12 Aug 2011 13:07:35 +0000 (09:07 -0400)]
Vandelay: show record match counts in record queue UI

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agomaster-stamped upgrade script for LP#816131
Mike Rylander [Tue, 23 Aug 2011 18:32:17 +0000 (14:32 -0400)]
master-stamped upgrade script for LP#816131

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoReverse direction of org_unit_ancestors
Thomas Berezansky [Mon, 22 Aug 2011 18:44:17 +0000 (14:44 -0400)]
Reverse direction of org_unit_ancestors

Apparently callers expect it to start at the top of the org tree.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoUnwrapped upgrade script for oua_force_order
Thomas Berezansky [Thu, 11 Aug 2011 13:36:36 +0000 (09:36 -0400)]
Unwrapped upgrade script for oua_force_order

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoNew version of actor.org_unit_ancestors
Thomas Berezansky [Thu, 11 Aug 2011 13:35:18 +0000 (09:35 -0400)]
New version of actor.org_unit_ancestors

Preserves order through joins

Basically actor.org_unit_ancestors_distance with a join to get the
entire org units, rather than just IDs and a distance.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoFixed seaching for a colon (:) surrounded by white space
Liam Whalen [Thu, 11 Aug 2011 18:36:19 +0000 (14:36 -0400)]
Fixed seaching for a colon (:) surrounded by white space

When searching for a colon surrounded by white space the search would
freeze.  An example of such a search would be:
Climate change economics and policy : an RFF anthology
This was happening because the decompose function within QueryParser.pm
Would build a regular expression that would search the query for both
classes and class aliases e.g (keyword and kw).  However, when buliding
the regex for aliases QueryParser would add extraneous or symbols (|)
to the end of the regex without adding the accompanying alias.
This was happening because there was a check to see if the corresponding
class to each alias had already been added to the regex.  But, the
check to see if the alias had already been appened to the regex happened
too late.  I have moved the check to encopase the appending of the or
symbols and the class.
Signed-off-by: Liam Whalen <lwhalen@evergreen-dev.catalogue.nrcan.gc.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoAdds org unit selectors to Admin -> Server Admin -> Booking menu items, also modifies
James Fournie [Thu, 7 Jul 2011 02:07:50 +0000 (19:07 -0700)]
Adds org unit selectors to Admin -> Server Admin -> Booking menu items, also modifies
the IDL to give context-field based pcrud perms instead of 'require global'
This makes the booking module more org-unit scopable

Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoFix "Retarget Local Holds" for non-holdable copies
Thomas Berezansky [Fri, 19 Aug 2011 13:46:40 +0000 (09:46 -0400)]
Fix "Retarget Local Holds" for non-holdable copies

Specificially:

Wrap holdable check in is_true
Add check for current copy status holdable
Add check for current copy location holdable

The latter stores the fetched location for later use.
The one later use I found updated to check if the location is a reference.

The update copy code already checks if location is a reference and deals
with it properly.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoVandelay: Insufficient Quality Fall-Thru Merge Profile
Bill Erickson [Fri, 19 Aug 2011 15:20:55 +0000 (11:20 -0400)]
Vandelay: Insufficient Quality Fall-Thru Merge Profile

When a user selects "Merge On Single Match" or "Merge On Best Match" and
apply a minimum quality ratio, the fall-through profile will be used in
a secondary merge attempt for any records that fail the initial merge
due to insufficient record quality.

This allows the user to choose 2 different outcomes based on record
quality.  For example, you may wish to do a full overlay for all
high-quality records, but only extract subjects or other information
from lower quality records.  This also allows users to do record+copy
imports for high-quality records and copy-only imports for low quality
records (using a no-op merge profile like "replace 901c").

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoBranchify patch from LP bug #802523.
Jason Stephenson [Tue, 9 Aug 2011 17:41:04 +0000 (13:41 -0400)]
Branchify patch from LP bug #802523.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agostamp an upgrade version for the czs use_perm feature
Jason Etheridge [Mon, 22 Aug 2011 21:32:09 +0000 (17:32 -0400)]
stamp an upgrade version for the czs use_perm feature

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agouse_perm column for config.z3950_source
Jason Etheridge [Fri, 22 Jul 2011 05:47:15 +0000 (01:47 -0400)]
use_perm column for config.z3950_source

The idea is that if a permission code is specified for a given source, then
staff will need that permission to use that source in the staff client z39.50
interface.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoFix penalty generation during billing creation
Jason Etheridge [Fri, 19 Aug 2011 22:22:28 +0000 (18:22 -0400)]
Fix penalty generation during billing creation

by passing the editor object referencing the database transaction to xact_org

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoDisplay only available formats for metarecord holds in IE
Lebbeous Fogle-Weekley [Mon, 22 Aug 2011 14:37:30 +0000 (10:37 -0400)]
Display only available formats for metarecord holds in IE

The OPAC's usual hideMe()/unHideMe() tricks don't work for <option>
elements in Internet Explorer 8.  Use the disabled attribute.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoRemove cache-generator.sh from Makefile.am
Dan Scott [Sat, 20 Aug 2011 21:51:46 +0000 (17:51 -0400)]
Remove cache-generator.sh from Makefile.am

In a previous commit, we removed cache-generator.sh. Now we remove the
remaining reference to it in the Makefile.am that was generating an
error (reported by Ben Webb).

Signed-off-by: Dan Scott <dan@coffeecode.net>
13 years agoVandelay: repair item attr context org selector
Bill Erickson [Fri, 19 Aug 2011 19:50:22 +0000 (15:50 -0400)]
Vandelay: repair item attr context org selector

1. Prevents resetting the context selector to the workstation org unit
each time it's changed.

2. Prevent the unintentional pileup of dojo.connect() events, which
can lead to exponential growth in the number of server calls to fetch
import-item-attribute-definitions with each change of the context org
selector.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years ago#LP801961, error when running edi_fetcher.pl
Ben Shum [Tue, 2 Aug 2011 15:15:57 +0000 (11:15 -0400)]
#LP801961, error when running edi_fetcher.pl

This patch addresses an error encountered when running edi_fetcher.pl.
The method "is_dir" should be just plain "dir" in RemoteAccount.pm file.
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoBranchify second patch from James Fournie on LP bug #791941.
Jason Stephenson [Tue, 9 Aug 2011 19:43:12 +0000 (15:43 -0400)]
Branchify second patch from James Fournie on LP bug #791941.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoBranchify the first patch from James Fournie on LP bug #791941.
Jason Stephenson [Tue, 9 Aug 2011 19:40:41 +0000 (15:40 -0400)]
Branchify the first patch from James Fournie on LP bug #791941.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoBranchify patch from LP bug #809478 and forward port to master.
Robert Soulliere [Tue, 9 Aug 2011 19:18:15 +0000 (15:18 -0400)]
Branchify patch from LP bug #809478 and forward port to 

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStricter order for actor.org_unit_parent_protect()
Dan Wells [Tue, 16 Aug 2011 21:22:47 +0000 (17:22 -0400)]
Stricter order for actor.org_unit_parent_protect()

actor.org_unit_parent_protect() may not work due to the fact
that 'IF' conditions in PL/pgSQL are not necessarily processed
in the order written. This line:

"IF TG_OP = 'INSERT' OR NEW.parent_ou
IS DISTINCT FROM OLD.parent_ou THEN"

may fail because the 'IS DISTINCT FROM' happens before the
'INSERT' check, and and that fails because there is no 'OLD'
variable for INSERTs.

This commit may not be the optimal style for this circumstance
in this language, but it works.  It also appears to change more
than it really does due to a loss of one level of indentation in
the structure.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoWhitespace Only Changes
Dan Wells [Tue, 16 Aug 2011 21:16:35 +0000 (17:16 -0400)]
Whitespace Only Changes

Files uses primarily tabs, function used both spaces and tabs.
It now uses all tabs.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoUpdate README to reflect the --create-database option
Dan Scott [Thu, 18 Aug 2011 19:32:53 +0000 (15:32 -0400)]
Update README to reflect the --create-database option

Now that eg_db_config.pl is intelligent enough to create the database,
update the README to free people from the tyranny of having to manually
issue database creation (and contrib-adding) commands.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoAdd --create-database option to eg_db_config.pl user/tsbere/create_database
Thomas Berezansky [Thu, 18 Aug 2011 16:06:46 +0000 (12:06 -0400)]
Add --create-database option to eg_db_config.pl

Uses create_database.sql and superuser rights to do all
database creation steps other than making a usable superuser
account to begin with.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
13 years agoRemove CONFIG references from autogen.sh
Dan Scott [Tue, 16 Aug 2011 03:52:24 +0000 (23:52 -0400)]
Remove CONFIG references from autogen.sh

We're relying on OpenILS::Utils::Cronscript for the location of the
opensrf_core.xml file, so the vestigial references were unnecessary
noise.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoFurther autogen.sh cleanup
Dan Scott [Tue, 16 Aug 2011 03:14:01 +0000 (23:14 -0400)]
Further autogen.sh cleanup

* Roll cache-generator.sh functionality into autogen.sh
* No longer install deleted scripts
* Teach Perl build infrastructure about OpenILS::Utils::Configure

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoRevamp autogen.sh to call functions from a Perl module
Dan Scott [Mon, 15 Aug 2011 22:03:37 +0000 (18:03 -0400)]
Revamp autogen.sh to call functions from a Perl module

This cut moves all of the logic from the individual scripts that
autogen.sh used to call into a self-contained Perl module. We use
OpenILS::Utils::Cronscript to avoid much of the init dupe code.

Note that calling Perl functions from a bash script is not crazy pretty,
but perhaps in the long run autogen.sh becomes something else. This is
just a step towards consolidating those functions in a single module
while maintaining the same interface as before.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoVandelay: don't clear item import profile when creating new queue
Bill Erickson [Wed, 17 Aug 2011 13:17:17 +0000 (09:17 -0400)]
Vandelay: don't clear item import profile when creating new queue

This avoids the problem of: enter import-profile in the UI => enter name for
new queue => profile is cleared.  Import profile is still cleared/set when
an existing queue is selected, since existing queues already have an
item import profile set.

Part II of 90a7bde48a6ef5f7be73375612b5db88f8b31c95

Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoLP 799719: Pass the DESTDIR variable to python installer
Dan Scott [Tue, 16 Aug 2011 15:50:45 +0000 (11:50 -0400)]
LP 799719: Pass the DESTDIR variable to python installer

Based on Ben Webb's patch, but using the same triple-slash to avoid any
possibility of confusion about the installation location (see also the
same adjustment made to OpenSRF).

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoOpps ... use the correct number
Mike Rylander [Tue, 16 Aug 2011 15:19:35 +0000 (11:19 -0400)]
Opps ... use the correct number

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamped upgrade scripts for LP#790329
Mike Rylander [Tue, 16 Aug 2011 15:10:44 +0000 (11:10 -0400)]
Stamped upgrade scripts for LP#790329

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoLP#790329 org_lasso search is broken
Dan Scott [Thu, 28 Jul 2011 18:29:48 +0000 (14:29 -0400)]
LP#790329 org_lasso search is broken

Fix the JavaScript error when we attempt to create a feed for the
shortname of the org_unit_lasso (lassos have no shortname) - which lets
the request hit the backend Perl module, which in turn chokes on a test
for OU that only allows two conditions: either all digits is treated as
a numeric ID for an org unit, or it is a shortname. Of course, lassos
are negative integers, so we have to modify the test slightly to make it
happier.

There was no depth for org lasso copy counts, and this was handled
correctly in the main case by the asset.opac_lasso_record_copy_count()
function and its staff variant, but when a copy was not found at a given
org_unit in the lasso a request was made for the non-existent depth and
the function would error out.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoPlaceholder for 2.0-only LP#790329 fix
Mike Rylander [Tue, 16 Aug 2011 15:08:02 +0000 (11:08 -0400)]
Placeholder for 2.0-only LP#790329 fix

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoVandelay: don't clear match-set when creating new queue
Bill Erickson [Tue, 16 Aug 2011 14:55:39 +0000 (10:55 -0400)]
Vandelay: don't clear match-set when creating new queue

This avoids the problem of: enter match set in the UI => enter name for
new queue => match set is cleared.  Match set is still cleared/set when
an existing queue is selected, since existing queues already have a
match set.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoKeep the logging output of the EDI translator by default
Lebbeous Fogle-Weekley [Tue, 16 Aug 2011 13:10:45 +0000 (09:10 -0400)]
Keep the logging output of the EDI translator by default

There is valuable troubleshooting information there that is otherwise hard to
find.  This particularly matters when the output of an EDI
Action/Trigger template (JEDI) doesn't successfully get translated to
EDIFACT for nonobvious reasons.

In production environments, you might instead pipe to logger so that you can
collect output with syslog, rather than in a flat file.  As long as
output goes *somewhere.*

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
13 years agoLP#820409 fix org unit admin UI
Jason Etheridge [Mon, 15 Aug 2011 19:34:07 +0000 (15:34 -0400)]
LP#820409 fix org unit admin UI

This reverts part of 17e659eec3e23caf5d301b33aa5019b672ecd0e8, which was
tightening checks against null and '' to avoid implicit type-casting.

This line var modified_ou = new aou().fromStoreItem( current_ou ); was
producing a fieldmapper object where certain fields were being set to
contain the string "undefined" rather than a null.

The update method would take isdeleted == "undefined" as True.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoStamped upgrades for LP#825303
Mike Rylander [Tue, 16 Aug 2011 13:00:43 +0000 (09:00 -0400)]
Stamped upgrades for LP#825303

Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agoreturn only the one applicable OU setting value
Galen Charlton [Fri, 12 Aug 2011 20:09:11 +0000 (16:09 -0400)]
return only the one applicable OU setting value

Correct actor.org_unit_ancestor_setting so that it returns
at most one setting value, rather than the entire set
 of values defined for the OU and its ancestors.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
13 years agolp#825303: fix cat.default_classification_scheme lookup
Galen Charlton [Fri, 12 Aug 2011 16:18:54 +0000 (12:18 -0400)]
lp#825303: fix cat.default_classification_scheme lookup

Fixes a bug where the wrong default classification scheme
could be chosen when adding a new volume whose classification
scheme was not explicitly set.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>