working/Evergreen.git
12 years agoQueryParser: use combined metabib_field column user/tsbere/qp_fix
Thomas Berezansky [Tue, 18 Dec 2012 20:53:28 +0000 (15:53 -0500)]
QueryParser: use combined metabib_field column

Because I somehow forgot about it. Oops.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoAdd basic release notes and notes for docwriters
Thomas Berezansky [Tue, 18 Dec 2012 20:12:10 +0000 (15:12 -0500)]
Add basic release notes and notes for docwriters

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoUpgrade script for ts config use
Thomas Berezansky [Tue, 18 Dec 2012 19:35:28 +0000 (14:35 -0500)]
Upgrade script for ts config use

And the rest of that work

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoAdd config interfaces
Thomas Berezansky [Tue, 18 Dec 2012 15:38:24 +0000 (10:38 -0500)]
Add config interfaces

For metabib class, class ts maps, field, and field ts maps.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Much work
Thomas Berezansky [Thu, 11 Oct 2012 15:43:25 +0000 (11:43 -0400)]
QueryParser Driver: Much work

Switch to configurable fts configs
Add "combined" index vectors
Add word boundary checks for phrase searches
Use combined rel_bump function

And probably more I forgot about

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Remove Unphrases, add negates
Thomas Berezansky [Wed, 10 Oct 2012 21:23:43 +0000 (17:23 -0400)]
QueryParser Driver: Remove Unphrases, add negates

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoUse ][ instead of # to split facets
Thomas Berezansky [Wed, 10 Oct 2012 20:51:36 +0000 (16:51 -0400)]
Use ][ instead of # to split facets

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Add "lucky" modifier
Thomas Berezansky [Thu, 27 Sep 2012 20:48:03 +0000 (16:48 -0400)]
QueryParser Driver: Add "lucky" modifier

Forces to 1 result. Best used with redirect on single hit active.

Because why not.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Improve format filter
Thomas Berezansky [Tue, 18 Sep 2012 15:55:07 +0000 (11:55 -0400)]
QueryParser Driver: Improve format filter

Allow multi-select in particular, and make negate more intuitive.

-format(at-d) would previously generate:
-item_type(a,t) -item_form(d)

Now it generates:
-(item_type(a,t) item_form(d))

Multi-select allows for things like:
format(at-d,g)

To generate:
((item_type(a,t) item_form(d)) || item_type(g))

Negating that results in:
-((item_type(a,t) item_form(d)) || item_type(g))

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Long Line Cleanup
Thomas Berezansky [Fri, 14 Sep 2012 16:15:40 +0000 (12:15 -0400)]
QueryParser Driver: Long Line Cleanup

Both in the code and in the generated where clause.

The where clause we start a new line whenever:

1 - We encounter an AND or OR
2 - We are building a complex subquery (including embedded newlines)
3 - We enter a subplan

This makes for a nicely human-readable where clause.

For the code we split many long lines into multiple. A number of those were
changed due to the where clause formatting.

We also change all instances of multiple ${spc} being added to use the
${spc} x #
method of doing things, as it tends to be shorter.

Also, we move some conditionals from the ends of lines to the fronts, mainly
in those situations where we are moving something from single to multi line.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Remove Switch usage
Thomas Berezansky [Fri, 14 Sep 2012 12:57:45 +0000 (08:57 -0400)]
QueryParser Driver: Remove Switch usage

Because not all distros install it by default.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Improve anchored searches
Thomas Berezansky [Wed, 12 Sep 2012 13:12:41 +0000 (09:12 -0400)]
QueryParser Driver: Improve anchored searches

By checking individual atoms for ^ and $ anchors we can get better results,
without needing to have people quote individual terms.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Protect against NULLs
Thomas Berezansky [Tue, 11 Sep 2012 19:02:59 +0000 (15:02 -0400)]
QueryParser Driver: Protect against NULLs

mrd.attrs->'value' can return NULL. If this happens:

Checking that the value is within a range or list will work fine.
NEGATING that will not.

This is because:
AND NULL returns NULL
AND NOT (NULL) also returns NULL

The solution? Adjust things so we can wrap all the offending checks in a
COALESCE to false. Then if mrd.attrs->'value' is null we get a false.

In the process we move any and all negations to outside the COALESCE.

Also apply the same logic to the bib_source filter, not to mention
making it support being negated.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoAdd bib_source filter
Thomas Berezansky [Tue, 11 Sep 2012 13:48:39 +0000 (09:48 -0400)]
Add bib_source filter

Because it would likely be very useful, if only for staff.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoFix empty statuses filter
Thomas Berezansky [Tue, 11 Sep 2012 13:42:38 +0000 (09:42 -0400)]
Fix empty statuses filter

By adding a check that was overlooked.

Also remove a leftover TODO note and add another test query.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Use proper table alias
Thomas Berezansky [Tue, 11 Sep 2012 13:21:36 +0000 (09:21 -0400)]
QueryParser Driver: Use proper table alias

When all atoms are dummy atoms we need the correct table alias.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoAdd some more test queries to query_tester.pl
Thomas Berezansky [Tue, 11 Sep 2012 13:11:29 +0000 (09:11 -0400)]
Add some more test queries to query_tester.pl

At least one of which requires a follow-up change to the driver to resolve.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoRemove search.query_parser_fts from schema
Thomas Berezansky [Mon, 10 Sep 2012 20:47:15 +0000 (16:47 -0400)]
Remove search.query_parser_fts from schema

Including an upgrade script to drop it.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQuick script for pushing queries into search
Thomas Berezansky [Mon, 10 Sep 2012 17:54:55 +0000 (13:54 -0400)]
Quick script for pushing queries into search

Several of the defaults are designed to trigger bad SQL generation.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoRemove dependence on search.query_parser_fts proc
Thomas Berezansky [Fri, 7 Sep 2012 20:07:26 +0000 (16:07 -0400)]
Remove dependence on search.query_parser_fts proc

We do this by moving everything into the QueryParser driver, then telling
the metabib layer to not call it anymore.

In the process we remove the "superpage" checks, instead just getting the
entire result set directly from the DB.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryparser Driver: SQL Generation Tweaks
Thomas Berezansky [Fri, 7 Sep 2012 18:13:08 +0000 (14:13 -0400)]
Queryparser Driver: SQL Generation Tweaks

Remove fwhere/where distinction due to issues with detecting where some
operators were supposed to go.

Change format to a callback instead of forcing it to the top of the tree.

Change date-based filters to work in nested situations.

Change container and record_list to work in nested situations.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser Driver: Adjust query whitespace
Thomas Berezansky [Fri, 7 Sep 2012 14:46:34 +0000 (10:46 -0400)]
QueryParser Driver: Adjust query whitespace

Adjust spacing and newlines to make the resulting query more easily read.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser: Expand negate and disallow operators
Thomas Berezansky [Sun, 16 Sep 2012 20:46:43 +0000 (16:46 -0400)]
QueryParser: Expand negate and disallow operators

Allow negate to act like disallow on phrases.

Allow both to apply to groups.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser: Add negate operator
Thomas Berezansky [Sun, 16 Sep 2012 19:21:07 +0000 (15:21 -0400)]
QueryParser: Add negate operator

To replace the previous -atom behavior add a negate op, by default !.

This acts identically to how - worked before it was changed to convert atoms
into unphrases.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser: Treat Unphrases as negated phrases
Thomas Berezansky [Sun, 16 Sep 2012 19:08:06 +0000 (15:08 -0400)]
QueryParser: Treat Unphrases as negated phrases

This should allow drivers to better check for negated phrases by using
indexes on the contained atoms.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser: Protect phrase parsing
Thomas Berezansky [Sun, 16 Sep 2012 17:53:16 +0000 (13:53 -0400)]
QueryParser: Protect phrase parsing

Ensure that phrases don't get parsed as containing anything other than
individual atoms. This ensures that you can phrase-escape things that would
otherwise be treated as QP syntax.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoConvert negated words to unphrases, like we do with +d words to phrases
Mike Rylander [Fri, 14 Sep 2012 18:28:20 +0000 (14:28 -0400)]
Convert negated words to unphrases, like we do with +d words to phrases

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoLots ...
Mike Rylander [Wed, 12 Sep 2012 17:12:12 +0000 (13:12 -0400)]
Lots ...

 * increase debugging amount and readability
 * floating sections (push-to-top)
 * force plan level setting
 * fix several forms of auto-pushdown breakage (explicit bool precedence support)

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQueryParser unit test
Jared Camins-Esakov [Sat, 8 Sep 2012 02:44:50 +0000 (22:44 -0400)]
QueryParser unit test

Test that QueryParser can handle a variety of queries. This initial
unit test does the following:

1) Test the configuration of QueryParser.
2) Test that various queries have stable canonical representations.
3) Test that a number of equivalent queries are correctly parsed as
   equivalent.
