scottmk [Fri, 18 Jun 2010 14:59:12 +0000 (14:59 +0000)]
Define some stock datatypes in query.datatype.
Set the sequence for query.datatype to leave room for more
stock datatypes if we want to add them.
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/0311.data.query-seed-datatypes.sql
M Open-ILS/src/sql/Pg/950.data.seed-values.sql
scottmk [Thu, 17 Jun 2010 19:16:45 +0000 (19:16 +0000)]
1. Disable fleshing for PCRUD. Otherwise fleshing would provide a
back door whereby a user could see stuff he has no permission to see.
2. For the id_list method: strip out the "flesh_fields" entry, not
the "flesh_columns" entry (which doesn't exist). This actually makes
no difference, but if we're going to do something useless, we might
as well do it right.
dbs [Tue, 15 Jun 2010 18:36:37 +0000 (18:36 +0000)]
Avoid spurious errors when searching more granular indexes
The storage service automatically generates methods for each top-level search
class, like open-ils.storage.authority.keyword.see_from.controlled.atomic, but
here we were trying to access more granular methods (which storage does not
know about) when a granular index was used. This generated an ugly error in
the logs.
To avoid these errors, we'll only look for cross references from the broad
index class to which the granular index belonds.
senator [Mon, 14 Jun 2010 17:03:54 +0000 (17:03 +0000)]
In the unlikely event of an error in a payment transaction following
sucessful external credit card processing, keep the information from the
payment processor and
a) attach it to the ilsevent that we return, and
b) log it at the "error" loglevel
erickson [Mon, 14 Jun 2010 15:39:43 +0000 (15:39 +0000)]
removed unused method retrieved from method_lookup. apart from being unused, the call was attempting to fetch a nonexistent method ('auth' vs. 'authority') and hilarity ensued
miker [Fri, 11 Jun 2010 21:20:39 +0000 (21:20 +0000)]
Serials schema adjustments designed by Dan Wells. Essential features are moving subscription to attach directly to BRE, as the controlled peer to SRE, and allowing distributions to optionally link to an SRE in order to extend them.
phasefx [Fri, 11 Jun 2010 20:32:43 +0000 (20:32 +0000)]
troubleshooting DOM issue where too many columns in a treerow
some refactoring and comment cleanup. toward having the need for treecell creation be determined on a column by column basis rather than examining the contents of a treerow in one go
Old pusher was excluding valid target with "not in"
subquery. Broke that out and added debugging so
that situation should be more obvious (if verbose).
Signed-off-by: Joe Atzberger <atz@esilibrary.com>
git-svn-id: svn://svn.open-ils.org/ILS/trunk@16681 dcc99617-32d9-48b4-a31d-7c20da2025e4
erickson [Fri, 11 Jun 2010 13:52:20 +0000 (13:52 +0000)]
added a number of info messages to the action/trigger runner and server code. the messages provide summary
data about what event defs / hooks are being processed and when/if they complete or timeout.
scottmk [Fri, 11 Jun 2010 13:01:54 +0000 (13:01 +0000)]
Add column "left_operand" to query.expr_xcase 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/0304.schema.query-expr-xcase-left-operand.sql
M Open-ILS/examples/fm_IDL.xml
miker [Thu, 10 Jun 2010 19:15:13 +0000 (19:15 +0000)]
Trunk port of a patch from James Fournie of SITKA:
There was some discussion about problems with holds fulfillment at the
holds roundtable at EG2010. I am pleased to share this patch with the
community which has been thoroughly tested by the folks at
Thompson-Nicola Regional District Library. (thanks guys!)
Background:
Evergreen's default out-of-the-box behaviour for holds fulfillment is
a gas-saving method. Holds are fulfilled by proximity. In a
multibranch library, holds are fulfilled at the local branch first.
Many libraries, particularly single branch libraries may be ok with
this, but it may be problematic for other libraries.
Imagine a scenario where you have a large central branch and a small
rural branch of the same library system. At the large branch, there
are many copies of Popular New DVD with lots of holds. There are no
copies at the rural branch. Patrons at the small rural branch who
want to pick up Popular New DVD at their home branch may never get
their hold fulfilled because the copies will stay at the large branch
as long as there are holds for pickup there.
This patch adds an org unit setting that changes the opportunistic
check-in so that items checked in will be assigned to holds by request
date first, rather than proximity. This setting can be applied to
any level of the org tree, so in some situations you may even want to
activate FIFO for large libraries, but leave the original setting for
smaller libraries with less traffic who want to keep their copies more
local.
Also credit to Jeff Godin who thought of the same patch and
contributed the setting name "holds FIFO" for the setting
[ NOTE: Implications of mixed FIFO and non-FIFO environments that are
not sufficiently segregated by the use of Hard Boundaries for Holds
present a potenial for user confusion. Beware that mixing FIFO and
non-FIFO settings within a resource-sharing group will likely result in
severe imbalance of hold fulfillment, though further configuration,
development, tuning and testing may be able to mitigate these issues.
--miker ]
erickson [Thu, 10 Jun 2010 18:47:57 +0000 (18:47 +0000)]
updated report param editor to handle join types embedded in the field name. this bug caused sporadic failed rendering of the report editor params widgets
scottmk [Thu, 10 Jun 2010 16:28:50 +0000 (16:28 +0000)]
Change the return type of the open-ils.qstore.prepare method.
Formerly, this method merely returned a string to be used as
token for future references to the query.
Now it returns an object, with the following elements:
"token" -- the query token as returned formerly
"bind_variables" -- a (possibly empty) object containing a
list of bind variables and their various attributes, as
returned by the param_list method.
Rationale: an interactive query-building client will always
want a list of bind variables so that it can prompt the user
for values. With this change to the return type, the client
can get such a list without having to make a separate call
to the param_list method.
senator [Thu, 10 Jun 2010 15:34:34 +0000 (15:34 +0000)]
Hold requests in the middle layer now bubble up more specific information to
the caller in the event of failure.
The caller can find an ilsevent in the response received from calling
open-ils.circ.title_hold.is_possible, and this event will have a fail_part
attribute in its payload that can be mapped either to a) the new entities
in opac.dtd or b) values of the name column of the database table
config.standing_penalty, depending on why a hold request failed.
miker [Thu, 10 Jun 2010 14:53:38 +0000 (14:53 +0000)]
thinko on how ou settings are returned from open-ils.actor.ou_setting.ancestor_default; also, cache max_loops per pickup lib for the duration of the targetting run
scottmk [Thu, 10 Jun 2010 14:35:01 +0000 (14:35 +0000)]
Fix a pcrud bug. Create method wasn't working because we were
foolishly trying to fetch the record that hadn't been created
yet, in order to test its ownership.
miker [Thu, 10 Jun 2010 13:55:47 +0000 (13:55 +0000)]
logic thinko causing us to never use the restricted set of copies for this hold targeting round, and instead use all good copies, when in max_loop mode
atz [Wed, 9 Jun 2010 21:43:59 +0000 (21:43 +0000)]
</link> is not valid HTML
Although the DTD *may* specify xhtml, since in practice we are serving
with Content-Type: text/html and
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
we should avoid tags that are illegal in html.
These errors are reported in chrome as:
"Unmatched </link> encountered. Ignoring tag."
scottmk [Wed, 9 Jun 2010 21:39:12 +0000 (21:39 +0000)]
Rewrote the implementation of the open-ils.qstore.columns method.
The old implementation examined the SELECT clause(s) as encoded
in the query.select_item and query.expression tables. The new
implementation performs a dummy query, and then returns the
field names from the database result.
Advantages of the new implementation:
1. It doesn't get confused by wild cards in the SELECT clause.
2. It provides a field name for every column, including those
which are function calls, subqueries, or other expressions.
(Of course these names may not be very revealing, such as
"?column?".)
Disadvantages:
1. The resulting field names are not qualified by table name.
2. Additional overhead due to the additional database call.
gmc [Wed, 9 Jun 2010 18:41:05 +0000 (18:41 +0000)]
updated license text with current GPL 2.0 text
NOTE: THIS IS NOT A SEMANTICALLY IMPORTANT CHANGE TO EVERGREEN'S LICENSE.
Updated LICENSE.txt by pulling the current GPL 2.0 text
directly from http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
The changes are purely textual, and consist solely of:
* updating the FSF's mailing address
* changing references to the "GNU Library General Public License"
to "GNU Lesser General Public License", per the FSF's current
(and long-standing) practice
* whitespace changes