erickson [Thu, 19 Aug 2010 14:22:28 +0000 (14:22 +0000)]
automatically create lineitem assets (i.e. load bibs and items) during po activation when necessary since activation requires it; only do this during non-dry-run calls
dbs [Thu, 19 Aug 2010 13:57:07 +0000 (13:57 +0000)]
Give the authority list interface a place on the staff client Cataloging menu
The interface itself still needs usability love, but exposing basic edit/delete
functionality for authority records should give authoritarians some level of
happiness.
dbs [Thu, 19 Aug 2010 04:47:53 +0000 (04:47 +0000)]
Fix some defects in the first iteration of the authority edit/delete interface
* Ensure that the correct ID is assigned to the edit/delete request
* Prevent caching of results so that when a record is deleted, we don't continue to see it
dbs [Thu, 19 Aug 2010 01:24:03 +0000 (01:24 +0000)]
Add basic authority browse/edit/delete interface
http://localhost/eg/cat/authority/list should get you where you need to be
The paging is comical, the JS should probably be split out from the
declarative markup, the interface needs i18n, the UI needs to become
usable - but at least we have exposed some functionality for working
with authority records now.
Ideally this becomes a widget that we can just embed into other
interfaces to maintain context (which suggests using openils.cgi
to seed the initial values of the widget).
Note that the delete function works - it sets the deleted flag for
an are to "true" - but the underlying authorities browse interface
currently doesn't care about such niceties and always returns deleted
records along with undeleted records. So that might be the next stop.
dbs [Wed, 18 Aug 2010 16:00:41 +0000 (16:00 +0000)]
Give authority records an XML-valid XML formats list
Still need to trim the actual list of formats for authority records,
as marcxml-full and marcxml-uris get listed, and those do not work
or make sense for authority records.
dbs [Tue, 17 Aug 2010 22:06:12 +0000 (22:06 +0000)]
Move to CSS-based styling of validated vs. unvalidated fields
This sets the stage for differentiating between validated fields that
match authority records, and validated fields with a controlling $0
subfield that match an authority record. This also gives sites a bit
of an easier entry point to customize their MARC editor - say, for example,
to support accessibility requirements if red vs. black doesn't satisfy
the needs of those who are colour-blind.
erickson [Tue, 17 Aug 2010 16:28:54 +0000 (16:28 +0000)]
libbusiness-creditcard-perl is installed with DEBS. removing from squeeze-specific debs. make sure we install the EXTRA_DEBS_SQUEEZE as part of install_extra_debs_squeeze
phasefx [Mon, 16 Aug 2010 18:44:08 +0000 (18:44 +0000)]
ui.circ.suppress_checkin_popups disables dialog prompts during check-in, but in the case print slip dialogs, it should still print the slips if the Auto-Print Hold and Transit Slips checkbox is toggled on (the action is still occuring). However, only the dedicated Check-In interface had such a checkbox, and if you were to check-in from Item Status or Items Out with that org unit setting active, you'd have no option to print any slips associated with the check-in. This fixes all that
phasefx [Mon, 16 Aug 2010 13:53:09 +0000 (13:53 +0000)]
redundant refresh() can cause duplicate rows in list. Also, perm failure is an "expected" error here, so we can skip the skull and crossbones if folks without the permission cancel the Void All Billings action
phasefx [Mon, 16 Aug 2010 13:14:41 +0000 (13:14 +0000)]
Disable Replace Barcode button for new patrons, and disable the barcode field for existing patrons. If Replace Barcode is activated, then enable the barcode field, give it focus, and disable the Replace Barcode button.
scottmk [Sun, 15 Aug 2010 02:27:01 +0000 (02:27 +0000)]
Pedantic changes for const-correctness:
1. Add the const qualifier to most of the parameters of SELECT().
2. In almost all cases: replace calls to jsonObjectGetKey() with
calls to jsonObjectGetKeyConst(). A couple of calls remain that
would be more trouble to replace than they're likely to be worth.
senator [Fri, 13 Aug 2010 18:15:46 +0000 (18:15 +0000)]
merge seials-integration [sic] branch into trunk
Dan Wells has provided tremendous efforts in developing a user interface
and middle-layer logic for controlling serials. His work builds on the
serial schema hashed out earlier in the year, also with his heavy involvement,
and it provides ways to manage subscriptions, distribution, prediction,
receiving and more. Although this code is but a beginning, much of it
is functional today.
This commit brings Dan's work into trunk. Dan has provided some release
notes here: http://www.open-ils.org/dokuwiki/doku.php?id=acq:serials:release_notes:initial_trunk_merge
dbs [Fri, 13 Aug 2010 17:57:54 +0000 (17:57 +0000)]
Add Debian Squeeze prereq support, drop out-of-date items
* Drop Debian Etch ("Security updates have been discontinued as of the end of February 2010.")
* Drop PostgreSQL server packages pre-8.4 as they are no longer supported
TODO: To continue to support Ubuntu Hardy and Debian Lenny, we'll need to
start pulling in backports of postgresql-8.4.
phasefx [Fri, 13 Aug 2010 14:48:15 +0000 (14:48 +0000)]
go ahead and expose the Find in Page functionality, but hide it under the Debug label for now. Other than being incomplete (no Find Next, etc.), the main problem I see are our dynamic dojo interfaces where the text one might be tempted to search for won't actually be rendered yet on the screen (say in a scrolling list)
phasefx [Fri, 13 Aug 2010 08:18:42 +0000 (08:18 +0000)]
spawn external text editor for Patron Letter during Mark Item Missing Pieces workflow. Put configuration option under Admin -> Local System Administration -> External Text Editor Command
erickson [Thu, 12 Aug 2010 13:33:31 +0000 (13:33 +0000)]
created batch/streaming versions of hold placement and possibility check calls: open-ils.circ.holds.create[.override].batch and open-ils.circ.title_hold.is_possible.batch. Arguments are the same as non-batch, just delivered as an array; responses are delivered in order inbound params
dbs [Thu, 12 Aug 2010 07:42:20 +0000 (07:42 +0000)]
Remove broken old JavaScript in Google Book preview code
I /think/ this was supposed to change the title of the "Preview" link to
"Read this online" or the like in the case that the full text is available,
but it was relying on a function that didn't exist (setText) and trying
to reference an ID that didn't exists. So it broke in those rare cases
where Google Books did provide the full text.
scottmk [Wed, 11 Aug 2010 20:59:25 +0000 (20:59 +0000)]
Plug some memory leaks.
In many places we were creating dbi_results without freeing them;
pretty much everything involving transactions, savepoints,
inserts, updates, and deletes.
erickson [Wed, 11 Aug 2010 20:42:07 +0000 (20:42 +0000)]
Gave the base login code the ability to find username/password from a
cookie. for security reasons, we don't put login data into cookies, but if the
login info is available to us in that format already (say, via external means), we'll
use it. This can be useful for persistent logins (e.g. self-check) or
automatic logins (pushing cookie data out to workstations)
Minor cleanup of the login code to make it more re-use friendly.
Added self-check support for verifying the staff login before each patron
login.
phasefx [Wed, 11 Aug 2010 06:33:37 +0000 (06:33 +0000)]
change Check Barcodes? checkbox in Volume/Item creator to Use Checkdigit. In addition to checking the barcodes, it also dictates whether the Auto-Generate Barcodes function will use checkdigits or not
phasefx [Wed, 11 Aug 2010 06:33:34 +0000 (06:33 +0000)]
tweak auto-barcode method to support barcodes of arbitrary length. trims last digit from seed barcode if 9 or 14 digits. works with alphanumeric barcodes like b1, test1, demo1 with no checkdigits (so it'll generate demo2, demo3, etc.)
gmc [Tue, 10 Aug 2010 21:10:53 +0000 (21:10 +0000)]
bug 592777: allow authoritative version of open-ils.circ.retrieve
Part of a fix to avoid race condition that can occur
when patron renews an item in the OPAC in a database
that uses pgpool and replication, which sometimes
results in an erroneous 'action_circulation_not_found' error.
erickson [Tue, 10 Aug 2010 14:45:21 +0000 (14:45 +0000)]
similar to findbib, replace dojox.data.dom.textContent (which fails for unknown reasons) with node.textContent for bibtemplate rendering in related lineitems page
miker [Mon, 9 Aug 2010 20:54:35 +0000 (20:54 +0000)]
In order to speed up the API call where we ask for the number of visible (or total, in the staff client), available and "unshadow" (aka total) copies, as well as record transcendance visiblity, we create here 10 stored procedures. Eight of them implement the record/metarecord, staff/opac, OU/lasso varients, and two more are wrappers simplifying the calling API.
dbs [Mon, 9 Aug 2010 20:33:26 +0000 (20:33 +0000)]
Teach the staff client volume copy creator to respect OU call number preferences
To teach the "Add volumes" dialog in the staff client how to show the correct
set of call numbers based on the workstation OU's default classification
scheme, this commit:
* Adds a column "field" to the asset.call_number_class table that specifies
the list of tag/subfield combinations to search for a candidate call number
for a given classification scheme
* Adds a new OU setting, 'cat.default_classification_scheme', that points
to the asset.call_number_class ID
* Extends the open-ils.cat.biblio.record.marc_cn.retrieve method to support
a second argument, identifying the classification scheme for the call
number extraction
* Fixes the IDL for asset.call_number_class to include the ID as an explicit
field
* Makes the "Add volumes" dialog look up the 'cat.default_classification_scheme'
setting for the workstation OU and apply that to the call to the
open-ils.cat.biblio.record.marc_cn.retrieve method
TODO:
* Provide a means of switching the classification scheme for the current volume,
repopulating the call number selector widget
* Save the chosen scheme as part of the acn object
dbs [Mon, 9 Aug 2010 13:13:36 +0000 (13:13 +0000)]
Patch from Ben Ostrowsky <ben@esilibrary.com> to specify "staff account" in proxied pages
This change will make it a bit more clear that we're not looking for a
patron barcode/PIN in the Selfcheck Login screen (and make the wording
consistent across similar login pages).
dbs [Sat, 7 Aug 2010 03:53:01 +0000 (03:53 +0000)]
Basic call-number sorting by classification scheme
Until now, call numbers like 'K 22 .U748 v.18' and 'K 215 .E53 W37 1997' would
sort incorrectly in Evergreen, making call number browsing painful.
The following patch adds the following to Evergreen to support better call
number sorting:
* asset.call_number gains two new columns:
- label_class - identifies the classification scheme for the given callnumber
- label_sortkey - holds the normalized callnumber suitable for sorting
* a new table, asset.call_number_class, which holds the names of each
classification scheme and the name of the assorted normalization function
* implementations of three normalization functions:
* a generic normalizer
* a Dewey Decimal Classification normalizer (courtesy the Koha project)
* an LC classification normalizer (courtesy Bill Dueber's Library::CallNumber::LC)
* a routine in Makefile.install to checkout and install Library::CallNumber::LC
* call number sorting routines were modified to use label_sortkey instead of
label, where I could find them
* corresponding changes to fm_IDL.xml for the new columns + table
A suggested means for applying this to an existing library would be to issue
update statements against asset.call_number setting label_class to the value
in asset.call_number_class that corresponds to owning_lib's scheme, for example:
UPDATE asset.call_number SET label_class = 3 WHERE owning_lib IN (4,5);
We need to teach the staff client holdings maintenance interfaces how to set
the classification scheme for a given call number, and we should also create
an org_unit setting that can set the preferred default classification scheme
that the staff client should inherit. Or maybe we could just make that a
sticky value and have a BEFORE trigger check the incoming value of label_class
and only set it to the org_unit default value if it is NULL (to support bulk
loads).
dbs [Sat, 7 Aug 2010 03:26:11 +0000 (03:26 +0000)]
Build 210.serial before 200.acq, because 200.acq references serials
Confusing due to the order implied by the filename numbers, but priority
has to be on getting trunk to build cleanly again; we can sort out a
better way later.
gmc [Fri, 6 Aug 2010 20:39:35 +0000 (20:39 +0000)]
bug 532217: work around caching issue resulting doubled title display
Quick hack shamelessly borrowed from Dan Scott to fix problem
of title being displayed twice on bib details page when back
button is used in OPAC or staff client.
This is a temporary fix in lieu of rewriting the bib details
display to use BibTemplate exclusively.
phasefx [Fri, 6 Aug 2010 19:45:49 +0000 (19:45 +0000)]
menu.js and patron/display.js were passing xulG functions to browser.js differently. This makes browser.js a little smarter (so that it doesn't trampled xulG-destined members sent via passthru_content_params) and sidesteps some security blockers with inspecting xulG. xulG is a namespace/object for shoving foreign data and/or functions into a given window