4) Test that a number of non-equivalent queries are correctly parsed as
   NOT being equivalent.
5) Several other tests relating to query parsing.

This includes almost 100% subroutine coverage in the QueryParser class.
Other classes have somewhat lower test coverage.

As of 2012-09-09, several outstanding bugs affect these tests:
1) QueryParser->superpage cannot be unset.
2) Explicit groups are not handled correctly by the abstract query
   to string converter.
3) There is no defined precedence between explicit boolean connectors
   and implicit boolean connectors.
4) Modifiers are silently dropped when not at the top level of the query.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoStart adding skeletal POD for subroutines
Jared Camins-Esakov [Sun, 9 Sep 2012 14:52:06 +0000 (10:52 -0400)]
Start adding skeletal POD for subroutines

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoMove allow_nested_modifiers to the driver level, provide a wrapper for it, and add...
Mike Rylander [Mon, 10 Sep 2012 19:31:05 +0000 (15:31 -0400)]
Move allow_nested_modifiers to the driver level, provide a wrapper for it, and add that to the Pg test setup as an example

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoAllow nested modifiers
Jared Camins-Esakov [Sat, 8 Sep 2012 03:36:36 +0000 (23:36 -0400)]
Allow nested modifiers

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoPretty-fy canonicalization
Mike Rylander [Mon, 10 Sep 2012 18:58:01 +0000 (14:58 -0400)]
Pretty-fy canonicalization

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoTeach QP about floating (force-to-top) subplans indicated by {{...}}
Mike Rylander [Mon, 10 Sep 2012 17:21:30 +0000 (13:21 -0400)]
Teach QP about floating (force-to-top) subplans indicated by {{...}}

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoQP: OO-ize canonicalizer; remove extra nesting from canonicalized query; repair neste...
Mike Rylander [Fri, 7 Sep 2012 19:51:43 +0000 (15:51 -0400)]
QP: OO-ize canonicalizer; remove extra nesting from canonicalized query; repair nested operator in bool nesting; updated (basis) test script

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoAutomatic push-down of explicitly-bool-connected conditions
Mike Rylander [Fri, 7 Sep 2012 18:15:21 +0000 (14:15 -0400)]
push-down of explicitly-bool-connected conditions

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
12 years agoConsistent permission filtering in ACQ search results
Bill Erickson [Fri, 14 Sep 2012 19:30:15 +0000 (15:30 -0400)]
Consistent permission filtering in ACQ search results

