Munge concerto to include # signs in series facets

Search for "Piano concerto in C major, op. 39" or "Beethoven: concertos
and overtures" and you'll get facets with # signs to assist with fixing
LP # 856811.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
TPAC: Add search torture tests to concerto record

In addition to # signs causing problems in facets, we found that search
syntax in general is surfaced directly in most links that are exposed to
users in the TPAC. This commit adds several examples to the record with
the title "Trombone concerto (1991)":

In the title, there is an embedded "subject:" search which will be
triggered by autocomplete.

In the author (100 field), there is an embedded "author:" search which
will be triggered from the record details page. This also includes
another usage of the # sign.

In the subject fields, there are:
  * an embedded "subject:" search which will be triggered from the
    facets, autocomplete, and record details page
  * an embedded negation operator which will be triggered from the
    facets, autocomplete, and record details page

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
TPAC: Address some search syntax leaks in links

Expand the list of filtered characters to cover all of the special
characters documented for the Evergreen search grammar
(http://evergreen-ils.org/dokuwiki/doku.php?id=documentation:technical:search_grammar)
when generating links in the TPAC so as to avoid inadvertently launching
filtered searches when a user clicks on something that should just be a
display value.

For example, if a title includes "Presenting a subject: tips for
consultants", it should _not_ launch a search for "subject" containing
"tips for consultants".

This commit addresses most of the link problems in the record
display, as well as the author links in the search results table.

Still problematic are the facets (which seem to rely on exact matching,
such that filtering out the problematic characters is itself
problematic) and autocomplete (which requires modifying the Autocomplete
Dojo widget).

In addition, this commit makes the series code actually display, as it
was using a non-standard method to attempt to return the results from
the BLOCK (and failing). Also, it makes the links for authors in the
record details match the MODS32 definition for personal name parts and
only use the "acdq" subfields. This enables a click on the link to
actually return results; previously, in the case where the author field
included (for example) a subfield "g" value, that value would be
included in the generated link and would likely lead to 0 hits.

For authors, we substitute with a space rather than just eliding the
substituted value. Authors are particularly likely to have dates like
1899-1978; "1899 1978" matches, but "18991978" will not.

Perhaps we should take the same approach with the others, or break down
the search/replace logic a little further (for example, we could remove
the "-" only if it is preceded by a space or is at the start of the
string and is followed immediately by a character, and preserve it if it
is surrounded by digits). But this seems to take us pretty far down the
road of less negatively surprising results.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Staff client initial hostname

Add support for an initial staff client hostname.

It can be specified during building the staff client or via configure.

During making the staff client:

make INITIAL_HOST=hostname build

During configure:

./configure --with-initialhost=hostname

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Ben Shum <bshum@biblio.org>
Add sample log redaction config to EG opensrf_core

Redact parameter logging for the following API calls:

Login:
open-ils.auth.authenticate.verify
open-ils.auth.authenticate.complete
open-ils.auth_proxy.login

User updates:
open-ils.actor.user.password
open-ils.actor.user.username
open-ils.actor.user.email
open-ils.actor.patron.update
open-ils.cstore.direct.actor.user.create
open-ils.cstore.direct.actor.user.update
open-ils.cstore.direct.actor.user.delete

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Document log redaction XML chunk for opensrf_core.xml

Based on Bill Erickson's original version.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
CStoreEditor auto-activity log redaction

CStoreEditor logs all update calls to the activity log as key/value
pairs on the updated object.  Avoid loging key/value pairs for objects
when the API call being relayed by CStoreEditor is on the list of
log-protect API calls.  Instead, log "**DETAILS REDACTED**".

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Move 'initial host' feature docs into 2.3 release notes

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Make it possible to suppress IDL fields

Some clients of external services, particularly pcrud and reporter-store,
need to be able to access tables that contain columns we'd rather restrict.
For instance, the passwd field on actor.usr.

To effect this feature we provide a blacklist attribute for fields, called
suppress_controller, which works in the same way as the class controller
attribute but names controllers not allowed to use the field.  When the field
is explicitly named in a query (fieldmapper select block or json_query) an
error is thrown, and suppressed fields are ingored in general fieldmapper
search/retreive requests.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
make_release: add the \set eg_version command to upgrade script

We were echoing the output to STDOUT instead of redirecting it to the
upgrade script that we were generating. Let's go the last mile and
actually get it into the upgrade script.

Signed-off-by: Dan Scott <dscott@laurentian.ca>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Documentation: update upgrade instructions to 2.3.beta2.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Documentation: Update upgrade instructions to 2.3.0.

Signed-off-by: Robert Soulliere <robert.soulliere@mohawkcollege.ca>
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Search mods feature: Modifies the way exact match, contains phrase, and fully normalized phrases are searched for when using the TPAC