scottmk [Wed, 2 Jun 2010 19:24:14 +0000 (19:24 +0000)]
Replace most of the serial schema with a different set of tables. Only
the serial.record_entry table remains unscathed.
In addition: a new table asset.copy_template.
M Open-ILS/src/sql/Pg/002.schema.config.sql
M Open-ILS/src/sql/Pg/040.schema.asset.sql
A Open-ILS/src/sql/Pg/upgrade/0288.schema.serial-overhaul.sql
M Open-ILS/src/sql/Pg/210.schema.serials.sql
M Open-ILS/examples/fm_IDL.xml
miker [Wed, 2 Jun 2010 14:38:58 +0000 (14:38 +0000)]
get rid of search.staged_fts() and supporting functions -- entirely replaced by search.query_parser_fts(); deprecating only, no upgrade script required
senator [Tue, 1 Jun 2010 20:35:21 +0000 (20:35 +0000)]
Move credit card processing ML code into the circ module, removing API method
for direct payment processing. (Using open-ils.circ.money.payment with auth
can invoke CC processing).
senator [Tue, 1 Jun 2010 17:38:21 +0000 (17:38 +0000)]
Remove accidentally committed OPAC CC payment test code.
Only the changes in payment.js and selfcheck.js were supposed to be commited
in 16542. The opac changes themselves were only a rough test and aren't
seaworthy.
erickson [Tue, 1 Jun 2010 17:21:31 +0000 (17:21 +0000)]
in the SIP server plugin, don't connect and start a transaction by default with every cstore handle. only connect/begin when necessary. also, making use of new CStoreEditor::init() call for setting up the editor environment when initial load was done before the IDL was available.
scottmk [Mon, 31 May 2010 03:03:03 +0000 (03:03 +0000)]
1. Add support for function calls. Note that certain functions have
peculiar calling syntax. They will require special handling as exceptions,
and are not yet supported.
2. Add a bit of sanity checking for numeric and string literal expressions.
3. Eliminate the function_id member of Expression.
M Open-ILS/include/openils/oils_buildq.h
M Open-ILS/src/c-apps/oils_storedq.c
M Open-ILS/src/c-apps/buildSQL.c
scottmk [Sun, 30 May 2010 03:50:47 +0000 (03:50 +0000)]
For various updatable views based on query.expression:
add COALESCE to the insert rule so that we don't always
have to specify a value for the "negate" column.
Also: eliminate a harmless but annoying duplication of
the create statements for the query.expr_xbind view.
M Open-ILS/src/sql/Pg/002.schema.config.sql
M Open-ILS/src/sql/Pg/008.schema.query.sql
A Open-ILS/src/sql/Pg/upgrade/0286.schema.query-coalesce-negate.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0284.data.persistent-login-interval.sql
M Open-ILS/src/sql/Pg/950.data.seed-values.sql
erickson [Fri, 28 May 2010 13:25:47 +0000 (13:25 +0000)]
repaired misnamed function oils_json_to_string -> oils_json_to_text; updated funcs to use the setting name provided by the seed data retention_start_date -> retention_start
scottmk [Fri, 28 May 2010 01:46:29 +0000 (01:46 +0000)]
Support series expressions, i.e. a series of expressions
separated by operators or commas. This construct will
be especially useful for chains of ANDs or ORs.
M Open-ILS/include/openils/oils_buildq.h
M Open-ILS/src/c-apps/oils_storedq.c
M Open-ILS/src/c-apps/buildSQL.c
scottmk [Thu, 27 May 2010 16:10:50 +0000 (16:10 +0000)]
Add new expression type 'xser' to represent series expressions,
i.e. a series of expressions separated by operators, such as a
chain of ANDed conditions.
M Open-ILS/src/sql/Pg/002.schema.config.sql
M Open-ILS/src/sql/Pg/008.schema.query.sql
A Open-ILS/src/sql/Pg/upgrade/0280.schema.query-xser.sql
M Open-ILS/examples/fm_IDL.xml
erickson [Thu, 27 May 2010 13:18:45 +0000 (13:18 +0000)]
added Replace Barcode option into new patron reg. interface. Also added a basic See All operation that shows all attached barcodes for a user, provides no editing capabilities
scottmk [Thu, 27 May 2010 12:38:48 +0000 (12:38 +0000)]
Bug fix in verifyObjectPCRUD().
When traversing a chain of rows according to the "jump" attribute:
if you encounter a null foreign key, just stop looking, without
issuing an exception.
scottmk [Wed, 26 May 2010 19:03:25 +0000 (19:03 +0000)]
Correcting some diverging drift in the usr_merge function
M Open-ILS/src/sql/Pg/999.functions.global.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0278.function.usr-merge-drift.sql
scottmk [Wed, 26 May 2010 13:27:29 +0000 (13:27 +0000)]
Bug fixes in verifyObjectPCRUD():
1. Don't throw an exception just because a foreign key is null.
2. When looking for local or foreign contexts, always do a lookup of
the current row, even if you already have an image of that row in
hand. The image you have may not include the foreign key(s) you need.
The latter fix is simple but inefficient. It should be possible to
avoid the extra lookup most of the time, and maybe all of the time,
for the search, retrieve, and id_list methods. However that will
involve additional complications, not yet implemented. Let's make
it correct first, and worry about efficiency later.
scottmk [Tue, 25 May 2010 17:53:43 +0000 (17:53 +0000)]
Correcting an upgrade script.
The value column in actor.org_unit_setting should be valid JSON. In this
revised version the new value is jiggered to make it a string instead of a
number. This conversion is a bit simplistic and can be defeated by various
kinds of improbable input.
M Open-ILS/src/sql/Pg/upgrade/0274.data.org-setting-type-est-wait.sql
scottmk [Tue, 25 May 2010 16:21:56 +0000 (16:21 +0000)]
Plug some memory leaks, and eliminate some unnecessary
memory allocations.
In oils_utils.[ch]:
-- Create a new function, oilsFMGetStringConst(), similar to
oilsFMGetString() except that it doesn't allocate memory; it returns
a const pointer to a string internal to the specified object.
-- Add some comments, tidy up white space.
In oils_sql.c:
-- Replace oilsFMGetString() with oilsFMGetStringConst in a number
of places; partly to reduce memory churn, and partly to plug some
memory leaks where the function call was nested within a
parameter list.
-- Change org_tree_root() so as to return a const pointer to a
static buffer (which was already in use as a cache) instead of
allocating a copy of the string. This change reduces memory
churn. In addition the allocated string was leaking anyway, and
now that leak is plugged.
M Open-ILS/include/openils/oils_utils.h
M Open-ILS/src/c-apps/oils_sql.c
M Open-ILS/src/c-apps/oils_utils.c
scottmk [Tue, 25 May 2010 03:24:07 +0000 (03:24 +0000)]
Various changes to verifyObjectPCRUD():
1. Add numerous comments.
2. Check for nullity of local_context before dereferencing it.
3. If the lookup of a foreign row results in an empty result set, set
_param to NULL instead of pointing it to a JSON_NULL. (Existing code
seems to assume such a policy. This assumption was false, because
jsonObjectClone() never returns NULL.)
4. Instead of using jsonObjectClone() and then immediately destroying
the original, use jsonObjectExtractIndex() to pull an existing subobject
out of its surroundings.
5. In the loop implementing the "jump" attribute: plug a memory leak by
freeing _fparam before assigning it a new value.
6. In the loop that adds org unit contexts from a foreign row: take the
call to osrfHashGet() out of the loop condition, since its return value
is a loop invariant.
-----------
NOTE: This patch does *not* fix a known bug whereby we try to trace
foreign keys that are not present in the available row image. The result
of the bug is that all id_list calls deny access in pcrud. The same bug
can affect retrieve and search calls, if the call specifies a SELECT list
that doesn't include all the necessary foreign keys.
A fix for this bug will come later; fixing it now would make it harder to
test the current changes.
...with corresponding tweaks to label and description.
Also: change datatype from 'integer' to 'interval'.
For any existing rows in actor.org_unit_setting, pointing to the old
setting type: update them to point to circ.holds.default_estimated_wait_interval.
(Due to a foreign key constraint, the latter update has to happen in the same
transaction as the rename of the old row.)
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0274.data.org-setting-type-est-wait.sql
M Open-ILS/src/sql/Pg/950.data.seed-values.sql
miker [Fri, 21 May 2010 17:01:32 +0000 (17:01 +0000)]
Patch from Jason Stephenson which adds "IF EXISTS" to all DROP SCHEMA statements where it is currently missing in the scripts in Open-ILS/src/sql/Pg directory.
scottmk [Fri, 21 May 2010 16:32:00 +0000 (16:32 +0000)]
Add column avg_wait_time to config.circ_modifier.
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0273.schema.config-circ-mod-avg-wait.sql
M Open-ILS/src/sql/Pg/100.circ_matrix.sql
M Open-ILS/examples/fm_IDL.xml
erickson [Fri, 21 May 2010 15:09:13 +0000 (15:09 +0000)]
hide the out-of-sync, non-xul dojo menu in the html pages. we don't want it showing up in the self-check UI or any oter public UIs built from templates
scottmk [Fri, 21 May 2010 13:04:16 +0000 (13:04 +0000)]
Fixing a typo in the previous changeset (a missing comma that led to
nonsense instead of an obvious error).
M Open-ILS/src/sql/Pg/002.schema.config.sql
M Open-ILS/src/sql/Pg/008.schema.query.sql
A Open-ILS/src/sql/Pg/upgrade/0270.schema.query-xisnull-correction.sql
scottmk [Thu, 20 May 2010 20:35:12 +0000 (20:35 +0000)]
Create database support for IS [NOT] NULL expressions
in stored queries.
M Open-ILS/src/sql/Pg/002.schema.config.sql
M Open-ILS/src/sql/Pg/008.schema.query.sql
A Open-ILS/src/sql/Pg/upgrade/0269.schema.query-xisnull.sql
M Open-ILS/examples/fm_IDL.xml
erickson [Thu, 20 May 2010 14:10:47 +0000 (14:10 +0000)]
loosen the restrictions on exporting holdings / price data from uploaded records. It's no longer necessary to set every field in the holdings data just to import. if no quantity is defined, go ahead and pull the estimed price data (when present) to link it with the lineitem
phasefx [Thu, 20 May 2010 04:55:40 +0000 (04:55 +0000)]
* I18N for print admin interface
* custom/external print strategy (where you dictate an external command and feed it %receipt.txt% and/or %receipt.html%)
* DOS LPT1 Print strategy preserved as a legacy option, but without serving double-duty with the external linux commands
* label printing now honors plain text print strategies, but we're still stuck with system defaults for print dialogs
* @hex attribute for generating control characters when using HTML in templates being rendered with plain text print strategies
For example, <p hex="0C">Hello World</p> will transform into form feed + Hello World if used with DOS LPT1 Print or with the
%receipt.txt% macro for the Custom/External Print strategy. <p>Hello World</p hex="0C"> will yield Hello World + form feed.
miker [Wed, 19 May 2010 18:54:25 +0000 (18:54 +0000)]
add ISBN 10/13 index normalizer (requires ISN postgres contrib module); adjust index definition xpath so it actually works; generalize indexing trigger function so it does not have to know about search classes before hand