Add permission checks to search result objects when calling unified
search in 'idlist' mode, consistent with the existing permission checks
for non-id-list mode.  Without this, different forms of the call return
different sets of results.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
12 years agoLP #1092179 FlattenerGrid Filter dialog lead to clobbering grid's base query
Lebbeous Fogle-Weekley [Wed, 19 Dec 2012 16:41:28 +0000 (11:41 -0500)]
LP #1092179 FlattenerGrid Filter dialog lead to clobbering grid's base query

You could see this in the Simplified Hold Pull List interface.  Using
the filter dialog would refresh the grid and populate it with rows
corresponding to your filters, but it would throw away your setting from
the context org dropdown (labeled "Show the pull list for..." there).

FlattenerGrid had a broken mechanism for trying to nicely mix a user's
input from things like context org dropdowns with whatever they put into
the filter dialog, and now that mechanism has been fixed.

This also means a tiny change to the User Event Log interface to react
to the slight change in FlattenerGrid's API.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP#1088561: remove current password (renew password issue with TPAC)
Simon Hieu Mai [Wed, 19 Dec 2012 20:33:54 +0000 (14:33 -0600)]
LP#1088561: remove current password (renew password issue with TPAC)

If a user chooses to have their browser remember their password for the
catalog, it can fill in the password to the change password form page
as hidden dots. This behavior was observed specifically with Firefox.

Instead, add autocomplete="off" attribute to the form to force users to
enter existing password to change to a new password as intended.

Signed-off-by: Simon Mai <hieu.mai@mnsu.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoAdd fi-FI to update_pofiles script
Pasi Kallinen [Tue, 18 Dec 2012 08:42:59 +0000 (10:42 +0200)]
Add fi-FI to update_pofiles script

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
12 years agopo-files for Finnish translation
Pasi Kallinen [Tue, 18 Dec 2012 08:41:28 +0000 (10:41 +0200)]
po-files for Finnish translation

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
12 years agoMake config.update_coded_value_map() consistent
Dan Wells [Tue, 18 Dec 2012 20:51:12 +0000 (15:51 -0500)]
Make config.update_coded_value_map() consistent

