Bill Erickson [Thu, 22 Mar 2012 17:41:29 +0000 (13:41 -0400)]
AutoFieldWidget single-object cache repairs
Caching single objects linked off the context object was failing in most
cases as it was caching under the display name instead of the true value
(pkey) for the linked object. This fixes that by always caching the
linked object by its true value, so that future cache lookups will be
looking in the right place.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Thu, 22 Mar 2012 15:53:55 +0000 (11:53 -0400)]
PermaCrud.js flesh support
Now that open-ils.pcrud supports fleshing, allow flesh params to pass
through PermaCrud.js
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 23 Mar 2012 16:45:38 +0000 (12:45 -0400)]
Stamping upgrade script for in-db unAPI + TPAC cleanup from Dan Scott
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Thu, 22 Mar 2012 00:00:01 +0000 (20:00 -0400)]
TPAC: Show preferred library copies only in consortial scope
A refinement of the preferred library display: only when the user is at
the consortial scope should the preferred library copies float to the
top. At all other scopes, the preferred library copies will appear in
their proper place in the org unit hierarchy (or not at all if outside
of the chosen scope).
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Wed, 21 Mar 2012 04:14:56 +0000 (00:14 -0400)]
TPAC: Sort copies from preferred library first
This commit makes copies from the preferred library (if any) sort first
in the displayed copy list in search results and record details, even
if the search scope would otherwise not include the preferred library's
copies at all.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Wed, 21 Mar 2012 04:40:42 +0000 (00:40 -0400)]
TPAC: Fix filtering of org units in record details
The syntax for the filtering clause isn't quite right for the
non-opac-visible org units; remove the braces and win.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Wed, 21 Mar 2012 02:00:11 +0000 (22:00 -0400)]
TPAC / unapi: Overhaul copy and located URI display
In unauthenticated mode, sort returned copies in the following order:
1. Search library proximity
2. Search library name
3. (Search results only) Call number, by most available copy status
4. Call number label
5. Copy status availability
Also return & display the copy counts ("x of y copies are available")
for the search library and each of its parents.
We can also determine "preferred library" as follows, taking the first
match:
1. A new GET param, "plib", specifying the number of the OU
2. If authenticated, the user's "search library" preference setting;
3. If authenticated, the user's home library;
4. Physical location in which the search is being issued (if any)
Given a preferred library:
1. Promote the copies (if any) for the preferred library to the top of
the copy display list.
2. Include the copy count for the preferred library if it is outside of
the scope of the search library;
3. In record details, give users the ability to jump to their preferred
library scope via "Show preferred library" beside the preferred
library copy count, if applicable. If your search library is located
beneath your pref library in the org hierarchy, then you'll get just
the "copy depth" link instead.
Also, untangle the located URIs from physical call numbers in
in-database unapi.
We had been facing the limitation of URIs being limited by the maximum
number of call numbers, with the result that URIs may or may not have
been displayed. Now, we take the bold tack of returning all URIs that
are in scope for both the search library and the preferred library. No
limiting is currently possible, but in the realistic worst case scenario
of both search lib and pref lib being set to an OU at depth 4, we'll get
a maximum of 8 different URIs back to display. (More realistically, it's
unlikely that a different URI will be set for each level of the
hierarchy.)
Some of the more granular code changes are as follows:
* Add attributes to in-db unapi acp, sunit, holdings_xml
This gives us more flexibility in displaying due dates within search
results or other contexts in which holdings are displayed. The
age_protect, copy_id, and vol_id attributes are required by the record
summary display.
* Enable TPAC to display records via HSTORE-based unapi
Now that unapi requires HSTORE-based LIMIT and OFFSET arguments, take
the simplest possible approach to get get_records_and_facets() working
again.
In search results, we want to limit both the number of copies we get
back (defaulting to a maximum of 5 copies per call number) and the
number of call numbers we get back (defaulting to a maximum of 5 call
numbers), so that we don't get 50 call numbers each with 5 copies back
and wind up grinding Evergreen's performance down to a halt.
Rough thought is that the caller can filter through the (maximum) 25
hits that are returned to present their preferred results. For example,
a site could opt to show 5 different call numbers with just one copy per
call number, or 5 different copies for a single call number, or all 25.
* Avoid deleted call numbers, copies, and sunits
The rewrite of unapi removed the filters for deleted call numbers that
were added to master in LP# 893315 / commit hash
47a16f516d. Fix this
to prevent returning pages of results that would show nothing in the
TPAC because all of the call numbers were deleted.
* Display multiple URIs correctly
We weren't clearing the hash each time that we added it to the list of
URIs, and that ended up duplicating the URI rather than adding distinct
URIs.
* Take copy availability into account for copy order
This is most important in the LIMITed list of copies returned to the
TPAC search results page, but also useful on the record details page.
This commit adds "copy status ranking" into the result ordering, such
that more available copies will be returned first in the list (and thus,
in the case of search results where call numbers and copies are
typically limited (currently to 5 of 5), ensuring that the most
available copies are likely to be seen by users).
The "availability" ranking for a copy is defined by a new function,
evergreen.rank_cp_status(), that takes criteria from the
config.copy_status table and ranks it in three tiers, as follows:
1. Most available = opac_visible and copy_active are both TRUE
2. Almost available = holdable and opac_visible are TRUE, but
copy_active is FALSE, or status ID = 1 ("Checked out")
3. Unavailable = anything else.
Thus, changing copy availability ranking (such as demoting "On holds
shelf" from the "most available" status to "almost available"), is
simply a matter of tweaking the evergreen.rank_cp_status() function.
* unapi database functions: mark STABLE
Thomas Berezansky suggested marking one of the new database functions in
the in-database unapi suite as STABLE to help the optimizer, which lead
to us realizing that everything can be marked as stable. This should
enable the planner to generate better plans than if left to the default
pessimistic level of VOLATILE.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 3 Aug 2011 18:23:11 +0000 (14:23 -0400)]
Add per-class limit support to the tag URI parser; correct location/org thinko
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Mike Rylander [Tue, 2 Aug 2011 18:44:53 +0000 (14:44 -0400)]
Support per-class sub-object limit/offset
Change the signature for in-db unapi functions so that the limit /
offset arguments become HSTORE values, rather than plain INTEGER values.
This gives you the ability to specify limits and offsets at both the
volume and copy level, via the likes of 'acp=>5, acn=>10' to
specify 5 copies and 10 volumes.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Dan Scott [Thu, 22 Mar 2012 21:07:10 +0000 (17:07 -0400)]
Wrap upgrade script for bib record email / print actions
Thanks again to Bill Erickson for another nice piece o' functionality.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Bill Erickson [Wed, 29 Feb 2012 15:49:18 +0000 (10:49 -0500)]
Tpac: record detail print and email
Implements Print and Email actions (as links below add-to-list) in the
tpac record detail page.
The existing bib record print/email A/T seed templates were also updated
like so:
* Instead of using the reporter tables, bib data is fetched and
extracted via unapi, which allows access to SVF data (etc) and is more
consistent with the tpac.
* A number of unused A/T evnironment entries for the seed templates were
removed.
* The delay for the email template was explicitly set to 00:00:00
instead of the default 5 minutes to get the emails out quicker.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Thu, 22 Mar 2012 16:53:13 +0000 (12:53 -0400)]
Wrap upgrade script for CSV circ history export
Thanks, Bill!
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Bill Erickson [Wed, 22 Feb 2012 18:14:13 +0000 (13:14 -0500)]
TPac: Circulation history CSV export
This adds a new "Download CSV" button to the TPac circulation history
interface. The CSV is generated from a new Action/Trigger event
definition.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Conflicts:
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm
Open-ILS/src/sql/Pg/950.data.seed-values.sql
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Thu, 22 Mar 2012 04:15:28 +0000 (00:15 -0400)]
.gitignore update - ignore more built files
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Thu, 22 Mar 2012 04:08:45 +0000 (00:08 -0400)]
TPAC: Tiny fix for + instead of _ string cat operator
Quiet down, Apache logs.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Lebbeous Fogle-Weekley [Wed, 21 Mar 2012 14:03:18 +0000 (10:03 -0400)]
TPAC: suppress warning about splice() when the array in question is too short
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Mike Rylander [Wed, 21 Mar 2012 16:14:44 +0000 (12:14 -0400)]
Shooting 2 obvious thinkos d-e-d dead. Pardon the rogueness.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Wed, 21 Mar 2012 13:55:31 +0000 (09:55 -0400)]
Fix Auditor Boost upgrade script
CREATE FUNCTION needs an OR REPLACE included.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Bill Erickson [Fri, 3 Feb 2012 21:32:03 +0000 (16:32 -0500)]
TPac; credit card assumes all xacts if none selected
For consistency with the initial payment form and to preserve backwards
compatibility, if no transactions are selected, assume the user wants to
pay for all transactions.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Mon, 21 Nov 2011 20:47:37 +0000 (15:47 -0500)]
TPac; credit card payment "Processing..." page
To prevent impatient patrons from re-submitting credit card payment
request forms, insert a Processing... page between the initial form
submission and the actual payment processing.
Steps 3-5 are new or modified.
1. User selects transactions to pay
2. User fills in payment form and Submits
3. Payment form data is cached in memcache with a temporary token
4. Processing page is displayed with message about how processing the
payment can take time, do not refresh, etc.
5. Page is refreshed via http meta refresh to submit the form using
the temp token. The page is not visibly changed, though, since it
takes time for the form submission to begin returning data.
6. User is directed to the payment results page.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Mon, 21 Nov 2011 20:44:40 +0000 (15:44 -0500)]
TPac; support context-genereted refresh content
If the tpac context object contains a "refresh" attribute, it will be
used as the content attribute in a <meta http-equiv="refresh" ...>
element in the page head. If present, it will override the default
refresh content for the authentication timeout.
While we're in there, let's use the more correct form of the content
attribute: content="x; url=foo"
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Tue, 20 Mar 2012 22:42:28 +0000 (18:42 -0400)]
Add the session to Circ set_audit_info calls
Because I apparently wasn't thinking about how I wrote the apputils piece
when I added them.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Jason Etheridge [Wed, 11 Jan 2012 18:57:43 +0000 (13:57 -0500)]
LP914821 template selection should be sticky
in Unified Volume/Copy Editor.
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Tue, 20 Mar 2012 20:16:44 +0000 (16:16 -0400)]
AutoSuggest: Have the server cache for us if we're not using cookies
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Lebbeous Fogle-Weekley [Mon, 19 Mar 2012 15:08:08 +0000 (11:08 -0400)]
AutoSuggest: Don't try to store cmc and cmf caches in a cookie. Too big.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Stephenson [Tue, 20 Mar 2012 17:47:00 +0000 (13:47 -0400)]
Fix a couple of templates with multiple class attributes in tags.
There should only be one class attribute on a HTML tag. However,
multiple classes can be combined in a single attribute argument.
See: http://www.w3schools.com/tags/att_standard_class.asp
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Thu, 15 Mar 2012 21:04:51 +0000 (17:04 -0400)]
Backdate into grace period - include last second
The last second of the grace period is ignored on backdated checkins, but
should still count as "in" the grace period.
This fixes that.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lebbeous Fogle-Weekley [Tue, 13 Mar 2012 15:21:59 +0000 (11:21 -0400)]
AutoSuggest: don't force-scroll browser; that's irritating
By default, Dijits and things that inherit from Dijits (at least in
Dojo 1.3.3 that we're still using), have a true value for an attribute
called scrollOnFocus. This makes your browser jump to ensure that the
widget that just received focus is in view.
You don't always want this though. Try expanding the extras on the
record detail page of the TPAC without this commit, but with AutoSuggest
enabled, for example.
This commit sets the scrollOnFocus attribute to false for the
AutoSuggest widget.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Sat, 10 Mar 2012 16:27:08 +0000 (11:27 -0500)]
Propagate search location on "Another Search" link
In commit
27b2037d72b I had intentionally prevented "Another Search" on
the results page from propagating the current search location, in the
belief that sites would want to use that as a way of starting a brand
new search session; after all, both the "Advanced search" and "Search
toolbar" offer propagation of the current parameters.
However, a number of people including Kathy Lussier and Ben Shum
indicated that they expected "Another Search" to maintain scope as well,
so we will propagate state here.
Sites may want to customize this link or the top-left logo link if they
want to provide a "Start a new search session" option.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lebbeous Fogle-Weekley [Fri, 3 Feb 2012 19:45:28 +0000 (14:45 -0500)]
Prevent AutoGrid death using a certain helper with null OU fields
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Tue, 20 Mar 2012 19:56:12 +0000 (15:56 -0400)]
Stamping upgrade script for reingest betterment
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Tue, 21 Feb 2012 22:05:31 +0000 (17:05 -0500)]
New metabib.reingest_metabib_field_entries func
In addition to acting like the old one by default, support new params:
skip_browse - Skip autosuggest (re)population
skip_facet - Skip facet (re)population
skip_search - Skip search (re)population
Can be specified by name with PostgreSQL named param features:
metabib.reingest_metabib_field_entries(bib_id, skip_search := true);
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Tue, 20 Mar 2012 17:50:31 +0000 (13:50 -0400)]
Stamping upgrade script (and updating 2.1-2.2 version upgrade script)
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Mon, 21 Nov 2011 21:51:50 +0000 (16:51 -0500)]
Call set_audit_info and clear_audit_info DB funcs
Set whenever we can (including automatically via pcrud)
Clear whenever we disconnect (hopefully) from a location we set from.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Mon, 21 Nov 2011 16:18:49 +0000 (11:18 -0500)]
Auditor Function Overhaul
Alter create_auditor_history to include two new columns:
audit_user - To refer to the user who made this change
audit_ws - To refer to the workstation they were logged into
Alter create_auditor_func to include the new columns, as well as make it
stop assuming that the auditor table and the table it is based on use the
same column ordering. In additon, make it use OR REPLACE so it can be run
again later.
Alter create_auditor_lifecycle similarly to create_auditor_func, sans the
OR REPLACE functionality.
Add five new functions:
set_audit_info - To set the user and workstation IDs
get_audit_info - Used by the auditor functions to retrieve said IDs
clear_audit_info - To remove the stored IDs for whatever reason
fix_columns - To add/remove/update columns that have changed since any
auditors were initially created
update_auditors - To run a full pass of dropping all lifecycle views,
update for all column changes, re-create the auditor functions, and
re-create the auditor lifecycle views.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Mon, 21 Nov 2011 16:18:58 +0000 (11:18 -0500)]
Unwrapped auditor upgrade script
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Michael Peters [Thu, 15 Mar 2012 14:04:05 +0000 (10:04 -0400)]
TTPAC material type icon compression
When cleaning up the images directory for TTPAC, I discovered
that the mattype icons had been saved with a poor compression
scheme and where taking up nearly 3MB, which was just too
high for a small set of icons.
I ran them through Photoshop CS5 and saved us a whopping 2.85MB
of disk space used by the images. The entire lot decreased from
3MB to just 152KB. Average icon size is now just about 1KB.
This should speed up load times when these images are displayed.
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Michael Peters [Fri, 9 Mar 2012 19:31:17 +0000 (14:31 -0500)]
Password Reset Submit buttons should look like other OPAC buttons
This branch stylizes the submit buttons on the Password Reset form
in TTPAC so they match the other types of OPAC buttons throughout
the catalog.
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Michael Peters [Fri, 16 Mar 2012 17:56:57 +0000 (13:56 -0400)]
LP#707167 Make open-ils.actor.usrname.exists not ignore deleted users
Currently, open-ils.actor.usrname.exists filters out deleted users. This
results in a user recieving indication as to why a user update
failed, when the reason is the username they're attempting to use
is in use, but is "deleted" in the database.
This branch makes open-ils.actor.usrname.exists look at deleted users
since they still prevent re-use of the delted user's username.
More information is in the original bug, https://bugs.launchpad.net/evergreen/+bug/707167.
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lebbeous Fogle-Weekley [Fri, 17 Feb 2012 17:37:15 +0000 (12:37 -0500)]
New features for telephony currently in use at KCLS
I must ask the community's forgiveness for sitting on this for so long.
This code was developed in fits over time, and it had to be disentangled
from some site-specific configuration and workarounds before it could
be usefully published.
Enhancements over what's already committed to master include:
- a feature that allows an Evergreen system to query the PBX (where
PBX here refers to an Asterisk system plus the eg-pbx-* scripts from
Evergreen - particularly eg-pbx-mediator.pl) for the A/T event IDs
associated with failed notifcations, so that those A/T events can be
"rolled over" into new ones with a different event definition, and
thus a different notification method
- holiday awareness in eg-pbx-allocator (the piece run by cron whose
main responsibility is dripping files from a staging directory into
Asterisk's real spool for call files). There's a script (set_pbx_holidays)
that can be run by cron on an Evergreen system to periodically update the
PBX's table of holidays based on a given org unit's closed_date ranges.
- smart retry. In certain situations, if you put too many callfiles
into Asterisk's spool at once, Asterisk will try to make too many
calls at once, and all such calls just fail. That's what the
allocator is meant to prevent. Smart retry is about moving calls that
have been tried once, and will be retried again later due to resulting
in a busy signal or other problem, out of the spool to make room for
other calls that could be made in the mean time.
- miscellaneous helper scripts and tricks for spreading more
reportable/greppable information among A/T output and cleaning up
callfiles that result in no-op's for Asterisk. Lock file checking for
the allocator. Etc.
I also have tried to throw in some useful documentation. I admit things
look a bit jumbled, but I'll be as available as I can make myself to help
anyone who steps up to clarify documentation or improve code in order to
make general adoption of these features a little easier.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Stephenson [Thu, 2 Feb 2012 14:19:11 +0000 (09:19 -0500)]
Use getItemType() instead of getForm() in searchBarInit().
This seems to actually fix the problem with the item type limiter
being lost when going from advanced search to the results page.
Looks like the wrong method was being used to set the form_selector
value in search_bar.js. It was being set to the web form itself and
not to the value of the it (item type) parameter.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Liam Whalen [Tue, 1 Nov 2011 18:18:32 +0000 (14:18 -0400)]
When sorting a search results set the isFilterSort variable is passed
to searchBarSubmit. In side searchBarSumbit there is a call to the
opac_utils.js function clearSearchParams function. This removes all
search paramaters when sorting a result set, which is not the desired
effect. I have wraped clearSearchParams in a check to make sure
isFilterSort is not set before calling the clearSearchParams function,
and this check ensures that the current search's paramaters are passed
to sort operations.
Signed-off-by: Liam Whalen <lwhalen@evergreen-dev.catalogue.nrcan.gc.ca>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Wed, 18 Jan 2012 05:27:05 +0000 (00:27 -0500)]
LP918020: Fix regression in biblio.extract_located_uris
The 2.0-2.1 upgrade script contained an old version of
biblio.extract_located_uris that functioned poorly. Fix the 2.0-2.1
upgrade script and ensure that sites upgrading to 2.1.2 get the fix as
well.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Fri, 24 Feb 2012 19:36:16 +0000 (14:36 -0500)]
lp928937, null date sorting
Changes util.date.db_date2Date so that nulls are not converted into the epoch.
This fixes date sorting in XUL-based lists in the staff client such that unset
dates are listed before actual dates.
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lebbeous Fogle-Weekley [Fri, 24 Feb 2012 19:56:18 +0000 (14:56 -0500)]
Avoid JSPAC hold placement interface problems when no holdable copies
This addresses a bug brought to my attention by John Jones.
When you're trying to place certain holds (at least title level holds) on
records for which there are no holdable formats (no descriptors as returned by
open-ils.search.metabib.record_to_descriptors), then
holdArgs.recordDescriptors in holds.js can be an empty array. There is
a line of code that assumes this will never happen.
The end user-visible result of the javascript failing here is an alert()
dialog about phone number format, but this is a red herring. That only
happens because the problem code is in one big function that has too
many responsibilites.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Tue, 21 Feb 2012 16:47:34 +0000 (11:47 -0500)]
TPac: avoid showing replaced addresses
Replaced (negative-id) addresses should never be visible to the patron.
Remove them from the collected list of addrs.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Tue, 7 Feb 2012 19:40:19 +0000 (14:40 -0500)]
Tpac (etc): improve payment history sorting/paging
Payments within a transaction will have the same timestamp. With a
large enough set of such payments, sorting by timestamp alone when
retrieving payments is not enough to guarantee unique pages of payments.
This adds a secondary sort on payment ID as a tie-breaker.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Mon, 30 Jan 2012 18:11:19 +0000 (13:11 -0500)]
Fix AccessControl plugin extraction
Apparently they ditched a containing folder in the zip...lets autodetect
that from now on.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Mon, 23 Jan 2012 15:05:19 +0000 (10:05 -0500)]
patron search result order sorting
The default patron search "order by" on the server side is last name, first
name, and actor.usr.id.
The staff client intended to request last name, first name, middle name, and
date of birth (when actor.usr.id to be tacked on in the middle layer), but a bug
prevented this.
This fixes that.
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Wed, 1 Feb 2012 18:53:55 +0000 (13:53 -0500)]
Paging repairs for Event definition admin UI
If there are multiple event definitions with the same name that lie along
the page boundaries, it's possible to page through event definitions
seeing some def's multiple times and others never. This is a result of
sorting solely on event def. name when fetching event def's for display.
This patch adds secondary (and tertiary, and quaternary, and quinary)
sort columns as tie breakers to guarantee a unique set of defs across
pages.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Thu, 5 Jan 2012 18:18:29 +0000 (13:18 -0500)]
Do not exclude "identifier" facets by default
No longer ignore "identifier" fields when collecting and caching
facet data. This change causes all config.metabib_field's that are
marked as facet_fields to be taken into consideration.
Apart from marking a field as facet_field=false, it's also possible to
control which fields are visible within the jspac and tpac (pending LP
911908)
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Warren A. Layton [Mon, 19 Mar 2012 16:47:50 +0000 (12:47 -0400)]
Fix some small errors in Apache log for staff client splash page
Fixes the path to the background image in the splash page's search
box.
Also removes references to javascript files that don't seem to be
present.
Signed-off-by: Warren A. Layton <warren.layton@gmail.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Mon, 19 Mar 2012 20:04:49 +0000 (16:04 -0400)]
TPAC: Prevent OU-invisible copies from being displayed to public
Per LP# 959577, "We've found that copies from OU's with OPAC visible set
to false are displaying on the record details page of tpac."
This fixes that by including the pertinent clause in mk_copy_query()'s
version of what in-db unapi does. Some day we will unite under the same
logic and be stronger!
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Thomas Berezansky [Thu, 12 Jan 2012 20:37:48 +0000 (15:37 -0500)]
Disable mod_deflate on XMLENT filtered files
Default configs for Ubuntu, at least, enable mod_deflate too broadly, and
XMLENT filtering needs to happen before mod_deflate kicks in.
Because we can't change the filter order, instead disable mod_deflate for
those files we have enabled XMLENT filtering, by use of the no-gzip ENV.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Mon, 19 Mar 2012 15:57:19 +0000 (11:57 -0400)]
Stamping BluRay videorecording format upgrade
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Thomas Berezansky [Sun, 11 Mar 2012 22:00:03 +0000 (18:00 -0400)]
Teach Evergreen about Blu-Ray VR Format
Also, reingest blu-ray records in an update script to populate it.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Fri, 16 Mar 2012 21:01:11 +0000 (17:01 -0400)]
Layout tweak to return-to-search-results staff button
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lebbeous Fogle-Weekley [Tue, 13 Mar 2012 21:18:17 +0000 (17:18 -0400)]
Staff client: add a back-to-search-results button in the chrome that ...
... wraps the OPAC (whether JSPAC or TPAC).
You don't really need this when in OPAC view, because the OPAC page
itself will have a link that does the same thing. However, if you're
browsing through records in a search result set one at a time in some
other view, say the MARC view, then this button can come in handy.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Mon, 19 Mar 2012 15:21:49 +0000 (11:21 -0400)]
Stamping upgrade script for ACQ/Vandelay integration branch
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Mon, 19 Mar 2012 15:15:24 +0000 (11:15 -0400)]
Vandelay-based record matching and import for Acquisitions
From the Lauchpad description:
In its current form, Acquisitions record importing is inflexible and
unforgiving. The user is given practically no control over how inbound
records match against existing records nor how to deal with record
collisions. This proposal attempts to resolve this problem by leveraging
Vandelay for matching, merging, overlaying, and importing acquisitions
records.
Suggested work flow:
1. Any time an ACQ record should be loaded into the catalog or simply
linked to an existing catalog record, the user is presented with an
additional set of Vandelay upload options to control the matching and
import behavior. This would include the vendor file upload UI, PO
activation, and PO "Load Bibs and Items". The Vandelay options would
include the full set of Match Sets, Merge Profiles, import options, etc.
the user normally has.
2. Once options are selected and, when applicable, the MARC file is uploaded,
the acquisitions records are added to a new type of ACQ Vandelay queue and
processed like any other Vandelay records.
3. Vandelay will be taught to recognize ACQ records and update the lineitems
to reflect any imported/linked catalog records.
4. Any records that fail to import will be available for manual inspection
within the Vandelay interface an can be re-imported from there.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Thu, 15 Mar 2012 17:54:02 +0000 (13:54 -0400)]
AutoGrid line number CSS application cleanup
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Wed, 14 Mar 2012 06:52:49 +0000 (02:52 -0400)]
add Line# column to autogrid
hidden by default, but we need to make it show up in autogrid's column picker
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Wed, 14 Mar 2012 04:03:07 +0000 (00:03 -0400)]
make ordinal column work in Holdings Maintenance
brute force kludge
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Mon, 12 Mar 2012 20:06:51 +0000 (16:06 -0400)]
adds a Line# column to all xul lists
displays the ordinal position of the row
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Mon, 12 Mar 2012 19:39:20 +0000 (15:39 -0400)]
row_node vs my_node in util.list
Both of these should be holding the same xul treeitems, and I don't recall
wanting different names here, so I'm renaming both to treeitem_node.
Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Fri, 16 Mar 2012 17:38:13 +0000 (13:38 -0400)]
pcrud fleshing bug fixes
1. Avoid perm checks on org tree root lookup.
2. Test for child objects to flesh into has_a / might_fields differently
to avoid segfault when kids array is empty
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lebbeous Fogle-Weekley [Tue, 13 Mar 2012 21:40:28 +0000 (17:40 -0400)]
Fix a bug spotted by Jason Stephenson and Thomas Berezansky
I was leaving local variables called 'cache' high and dry in many
functions calling the initSessionCache() function that was introduced to
reduce code repetition.
This seems to fix that
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Mike Rylander [Wed, 14 Mar 2012 17:26:17 +0000 (13:26 -0400)]
Adjust controller-requiring logic for pcrud perm-verify mode
In cstore we always require the controller. However, in pcrud, we need to be
able to skip the controller requirement when we're verifying permissions. This
allows that.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Lebbeous Fogle-Weekley [Tue, 25 Oct 2011 21:01:04 +0000 (17:01 -0400)]
pcrud fleshing
This allows fleshing in pcrud queries if
a) the objects you would flesh have a pcrud controller in the IDL,
b) you have permissions for all the objects you would flesh just as
you would have to have them if you asked for them directly.
This is harder to read than it might be because of efforts to avoid
redundant perm checks for every fleshed object of the same class, and
efforts to keep results streaming out quickly.
Tests pretty well for me, but more rigor appreciated.
I received lots of help in making this happen from Mike Rylander and
Bill Erickson.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Ben Shum [Sat, 17 Mar 2012 02:55:07 +0000 (22:55 -0400)]
Tpac - add additional subfields for title in search results
Originally, titles in Tpac only showed based on tag 245 subfield a.
This sometimes led to difficulty identifying specific records from
each other if it was part of a set or had additional title information
in other subfields.
Modified default title function to include the following:
subfield b = remainder of title
subfield n = number of part/section of a work
subfield p = name of part/section of a work
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Fri, 16 Mar 2012 16:37:53 +0000 (12:37 -0400)]
Move "Save" button for notify prefs to bottom left
Quick fix for a problem spotted by Ben Shum.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Ben Shum <bshum@biblio.org>
Michael Peters [Fri, 16 Mar 2012 15:50:36 +0000 (11:50 -0400)]
Remove KCLS hold placement note from default TTPAC
TTPAC had a KCLS specific hold placement note when placing
a hold. This removes it, as it doesn't apply to other installations.
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Michael Peters [Thu, 15 Mar 2012 13:13:14 +0000 (09:13 -0400)]
TTPAC icon color tweaks
In TTPAC, there are a few tiny icons used that were still in a blue
hue. This adds a green hue to the icons, so they match the skin, plus
boasts a 50% size decrease for the *_sign.png images, for
a tiny bit of extra performance.
Signed-off-by: Michael Peters <mrpeters@library.in.gov>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Bill Erickson [Thu, 15 Mar 2012 19:32:38 +0000 (15:32 -0400)]
TPac: avoid mkurl param stripping for all defined url params
Instead of checking truthiness, checked definedness.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Sat, 10 Mar 2012 19:34:11 +0000 (14:34 -0500)]
Concerto: increase copies, assign statuses
Add more call numbers and create multiple copies per branch.
Include BR3 and the Bookmobile for diversity and to provide
some easier testing of search scopes at different depths.
Switch to functions for the purpose of populating call numbers and
copies, so we can make changes in one central place rather than
repeating ourselves like crazy.
For a better facsimile of the real-world, assign Reshelving / Checked
out / Lost statuses to a subset of the copies. (When / if we create
transactional data, we could throw this bogus data away.)
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Bill Erickson [Wed, 7 Mar 2012 15:39:44 +0000 (10:39 -0500)]
ACQ PO state defaults to "pending" from upload
When uploading a batch of records to create a PO, give the PO the
initial state of "pending" instead of "on-order". If the PO is meant to
be activated, its state will updated to "on-order" during the activation
phase.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca>
Bill Erickson [Thu, 15 Mar 2012 16:06:48 +0000 (12:06 -0400)]
stamped upgrade for hold-avail-email-notify validation
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Thomas Berezansky [Mon, 6 Feb 2012 22:19:14 +0000 (17:19 -0500)]
Enable notify checking for holds in A/T Validators
HoldIsAvailable and HoldIsCanceled get new checks, plus add HoldNotifyCheck
validator.
All three check for "check_$type_notify" parameters evaling to true, where
$type is email, sms, or phone. If true the hold's appropriate value is
checked and, if not suitable, the validator returns false.
For email the email_notify value must pass the is_true test.
For sms/phone the appropriate notify value must pass perl's truth test.
Upgrade script modifies default event definitions, with the exception of
the sms hold available event definition. That has no static id in the seed
values.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Thomas Berezansky [Wed, 14 Mar 2012 18:04:30 +0000 (14:04 -0400)]
Fix issues with org selectors leaking variables
Use of PROCESS leaks variables, switch them to INCLUDE instead.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Bill Erickson [Wed, 29 Feb 2012 23:12:41 +0000 (18:12 -0500)]
Acq+Vandelay : minor label change
Replace "View Upload Queue" with "View Import Queue", which is less
technically specific (in a good way).
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 29 Feb 2012 23:06:21 +0000 (18:06 -0500)]
Acq+Vandelay : consistent post-upload link names
For consistency with POs and selection lists, label the newly created
Vandelay queue link as "View Upload Queue" instead of showing the queue
name. While we're in there, let's i18n-ize those 3 labels.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 29 Feb 2012 23:03:08 +0000 (18:03 -0500)]
Acq+Vandelay: post-upload links open in embedded browser
This change causes the picklist, PO, and queue links which appear after
a vendor file upload to open their respective pages with the xul browser
wrapper. Without this, the existing page CSS is ignored and everything,
including href's, are grey and washed out.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 29 Feb 2012 22:34:14 +0000 (17:34 -0500)]
Acq+Vandelay : skip unneeded vandeley forms
If all lineitems in question are linked to catalog records, avoid
showing the unnecessary vandelay form. This was already true from the
PO activation action, but this patch adds the same check to the
create-po action from a selection list and PO 'load bibs and items'.
Minor label change for consistency in li_table (Queue -> queue).
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 29 Feb 2012 21:06:55 +0000 (16:06 -0500)]
Acq + Vandelay : exit early for 'load bibs and items' in picklist
The ACQ UI does not support loading bibs and items directly from the
picklist interface. If the user selects "load bibs and items" from the
picklist page they will be presented with the vandelay options, but the
actual upload/merge/etc will not do anything. This change prevents the
vandelay options from showing in this case.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 21 Feb 2012 15:56:38 +0000 (10:56 -0500)]
Acq+Vandelay : more aggressive streamed response throttling
With the addition of Vandelay processing, the server now wants to
respond with status information a lot more often when uploading /
process ACQ records. This patch applies the level of throttling to ACQ
processing as Vandelay uses natively, which starts verbose and quickly
cuts back on chatter as processing continues up to (currently) a
throttle window of 1 delivered response per 256 responses. Apart from
saving bandwith, this helps alleviate a known problem in the staff
client where long-running, dense streams of multipart responses
eventually stop bubbling up from the browser to the application.
Making the responses more sparse seems to help this a lot.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 14 Feb 2012 16:29:30 +0000 (11:29 -0500)]
Acq+Vandelay avoid premature asset creation
The presence of Vandelay parameters in API calls does not mean the user
necessarily wants to create PO assets (real copies/callnumbers). That's
controlled by a different, existing API parameter. This adds support
for processing bib data only in the presence of Vandelay parameters when
the user has not explicitly chosen to create assets.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Fri, 10 Feb 2012 15:42:24 +0000 (10:42 -0500)]
Acq+Vandelay form re-use new queue
In the Vandelay agent form, if a user creates a new destination queue
for the uploaded records, allow the user to re-use the new queue without
having to refresh the interface. This is primarily useful in the ACQ
upload UI, where re-using the pre-filled form is possible.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Fri, 10 Feb 2012 15:40:17 +0000 (10:40 -0500)]
AutoFieldWidget gets new useWriteStore option
If the useWriteStore attribute is set to true, the underlying data store
for dynamically create data will live in an ItemFileWriteStore instead
of a ReadStore, which allows the caller to modify the data after the
widget is rendered. It's useful for in-place additions of newly created
items.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Fri, 10 Feb 2012 15:37:52 +0000 (10:37 -0500)]
Acq upload UI re-use new picklist
In the ACQ file upload UI, if the user loads the records into a new
selection list, this change allows the user to continue using the new
list without having to refresh the page.
Without this change, re-using the new list would result in the system
trying to create a new list with the same name, which fails.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 8 Feb 2012 19:37:44 +0000 (14:37 -0500)]
ACQ+Vandelay open picklist/PO/queue in new tab
In the staff client, after a file upload, if a picklist, queue, or PO
are created, make the links open their respective pages in new tabs.
When not running inside the staff client, allow the links be regular
href's.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 1 Feb 2012 14:12:23 +0000 (09:12 -0500)]
ACQ+Vandelay detect existing queue with same name
Within the acq/vandelay agent, detect when a user has entered the name
of one of their existing queues. When detected, update the queue
selector to match the found queue (which updates the linked match set
and clears the queue selector input). Otherwise, users may not realize
they are adding items to an existing queue (with a pre-linked match
set).
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 31 Jan 2012 20:59:41 +0000 (15:59 -0500)]
ACQ+Vandelay limit upload queue selector to ACQ queues
When uploading bibs to vandelay queues from ACQ interfaces, only allow
records to be added to queues tagged as 'acq' queues (or to new 'acq'
queues).
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 31 Jan 2012 17:17:20 +0000 (12:17 -0500)]
ACQ+Vandelay disallow match_set change on selected queue
Consistent with Vandelay, if a queue is selected, show the linked
match_set and disable the match_set selector. Existing queues are
already linked to a match set, so allowing the user to select one has no
effect, which is confusing.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 31 Jan 2012 15:49:14 +0000 (10:49 -0500)]
ACQ+Vandelay API support for queue-and-match only from ACQ
Allow users to load ACQ records into Vandelay queues and apply a
match_set at queue creation time, without requiring the user to
import/merge the ACQ records.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 31 Jan 2012 15:01:01 +0000 (10:01 -0500)]
ACQ+Vandelay ACQ Records in vandelay queue selector
Adds a new type of record to select from the Vandelay queue selector.
Selecting "Acquisitions Records" will show queues with type 'acq'.
Selecting the existing "Bibliographic Records" selector will only show
queues with queue_type 'bib' (i.e. non-acq queues).
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Thu, 19 Jan 2012 19:02:32 +0000 (14:02 -0500)]
ACQ+Vandelay permission improvements
Be more vigilant about enforcing permissions for various ACQ and
Vandelay actions.
1. Using vandelay to create new bib records now requres the IMPORT_MARC
permission (same as open-ils.cat.biblio.record.xml.import). If the
permission fails, the queued record will fail import and be stamped with
a new "import.record.perm_failure" vandelay import error.
2. Added suport for testing additional permissions before a new record
is created via vandelay. This allows interfaces leveraging vandelay
(e.g. ACQ) to create a higher barrier to entry. Added an ACQ perm
IMPORT_ACQ_LINEITEM_BIB_RECORD_UPLOAD that prevents users from creating
new bib records directly from the ACQ vendor MARC file upload interface.
The secondary permission is not meant as a security enhancement, per se,
since the user is required to have the IMPORT_MARC permission to get this
far in the process. It's more of a feature-specific precautionary
permission to prevent unintended record creation within certain
permission groups.
3. Checking the CREATE_PURCHASE_ORDER permission during the ACQ vendor
file upload process. It's absence appears to have been an oversight.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Fri, 6 Jan 2012 21:31:22 +0000 (16:31 -0500)]
ACQ+Vandelay link to vandelay queue from lineitem list UI
In the general purpose lineitem interface (li_table), there is now a
link to the Vandelay queue which contains the queued bib record used to
load/merge/link the lineitem. Queue opens in a new staff client tab.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 6 Dec 2011 18:50:29 +0000 (13:50 -0500)]
ACQ+Vandelay import/merge user interface components
Acquisitions support for leveraging Vandelay import/merge controls
for loading ACQ records and/or linking ACQ records to existing
catalog records.
Dev includes:
* General purpose Vandelay input form and merge progress indicator (VLAgent)
* VLAgent is now shown in the following interfaces when a bib load/merge/link action is required:
* Vendor record upload interface
* PO creation
* PO "load bibs and items" action
* PO activation
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 30 Nov 2011 20:42:30 +0000 (15:42 -0500)]
ACQ+Vandelay API to support Vandelay-mediated imports
Adds support for merging, overlaying, importing, and linking (a no-op
merge) acquisitions lineitems to catalog records via Vandelay.
All non-imported lineitems will now be processed through Vandelay during
record upload and asset creation (load bibs and items), based on the
Vandelay import parameters provided by the caller. Each processed
lineitem will also be linked to its queued Vandelay record. In the case
of a failed import, such records can be subsequently imported manually
from the Vandelay interface using the manual record overlay options.
ACQ API calls affected now report on the progress of Vandelay record
import in addition to lineitem creation, copy creation, etc.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Wed, 30 Nov 2011 19:54:41 +0000 (14:54 -0500)]
ACQ+Vandelay schema and IDL changes w/ upgrade script
Adds a queued_record link from acq lineitems to vandelay queued record.
Ditto acq_lineitem_history. This will be used to link vandelay-mediated
acq lineitems to the vandelay record used for their import.
For ease of future changes, port the queue_type column from bib and
authority queues to ENUMs and drop the constraint, which is implicit in
the ENUM.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>