Jason Etheridge [Mon, 24 Jun 2013 19:36:10 +0000 (15:36 -0400)]
pgTAP examples
These specific ones do not assume stock test data such as the concerto bibs, and
I think such tests should go elsewhere. You need to install pgTAP. I did the
following for my test environment:
git clone git://github.com/theory/pgtap.git
cd pgtap
make
make installcheck
sudo make install
Then in my Evergreen database with psql, I did:
CREATE EXTENSION pgtap;
I also installed a CPAN module to get pg_prove:
sudo cpan TAP::Parser::SourceHandler::pgTAP
You can use psql to run a given test like so:
opensrf@dev141:~/git/Evergreen/Open-ILS/src/sql/Pg/t (pgtap)$ psql -d evergreen -f 0799.state_field_required_toggle.s
1..4
ok 1 - actor.usr_address.state does not have the NOT NULL constraint
ok 2 - ui.patron.edit.au.state.require exists
ok 3 - ui.patron.edit.au.state.show exists
ok 4 - ui.patron.edit.au.state.suggest exists
Or you can use pg_prove on all or some of them:
opensrf@dev141:~/git/Evergreen/Open-ILS/src/sql/Pg/t (pgtap)$ pg_prove -d evergreen *.s
0799.state_field_required_toggle.s .. ok
dewey.s ............................. 1/6
# Failed (TODO) test 6: "testing prefix plus decimal"
# 'YR_DVD_800_100000000000000'
# <
# 'YR_000000000000000_DVD_900'
dewey.s ............................. ok
schema.s ............................ ok
versions.s .......................... ok
All tests successful.
Files=4, Tests=39, 0 wallclock secs ( 0.05 usr 0.03 sys + 0.13 cusr 0.07 csys = 0.28 CPU)
Result: PASS
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Etheridge [Thu, 13 Jun 2013 19:45:11 +0000 (15:45 -0400)]
Test for an MFHD warning in 14-OpenILS-Utils.t
Specifically "Cannot compress without pattern data, returning original holdings"
I also added Test::Warn to Makefile.install for Debian and Fedora.
--
Bill moved the @comp_holdings variable declaration outside of the
warning_like block to avoid a new warning:
Name "main::comp_holdings" used only once: possible typo at
t/14-OpenILS-Utils.t line 42.
---
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 [Thu, 13 Jun 2013 18:40:45 +0000 (14:40 -0400)]
Eliminate a warning in Z3950.pm
Noticed in 06-OpenILS-Application-Search.t:
Odd number of elements in anonymous hash at /usr/local/share/perl/5.10.1/OpenILS/Application/Search/Z3950.pm line 532.
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 [Mon, 8 Jul 2013 15:13:23 +0000 (11:13 -0400)]
LP1195150 batch update funds alters debits
When a fund is updated via the ACQ batch update bar (along the top of
the PO interface), ensure that any existing fund debits are updated to
use the new fund. If the selected fund exceeds the balance block
percent, the operation will fail and the user will be notified.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Bill Erickson [Mon, 22 Jul 2013 19:21:15 +0000 (15:21 -0400)]
LP1203753 AuthProxy barcode login support
When users attempt a barcode-based login with AuthProxy, the system will
determine the username of the user (based on the barcode) and use the
username instead of the barcode for all proxied login attempts. This
allows users to use their barcodes (or barcode-looking usernames) to
log in via remote authenticators.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Link checker: verification review UI needs more columns about redirects
Link checker results can contain information about redirects when URLs
in a bib record happen to point to systems that return 3XX repsonses.
All this is nicely captured in the uvuv and uvu tables, but the
user interface only offers the uvu.redirect_from column, when
uvuv.redirect_to and uvu.id are also necessary to understanding redirect
relationships among the results.
Reported by Erica Rohlfs and Bill Erickson.
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Mon, 8 Jul 2013 18:06:48 +0000 (14:06 -0400)]
Support linking to library info from copy display
If the "Library information URL" library setting has a value, then the
copy display section of the TPAC and KPAC will turn the library name
for that branch into a link to the given URL. This supports the patron
goal of quickly finding branch information such as hours of operation,
directions, and contact information.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Dan Scott <dan@coffeecode.net>
Mike Rylander [Thu, 18 Jul 2013 18:48:36 +0000 (14:48 -0400)]
Point feeds to TPAC instead of slimpac or JSPAC
Where possible, point to TPAC endpoints for HMTL output of supercat feeds.
Also, just use the bookbag (container) name for bookbag feeds, instead of
wrapping them in formatting and context. The description element already
provides that.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Mike Rylander [Tue, 16 Jul 2013 20:58:57 +0000 (16:58 -0400)]
Optimize away always-true hold count clause
When rendering results in the tpac we request hold counts for each record.
Most of the time (that is, whenever org unit hiding is /not/ in use) we
filter, essentially, on "where pickup_lib is in the org tree". This is
both useless and slow, so this commit will recognize that and optimize the
test away.
[LFW: fixed typo]
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Dan Scott [Mon, 24 Jun 2013 14:12:50 +0000 (10:12 -0400)]
Avoid Z39.50 search warning for uninit var
The debug log blindly attempts to access list members that might not
exist (if, for example, an event code was returned from the attempt to
run do_service_search()), thus generating spurious log warnings.
Instead, move the debug line to only generate output when we have
created the list item in question.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Fredrick Parks [Wed, 10 Jul 2013 18:12:17 +0000 (11:12 -0700)]
LP 1103706 Hold ratios in circ policies cause errors when trying to renew items
Changed the function action.copy_related_hold_stats to accept a bigint as the perameter instead of an integer.
Copy_related_hold_stats is only called by the function action.item_user_circ_test which trys to pass a bigint.
Signed-off-by: Fredrick Parks <fparks@catalystitservices.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
In Evergreen we have authority fields defined in the database that
relate to control sets. These are used somewhere today (I'm fuzzy on
that at the moment; some places once had and may still have hardcoded
labels) but they also will be used by the bib and auth browser
that's not yet merged to master (see LP #1177810).
The 4XX tags among the set I'm talking about (in
authority.control_set_authority_fields) are mislabled, saying See Also
where they ought to say See From, e.g.
http://www.loc.gov/marc/authority/ad400.html
Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Michael Peters [Wed, 22 Aug 2012 12:25:25 +0000 (08:25 -0400)]
Initial selfcheck styling enhancements
* Convert action links to buttons for increased clarity
* Convert dashed fieldsets to gradient backed bubbles for depth
* Color line-item table headers to distinguish from actual line-items
* Color logo background for increased contrast
* Larger input box
* Background on prompts to distinguish from logo background
Signed-off-by: Michael Peters <mrpeters@library.in.gov> Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Ben Shum <bshum@biblio.org>
Conflicts:
Open-ILS/src/templates/circ/selfcheck/main.tt2
Open-ILS/src/templates/circ/selfcheck/summary.tt2
Documentation for default values in Load Order Record form
Documentation for new default values and sticky fields in the acq Load
MARC Order Records form. I also moved up/modified 2.1 docs for this
interface and integrated them with the 2.2 acq/Vandelay integration docs.
Dan Wells [Wed, 10 Oct 2012 13:22:33 +0000 (09:22 -0400)]
Capture and log AuthProxy logins with no account
The current AuthProxy.pm code assumes that if the external auth
passes, the Evergreen account will be there. This protects
against cases where a user is in the external auth system but
has no matching account in Evergreen.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Wells [Wed, 10 Oct 2012 13:22:33 +0000 (09:22 -0400)]
Capture and log AuthProxy logins with no account
The current AuthProxy.pm code assumes that if the external auth
passes, the Evergreen account will be there. This protects
against cases where a user is in the external auth system but
has no matching account in Evergreen.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Wells [Thu, 27 Sep 2012 21:35:03 +0000 (17:35 -0400)]
Make AuthProxy LDAP bind code more robust
The existing version of LDAP_Auth.pm assumed that the user's
bind DN could be derived from the base DN, the ID attribute, and
the user's ID. This is frequently the case, but not always,
particularly in Active Directory setups using sAMAccountName. This
commit instead uses the initial LDAP lookup as the authority for
determining the user's DN.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Fixes error with generate_fines for overdues returned after closed date
If an overdue is returned after a closed date, the generate_fines code
will not generate fines for those items because the section of code that
checks for closed dates returns from the function if a closed date is
encountered.
For example, if an item is due on June 29th, but is not returned until
after July 1st (Canada Day), then when fines are generated for the item,
generate fines creates a fine for the 30th of June, but when it
gets to the 1st of July it encouters a closed date and executes a
'return' statement which exits the generate_fines code causing the
fine from June 30th to be rolled back as well as preventing
further fines from being generated.
This fix replaces the 'return' statements inside the 'for' loop that is
nested within the eval with 'next' statements.
Signed-off-by: Liam Whalen <whalen.ld@gmail.com> Signed-off-by: Dan Scott <dscott@laurentian.ca>
Pasi Kallinen [Thu, 27 Jun 2013 08:23:11 +0000 (11:23 +0300)]
Add missing character set definitions to data URIs.
Also use encodeURIComponent() instead of escape() so the UTF-8 characters stay intact.
Also, fix the print macro help popup window size.
Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Mike Rylander [Mon, 19 Mar 2012 22:35:52 +0000 (18:35 -0400)]
Teach Fieldmapper (Perl) to record and expose field datatype
We record most everything from the IDL, but until now we skipped datatype
because it's generally not useful in perl. But, there might be uses. So
now we record it, and expose it through the class and instance FieldDatatype
method. Also added is a more general FieldInfo method, which returns a hash
containing field attributes, including but not limited to:
* virtual [1|0]
* required [1|0]
* position [array position for internal implementation]
* datatype [bool|float|id|int|interval|link|money|number|org_unit|text|timestamp]
* validate [regexp]
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Steven Chan [Sat, 15 Jun 2013 17:06:43 +0000 (13:06 -0400)]
Fix LP1177916, Cannot activate PO which contains only direct charges
We add a safety check in the function
Application/Acq/Order.pm/create_lineitem_list_assets(), which is called
by create_po_assets(), which is the service call initiated by the user
trying to activate a PO.
The safety check prevents the function from processing if there are no
line items specified in the arguments.
P.S. It would be better to stop the sequence of events earlier in the
client, but that will need more coding, which can been done in another
fix.
Signed-off-by: Steven Chan <schan@sitka.bclibraries.ca> Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Dan Scott [Thu, 11 Jul 2013 21:53:21 +0000 (17:53 -0400)]
Document the self check interface
This comes up from time to time on the mailing lists and on the feedback
email, and pulling together all of the pieces takes some time and
digging (thanks Bill Erickson and Ben Shum!), so let's document it once
and for all...
This commit adds to Pasi's improvements of the staff client index (or
portal) page by adding a tooltip message to all of the "open in a new
tab" icons, using the already translatable alt text of the icon. Also,
this commit restores the original padding on the rows, which was changed
when border-collapse was previously added.
Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Pasi Kallinen [Tue, 2 Jul 2013 07:57:19 +0000 (10:57 +0300)]
Make staff client index more user friendly
by letting the user click on a bigger area instead of trying to hit
the exact location of the text, and making the entry hilighted.
Also simplify the html a bit.
Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Bill Erickson [Tue, 27 Nov 2012 20:26:48 +0000 (15:26 -0500)]
Support PO activation w/o loading items
Allow for the activation of purchase orders without requiring that bibs
and items be loaded. (Currently, if bibs and items are not manually
loaded, they are loaded during PO activation).
Adds a new link next to the existing PO Activate link for "Activate
Withoug Loading Items". Apart from the fact that there are no
underlying bibs/copies, such a PO behaves the same as any other PO.
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Conflicts:
Open-ILS/src/templates/acq/po/view.tt2
Open-ILS/web/js/ui/default/acq/po/view_po.js
Bill Erickson [Tue, 27 Nov 2012 15:42:58 +0000 (10:42 -0500)]
SIP hold cancellation support
Implement a subset of SIP message pair 15/16 for holds cancellation.
1. New oils_sip.xml configuration option "msg64_hold_datatype". This
is similar to msg64_summary_datatype, but affacts holds instead of
circulations. When set to 'barcode', holds information will be
delivered as a set of copy barcodes instead of title strings for patron
info requests. With barcodes, SIP clients can both find the title
strings for display (via item info requests) and make subseqent
hold-related action requests, like holds cancellation.
--
Copies are not an ideal identifier for holds, but SIP has a limited
vocabulary. With copies we can (99% of the time) work to and from hold
requests to find a reasonable data set to work on. If a patron has
multiple holds for the same item and wants to cancel a specific one of
those holds, the user should use the catalog instead of SIP.
--
2. When receiving a message 15 of with a cancellation action, find the
newest open hold that matches the provided copy barcode and cancel the
hold.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Thu, 11 Jul 2013 14:41:32 +0000 (10:41 -0400)]
Maintenance message: avoid Unicode corruption, support KPAC
By shifting from an Apache config environment variable to a config.tt2
variable, we gain the advantage of more robust Unicode support as well
as the ability to turn maintenance messages on or off without requiring
a reload of Apache.
However, we do lose the convenience of per-vhost maintenance messages;
sites requiring this functionality can use the ctx.hostname variable to
provide conditional per-host messages.
This also adds support for displaying the maintenance message in the
KPAC.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
Steven Chan [Thu, 23 May 2013 22:22:15 +0000 (15:22 -0700)]
Patron Editor can enter erroneous values for Claims-returned count
In the staff client, Patrons interface, Edit screen, when
mouse-scrolling up and down the Edit form, it is possible to
inadvertently change the value in Claims-returned Count or Claims Never
Checked Out Count field. It will happen if the mouse hovers over either
data field while using the mouse wheel.
Both data fields use the dijit.form.NumberSpinner widget to provide a
'spin' behaviour. The fix involves cancelling the mouse scroll event as
it propagates to input fields in table rows that are using the
dijit.form.NumberSpinner widget, because the mouse scroll would be
applied too early by the widget, before the user has intentionally
focussed on one of the input fields. Now, mouse scrolling has no effect
on the two input fields; it will only have an effect in scrolling the
page up or down.
Signed-off-by: Steven Chan <schan@sitka.bclibraries.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
James Fournie [Sat, 23 Feb 2013 01:28:29 +0000 (17:28 -0800)]
Server maintenance message via Apache config
This adds a custom maintenance message which you can issue in your
Apache config by setting the environment variable "MAINTENANCE_MESSAGE"
and restarting/reloading Apache. This message appears in the TPAC for
both staff and patrons in the form of a red banner across the top of the
screen.
Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca> Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
I totally screwed up this commit by committing old versions of files
instead of the deltas against current master. Reverting, then will apply
the correct commit.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
James Fournie [Thu, 11 Jul 2013 00:41:51 +0000 (20:41 -0400)]
Server maintenance message via Apache config
This adds a custom maintenance message which you can issue in your
Apache config by setting the environment variable "MAINTENANCE_MESSAGE"
and restarting/reloading Apache. This message appears in the TPAC for
both staff and patrons in the form of a red banner across the top of the
screen.
Signed-off-by: James Fournie <jfournie@sitka.bclibraries.ca> Signed-off-by: Dan Scott <dscott@laurentian.ca>
Mark Cooper [Mon, 18 Mar 2013 22:45:14 +0000 (15:45 -0700)]
LP1156905 lineitem worksheet sorts copies by org
Lineitem copies (details) were set to be sorted by branch ('owning_lib')
by default. However this was not happening because the lineitem_details
'owning_lib' referenced a fieldmapper object (not an id or name).
This submission sets the owning_lib to the shortname so that sorting can
occur in the intended way.
Signed-off-by: Mark Cooper <markchristophercooper@gmail.com> Signed-off-by: Bill Erickson <berick@esilibrary.com>
Dan Scott [Tue, 9 Jul 2013 20:53:29 +0000 (16:53 -0400)]
Correct Linux staff client build instructions
There were a few things going on here; 2.3 introduced linux32-client and
linux64-client targets, so the old linux-client Make target no longer
worked.
Also, Wine isn't generally how many of us would recommend running staff
clients when there's a perfectly good native client likely to better
support printing, etc.
Also, rather than pointing at evergreen-ils.org for downloads, which
won't work in many situations (and which prevents the use of the
auto-update mechanism), use the "updates" target to point at the locally
downloadable clients. Eventually we'll properly document the use of
auto-updates, but for now this is hopefully a step in the right
direction.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
Mike Rylander [Tue, 25 Jun 2013 14:03:36 +0000 (10:03 -0400)]
Preserve record order of subfields for authority heading extraction
When extracting headings from authority records we currently read the
subfields of a tag in configuration order. We should, instead, read
them in record order, to preserve the desired sorting properties that
the cataloger has encoded in the record.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Yamil Suarez <yamil@yamil.com>
Michael Peters [Thu, 5 Apr 2012 14:23:32 +0000 (10:23 -0400)]
LP#973666: Print Purchase Order does not print PO Name
Printing a PO from the menu option "Actions-->Print Purchase Order"
generates a document that displays the PO #, but not the PO Name. It
was suggested that it would be helpful if the print document
displayed the PO Name instead of, or in addition to, the PO #. This
commit adds the PO Name in the default template for new installs,
but does not affect upgrades.
Signed-off-by: Michael Peters <mrpeters@library.in.gov> Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Dan Wells <dbw2@calvin.edu>
In the quest to not let staff put bad data into the system (losing battle,
but hey, gotta keep trying, right?), add a barcode regex specifically for
patron registration.
This intentionally does *not* check the opac "is this a barcode?" value.
Use cases for not checking that value include, but are not limited to:
Special "barcodes" for staff accounts. Specific OUs may have a barcode
regex of ".*" to ensure they can use anything for these accounts.
Different prefixes per library - To prevent libraries from using another
library's prefix, but still detect all of them as barcodes.
Special case "this is a barcode" checks for the opac, like legacy barcodes
that should no longer be assigned to new patrons, or on edits.
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org> Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Ben Shum <bshum@biblio.org>
Jason Etheridge [Tue, 26 Jun 2012 15:39:48 +0000 (11:39 -0400)]
fix clear hold shelf with 25 or more holds
When there are 25 or more shelf expired holds to be processed, the API call
returns an array of objects instead of an object, which the staff client wasn't
prepared to accommodate. This fixes that.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Thu, 27 Jun 2013 13:46:55 +0000 (09:46 -0400)]
Avoid 0788 duplication from 2.3 failure
Recent installs of 2.3, or upgrades during 2.3, will have introduced
0788 already into the upgrade process -- meaning that the 2.3-2.4.0
script will rollback the entire transaction if it hits the duplicated
0788. Instead, move 0788 into its own transaction to increase the
chances that the 2.3-2.4.0 script will work for sites that stay up to
date or that recently installed Evergreen.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Mon, 24 Jun 2013 19:48:07 +0000 (15:48 -0400)]
Create upgrade script for ingest normalization changes
This provides the upgrade script for the ingest changes outlined
in LP 1187433. In addition, the version-upgrade script for 2.3 to
2.4.0 has been modified to move the final reingest step until after
this incremental change has been applied.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Dan Scott <dscott@laurentian.ca>