The version of this function in the upgrade file is different than
the one in the 002.schema.config.sql file. This commit fixes the
broken logic in the 002 file and makes it match the logic in the
old upgrade file.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
12 years agoCheck for a selection_depth returned from title_hold.is_possible.
James Fournie [Tue, 18 Dec 2012 20:45:51 +0000 (12:45 -0800)]
Check for a selection_depth returned from title_hold.is_possible.
See Launchpad 1064651 for details.  This is a quick fix which solves a
fairly serious issue whereby copies outside of a hard boundary could fill
holds when they are placed within the TPAC in the staff client.

Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoDojo IDL: Set the "Accept-Language" header
Dan Scott [Tue, 18 Dec 2012 13:52:55 +0000 (08:52 -0500)]
Dojo IDL: Set the "Accept-Language" header

The internationalization support for /reports/fm_IDL.xml keys off of the
Accept-Language header - which, if not set to ^[a-z]{2}-[A-Z]{2}$, falls
back to en-US. Setting the header in the dojo.xhrGet() request makes
Apache able to serve up the right flavour of /reports/fm_IDL.xml

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
12 years agoSet locale properly in Apache configuration
Dan Scott [Tue, 18 Dec 2012 12:39:18 +0000 (07:39 -0500)]
Set locale properly in Apache configuration

A RewriteCond only applies to the next RewriteRule, while our config was
attempting to apply multiple rules for a single condition. Fix that up
by using skip (S) rules to apply blocks of rules for the condition in
question.

Also, use the HTTP:Accept-Language value directly, rather than relying
on a backreference (which did not seem to be working as desired).

These fixes enable screens like the Register Patron interface to present
field labels from the IDL in the correct locale, whereas previously they
would always default to en-US.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
12 years agoLP#1078596: Cannot translate strings handled by fieldmapper
Pasi Kallinen [Sun, 2 Dec 2012 20:49:42 +0000 (22:49 +0200)]
LP#1078596: Cannot translate strings handled by fieldmapper

Strings that should be translatable only show up in English,
for example in the Patron Registration screen.

There's a bug in the fieldmapper where it sets a variable to
an empty array, but later in the code only checks whether that
particular variable exists, not if it's an empty array.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
12 years agoSyndetics - retrieve summary as part of added content
Ben Shum [Wed, 28 Nov 2012 21:05:53 +0000 (16:05 -0500)]
Syndetics - retrieve summary as part of added content

As noted by Steve Callender in LP1027131, Syndetics added content is not
retrieving summary.html to be displayed in the catalog.

This change adds a function similar to toc/anotes to bring in summary data.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
12 years agoACQ: repair lineitem cancel-reason fleshing
Bill Erickson [Tue, 4 Dec 2012 16:04:08 +0000 (11:04 -0500)]
ACQ: repair lineitem cancel-reason fleshing

When fetching lineitems for display in the general lineitem list page,
if the lineitem is cancelled, be sure we correctly retrieve the
cancel-reason object.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoStamping upgrade script for frozen holds clear expire time
Ben Shum [Tue, 18 Dec 2012 06:00:07 +0000 (01:00 -0500)]
Stamping upgrade script for frozen holds clear expire time

Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP1076399: Prevent reactivated holds from expiring immediately.
Jason Stephenson [Wed, 14 Nov 2012 18:41:37 +0000 (13:41 -0500)]
LP1076399: Prevent reactivated holds from expiring immediately.

Clear the expire_time on deactivated holds.

Recalculate the expire_time when a hold is reactivated.

Upgrade script to set expire_time to NULL on frozen action.hold_requests.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoResolve LP893448: Prevent hold expiration in past.
Jason Stephenson [Wed, 14 Nov 2012 16:49:49 +0000 (11:49 -0500)]
Resolve LP893448: Prevent hold expiration in past.

If a hold is placed with an expiration date in the past, the
expire_time of the hold will be reset using the hold expiration
interval settings.

Likewise, if a hold is changed to have an expiration date in the
past, the hold expiration date will be recalculated using the
hold expiration interval settings.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoAdd calculate_expire_time helper function to Holds.pm.
Jason Stephenson [Wed, 14 Nov 2012 16:27:53 +0000 (11:27 -0500)]
Add calculate_expire_time helper function to Holds.pm.

This new function calculates an expire_time for a hold based on the hold
expiration interval setting for a passed in org_unit. If the setting is found
the interval is added to "now" and returned as an ISO8601 string. undef is
returned if the setting is not found for the org_unit or its ancestors.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoAdd datecmp to OpenILS::Application::AppUtils.
Jason Stephenson [Wed, 14 Nov 2012 15:40:35 +0000 (10:40 -0500)]
Add datecmp to OpenILS::Application::AppUtils.

datecmp is a handy subroutine for comparing two DateTime objects or string
represenations. It returns -1, 0, and 1, much like the perl cmp operator.

If only 1 date is specified, then it will be compared to DateTime->now.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoFix foreign character display in receipts
Dan Wells [Tue, 6 Nov 2012 21:32:23 +0000 (16:32 -0500)]
Fix foreign character display in receipts

