erickson [Thu, 21 Jan 2010 17:58:44 +0000 (17:58 +0000)]
Patch from Joe Atzberger that does several things:
1. Iniatial API calls for managing EDI documents at the server. EDI file fetching script to come soon.
2. Creates OpenILS::Utils::Cronscript and Lockfile modules to share and abstract the common setup tasks for Evergreen cron jobs
3. Creates a OpenILS::Utils::RemoteAccount module for managing access to remote services via ftp/scp. This is mostly taken from the SendFile reactor
4. Updates sendfile to use remoteaccount
miker [Thu, 21 Jan 2010 16:43:04 +0000 (16:43 +0000)]
Patch from Dan Wells to address a thinko in the use of the queue ownership field for a Vandelay queue:
I have been doing a lot of experimenting with Vandelay the last few weeks and have traced many of my failures to one distinct bug. I finally noticed yesterday why Item Import worked for the 'admin' user but for nobody else. It turns out there is a bug in one of the database functions where it treats the queue 'owner' column as an org_unit ID when in fact it is a usr id. Of course since 'admin' is ID 1 out of the box and there is an org_unit 1 as well, this bug is transparent to admin and easy to miss.
Well, I started by making a few changes to the function to address this, but soon realized that what we really wanted to do was base the import on the Import Def chosen by the user when the records are loaded, and it would be ideal if the Import Def was somehow associated with the queue at the time of import. I started poking around in the schema, and lo and behold, the vandelay.bib_queue table already had an 'item_attr_def' linking column for this very purpose which was going unused!
So, the attached patch finally puts this column to use by doing the following:
1) Edits the create_bib_queue() sub in Vandelay.pm to accept the item import attribute definition ID as an argument and save it appropriately.
2) Edits the vandelay.js interface file to accept and send the import definition ID to create_bib_queue() when creating a queue.
3) Edits fm_IDL.xml to add the 'item_attr_def' field (and fix a small labeling error).
4) Edits 012.schema.vandelay.sql to replace the buggy function that started all this with a now simpler, working version. The change is actually smaller than it looks due removing one nested loop and the resulting indentation change.
=============================================
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
Signed-off-by: Daniel B. Wells
=============================================
dbs [Thu, 21 Jan 2010 02:18:40 +0000 (02:18 +0000)]
Add the schema upgrade corresponding to r15351 in-db ingest encoding fixes
Ensure MARC::File::XML treats the content as UTF-8; then follow
recommended practice of explicitly decoding the UTF-8 string to a
bytes string before operating on it, then encoding it back to UTF8
when it's returned.
'Québec' now gets naco-normalized to 'quebec' as one would expect. YAY!
dbs [Wed, 20 Jan 2010 23:15:10 +0000 (23:15 +0000)]
Correct Unicode handling for in-db ingest
Ensure MARC::File::XML treats the content as UTF-8; then follow
recommended practice of explicitly decoding the UTF-8 string to a
bytes string before operating on it, then encoding it back to UTF8
when it's returned.
'Québec' now gets naco-normalized to 'quebec' as one would expect. YAY!
erickson [Wed, 20 Jan 2010 15:27:33 +0000 (15:27 +0000)]
update circ xact_finish value after all billing for the transactions have been assessed. In particular, after lost item handling. Thanks to Dan Wells for identifying the bug
dbs [Tue, 19 Jan 2010 03:14:06 +0000 (03:14 +0000)]
Give sites the ability to easily display due dates and times in the OPAC under "copy details"
We add two new variables to copy_details.js:
* showDueDate - this needs to be set to a non-false value to display the
due date in the OPAC
* showDueTime - this needs to be set to a non-false value to display the
due time in the OPAC, along with the due date. If showDueDate is false,
then the value of this variable is ignored.
erickson [Fri, 15 Jan 2010 21:06:00 +0000 (21:06 +0000)]
Patch from Dan Wells to make the results returned when using in-db circ look more like those of the legacy circ scripts. For more details plus DCO, see http://libmail.georgialibraries.org/pipermail/open-ils-dev/2010-January/005703.html
scottmk [Fri, 15 Jan 2010 16:10:49 +0000 (16:10 +0000)]
In acq.fund_transfer: make the dest_fund and dest_amount columns nullable.
That way they can accommodate deallocations, where we move money out of a
fund without moving it into another fund.
erickson [Fri, 15 Jan 2010 15:57:49 +0000 (15:57 +0000)]
Patch from Joe Atzberger, with some IDL additions, to add a new generic remote_account table for managing ftp/scp/etc logins and a subclass table specific to ACQ providers, initially for EDI retrieval and delivery.
dbs [Thu, 14 Jan 2010 04:54:48 +0000 (04:54 +0000)]
Move the decode_utf8() call for various feeds to entityize()
decode_utf8() is special in that it won't transform any string once
its 'utf8' flag has been set, so it is a safe subroutine to call
multiple times for a given string.
As it turns out, SRU (and in turn Z39.50) is suffering from a double-encoding
of the search terms, so we have to forcefully double-decode the terms with
the decode('utf8') variation that does not respect the 'utf8' string.
This will enable Z39.50 and SRU queries to actually return results for
queries like 'Montréal' and 'Québec'. Eventually we need to figure out
where in the SRU/CGI stack the strings are being incorrectly encoded in
the first place, but for now a much-improved Z39.50 server seems acceptable.
dbs [Thu, 14 Jan 2010 03:21:25 +0000 (03:21 +0000)]
Factor out the aou-fetching code into a useful subroutine, get_ou($org)
Then use get_ou to make the bookbag_feed and changes_feed marginally smarter,
so that you can now pass ?searchOrg=BR1 or ?searchOrg=4 to limit the holdings
display scope.
Useful stuff if you're plodding along with bookbags-as-reserves in a
consortial environment.
phasefx [Wed, 13 Jan 2010 20:25:51 +0000 (20:25 +0000)]
This adds the ability to specify courier codes in transit and hold/transit slip templates via a %courier_code% macro and a lib.courier_code org unit setting.
So if an item at library BR1 is to be routed to library BR2, the org unit setting for BR2 is retrieved and that value is used for %courier_code%.
POSSIBLE TODO: Add simple interface-scoped caching for the courier code lookup (and perhaps for the mailing address lookup as well)
dbs [Mon, 11 Jan 2010 19:17:05 +0000 (19:17 +0000)]
Get consistent about "title : subtitle" in mods_slim
By teaching get_field_value() to prepend " : " to our incoming value
if the element name is "subTitle", we can ensure that records with a
title / subtitle structure have a consistent structure. Academics love
subtitles, so this was pretty glaring at Conifer.
This has a bonus effect of not appending colons after leading articles
(nonSort elements), which was annoying for "Der schutz" and the like.
Academics have a number of non-English / non-French / non-Spanish titles;
the MODS transform honours the non-filing indicator so this is a more
consistent method of generating the appropriate result.
scottmk [Mon, 11 Jan 2010 16:55:39 +0000 (16:55 +0000)]
Add a boolean "propagate" column to acq.fund, to denote whether
the fund should be propagated from one year to the next.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0132.schema.acq.fund-propagable.sql
M Open-ILS/examples/fm_IDL.xml
dbs [Mon, 11 Jan 2010 00:39:25 +0000 (00:39 +0000)]
Remove serial ingest references and services
The references and services for serial (MFHD) support are not
necessary in 1.6, as we are working directly with the MFHD as
maintained in serial.record_entry.marc; the services and
references being removed never could have been used in the
1.6.0.0 release and should have been removed prior to the 1.6.0.0
release when I removed the corresponding database structures.
Also updating the README to reflect the proper loading method for
serial records, dropping direct_ingest.pl invocation and noting the
limitation on the org_unit identification.
miker [Fri, 8 Jan 2010 21:13:56 +0000 (21:13 +0000)]
Patch from Lebbeous Fogle-Weekley adding non-menu entry points for critical reservation (booking) interfaces (side-step a new staff client, for now), patron interface integration, and I18n
miker [Fri, 8 Jan 2010 16:15:47 +0000 (16:15 +0000)]
Patch from Lebbeous Fogle-Weekley implementing pickup and return interfaces for booking reservations ... WE ARE SO CLOSE I CAN TASTE IT. Minor reworking of Circulate.pm changes.
phasefx [Thu, 7 Jan 2010 21:17:03 +0000 (21:17 +0000)]
Bucket related enhancements:
* Add to Record Bucket action for Item Status interface
* Authoritative methods in bucket interfaces immune to database replication lag
* Removed a CGI param for better caching of the quick Add to Record Bucket interface
* Added a cat.util.add_titles_to_bucket utility method (but forgot to put it into cat.util.EXPORT_OK, though harmless)
phasefx [Thu, 7 Jan 2010 16:14:25 +0000 (16:14 +0000)]
This fixes the checkbox selector in Vandelay's Inspect Queue interface, so you can, for example, check a specific record in the queue and do Actions ->
Import Selected without the progressmeter hanging with a dojo.byId() is null error. The formatter for the checkbox column in the table gets called
multiple times for a given row, and the first time it gets called it's using an id of null. Subsequent calls with a real id replace the HTML generated.
dbs [Tue, 5 Jan 2010 19:07:54 +0000 (19:07 +0000)]
Enable the SIP server to speak UTF8 or ASCII, defaulting to ASCII
Some SIP clients have implemented UTF8 support, and it is desirable to
avoid mangling non-ASCII characters when possible, so a new <encoding>
option in the SIPServer config file enables sites to specify an
alternate encoding (such as "utf8"). The example oils_sip.xml file
will continue to default to ASCII, and if no <encoding> option is
supplied in the config file, ASCII will be the default.
In addition, this patch improves the ASCII option by applying the
ASCII mangling to all text fields, as well as ensuring that the
incoming data is in Normalization Form D mode to make the mangling
work cleanly.
Other encodings such as iso-8859-1 can be specified, but to properly
handle other encodings a transliteration phase would have to be added
to the OpenILS::SIP::clean_text()...
scottmk [Mon, 4 Jan 2010 16:51:18 +0000 (16:51 +0000)]
Add a new column funding_source_credit to the acq.fund_transfer table.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0129.schema.fund-transfer-credit.sql
M Open-ILS/examples/fm_IDL.xml
phasefx [Wed, 30 Dec 2009 15:24:33 +0000 (15:24 +0000)]
some CSS and styling tweaks for some information under the navigation buttons in the patron display, and a cosmetic bug fix in the billing interface for patrons with no bills
phasefx [Tue, 29 Dec 2009 16:28:44 +0000 (16:28 +0000)]
Replace ui.circ_and_cat.notes.require_initials and ui.circ.standing_penalty.require_initials org unit settings with a single ui.staff.require_initials setting.
For those running trunk, re-run Open-ILS/src/sql/Pg/upgrade/0117.data.org-setting-notes-require-initials.sql
Also,
DELETE FROM actor.org_unit_setting WHERE name IN ( 'ui.circ_and_cat.notes.require_initials', 'ui.circ.standing_penalty.require_initials' );
DELETE FROM config.org_unit_setting_type WHERE name IN ( 'ui.circ_and_cat.notes.require_initials', 'ui.circ.standing_penalty.require_initials' );
erickson [Tue, 29 Dec 2009 16:06:55 +0000 (16:06 +0000)]
alternate version of user_of_interest, called open-ils.collections.users_of_interest.warning_penalty.retrieve, which searches for users that have the PATRON_EXCEEDS_COLLECTIONS_WARNING applied within a givin time frame instead of calculating the transaction totals. Adds a new max_age option to limit how far back we look for users
scottmk [Mon, 28 Dec 2009 21:47:36 +0000 (21:47 +0000)]
Add new view acq.ordered_funding_source_credit, to define priorities
for spending from funding source credits. See COMMENT in
Open-ILS/src/sql/Pg/upgrade/0125.schema.acq-ord-fund-src-credit.sql.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0125.schema.acq-ord-fund-src-credit.sql
M Open-ILS/examples/fm_IDL.xml
scottmk [Mon, 28 Dec 2009 15:53:00 +0000 (15:53 +0000)]
Add an effective_date column to acq.funding_source_credit.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0124.schema.acq-credit-eff-date.sql
M Open-ILS/examples/fm_IDL.xml
erickson [Wed, 23 Dec 2009 18:26:24 +0000 (18:26 +0000)]
added api call that returns the set of users with an overall negative balance, including balance owed and last billing activity time, optionally sorted by home org
scottmk [Wed, 23 Dec 2009 16:35:17 +0000 (16:35 +0000)]
Add a boolean "rollover" column to acq.fund, to denote
which funds are subject to rollover.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0123.schema.acq-fund-rollover.sql
M Open-ILS/examples/fm_IDL.xml
miker [Tue, 22 Dec 2009 17:57:15 +0000 (17:57 +0000)]
method and associated event definition (not A/T ... OpenILS::Event) for capturing, and transiting as needed, a resource targeted by a booking reservation
phasefx [Tue, 22 Dec 2009 16:50:58 +0000 (16:50 +0000)]
more node preservation in list.js, and eliminate the Retrieving... label for rows that have already been rendered previously and are merely changing their values
phasefx [Tue, 22 Dec 2009 10:32:14 +0000 (10:32 +0000)]
Misc tweaks to billing interface and list infrastructure.
Fix mislabeled column for title in payments history interface.
Support preservation of treecell properties, and style specific columns in the bills interface instead of whole rows.
Support immediate fleshing of rows in lists, and do such in the bills interface since the various tallies in that interface depend on the data being fully retrieved.
TODO:
Revisit the preservation of treecell properties. May be some unintended consequences to not blowing away and re-creating the treecell elements when refreshing rows in a list. Hrmm, perhaps a field being unset but its previous value still being rendered.