This commit makes two changes to the staff client print code to
help with the proper display of foreign characters:

1) Specify the utf-8 charset in the receipt Data URIs.
2) Properly encode the entire data string using encodeURIComponent
rather than encode().  Failing to do so was causing XULRunner to
be "creative" with the interpretation of the data.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoStamping upgrade script for hold request email notify default false
Ben Shum [Tue, 18 Dec 2012 05:12:38 +0000 (00:12 -0500)]
Stamping upgrade script for hold request email notify default false

Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP#1047475 Set action.hold_request.email_notify to default to false
Michael Peters [Thu, 13 Sep 2012 20:28:04 +0000 (16:28 -0400)]
LP#1047475 Set action.hold_request.email_notify to default to false

LP#1047475 points out that email notify prefs are ignored in TPAC.
Even if a patron deselects email notify during hold request time, it
will always be set to true due to the column default.

This change defaults the column in the database to false (like most
other similar columns are) and resolves the bug.

Credit to Steve Callender for the idea.

Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP: #1086064 Ignore spaces in opac username/barcode entry field
Dan Pearl [Tue, 11 Dec 2012 15:13:41 +0000 (10:13 -0500)]
LP: #1086064  Ignore spaces in opac username/barcode entry field

Too often, patrons copy the spacing on the barcode on their keytag,
or enter a spurious space before entering their name/barcode. This
change will remove spaces in their name/barcode.

(For now, keep the login screen's directions to omit spaces when
entering the username/barcode.)

Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoHighlight selected facets over multiple lines
Dan Scott [Tue, 4 Dec 2012 15:08:36 +0000 (10:08 -0500)]
Highlight selected facets over multiple lines

As reported by Dan Pearl in LP# 1086150, selected facets that wrap over
multiple lines only have the first line highlighted. Which is odd, and
easily fixed with a small tweak to the CSS.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoUse uri_escape_utf8 in EGCatLoader/Record.pm.
Jason Stephenson [Tue, 30 Oct 2012 17:07:21 +0000 (13:07 -0400)]
Use uri_escape_utf8 in EGCatLoader/Record.pm.

To avoid this:

[Tue Oct 30 12:34:36 2012] [error] [client 134.241.121.11] egweb: Context
Loader error: Can't escape \\x{02B9}, try uri_escape_utf8() instead at
/usr/local/share/perl/5.14.2/OpenILS/WWW/EGCatLoader/Record.pm line 472 \n,
referer: http://catalog.mvlc.org/eg/opa c/results?fi%3Aitem_type=&query=
zhenshchiny&qtype=keyword&locg=1

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP#1088868: Column sort popup menu has no background style
Pasi Kallinen [Thu, 13 Dec 2012 08:00:43 +0000 (10:00 +0200)]
LP#1088868: Column sort popup menu has no background style

Change the menu from "popup" element to "menupopup", as per tsbere's suggestion.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoSupport barcode autocompletion in copy buckets
Thomas Berezansky [Thu, 9 Feb 2012 21:37:48 +0000 (16:37 -0500)]
Support barcode autocompletion in copy buckets

By request of our staff, who are lazy.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP#1084161 KPAC: Added Content Tabs can be too wide
Michael Peters [Wed, 28 Nov 2012 17:45:02 +0000 (12:45 -0500)]
LP#1084161 KPAC: Added Content Tabs can be too wide

In cases where LOTS of added content might be available, the
record summary is not wide enough to fit all of the tabs.

This decreases their padding width to fit them comfortably.

Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoLP#1090385 Fix success message for copy template deletion
Michael Peters [Mon, 17 Dec 2012 14:10:19 +0000 (09:10 -0500)]
LP#1090385 Fix success message for copy template deletion

We were displaying the "confirm" message twice, instead of the
existing "success" message.

Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoI18N: Make everything in tt2 files translatable.
Dan Scott [Sun, 16 Dec 2012 08:20:49 +0000 (03:20 -0500)]
I18N: Make everything in tt2 files translatable.

Simply wrap everything that should be translatable inside l().
Also fixes bug #1088388

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Conflicts:
Open-ILS/src/templates/acq/common/li_table.tt2
Open-ILS/src/templates/acq/invoice/view.tt2
Open-ILS/src/templates/acq/search/unified.tt2
Open-ILS/src/templates/vandelay/inc/item_attrs.tt2

Signed-off-by: Dan Scott <dscott@laurentian.ca>
12 years agoJava IDL parser supports isnew/ischanged/isdeleted
Bill Erickson [Thu, 5 Apr 2012 13:36:31 +0000 (09:36 -0400)]
Java IDL parser supports isnew/ischanged/isdeleted

Includes changes to TestIDL.java for verification.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoAdd Java *.class files to gitignore
Bill Erickson [Fri, 24 Feb 2012 21:37:07 +0000 (16:37 -0500)]
Add Java *.class files to gitignore

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoJava IDL parser updated to use derived field array index
Bill Erickson [Fri, 24 Feb 2012 21:33:58 +0000 (16:33 -0500)]
Java IDL parser updated to use derived field array index

The "array_position" IDL attribute is deprecated.  Determine the
index by field position within the XML.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoFix OSRF_HOME and EXT in Open-ILs/src/java/Makefil.am.
Jason Stephenson [Wed, 31 Oct 2012 17:25:04 +0000 (13:25 -0400)]
Fix OSRF_HOME and EXT in Open-ILs/src/java/Makefil.am.

Change the paths so that they work.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
12 years agoUpdate Java dependencies.
Jason Stephenson [Tue, 30 Oct 2012 21:10:42 +0000 (17:10 -0400)]
Update Java dependencies.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
12 years agoAcq: When invoice-building with embedded search, allow control of results list
Lebbeous Fogle-Weekley [Fri, 5 Oct 2012 22:42:11 +0000 (18:42 -0400)]
Acq: When invoice-building with embedded search, allow control of results list

Previously, a results list could accumulate under inconsistent
conditions.  You'd get an accumulating results list if you were pressing
enter after successful searches, but your results lists would clear if
you actually clicked the Search button.  Worse, searches yielding empty
result sets would *appear* to clear your result list, but subsequent
sucessful searches would restore what was there before.

This is the "missing commit" that makes the behavior consistent and
togglable.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoLP#1058321: Acq: Possible to receive a pending purchase order
Mark Cooper [Wed, 24 Oct 2012 05:02:38 +0000 (22:02 -0700)]
LP#1058321: Acq: Possible to receive a pending purchase order

Revised to allow a cancelled PO to be received, as this is needed under
certain conditions (note - bib/items are not restored in this case).
Added po_state variable to avoid repeated PO.state() function invocations.

Signed-off-by: Mark Cooper <markchristophercooper@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoLP#1058321: Possible to receive a pending purchase order
Mark Cooper [Tue, 16 Oct 2012 01:03:44 +0000 (18:03 -0700)]
LP#1058321: Possible to receive a pending purchase order

Restrict 'Mark purchase order as received' to on-order state
purchase orders, and 'Un-Receive Purchase Order' to 'received'
POs. Otherwise inconsistencies easily occur ...

Signed-off-by: Mark Cooper <markchristophercooper@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoAutoFieldWidget support external copy loc retrieval
Bill Erickson [Fri, 28 Sep 2012 19:48:22 +0000 (15:48 -0400)]
AutoFieldWidget support external copy loc retrieval

When rendering a collection of copy locations, AFW fetches locations
relevant to the context org unit.  While rendering an AFW for an
existing object, though, whose copy location is outside of that scope,
the code will now append the non-local copy location to the selector and
tag it with the owning lib (to avoid dupes).

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoACQ order upload use copy location from owner
Bill Erickson [Fri, 28 Sep 2012 19:00:37 +0000 (15:00 -0400)]
ACQ order upload use copy location from owner

When uploading an ACQ MARC order record, attempt to match copy locations
to copies based on the copy owning location instead of the upload
context org unit.  This allows one branch to order copies for another
and have the copies use the copy location of the other (owning) branch
(when they exist) instead of the ordering branch (or parent org).

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoUse consistent language for holdings/items profiles in Vandelay. Now
Mark Cooper [Wed, 5 Dec 2012 21:11:23 +0000 (13:11 -0800)]
Use consistent language for holdings/items profiles in Vandelay. Now
uses "Holdings Import Profiles" as standard.

Signed-off-by: Mark Cooper <markchristophercooper@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agolp1010187 eliminate redundant/unnecessary calls
Jason Etheridge [Wed, 20 Jun 2012 15:47:54 +0000 (11:47 -0400)]
lp1010187 eliminate redundant/unnecessary calls

Particularly invocations of open-ils.circ.stat_cat.asset.retrieve.all in the
Item Attribute Editor

To test:

    login with a BR1 workstation
    load a pristine (non-stat-cat-laden) BR1 item with the editor
    there should be no call to open-ils.circ.stat_cat.asset.retrieve.all
    change the Circ Lib on the item to BR4
    reload the item in the editor
    there should be a call to open-ils.circ.stat_cat.asset.retrieve.all
    reload the item in the editor
    there should be no call to open-ils.circ.stat_cat.asset.retrieve.all
    assign the item a stat cat entry owned by CONS
    reload the item in the editor
    there should be no call to open-ils.circ.stat_cat.asset.retrieve.all

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agoPatch to improve the warning on double checkout attempt
edoceo [Wed, 25 Jul 2012 09:00:55 +0000 (02:00 -0700)]
Patch to improve the warning on double checkout attempt

Code modifications by David Busby of Edoceo for KCLS
Released without restriction to Evergreen community
Signed-off-by: edoceo <code@edoceo.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
12 years agomod_perl expects child_init return values
Thomas Berezansky [Wed, 11 Apr 2012 17:26:42 +0000 (13:26 -0400)]
mod_perl expects child_init return values

So add in Apache2::Const::OK returns on all of them.

[LFW: Added the same change to AutoSuggest.pm for consistency's sake.]

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
12 years agoAllow 'Enter' key to run Verify Credentials user check
edoceo [Thu, 8 Nov 2012 04:08:27 +0000 (20:08 -0800)]
Allow 'Enter' key to run Verify Credentials user check

In both the "Verify Credentials" menu and "Test Password" patron account
option, this change checks for the keypress of "Enter" and then executes
the cmd_verify routine.

Additionally, the password field is blanked after each attempt.

Signed-off-by: edoceo <code@edoceo.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
12 years agoAcq: Yet more efforts to sanitize data for the EDI translator
Lebbeous Fogle-Weekley [Fri, 23 Mar 2012 02:21:36 +0000 (22:21 -0400)]
Acq: Yet more efforts to sanitize data for the EDI translator

I specifically did this to address cases reported to me by Galen
Charlton in which get_li_attr_jedi() would return the string "nul", but
I hope this is a nail in the coffin for problems involving
JEDI-producing Action/Trigger templates feeding the EDI translator
strings that the latter doesn't like.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoMake the acquisitions setup show up in the manual
Dan Scott [Sun, 9 Dec 2012 05:36:08 +0000 (00:36 -0500)]
Make the acquisitions setup show up in the manual

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoAdd acquisitions setup chapter
Dan Scott [Sun, 9 Dec 2012 05:30:29 +0000 (00:30 -0500)]
Add acquisitions setup chapter

Another product of the Evergreen in Action documentation sprint!

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoAdd the "Importing via the staff client" chapter
Dan Scott [Sun, 9 Dec 2012 00:55:24 +0000 (19:55 -0500)]
Add the "Importing via the staff client" chapter

... from the Evergreen In Action doc sprint.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoRoll in some Evergreen in Action chapters
Dan Scott [Sat, 8 Dec 2012 23:36:12 +0000 (18:36 -0500)]
Roll in some Evergreen in Action chapters

For the initial import we're keeping the formatting and words identical,
so that we can manually sycnhronize changes as needed between the FLOSS
Manuals version of this documentation and the AsciiDoc version.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoAdd a target ID to fix the epub transform
Dan Scott [Sat, 8 Dec 2012 23:37:51 +0000 (18:37 -0500)]
Add a target ID to fix the epub transform

Commit a850606073 added a link pointing to this ID, but the target ID
did not exist, breaking the epub transform. Now it works again.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoDocumentation: Add sections to workstation admin chapter.
BC Libraries Cooperative [Fri, 30 Nov 2012 16:10:39 +0000 (11:10 -0500)]
Documentation: Add sections to workstation admin chapter.

Content from:
http://docs.sitka.bclibraries.ca/Sitka/current/html/intro_start_workstation_admi$

Receipt template editor sections moved to this chapter.
Converted to asciidoc by rsoulliere. Index terms added by rsoulliere
Some duplicate images were also removed from media directory.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
13 years agoDocumentation: Add workstation administration chapter.
BC Libraries Cooperative [Thu, 29 Nov 2012 20:39:57 +0000 (15:39 -0500)]
Documentation: Add workstation administration chapter.

Content from: http://docs.sitka.bclibraries.ca/Sitka/current/html/intro_start_workstation_admin.html
Converted to asciidoc by rsoulliere.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
13 years agoFix misspelling of "summary" in KPAC Added Content
Michael Peters [Wed, 28 Nov 2012 17:36:10 +0000 (12:36 -0500)]
Fix misspelling of "summary" in KPAC Added Content

Summary != Smmary

Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Ben Shum <bshum@biblio.org>
13 years agoDocumentation: Add staff client login chapter.
Robert Soulliere [Thu, 29 Nov 2012 15:43:28 +0000 (10:43 -0500)]
Documentation: Add staff client login chapter.

Included standalone interface and loggin out information as well as
a few index terms.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
13 years agoDocumentation: Add chapter on staff client installation.
Robert Soulliere [Wed, 28 Nov 2012 16:36:54 +0000 (11:36 -0500)]
Documentation: Add chapter on staff client installation.

Also included information on removing staff client preferences
(from EG wiki) and registering workstations.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
13 years agoKPAC - add shelving location to copy table display
Melissa Lefebvre [Tue, 27 Nov 2012 18:35:42 +0000 (13:35 -0500)]
KPAC - add shelving location to copy table display

Addition of shelving location information to the display along with the
removal of broken "view library info" javascript link.

Signed-off-by: Melissa Lefebvre <mlefebvre@biblio.org>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Ben Shum <bshum@biblio.org>
13 years agoKPAC - fix getit_results with short titles
Ben Shum [Wed, 21 Nov 2012 19:17:59 +0000 (14:17 -0500)]
KPAC - fix getit_results with short titles

When using the "Get it" options to either add an item to a list or place an
item on hold, one would get an internal server error whenever attemping this
on a bib record with a short title.

Turns out that the substr function that shortens the length of long titles
breaks when the title is 18 characters or less.

Add an IF check around the substr function to avoid this error.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
13 years agoKPAC - fix Get It and pickup library selector
Ben Shum [Mon, 19 Nov 2012 22:34:33 +0000 (17:34 -0500)]
KPAC - fix Get It and pickup library selector

Change PROCESS to INCLUDE to prevent variable leaks from breaking
the pickup library selector's values.

Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
13 years agoLP#1082260: Update OPAC low search hits template for i18n
Pasi Kallinen [Tue, 27 Nov 2012 10:39:02 +0000 (12:39 +0200)]
LP#1082260: Update OPAC low search hits template for i18n

The OPAC lowhits.tt2 template is only partially translatable,
and the translatable part is impossible to make sound good
for languages with different word order than English.

This patch changes the already translatable part so there
are 4 different phrases to translate (instead of two phrase
fragments), and makes the search hints translatable.

For English language, the patch does not introduce any visible differences.

Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
13 years agoFix typo in docs/opac/search_form.txt
Michael Peters [Tue, 27 Nov 2012 14:31:32 +0000 (09:31 -0500)]
Fix typo in docs/opac/search_form.txt

Creating a simple search for kpac should link to "kpac"
not "tpac" which won't exist.

Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
13 years agoFix lp1076379: Can't edit holds beyond first page.
Jason Stephenson [Thu, 8 Nov 2012 20:09:09 +0000 (15:09 -0500)]
Fix lp1076379: Can't edit holds beyond first page.

When a hold was being edited on page 2+ of a patron's list of holds, the
offset was > 0. Since the input hold_ids array ref has only 1 member, using
the offset as a starting point in searching began the search beyond the end
of the array and thus returned nothing.

The code in this commit moves the handling of the offset and limit to cases
where the input hold_ids is undefined, as this is, I think the intended
behavior. Typically when hold_ids is passed to the fetch_user_holds function
in EGCatLoader::Account, you want to retrieve those holds regardless of
the offset and limit values.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
13 years agoRepair syntax on line 559 of Holds.pm
Jason Stephenson [Thu, 8 Nov 2012 16:32:06 +0000 (11:32 -0500)]
Repair syntax on line 559 of Holds.pm

A change was introduced when listing available holds that has incorrect JSON
syntax. This caused available holds not to be returned by the query.

Changing '+ahr' to '=' in the query resolves this.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
13 years agoDocumentation: Fix some typos in upgrade instructions.
Robert Soulliere [Mon, 26 Nov 2012 15:17:53 +0000 (10:17 -0500)]
Documentation: Fix some typos in upgrade instructions.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
13 years agoTest data: avoid crazy transactions for expired patrons
Dan Scott [Wed, 21 Nov 2012 16:37:06 +0000 (11:37 -0500)]
Test data: avoid crazy transactions for expired patrons

Rather than creating brand new circ transactions for patrons who expired
in 1999, make things a little more realistic by filtering out the
patrons to those whose account expired in the past month or later, and
creating xact_start / due_date values based on their account expiry
date if expired, or NOW() if still active.

Oh, and add some patrons who expired over the past month. :)

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
13 years agoSample data: enable loading via eg_db_config.pl
Dan Scott [Sun, 11 Nov 2012 23:32:44 +0000 (18:32 -0500)]
Sample data: enable loading via eg_db_config.pl

Add "--load-concerto-sample" and "--load-all-sample" options to the
eg_db_config.pl script so that would-be testers can create the database
and load sample data on it in one easy step.

Add a release notes entry.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>