[open-ils-commits] [GIT] Evergreen ILS branch tags/rel_2_2_alpha2 created. c2e314a6a4972d9715395b73033f0c472d096132

Evergreen Git git at git.evergreen-ils.org
Wed Feb 29 15:12:29 EST 2012


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Evergreen ILS".

The branch, tags/rel_2_2_alpha2 has been created
        at  c2e314a6a4972d9715395b73033f0c472d096132 (commit)

- Log -----------------------------------------------------------------
commit c2e314a6a4972d9715395b73033f0c472d096132
Author: Thomas Berezansky <tsbere at mvlc.org>
Date:   Wed Feb 29 13:59:07 2012 -0500

    Bumping version numbers, adding Upgrade Script and Changelog
    
    Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>

diff --git a/ChangeLog b/ChangeLog
index 3323187..8315328 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1 +1,20934 @@
-#ChangeLog
+2012-01-09  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0663.schema.archive_circ_stat_cats.sql: 
+	Speed up 0663 upgrade script Move update to the end This ensures most of the rest goes without error first Disable triggers on the table before doing update This speeds the update up significantly as we don't need to re-calc
+	the additional column's new data.  Allow new column to be null (at first) with no default This allows the column to be added *without* re-writing every row.
+	We still re-write every row with the update, but at least we aren't
+	doing that *twice* this way.  And add the not null/default to new column and re-enable triggers as
+	our last action.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org>
+
+2012-02-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0678.data.vandelay-default-merge-profil
+	es.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-default-merge-profil
+	es.sql: Stamping default-merge-profiles upgrade script Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-default-merge-profil
+	es.sql: Default Vandelay merge profiles Adds 2 default vandelay merge profiles, in part so users will have
+	some useful sample data, but also so the community can have some
+	basic/consistent profiles for documentation purposes.  1. Match-Only Merge This is a no-op merge.  It's only purpose is to allow Vandelay,
+	which requires a profile of some sort to do anything, to find
+	matching records.  This is useful for importing holdings when the
+	MARC from the source record is not desired.  It will also be useful
+	in the (forthecoming) Vandelay-driven Acquisitions lineitem linking (LP
+	pending).  The target/incumbent record is not affected.  2. Full Overlay Used for overlaying an entire inbound MARC record over its target
+	record.  The target/incumbent record is completely replaced by the
+	inbound record.  For both, 901c is used because it's automatically updated on the
+	target record to match the internal ID, regardless of any field
+	preservation/stripping.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-12-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/vandelay/inc/toolbar.tt2,
+	Open-ILS/src/templates/vandelay/vandelay.tt2,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay: refresh
+	upload and inspect queue pages Vandley sub-pages are currently managed as hidden divs that come
+	into view when the requested tab is selected.  This creates two
+	types of problems in the interface.  The first is that newly created
+	data (e.g. a new queue) is not available in the UI, because it's not
+	getting re-fetched from the server when the tab is opened (or added
+	to local data stores).  Second, certain form elements misbehave when
+	the form is re-rendered without a refresh.  Elements, typically
+	checkboxes, will appear to be selected when they are not.  (Or,
+	perhaps they are, and the method to detect their selection is not
+	sufficient).  The simplest solution to both problems is to simply
+	reload the page....  This patch changes the tabs for Import Records and Inspect Queue so
+	that they reload the page (focused on the selected tab) instead of
+	just showing the hidden div.  These pages were chosen because they
+	are the only interfaces that don't automatically refresh their own
+	data and (for Import Record) have forms that need refreshing.  Additionally, since the user may spend more time loading Vandelay
+	pages, this also fixes the long-standing annoyance of seeing the
+	Vandelay UI partially render while waiting for the page to load.
+	Now, it all remains hidden, except for a brief "Loading..." message.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2012-02-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0677.schema.circ_limits.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.circ_limits.sql: Stamping circ
+	limits upgrade script Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* docs/circ_limits.txt: Asciidoc documentation for circ limits Because crappy documentation is better than no documentation ;) Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2012-02-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.circ_limits.sql,
+	Open-ILS/src/templates/conify/global/config/circ_limit_group.tt2,
+	Open-ILS/src/templates/conify/global/config/circ_limit_set.tt2,
+	Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.
+	tt2,
+	Open-ILS/web/js/ui/default/conify/global/config/circ_limit_set.js,
+	Open-ILS/web/js/ui/default/conify/global/config/circ_matrix_matchpo
+	int.js, Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	New Circ Limits Replace the old "Circ Mod Test" limit system with a more flexible
+	system.  In addition to circ modifiers this system supports "Limit Groups"
+	that are automatically applied (by default) to any circulation
+	checking them. This can be overidden by setting the "Check Only"
+	flag when linking a Limit Group to a Limit Set.  Both the limit groups and circ modifiers are linked to "Limit Sets"
+	that act similarly to rules. Each Set can be attached to 0 or more
+	circulation matchpoints.  Each Limit set supports a number of items out (0 replaces infinite),
+	depth in the org tree to start counting at (0 for up to the top, 1
+	for 1 below, etc), and a global flag (to check everywhere below the
+	depth point, rather than just those circulations that happend at
+	ancestors/descendants).  When a Limit Set is linked to a Circulation Matchpoint it can be
+	made inactive and has a fallthrough flag. When the fallthrough flag
+	is enabled the Limit Set will be used whenever the matchpoint is
+	involved with making a decision. When it is disabled the Limit Set
+	will only be used when the matchpoint is the most specific
+	matchpoint used in making the decision.  Limit Groups management can be found on the server administration
+	menu.  Limit Sets management can be found on the local administration menu.  Limit Set -> Matchpoint linking is done via editing Circulation
+	Policies.  The upgrade script does not remove the old tables in case something
+	goes wrong with migrating the information contained within them.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Conflicts: 	Open-ILS/web/opac/locale/en-US/lang.dtd 	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-31  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Fix
+	inability to suspend holds The hold status code was being used for "has the hold been
+	captured", but the value for "frozen" was after the cutoff being
+	assumed for "captured".  So check for the suspended code specifically in the if, and don't
+	return the suspended code if there is a capture time.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-02-24  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Correctly quote regexp-y characters in phrase quoting
+	helper There was one extra character that caused the use of quotemeta() to
+	not actually happen.  This broke two things:   1) phrase searching when the phrase had certain special characters
+	        in it -- test case: "c++"   2) use of relevance bumps in the same situation Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/web/js/ui/default/actor/user/register.js: Re-enable use of
+	BAR_PATRON and UNBAR_PATRON perms If you aren't allowed to bar/unbar at the patron's home library
+	then: 1 - Disable the checkbox as appropriate 2 - Disallow on the backend
+	too The frontend only checks on page load. The backend checks the old
+	patron on update and the new patron on create.  This does not stop "change home library to me, bar/unbar, change
+	back" if otherwise able to change the patron's home library.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Stop targeter crash on empty metarecord with holds By checking for 1 or more records before looking them up.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Ben Shum <bshum at biblio.org> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2012-02-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	Update pickup lib from holds shelf status test repair When determining whether a hold is getting updated while already on
+	the holds shelf, it's important to also treat hold status 5 as an
+	on-shelf status.  Status 5 comes into play when the
+	circ.hold_shelf_status_delay org unit setting is activated and acts
+	as a virtual status indicating the item is physically en route to
+	the shelf.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-02  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/invoice/receive.tt2,
+	Open-ILS/web/js/dojo/openils/acq/nls/acq.js,
+	Open-ILS/web/js/ui/default/acq/invoice/receive.js: Acq: minor
+	usability improvements to receiving copies from invoice 1) Show an "X out of Y copies received" message near the top of the
+	display.  2) Provide a button to return to the primary interface for invoice
+	view.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-20  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0676.schema.bib_autosuggest.sql,
+	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.bib_autosuggest.sql: 
+	Stamping autosuggest upgrade script Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-13  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AutoSuggest.pm: AutoSuggest:
+	prevent building a bad tsquery when user types leading spaces The problem used to bubble up and manifest as an Apache 500 error
+	for the user.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-13  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoSuggest.js: AutoSuggest:
+	more UI tweaks regarding typing after selecting Avoid highlighting text in the textbox part of the autosuggest
+	widget, so that if the user wants to type more after selecting a
+	suggestion with the arrow keys, s/he doesn't clobber the existing
+	part.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-13  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoSuggest.js: AutoSuggest:
+	Make directly clicking a suggestion initiate search Formerly, I thought it best not to do this, so that users could
+	choose a suggestion and refine their search term further, but that
+	put the widget's behavior at odds with that of certain ubiquitous
+	search engines.  Users can still highlight a suggestion and press tab to modify their
+	search further before submitting, if they wish (and if they know
+	this or figure it out somehow).  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/AutoSuggest.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/src/sql/Pg/000.functions.general.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.bib_autosuggest.sql,
+	Open-ILS/src/templates/opac/parts/base.tt2,
+	Open-ILS/src/templates/opac/parts/header.tt2,
+	Open-ILS/src/templates/opac/parts/js.tt2,
+	Open-ILS/src/templates/opac/parts/qtype_selector.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/js/dojo/openils/AutoSuggestStore.js,
+	Open-ILS/web/js/dojo/openils/Util.js,
+	Open-ILS/web/js/dojo/openils/widget/AutoSuggest.js,
+	Open-ILS/web/opac/skin/default/css/layout.css,
+	Open-ILS/web/opac/skin/default/js/search_bar.js,
+	docs/TechRef/AutoSuggest/README: AutoSuggest Get an autocompleting dialog underneath basic search boxes.  If activated, the dialog appears in both the JavaScript OPAC and the
+	Template Toolkit OPAC.  Mike Rylander and Bill Erickson largely designed and spec'ed out
+	this feature, especially at the database level.  Lebbeous
+	Fogle-Weekley and Mike Rylander did the programming.  How it works, for site administrators
+	------------------------------------- Once the code is installed, including database stored procedures, (re)ingesting your bibliographic records will populate two new
+	tables needed by AutoSuggest: metabib.browse_entry and
+	metabib.browse_entry_def_map.  Yes, for now this means that the size of your database in per-record
+	terms will be greater.  The browse_entry data we generate is
+	extremely similar to facet data, so it's possible that in the future
+	we can blend them into the same thing at the database level, and
+	save some space.  To control what gets indexed in the metabib.browse_* tables, set the
+	boolean 'browse_field' column for each row in config.metabib_field
+	as desired Numbers 15 (keyword|keyword) and 16 (subject|complete)
+	should generally be set to false.  The config.metabib_class  table has a new 'bouyant' column.  Setting
+	this to true means that when a user is typing in the OPAC search box
+	with a search class selector set to, say, 'Subject', and the cmc row
+	for 'Subject' has 'bouyant' set to true, the top suggestions will
+	definitely come from the Subject fields of MARC records (if any).
+	'restrict' is like 'bouyant', only stronger.  In that case
+	suggestions /only/ come from the selected class.  This is the idea behind the 'restrict' column (in both the
+	config.metabib_class table and the config.metabib_field table): For
+	any given class or field, if restrict is true AND the user at the
+	OPAC has selected that same class or field from the search class
+	dropdown, then autosuggestions will only come from that class or
+	field in the record.  You never want this column to be true for keyword, because we don't
+	index keywords for browse/autosuggest purposes (we would get giant
+	blobs of information as autosuggestions, and you don't want that
+	(really)).  You don't really want it to be true for most classes and fields.  If
+	the user sets the dropdown to "subject" and start typing "harry
+	potter", the user really wants matches from the "title" class too
+	(although other things being equal, matches from the "subject" class
+	will rise to the top).  If you have a speciality index, you *may* want to set restrict to
+	true for that particular field.  For a song title index, for
+	example.  To take advantage of this, you would also have to
+	customize your OPAC to have an entry in the search class dropdown
+	for 'title|songtitle' (or whatever's appropriate for your specialty
+	index).  This is easy to do and should be covered somewhere in
+	documentation for both the JSPAC and the TPAC.  The order of suggestions otherwise has mostly to do with how well
+	what users have typed matches what's in your bib records, and the
+	value of the weight column of the relevant config.metabib_field row.
+	Examine the code if you're curious to know more or want to make
+	adjustments.  The master on/off switch for AutoSuggest is a new row in in
+	config.global_flag named 'opac.use_autosuggest'.  Set its 'enabled'
+	column to false to turn off AutoSuggest.  If you don't want your
+	suggestions to be limited to whatever's OPAC visible at the search
+	org, set the 'value' column to anything that does not contain the
+	string 'opac_visible'.  This could be a good idea if AutoSuggest
+	seems slow on a large site.  Turning this on means introducing Dojo in your TPAC.  I tried to
+	keep it minimal, for load time's sake.  There's no fieldmapper or
+	IDL stuff play.  For now, turning this feature off will avoid
+	loading Dojo in your TPAC.  Managing the little stuff ------------------------- CSS classes that
+	    affect the look of suggestions are in this file for the TPAC:
+	Open-ILS/web/css/skin/default/opac/style.css and in this file for the JSPAC:     Open-ILS/web/opac/skin/default/css/layout.css At bottom, autosuggest is shaped by PostgreSQL's Full Text Search
+	features.  Some of the arguments that are passed to TS_RANK_CD() and
+	TS_HEADLINE() are expoposed via options to the
+	openils.widget.AutoSuggest and openils.AutoSuggestStore modules,
+	which have comments.  You can customize your OPAC files to invoke
+	these with your desired options without touching much actual code.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-02-14  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/Caption.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/test/mfhddata.txt: 
+	Correct special winter handling in predictions The current serials prediction code has an exception for handling
+	cases where 'Winter 2010' is followed by 'Spring 2010' rather than
+	'Spring 2011'.  This exception assumed the more common case of a
+	combined subfield $y, e.g.: $yps21,22,23,24 In doing so, it incorrectly handled less common cases where the $y
+	is listed separately: $yps21$yps22$yps23$yps24 This change (with test data) ensures we only check the first $y for
+	our 'early winter' exception.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2012-02-16  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/scripts/fieldmapper.py,
+	build/i18n/tests/data/testidl.ent, build/i18n/tests/data/testidl.po: 
+	Escape content when generating DTD for fieldmapper Noticed by Thomas Berezansky, if a translation in a PO or POT file
+	contains an unescaped left angle bracket, a DTD will be generated
+	that contains the unescaped left angle bracket - and that isn't
+	valid.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2012-02-14  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js: 
+	Vandelay record match sets: fix bug loading some trees Reported to me by Bill Erickson.  The Vandelay Record Match Sets
+	interface was failing to load some simple trees of match set points.  Example: http://pastesite.com/31643 The proximate symptom was this error message:     Error: dojo.data.ItemFileReadStore: Invalid item argument.      Source File: http://dev198.esilibrary.com/js/dojo/dojo/dojo.js     Line: 119 but the root cause was a problem in dojoize_match_set_tree(), which
+	was failing to generate unique identifiers for each item in the data
+	store it's responsible for generating.  Since that function is only ever used to deal with trees where all
+	the nodes come from the database and have actual IDs, that function
+	now uses the database IDs as is rather than attempting to generate
+	new ones.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-02-14  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Fix typos in
+	lp820006 that broke clean schema creation Backslashes to escape single quotes in SQL aren't cool.  Also, lists of rows to insert need commas as delimiters.  Also, needed a trailing "]" on the 90-day lost notice template.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2012-02-14  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Fix up 3-day
+	courtesy notice with better title / author too Use the helper function to get better quality title/author out of
+	the target copy for pre-due notices.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-02  Steven Callender <stevecallender at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/1.6.1-2.0-upgrade-db.sql: 
+	LP#820006: Action trigger notices fixes Cleaned up action triggers a little bit.  1. Added the editor param to the auto lost, because triggers will
+	fail without this.  2. Also removed the use of simple_records in some of the notices and
+	changed it to something more efficient.  3. Changed the use of total money owed to balance owed.  Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+	Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2012-01-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/config.tt2,
+	Open-ILS/src/templates/opac/parts/result/facets.tt2: TPac: facet
+	display filtering and sorting Provides the ability (via config.tt2) to define which facets should
+	display and the order of facet display.  The behavior is consistent
+	with the openils.widget.FacetSidebar Dojo class, used in JSPAC.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2012-02-01  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Booking.pm: Booking:
+	make pick up interface show resources captured for reservation ...  ... even beyond the first day of the reservation.  I can think of no
+	reason why this limitation existed in the first place.  Also, just replace naive_start_of_day() with "today" Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-17  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm, Open-ILS/src/support-scripts/hold_targeter.pl: Stream
+	results from targetable holds list retrieval Tested and slightly modified patch from Mike R. to improve
+	multi-session hold targeting.  This patch includes an update to the
+	targetable holds API call to stream results instead of returning
+	them in 1 big chunk, which has been known to result in messages too
+	large for jabber (max_stanza_size).  hold_targer.pl is updated to handle the stream.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2012-02-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0675.schema.usr_visible_circ_copies_row
+	_estimates.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.usr_visible_circ_copies_row
+	_estimates.sql: Stamping upgrade for LP#928896 Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-02-08  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.usr_visible_circ_copies_row
+	_estimates.sql: LP#928896 improve row estimate for
+	action.usr_visible_circ_copies() Fixes problem where use of this function by the tagging circs in
+	search results feature can result in sequential scans of
+	asset.call_number.  Thanks to Mike Rylander for the suggestion.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/Makefile.am: JSON_v0 has been superseded, and it has
+	insidious bugs anyway.  For example, you cannot round-trip this through JSON2js() and
+	js2JSON() in IE8: http://paste.lisp.org/display/127338 Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-02-02  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/src/templates/opac/parts/topnav.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Tweak the opac-button
+	elements to avoid blending with backgrounds Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2012-02-02  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: Tweak style.css to
+	bring facet headers into sync with color scheme Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2012-02-01  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Validator.pm: 
+	Fix HoldIsAvailable validator Depending on the environment some things may be ids or references.  Comparisons should try and use the IDs only, so pull the IDs out.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-02-01  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	TPAC: Avoid hold placement problems à la 80d5c4a4 A commit written in October and merged quickly (80d5c4a4) was
+	designed to avoid problems with a middle layer method that sometimes
+	returns hash refs and sometimes returns array refs.  A commit written in September but not merged until January
+	(a663dfed) affected neighboring code, but was not aware of the other
+	code to dance around hash refs and array refs (just read the commit
+	messages of each to see what I mean, with attention to the changes
+	in WWW/EGCatLoader/Account.pm).  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2012-01-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	Re-teach the clear shelf process "one copy" It got lost when fetching holds was abstracted out.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-31  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0674.config.copy_status.restrict_copy_d
+	elete.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.config.copy_status.restrict_copy_d
+	elete.sql: Upgrade script finalization, adding new perm to database Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-05  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: 
+	remove this old speedbump, which now lies Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-05  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_buckets.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js: Improve
+	COPY_DELETE_WARNING event handling Make it overridable in copy buckets, and let Cancel on perm denied
+	dialog fail gracefully.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2012-01-05  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm: 
+	Use the restrict_copy_delete field on copy status to determine when to throw a COPY_DELETE_WARNING event Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-10-12  Jason Stephenson <jstephenson at mvlc.org>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.config.copy_status.restrict_copy_d
+	elete.sql: Add upgrade script for
+	config.copy_status.restrict_copy_delete.  Adds the column to the config.copy_status table.  Updates the "magical" statues (1,3,6,8) to have restrict_copy_delete
+	set to TRUE.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-10-12  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.p
+	m, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Add
+	restrict_copy_delete field to config.copy_status.  Add the column definition in 002.schema.config.sql.  Add the field
+	to the class ccs in fm_IDL.xml.  Set the restrict_copy_delete column
+	to true for the "magical" statuses (1,3,6,8) in
+	950.data.seed-values.sql.  Add restrict_delete as essential column
+	to config.copy_status in OpenILS::Application::Storage::CDBI::config Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2012-01-19  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Handle search timeouts more gracefully Another tweak courtesy of berick Returns 0 results if open-ils.storage timeouts instead of a nasty
+	uncaught undefined ARRAY exception resulting in an OPAC "spinning
+	wheel of death" (formerly the "green knight rider bar of death".  Note that in the event of storage timeouts, you should tune and/or
+	beef-up your database.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-11-23  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/evergreen-rsyslog.conf: Example Evergreen
+	rsyslog configuration file This differs from the OpenSRF sample configuration by adding a log
+	file for Postgres and by changing the log path to /var/log/evergreen Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-23  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: TPac:
+	Avoid long-running, unintended empty searches If a page that executes a search is accessed with no viable search
+	query, cut the search short to avoid meaningless, long-running
+	searches.  This primarily affects direct links to record detail
+	pages.  For example: http://example.org/eg/opac/record/123 The RD page attempts to load the currrently active search (for
+	paging) and, if there is no query, will search for strings like
+	'site(BR1) depth(2)', which are unintended and quite slow, which
+	delays page rendering.  --- While we're in there, let's silence the following Apache error log
+	warning by ensuring that int() gets a value.  Use of uninitialized value in int at
+	/usr/local/share/perl/5.10.1/OpenILS/WWW/EGCatLoader/Search.pm line
+	192.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-23  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: TPac: avoid
+	SMS org setting check for non-SMS pages Avoid an unnecessary org unit setting lookup on a large swath of
+	(mostly myopac) pages.  Instead, check to see if the current page is
+	the SMS page in question and the lookup is necessary before making
+	the lookup.  This change also inserts the physical location as the first org unit
+	to use in the org setting test.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-31  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Missed increment in
+	002.schema.config.sql for last commit Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0673.data.acq-cancel-reason-cleanup.sql: 
+	ACQ: remove piles of unused cancel_reasons There is a large set of of acq.cancel_reason's in Evergreen that
+	come from the EDI spec and will never be used in practice.  Since
+	there are scenarios where cancel reasons are manually chosen by
+	staff, let's remove all of the extras so the process of selecting a
+	cancel reason is not so fraught with "Poultry" and "Airline
+	attendants", etc.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPAC: Cleaner
+	title display in simple and detailed views The TPAC uses a simple 245a display for the "simple view" in search
+	results, so records like the concerto.sql "Violin concerto no. 3 in
+	G, K. 216 ;" display with a trailing semicolon that is rather
+	disconcerting.  Similarly, the subfields in the extended title as displayed in the
+	record detail view was simply concatenating subfields together. This
+	resulted in titles like: Violin concerto no. 3 in G, K. 216 ;Sinfonia ...  rather than: Violin concerto no. 3 in G, K. 216 ; Sinfonia ...  This commit strips trailing punctuation that suggests a continuation
+	(:;/) from the brief title and joins the subfields with a space for
+	the extended title.  Also, enable the detailed view in search results to display the
+	complete title.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-30  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/opac/locale/en-US/opac.dtd: Increase the year in
+	copyright statements to 2012 Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml, Open-ILS/examples/fm_IDL.xsd: Fix
+	fm_IDL.xml validation errors From 80+ errors to 0! Remove empty permacrud blocks (and pcrud controllers).  Adds missing attributes, updates xsd to include in-use attributes.  Fixes incomplete attribute names and the occasional typoed name.  Also re-orders some chunks that are controlled by xs:sequence.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-22  Dan Scott <dscott at laurentian.ca>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: Fix "prefered_language" typo that blocked preferred
+	language "preferred_language" is used everywhere else, but in the crucial
+	core of metabib.pm the "prefered_language" variant is used to check
+	on the value - hence, nothing other than the default "eng" is being used. Fix
+	that.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2012-01-30  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js: Fix "Add
+	Volumes" entry in "Actions for this Record" menu A typo in Open-ILS/xul/staff_client/chrome/content/cat/opac.js
+	(cbdObj instead of cbsObj) led to the exception "Reference error:
+	cbdObj is not defined" being thrown any time the "Add Volumes" entry
+	was chosen.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2012-01-30  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : Merge remote branch 'working/user/dbs/fix-nonfiling-titles' Conflicts: 	Open-ILS/src/sql/Pg/950.data.seed-values.sql Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: Fix SIP2
+	"unavailable holds" check If no IDs, don't look up an empty array of IDs.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-20  Dan Wells <dbw2 at calvin.edu>
+
+	* : commit 522bddfa14ca0cb60fbc1a53f3afd7d6a1579858 Author: Michael
+	Peters <mrpeters at library.in.gov> Date:   Fri Jan 20 17:49:16 2012
+	-0500
+
+2012-01-09  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js: Fix self-fetching
+	callnumber columns The callnumber (and related) columns from circ.util.columns() is
+	meant to retrieve call number objects if given call number id's
+	instead of objects, but there was a bug preventing that.  This fixes LP#906523, no call number information in billing
+	interface Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-07  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Invoice.pm: Acq
+	fix for LP#901378 Proratable invoice charges do not have a fund_debit, we need to
+	check for this before attempting to delete the charge.  If there's
+	no fund_debit we can generally assume that there's no corresponding
+	debit to this charge and skip trying to delete it.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-01-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0671.schema.copy_location_alert.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.copy_location_alert.sql: Stamping
+	upgrade for copy_location_alert Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-01-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/asset.pm
+	, Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.copy_location_alert.sql,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/copy_locations.js,
+	Open-ILS/xul/staff_client/server/admin/copy_locations.xhtml,
+	Open-ILS/xul/staff_client/server/circ/util.js: Add Checkin Alert to
+	Copy Locations If enabled bring up a ROUTE TO prompt for the location at reshelving
+	time.  Also, while at it, add Prefix/Suffix to the "new" section of the
+	editor.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-20  Bill Erickson <berick at esilibrary.com>
+
+	* README: Remove RELEASE_NOTES reference from README ...pending further discussion Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-23  Dan Scott <dscott at laurentian.ca>
+
+	* docs/RELEASE_NOTES_2_2.txt: Release Notes: Add CC-BY-SA 3.0
+	license to footer Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-23  Dan Scott <dscott at laurentian.ca>
+
+	* docs/RELEASE_NOTES_2_2.txt: Release notes: document copy location
+	display option Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-21  Dan Scott <dscott at laurentian.ca>
+
+	* docs/RELEASE_NOTES_2_2.txt: Release notes: document new reporting
+	views Introduce 'Last Circulation or Creation Date' and 'Hold/Copy Ratio
+	per Bib and Pickup Library' reporting sources.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-20  Dan Scott <dscott at laurentian.ca>
+
+	* README, RELEASE_NOTES, docs/RELEASE_NOTES_2_2.txt: Move
+	RELEASE_NOTES into the docs subdirectory We will begin maintaining release notes inside the source directory,
+	with one RELEASE_NOTES.txt file per major release series (2.2, 2.3,
+	etc). The release notes will primarily consist of an overview of new
+	features and important behaviour changes in that particular release
+	series, as well as a cumulative list of bugs that have been fixed in
+	the point releases for that series.  Also, mention the existence of the release notes in the top-level
+	README.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-05  Dan Scott <dscott at laurentian.ca>
+
+	* RELEASE_NOTES: Release notes: "cbs prevents records from having
+	copies" The new "can_have_copies" column on config.bib_source prevents
+	associated records from having copies or MFHD records attached via
+	the staff client.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-11-29  Dan Scott <dscott at laurentian.ca>
+
+	* RELEASE_NOTES: Note located URI changes in Release Notes Located URIs now define what org unit and below in the hierarchy
+	will be matched for a given search scope, rather than the copy-like
+	behaviour from before; for example, a located URI at BR1 will no
+	longer be found in a SYS1 search scope; rather, a located URI at
+	SYS1 will be found with either a SYS1 or a BR1 search scope.  Put some info and rough suggested fix into the release notes.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2012-01-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/display.js: Make Delete User
+	failure overridable Make mrpeter's new ACTOR_USER_DELETE_OPEN_XACTS event overridable to
+	preserve existing functionality (the delete user code will wipe out
+	all transactions if allowed to, and will leave copy statuses as
+	"Checked Out" if needed, which is okay in EG even if there aren't
+	corresponding circ records--some libraries migrate data like this if
+	the information available is sparse).  So if you want to be able to do this without a super user, you'll
+	need to create an ACTOR_USER_DELETE_OPEN_XACTS.override perm and
+	assign it to perm groups and/or users.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/display.js: whitespace Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-10-12  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/src/extras/ils_events.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/display.js: LP872862, delete
+	user function and open xacts Prevent deletion of a user with open circulations or unpaid bills
+	Link up an error message on attempt to delete a patron with open
+	xacts Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-19  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/templates/opac/parts/result/table.tt2: Prevent extra
+	closing tag in TPAC results list Trivial change to prevent an extra yet currently harmless </tr>
+	closing tag from appearing when ChiliFresh is enabled.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2012-01-08  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Regular
+	justification of columns in search result The search results page was constituted via a table, enclosing one
+	table per row for each result, enclosing one further table per
+	result for the attributes such as call number / publisher / edition
+	that have been chosen to be displayed in the simple and detailed
+	views.  The column widths for each search result row were being calculated
+	per result, with the effect that title columns were starting at
+	different offsets - a rather unpolished effect.  By eliminating the middle table, we can let the widths be determined
+	by all of the search result rows together, providing a normalized
+	result as the HTML deities intended.  We also move some inline CSS into style.css.  Note that IE 7, at least, ignores the :nth-child() usage to deliver
+	the borders; because we no longer wrap the set of rows (including
+	optional Content Cafe and ChiliFresh rows) in an intermediate table,
+	we had to switch to a border-top attribute. We could have gone with
+	a straight "tr > td" approach, but that would have added a line at
+	the top of the first result, which looked weird. Still an option if
+	one really wants to.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Dan
+	Wells <dbw2 at calvin.edu>
+
+2012-01-08  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/record/body.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Simply record
+	summary navigation markup Currently we have the next / previous links on the far right side of
+	the record summary page, whereas the "Showing item # of #" is on the
+	left hand side of the page. On wide screens, this leads to a large
+	gap between the two informational elements. In addition, as the
+	elements are floated, the vertical alignment is thrown off if you
+	attempt to bring them together.  The solution is to group the elements inside a SPAN with
+	inline-block displays for the embedded DIVs. This enables the
+	elements to reflow appropriately on mobile sized screens while
+	keeping the alignment clean.  In addition, some inline style gets
+	moved to style.css and some unnecessary elements are removed.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2012-01-08  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/record/copy_counts.tt2,
+	Open-ILS/src/templates/opac/parts/record/copy_table.tt2: TPAC:
+	Improve copy display in record summary In the copy counts, offer a link to display the copies at parent
+	libraries that have available copies. For example, if you are
+	browsing at BR1 and there are no available copies, but you see that
+	SYS1 has available copies, clicking "(Show)" beside the SYS1
+	available copy count will change the search scope to SYS1 and
+	display the copies for BR1 and BR2.  Also, avoid displaying the copy table header if there are no
+	physical copies to display (for example, if there are located URIs
+	that make the copy show up in search results).  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2012-01-08  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/record/body.tt2,
+	Open-ILS/src/templates/opac/parts/record/subjects.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2: Prevent expand
+	and cnoffset params from propagating The expand and cnoffset params in record summary might result in
+	unexpected behaviour if allowed to propagate by default, as mkurl()
+	enables, so stop them in their tracks.  Also, fix an overenthusiastic URI-encoding of subjects that led to a
+	space getting doubly-encoded (and thereby breaking searches).  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2012-01-05  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/parts/anon_list.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/prefs_base.tt2,
+	Open-ILS/src/templates/opac/parts/preserve_params.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/results.tt2: TPAC: Preserve loc, query,
+	qtype, and sort params In some cases, mkurl() is not enough to preserve our desired CGI
+	params - such as when redirects are triggered from within a Perl module, or
+	forms are submitted. Accordingly, the following changes address
+	these cases where the chosen location / query / query type was being
+	dropped: * Switching between account preferences * Creating / deleting / sharing / editing bookbags * Moving items from temporary list to bookbags * Adding notes to items in a bookbag * Placing holds The primary mechanism for forms is the "preserve_params.tt2" block
+	that can accept a "params" list of the CGI params that you want to
+	preserve, but which defaults to location/query/qtype/sort.
+	Similarly, we add the same preservation steps to the
+	OpenILS::WWW::EGCatLoader::Account module for most actions.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-29  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/advanced.tt2,
+	Open-ILS/src/templates/opac/myopac/circ_history.tt2,
+	Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/myopac/main.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/base.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2,
+	Open-ILS/src/templates/opac/parts/topnav.tt2: TPAC: Propagate CGI
+	params via mkurl() Fix many instances where params such as "loc" are dropped during a
+	normal workflow, resulting in unexpected changes to the user's
+	chosen search scope. mkurl() preserves the existing CGI params by
+	default and passes them on to the created URL; for now we err on the
+	side of caution (preserving all params) rather than filtering any
+	out. Manual testing suggests this does not introduce any problems,
+	and resolves many.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2012-01-17  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/myopac.js: Don't show estimated
+	wait for negative estimates JSPac code was just checking for the truth of the estimated_wait
+	return, but the estimated_wait return can be -1 under some
+	circumstances.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/circ/nls/selfcheck.js: Repaired JS
+	syntax errors in nls/selfcheck.js Fixed errors introduced by a727a91b26716a0df36c93c7962240bec231c180 Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-01-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/record/copy_table.tt2: TPac:
+	Easy access to item status Change item barcodes into item status links in TPac listings.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-20  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2,
+	Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/holds.js,
+	Open-ILS/web/opac/skin/default/xml/common/holds.xml: Allow choice of
+	placing hold despite age protect This alters the backend to watch when so much as one copy failed
+	only due to age protection. If so, a flag is set and returned back
+	up the calling tree for examination.  In JSPac when the flag is set an alternate confirm message is shown.  In TTPac when the flag is set the failure message is changed and
+	override is always allowed for the hold in question.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-12-08  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: P898427
+	Get holdings_xml.retrieve to flesh URIs properly Flesh URIs when requested with the -uris or -full feed type.  This
+	was broken when commit f2b822f8 fixed authority browsing.  holdings_xml-full never appeared to retrieve URIs properly, so that
+	has been added.  This also makes holdings_xml-uris behave in the new manner of URIs
+	as per git commit ba47ecc61, retrieving URIs for ancestors rather
+	than descendants.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2012-01-11  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/main.js,
+	Open-ILS/xul/staff_client/components/clh.js: Support auto-login in
+	staff client By adding three new command line parameters: -ILSuser - Username to log in with -ILSpassword - Password to use
+	-ILShost - hostname to use If, and only if, all three are specified *and* we think we have an
+	already registered workstation for the hostname do we trigger an
+	auto login.  Otherwise we just fill everything in and wait for the user.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-11  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Move csp definitions
+	from 002 to 950, so they can use i18n.  I don't /think/ there's a point in having an upgrade script to go
+	along with this, but someone who understands oils_18n_gettext()
+	better should weigh in.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2012-01-11  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : Merge remote branch
+	'working/collab/berick/invalidate_email_and_phone_revised' Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-12-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/BadContact.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.mark-email-and-phone-invalid.
+	sql, Open-ILS/src/templates/actor/user/register.tt2,
+	Open-ILS/web/js/dojo/openils/Util.js,
+	Open-ILS/web/js/dojo/openils/actor/nls/register.js,
+	Open-ILS/web/js/ui/default/actor/user/register.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/patron/display_horiz_overlay.xul,
+	Open-ILS/xul/staff_client/server/patron/display_overlay.xul,
+	Open-ILS/xul/staff_client/server/patron/standing_penalties.js,
+	Open-ILS/xul/staff_client/server/patron/util.js,
+	Open-ILS/xul/staff_client/server/skin/patron_display.css: Mark email
+	addresses and phone numbers invalid This comes from an idea from Jeff Godin.  For staff to indicate an
+	email address or phone number "invalid," for whatever definition of
+	"invalid" has meaning at the institution (as in invalid addresses
+	today), there is now a UI control in the patron editor.  This UI control invokes a middle layer method that will clear the
+	email (or phone) field from actor.usr, and create a corresponding
+	standing penalty against the user, for staff to notice next time
+	they bring up said patron in the staff client.  Such penalties will
+	be archived whenever that patron's email address or phone number is
+	updated again.  The middle layer method is a wrapper around a method that may take
+	different parameters (like an email address instead of a patron ID)
+	to potentially support future uses such as invalidating email
+	addresses automatically in batch.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-19  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Receipt
+	Template Non-String Protection Don't try to replace on things that aren't strings.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2012-01-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd: Relabel Force Context in
+	receipt template editor Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-12-20  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/util/print.js,
+	Open-ILS/xul/staff_client/server/cat/copy_buckets.js,
+	Open-ILS/xul/staff_client/server/circ/print_list_template_editor.js
+	,
+	Open-ILS/xul/staff_client/server/circ/print_list_template_editor.xu
+	l, Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/patron/bill2.js: Add Context to
+	Receipt Templates By default the print context is used, but this enabled each template
+	to be assigned a specific printer context that it is intended for.  This means that things that normally use "Default" can be forced to,
+	say, "Receipt" and such easily.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-12-19  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Make
+	Reprint Last printing context aware Allows for re-use of previous printer context and all settings
+	thereof.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2012-01-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/hold_details.js: Remove
+	'boo' alert in hold details interface Willing to let any surprises here be natural. :-)  We can re-bug if
+	there are issues.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2012-01-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0666.schema.sms_carriers.sql: fix
+	breakage from recent merges Also, a good argument for keeping all perm additions in the same
+	INSERT in the 950 file, since git would have reported a merge
+	conflict against master had I done that instead of simply appending
+	the upgrade script to the file.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2012-01-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0669.data.recall_and_force_holds.sql: 
+	Terminology adjustment to reduce conflicts with the term "recall" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0669.data.recall_and_force_holds.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.copy_holds.sql: Stamping force and
+	recall hold permission addition script Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm, Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.copy_holds.sql: Completing
+	Force/Recall Holds Add support for the Force and Recall hold types to be something
+	other than just aliases of Copy holds.  Both holds are made to cut in line over *all* other holds and both
+	ignore all hold rules, including copy, location, and status holdable
+	flags.  Recall holds, when they reach their destination, will be flagged to
+	be sent to cataloging.  In addition, to place either kind of hold you need a new permission
+	at the copy's circulation library: COPY_HOLD_FORCE for force holds COPY_HOLD_RECALL for recall holds Also, some re-ordering of logic should result in a fix for issues
+	with capturing holds as transits and/or suppressing holds and the
+	hold shelf logic.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2012-01-10  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 287c24981f942e25dfb618b848e0a5f519c23e5c Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Tue Jan 10 15:03:57 2012
+	-0500
+
+2012-01-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/xul/staff_client/server/skin/print.css,
+	Open-ILS/xul/staff_client/server/skin/serial.css: Add customization
+	to staff client serial and print CSS files The *_custom.css variants of these are created automatically at
+	install time, so give the parents the ability to actually use them.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-10-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/hold_error_messages.tt2: TPac
+	messages for item/location/status not holdable Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/PermitHold.pm,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_indb_hold_permit.sql,
+	Open-ILS/web/js/dojo/openils/circ/nls/selfcheck.js: Fix INDB hold
+	permit holdable checking Check Item/Status/Location holdable flags Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2012-01-10  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0667.schema.alerting-penalties.sql,
+	Open-ILS/xul/staff_client/server/patron/display.js: Add a
+	"staff_alert" column to config.standing_penalty, and ...  ... consult this when deciding whether to show the stop sign page in
+	the patron interface of the staff client, rather than explicitly
+	checking for the id of the ALERT_NOTE config.standing_penalty.  Now only show the standing penalty if the staff_alert value is true,
+	instead of unconditionally showing it for all penalties with a
+	block_list value.  This allows staff to configure blocking penalties
+	that do not alert.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2012-01-10  Mike Rylander <mrylander at gmail.com>
+
+	* : Merge remote-tracking branch
+	'eg-working/user/senator/tpac-bookbag-viewer'
+
+2012-01-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0666.schema.sms_carriers.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.sms_carriers.sql: Stamping
+	upgrade script for SMS notification branch Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/prefs_notify.tt2: fix existing
+	Notification Type typo Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2012-01-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Prevent unshared warnings in hold placement closure sub data_filler {} becomes $data_filler = sub {} Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-09-22  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/SendS
+	MS.pm, Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/SMS.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.sms_carriers.sql,
+	Open-ILS/src/templates/conify/global/config/sms_carrier.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/opac/parts/record/copy_table.tt2,
+	Open-ILS/src/templates/opac/parts/sms_carrier_selector.tt2,
+	Open-ILS/src/templates/opac/parts/sms_number_textbox.tt2,
+	Open-ILS/src/templates/opac/sms_cn.tt2,
+	Open-ILS/web/js/ui/default/conify/global/config/sms_carrier.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/holds.js,
+	Open-ILS/xul/staff_client/server/patron/holds_overlay.xul: SMS
+	texting For SMS functionality we're basically converting a carrier and a
+	phone number into an email address and sending via SMTP like other
+	email notifications.  There is administrative UI for configuring
+	these mappings:     Admin -> Server Settings -> SMS Carriers The permission ADMIN_SMS_CARRIER is needed to use this interface. In
+	a stock Evergreen installation, this is given to the Global
+	Administrator group.  In this interface, any occurance of "$number" in the Email Gateway
+	field will change into the pertinent SMS phone number when the
+	mapping gets used. We're not doing anything fancy here for verifying
+	or munging phone numbers, but you could do munging in the pertinent
+	SMS Action/Trigger templates, or better, contribute code for the
+	OPAC templates and/or the utility method get_sms_gateway_email in
+	Trigger/Reactor.pm.  Our set of stock mappings comes from
+	http://en.wikipedia.org/wiki/List_of_SMS_gateways There's no automated process for keeping this up-to-date, though
+	some volunteer with a Wikipedia account could add the page to their
+	watchlist for changes and let us know if something needs changing.  Set the org unit setting "SMS: Enable features that send SMS text
+	messages." (database name "sms.enable") to True to expose the
+	following:   * SMS notification widgets in the TT-OPAC hold placement interface
+	    (to notify when a hold is ready for pickup)   * "(SMS)" links next to call numbers on the TT-OPAC record details
+	    page. The interface spawned by these links require user
+	    authentication by default, but this can be changed by setting the
+	    org unit setting "SMS: Disable auth requirement for texting call
+	    numbers." to True. The database name for that setting is
+	"sms.disable_authentication_requirement.callnumbers".    * New options in TT-OPAC My Account -> Account Preferences ->
+	    Notification Preferences (we also add in some missing prefs for
+	holds outside of SMS) There are two pertinent Action/Trigger templates under Admin ->
+	Local Administration -> Notifications / Action Triggers:   * SMS Call Number   * Hold Ready for Pickup SMS Notification Don't disable these. We rely on the sms.enable YAOUS as the master
+	on/off switch.  Also, it's probably best to have just one sms.enable for the whole
+	consortium.  If you mix and match on/off settings here, then user
+	preferences for SMS can get blown away if the user updates their
+	settings in the TT-OPAC at an org where SMS is disabled.  Hrmm, the
+	same would probably happen if the user jumps between the TT-OPAC and
+	the original JS-PAC.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-29  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: flesh
+	settings when retrieving patron by barcode Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2012-01-06  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Fix
+	shelf_expire_time closed date overlap test One-liner courtesy of berick.  * Steps to test This is time and timezone sensitive, so on the server: Change your timezone to America/Los Angeles: sudo dpkg-reconfigure
+	tzdata Stop your NTP server: sudo /etc/init.d/ntp stop Set the time
+	to 5pm: sudo date --set 17:00:00 Stop Evergreen, Restart Postgres, Start Evergreen On the client: Make sure the timezone is set to Pacific time.  1) Change the Library Setting "Default hold shelf expire interval"
+	in the Holds group to have a value of "7 days" (without the quotes)
+	for org BR1 (or if there is an existing value, you can keep it).  2) Create a bib with one item: htest1  (Status of Available) 3) Place a title level hold on the bib 4) Check in htest1 (it should get captured for the hold) 5) Browse the Hold Shelf and note the Shelf Expire Time for the hold
+	that captured htest1 (it should be a week from now, unless you
+	already have a conflicting closed date configured) 6) Cancel the hold and re-check-in htest1 (to remove the Hold Shelf
+	status) 7) In the Closed Dates Editor, Add Single Day Closing for the date
+	noticed previously in the Shelf Expire Time for BR1.  8) Place a title level hold on the bib 9) Check in htest1 (it should get captured for the hold) 10) Browse the Hold Shelf and note the Shelf Expire Time for the
+	hold that captured htest1 (now the bug is illustrated if you get the
+	same date for Shelf Expire Time as you did before, since that day is
+	now a Closed Date and should be skipped over.  The patch should fix
+	this.) Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2012-01-09  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default.css,
+	Open-ILS/web/js/dojo/openils/widget/AutoGrid.js,
+	Open-ILS/web/js/dojo/openils/widget/PCrudFilterDialog.js,
+	Open-ILS/web/js/dojo/openils/widget/nls/PCrudFilterDialog.js: Major
+	enhancements to openils.widget.PCrudFilterDialog openils.widget.PCrudFilterDialog is (now) a dijit that allows users
+	to define inclusionary filters based on any number of rows that
+	specify a field from a given fieldmapper class, an operator, and a
+	value (or range of values, for the [not] between operator).  The
+	resulting filter is suitable for use as the where clause of a pcrud
+	search call.  AutoGrid has an option, showLoadFilter, that allows you to easily
+	provide a filter dialog in any AutoGrid-based interface, with some
+	minor caveats (see the comments at the top of the source for
+	openils.widget.PCrudFilterDialog).  AutoGrid will also pass along
+	the suppressFilterFields option, which works analagously to the
+	suppressEditFields option.  You can also build your own interfaces
+	to use this dijit without AutoGrid, if desired.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-03  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/display.js: More
+	aggressive recalc of standing penalties In the staff client, the Refresh button in the patron display will
+	explicitly ask the server to recalculate standing penalties for the
+	patron. Other automatic refresh-like behavior meant to synchronize
+	parts of the patron display will not do this.  This change tweaks the logic to ask for a recalculation with all
+	refresh-like behavior in the patron display, and will catch such
+	things as staff changing the user's permisssion profile.  An example of how you might test this: Admin -> Local Administration -> Group Penalty Thresholds New Penalty Threshold Group: Volunteers Org Unit: CONS Penalty: PATRON_EXCEEDS_FINES
+	Threshold: 1 Save Register user with Profile of Patrons Load patron, Bills, Bill Patron, Amount: 5, Submit this Bill Edit Main (Profile) Permission Group: Volunteers, Save The interface should refresh and show a Maximum Bills penalty in the
+	patron summary.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-29  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/version-upgrade/2.0-2.1-upgrade-db.sql: SETVAL
+	the permission.grp_tree sequence after adding pinned IDs If we do not update the associated sequence after adding pinned IDs,
+	sites will be unable to add new permission groups until enough
+	attempts have failed. Let's bypass that little bit of pain.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-12-29  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/version-upgrade/2.0-2.1-upgrade-db.sql: 
+	Prevent permission group conflicts in 2.1 upgrade script The 2.0-2.1 upgrade script relies on pinned IDs for
+	permission.grp_tree entries, which might conflict with custom
+	permission groups that a site might have added previously. A little
+	manipulation can make life safe for the pinned IDs.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-11-15  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Making the user
+	profile selector disabled rather than readonly in the case of a user
+	editing their own account.  This prevents a nasty bug whereby Dojo
+	widgets with the readOnly flag set become labels and therefore do
+	not correctly hold a 'value' like a normal form widget.  See
+	LP#806625 for details.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-29  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/support-scripts/marc_export.in: Prevent null 852 $a
+	in marc_export 852 $a is supposed to correspond to the institution holding the item
+	from which access is given, according to the MARC Format for
+	Holdings Data specification. As the org unit shortnames typically
+	don't correspond to one of the MARC Code List for Organization
+	entries, we've assumed that users will define the --location
+	parameter; however, if that parameter isn't defined, the empty
+	string is used and an empty subfield is generated. This, in turn,
+	makes other MARC-parsing tools unhappy. So, only generate an 852 $a
+	if we have an actual value for the --location parameter.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2012-01-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0665.schema.placelholder.sql: 
+	Placeholder upgrade script for late-backport of a fix for 2.0 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-05  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Event.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/EventGroup.pm: 
+	A/T Event Revalidation shouldn't change event states from complete
+	to found Ideally, revalidation should be guaranteed not to change anything
+	about the event itself at the database level, but I'm not sure we're
+	there yet.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0664.schema.hold-current-shelf-lib.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.hold-current-shelf-lib.sql: 
+	Stamping upgrade script for current_shelf_lib Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-09  Mike Rylander <mrylander at gmail.com>
+
+	* : Merge remote-tracking branch
+	'eg-working/user/berick/hold-current-shelf-lib' Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-05  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0663.schema.archive_circ_stat_cats.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statistical_archive.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXY.schema.statistical_archive.all_cir
+	culation.sql: Wrap upgrade script for archivable stat cats Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-17  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/action.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/actor.pm
+	,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/asset.pm
+	, Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statistical_archive.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXY.schema.statistical_archive.all_cir
+	culation.sql, Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/stat_cat_editor.js,
+	Open-ILS/xul/staff_client/server/admin/stat_cat_editor.xhtml: Circ
+	Statistical Archiving Copy Location Instead of only archiving the copy location with aged circs, do so
+	with all circs, using the copy location at time of circ. This allows
+	for running of reports on the copy location even after the item is
+	no longer in it.  Statistical Categories Add a flag to statistical categories to allow them to be archived
+	with all circulations (at checkout). Reports can then be run on
+	regular and aged circulations based on the contents of the
+	statistical categories.  This patch was inspired by Tim Spindler's submission to
+	https://bugs.launchpad.net/evergreen/+bug/798255 - thanks Tim! Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2012-01-05  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/record/summary.tt2: Fix
+	summary.tt2 openurl block The extra if was likely added to fix a problem with a missing ; The missing ; was put back, but the extra if then became a problem.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2012-01-05  Dan Scott <dscott at laurentian.ca>
+
+	* : Merge remote-tracking branch
+	'working/user/artunit/resolver_resolver_timeout_2012_01_05' into
+	dbs/resolver_resolver_timeout_2012_01_05
+
+2012-01-05  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/Makefile, build/i18n/po/vandelay.dtd/ar-AR.po,
+	build/i18n/po/vandelay.dtd/cs-CZ.po,
+	build/i18n/po/vandelay.dtd/de-DE.po,
+	build/i18n/po/vandelay.dtd/en-CA.po,
+	build/i18n/po/vandelay.dtd/en-GB.po,
+	build/i18n/po/vandelay.dtd/es-ES.po,
+	build/i18n/po/vandelay.dtd/fr-CA.po,
+	build/i18n/po/vandelay.dtd/he-IL.po,
+	build/i18n/po/vandelay.dtd/hu-HU.po,
+	build/i18n/po/vandelay.dtd/hy-AM.po,
+	build/i18n/po/vandelay.dtd/oc-FR.po,
+	build/i18n/po/vandelay.dtd/pt-BR.po,
+	build/i18n/po/vandelay.dtd/ru-RU.po,
+	build/i18n/po/vandelay.dtd/sv-SE.po,
+	build/i18n/po/vandelay.dtd/tr-TR.po,
+	build/i18n/po/vandelay.dtd/vandelay.dtd.pot: Remove vandelay.dtd
+	from i18n Makefile and dirs Back in 46e233722f9d1ccec1bd97816bb055caa12f8096, vandelay.dtd was
+	removed in favour of the inline Template Toolkit localizations - so
+	pull vandelay.dtd references out of the i18n Makfile to avoid
+	corresponding errors.  Remove vandelay POT and PO files as well.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2012-01-04  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/scripts/update_pofiles: Add language update script for
+	Launchpad -> Evergreen Launchpad uses different names for locales than we do in Evergreen,
+	and we want to only update translations that are actually new or
+	have changed in Launchpad, so dump some intelligence into a script
+	that can help us with that work.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2012-01-04  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/cs-CZ.po,
+	build/i18n/po/AutoFieldWidget.js/de-DE.po,
+	build/i18n/po/AutoFieldWidget.js/en-CA.po,
+	build/i18n/po/AutoFieldWidget.js/en-GB.po,
+	build/i18n/po/AutoFieldWidget.js/es-ES.po,
+	build/i18n/po/AutoFieldWidget.js/fr-CA.po,
+	build/i18n/po/AutoFieldWidget.js/hy-AM.po,
+	build/i18n/po/AutoFieldWidget.js/oc-FR.po,
+	build/i18n/po/AutoFieldWidget.js/pt-BR.po,
+	build/i18n/po/AutoFieldWidget.js/ru-RU.po,
+	build/i18n/po/AutoFieldWidget.js/tr-TR.po,
+	build/i18n/po/Searcher.js/cs-CZ.po,
+	build/i18n/po/Searcher.js/de-DE.po,
+	build/i18n/po/Searcher.js/en-CA.po,
+	build/i18n/po/Searcher.js/en-GB.po,
+	build/i18n/po/Searcher.js/es-ES.po,
+	build/i18n/po/Searcher.js/fr-CA.po,
+	build/i18n/po/Searcher.js/hy-AM.po,
+	build/i18n/po/Searcher.js/ru-RU.po,
+	build/i18n/po/TranslatorPopup.js/cs-CZ.po,
+	build/i18n/po/TranslatorPopup.js/de-DE.po,
+	build/i18n/po/TranslatorPopup.js/en-CA.po,
+	build/i18n/po/TranslatorPopup.js/en-GB.po,
+	build/i18n/po/TranslatorPopup.js/es-ES.po,
+	build/i18n/po/TranslatorPopup.js/fr-CA.po,
+	build/i18n/po/TranslatorPopup.js/hy-AM.po,
+	build/i18n/po/TranslatorPopup.js/oc-FR.po,
+	build/i18n/po/TranslatorPopup.js/pt-BR.po,
+	build/i18n/po/TranslatorPopup.js/ru-RU.po,
+	build/i18n/po/TranslatorPopup.js/tr-TR.po,
+	build/i18n/po/User.js/cs-CZ.po, build/i18n/po/User.js/de-DE.po,
+	build/i18n/po/User.js/en-CA.po, build/i18n/po/User.js/en-GB.po,
+	build/i18n/po/User.js/es-ES.po, build/i18n/po/User.js/fr-CA.po,
+	build/i18n/po/User.js/hy-AM.po, build/i18n/po/User.js/oc-FR.po,
+	build/i18n/po/User.js/pt-BR.po, build/i18n/po/User.js/ru-RU.po,
+	build/i18n/po/User.js/tr-TR.po,
+	build/i18n/po/XULTermLoader.js/cs-CZ.po,
+	build/i18n/po/XULTermLoader.js/de-DE.po,
+	build/i18n/po/XULTermLoader.js/en-CA.po,
+	build/i18n/po/XULTermLoader.js/en-GB.po,
+	build/i18n/po/XULTermLoader.js/es-ES.po,
+	build/i18n/po/XULTermLoader.js/fr-CA.po,
+	build/i18n/po/XULTermLoader.js/hy-AM.po,
+	build/i18n/po/XULTermLoader.js/oc-FR.po,
+	build/i18n/po/XULTermLoader.js/pt-BR.po,
+	build/i18n/po/XULTermLoader.js/ru-RU.po,
+	build/i18n/po/XULTermLoader.js/tr-TR.po,
+	build/i18n/po/admin.properties/cs-CZ.po,
+	build/i18n/po/admin.properties/de-DE.po,
+	build/i18n/po/admin.properties/en-CA.po,
+	build/i18n/po/admin.properties/en-GB.po,
+	build/i18n/po/admin.properties/es-ES.po,
+	build/i18n/po/admin.properties/fr-CA.po,
+	build/i18n/po/admin.properties/hy-AM.po,
+	build/i18n/po/admin.properties/oc-FR.po,
+	build/i18n/po/admin.properties/pt-BR.po,
+	build/i18n/po/admin.properties/ru-RU.po,
+	build/i18n/po/auth.properties/cs-CZ.po,
+	build/i18n/po/auth.properties/de-DE.po,
+	build/i18n/po/auth.properties/en-CA.po,
+	build/i18n/po/auth.properties/en-GB.po,
+	build/i18n/po/auth.properties/es-ES.po,
+	build/i18n/po/auth.properties/fr-CA.po,
+	build/i18n/po/auth.properties/hy-AM.po,
+	build/i18n/po/auth.properties/oc-FR.po,
+	build/i18n/po/auth.properties/pt-BR.po,
+	build/i18n/po/auth.properties/ru-RU.po,
+	build/i18n/po/auth.properties/tr-TR.po,
+	build/i18n/po/authority.js/cs-CZ.po,
+	build/i18n/po/authority.js/de-DE.po,
+	build/i18n/po/authority.js/en-CA.po,
+	build/i18n/po/authority.js/en-GB.po,
+	build/i18n/po/authority.js/es-ES.po,
+	build/i18n/po/authority.js/fr-CA.po,
+	build/i18n/po/authority.js/hy-AM.po,
+	build/i18n/po/authority.js/oc-FR.po,
+	build/i18n/po/authority.js/pt-BR.po,
+	build/i18n/po/capture.js/cs-CZ.po,
+	build/i18n/po/capture.js/de-DE.po,
+	build/i18n/po/capture.js/en-CA.po,
+	build/i18n/po/capture.js/en-GB.po,
+	build/i18n/po/capture.js/es-ES.po,
+	build/i18n/po/capture.js/fr-CA.po,
+	build/i18n/po/capture.js/hy-AM.po,
+	build/i18n/po/capture.js/oc-FR.po,
+	build/i18n/po/capture.js/pt-BR.po,
+	build/i18n/po/capture.js/ru-RU.po,
+	build/i18n/po/cat.properties/cs-CZ.po,
+	build/i18n/po/cat.properties/de-DE.po,
+	build/i18n/po/cat.properties/en-CA.po,
+	build/i18n/po/cat.properties/en-GB.po,
+	build/i18n/po/cat.properties/es-ES.po,
+	build/i18n/po/cat.properties/fr-CA.po,
+	build/i18n/po/cat.properties/hy-AM.po,
+	build/i18n/po/cat.properties/pt-BR.po,
+	build/i18n/po/cat.properties/ru-RU.po,
+	build/i18n/po/cat.properties/tr-TR.po,
+	build/i18n/po/circ.properties/cs-CZ.po,
+	build/i18n/po/circ.properties/de-DE.po,
+	build/i18n/po/circ.properties/en-CA.po,
+	build/i18n/po/circ.properties/en-GB.po,
+	build/i18n/po/circ.properties/es-ES.po,
+	build/i18n/po/circ.properties/fr-CA.po,
+	build/i18n/po/circ.properties/hy-AM.po,
+	build/i18n/po/circ.properties/pt-BR.po,
+	build/i18n/po/circ.properties/ru-RU.po,
+	build/i18n/po/common.properties/cs-CZ.po,
+	build/i18n/po/common.properties/de-DE.po,
+	build/i18n/po/common.properties/en-CA.po,
+	build/i18n/po/common.properties/en-GB.po,
+	build/i18n/po/common.properties/es-ES.po,
+	build/i18n/po/common.properties/fr-CA.po,
+	build/i18n/po/common.properties/hy-AM.po,
+	build/i18n/po/common.properties/oc-FR.po,
+	build/i18n/po/common.properties/pt-BR.po,
+	build/i18n/po/common.properties/ru-RU.po,
+	build/i18n/po/conify.dtd/cs-CZ.po,
+	build/i18n/po/conify.dtd/de-DE.po,
+	build/i18n/po/conify.dtd/en-CA.po,
+	build/i18n/po/conify.dtd/en-GB.po,
+	build/i18n/po/conify.dtd/es-ES.po,
+	build/i18n/po/conify.dtd/fr-CA.po,
+	build/i18n/po/conify.dtd/hy-AM.po,
+	build/i18n/po/conify.dtd/pt-BR.po,
+	build/i18n/po/conify.dtd/ru-RU.po,
+	build/i18n/po/conify.js/cs-CZ.po, build/i18n/po/conify.js/de-DE.po,
+	build/i18n/po/conify.js/en-CA.po, build/i18n/po/conify.js/en-GB.po,
+	build/i18n/po/conify.js/es-ES.po, build/i18n/po/conify.js/fr-CA.po,
+	build/i18n/po/conify.js/hy-AM.po, build/i18n/po/conify.js/pt-BR.po,
+	build/i18n/po/conify.js/ru-RU.po, build/i18n/po/conify.js/tr-TR.po,
+	build/i18n/po/db.seed/cs-CZ.po, build/i18n/po/db.seed/de-DE.po,
+	build/i18n/po/db.seed/en-CA.po, build/i18n/po/db.seed/en-GB.po,
+	build/i18n/po/db.seed/es-ES.po, build/i18n/po/db.seed/fr-CA.po,
+	build/i18n/po/db.seed/hy-AM.po, build/i18n/po/db.seed/oc-FR.po,
+	build/i18n/po/db.seed/pt-BR.po, build/i18n/po/db.seed/ru-RU.po,
+	build/i18n/po/db.seed/tr-TR.po, build/i18n/po/fm_IDL.dtd/cs-CZ.po,
+	build/i18n/po/fm_IDL.dtd/de-DE.po,
+	build/i18n/po/fm_IDL.dtd/en-CA.po,
+	build/i18n/po/fm_IDL.dtd/en-GB.po,
+	build/i18n/po/fm_IDL.dtd/es-ES.po,
+	build/i18n/po/fm_IDL.dtd/fr-CA.po,
+	build/i18n/po/fm_IDL.dtd/hy-AM.po,
+	build/i18n/po/fm_IDL.dtd/pt-BR.po,
+	build/i18n/po/fm_IDL.dtd/ru-RU.po,
+	build/i18n/po/ils_events.xml/cs-CZ.po,
+	build/i18n/po/ils_events.xml/de-DE.po,
+	build/i18n/po/ils_events.xml/en-CA.po,
+	build/i18n/po/ils_events.xml/en-GB.po,
+	build/i18n/po/ils_events.xml/es-ES.po,
+	build/i18n/po/ils_events.xml/fr-CA.po,
+	build/i18n/po/ils_events.xml/hy-AM.po,
+	build/i18n/po/ils_events.xml/pt-BR.po,
+	build/i18n/po/ils_events.xml/ru-RU.po,
+	build/i18n/po/lang.dtd/cs-CZ.po, build/i18n/po/lang.dtd/de-DE.po,
+	build/i18n/po/lang.dtd/en-CA.po, build/i18n/po/lang.dtd/en-GB.po,
+	build/i18n/po/lang.dtd/es-ES.po, build/i18n/po/lang.dtd/fr-CA.po,
+	build/i18n/po/lang.dtd/hy-AM.po, build/i18n/po/lang.dtd/pt-BR.po,
+	build/i18n/po/lang.dtd/ru-RU.po,
+	build/i18n/po/multiclass_search_help.html/cs-CZ.po,
+	build/i18n/po/multiclass_search_help.html/en-CA.po,
+	build/i18n/po/multiclass_search_help.html/en-GB.po,
+	build/i18n/po/multiclass_search_help.html/es-ES.po,
+	build/i18n/po/multiclass_search_help.html/fr-CA.po,
+	build/i18n/po/multiclass_search_help.html/hu-HU.po,
+	build/i18n/po/multiclass_search_help.html/hy-AM.po,
+	build/i18n/po/multiclass_search_help.html/oc-FR.po,
+	build/i18n/po/multiclass_search_help.html/pt-BR.po,
+	build/i18n/po/multiclass_search_help.html/ru-RU.po,
+	build/i18n/po/multiclass_search_help.html/tr-TR.po,
+	build/i18n/po/offline.properties/cs-CZ.po,
+	build/i18n/po/offline.properties/de-DE.po,
+	build/i18n/po/offline.properties/en-CA.po,
+	build/i18n/po/offline.properties/en-GB.po,
+	build/i18n/po/offline.properties/es-ES.po,
+	build/i18n/po/offline.properties/fr-CA.po,
+	build/i18n/po/offline.properties/hy-AM.po,
+	build/i18n/po/offline.properties/pt-BR.po,
+	build/i18n/po/offline.properties/ru-RU.po,
+	build/i18n/po/offline.properties/tr-TR.po,
+	build/i18n/po/opac.dtd/cs-CZ.po, build/i18n/po/opac.dtd/de-DE.po,
+	build/i18n/po/opac.dtd/en-CA.po, build/i18n/po/opac.dtd/en-GB.po,
+	build/i18n/po/opac.dtd/es-ES.po, build/i18n/po/opac.dtd/fr-CA.po,
+	build/i18n/po/opac.dtd/he-IL.po, build/i18n/po/opac.dtd/hy-AM.po,
+	build/i18n/po/opac.dtd/oc-FR.po, build/i18n/po/opac.dtd/pt-BR.po,
+	build/i18n/po/opac.dtd/ru-RU.po, build/i18n/po/opac.dtd/tr-TR.po,
+	build/i18n/po/opac.js/cs-CZ.po, build/i18n/po/opac.js/de-DE.po,
+	build/i18n/po/opac.js/en-CA.po, build/i18n/po/opac.js/en-GB.po,
+	build/i18n/po/opac.js/es-ES.po, build/i18n/po/opac.js/fr-CA.po,
+	build/i18n/po/opac.js/hy-AM.po, build/i18n/po/opac.js/oc-FR.po,
+	build/i18n/po/opac.js/pt-BR.po, build/i18n/po/opac.js/ru-RU.po,
+	build/i18n/po/opac.js/sv-SE.po, build/i18n/po/opac.js/tr-TR.po,
+	build/i18n/po/patron.properties/cs-CZ.po,
+	build/i18n/po/patron.properties/de-DE.po,
+	build/i18n/po/patron.properties/en-CA.po,
+	build/i18n/po/patron.properties/en-GB.po,
+	build/i18n/po/patron.properties/es-ES.po,
+	build/i18n/po/patron.properties/fr-CA.po,
+	build/i18n/po/patron.properties/hy-AM.po,
+	build/i18n/po/patron.properties/pt-BR.po,
+	build/i18n/po/patron.properties/ru-RU.po,
+	build/i18n/po/patron.properties/tr-TR.po,
+	build/i18n/po/pickup_and_return.js/cs-CZ.po,
+	build/i18n/po/pickup_and_return.js/de-DE.po,
+	build/i18n/po/pickup_and_return.js/en-CA.po,
+	build/i18n/po/pickup_and_return.js/en-GB.po,
+	build/i18n/po/pickup_and_return.js/es-ES.po,
+	build/i18n/po/pickup_and_return.js/fr-CA.po,
+	build/i18n/po/pickup_and_return.js/hy-AM.po,
+	build/i18n/po/pickup_and_return.js/pt-BR.po,
+	build/i18n/po/pickup_and_return.js/ru-RU.po,
+	build/i18n/po/pull_list.js/cs-CZ.po,
+	build/i18n/po/pull_list.js/de-DE.po,
+	build/i18n/po/pull_list.js/en-CA.po,
+	build/i18n/po/pull_list.js/en-GB.po,
+	build/i18n/po/pull_list.js/es-ES.po,
+	build/i18n/po/pull_list.js/fr-CA.po,
+	build/i18n/po/pull_list.js/hy-AM.po,
+	build/i18n/po/pull_list.js/pt-BR.po,
+	build/i18n/po/pull_list.js/ru-RU.po,
+	build/i18n/po/register.js/cs-CZ.po,
+	build/i18n/po/register.js/de-DE.po,
+	build/i18n/po/register.js/en-CA.po,
+	build/i18n/po/register.js/en-GB.po,
+	build/i18n/po/register.js/es-ES.po,
+	build/i18n/po/register.js/fr-CA.po,
+	build/i18n/po/register.js/hy-AM.po,
+	build/i18n/po/register.js/pt-BR.po,
+	build/i18n/po/register.js/ru-RU.po,
+	build/i18n/po/register.js/tr-TR.po,
+	build/i18n/po/reports.dtd/cs-CZ.po,
+	build/i18n/po/reports.dtd/de-DE.po,
+	build/i18n/po/reports.dtd/en-CA.po,
+	build/i18n/po/reports.dtd/en-GB.po,
+	build/i18n/po/reports.dtd/es-ES.po,
+	build/i18n/po/reports.dtd/fr-CA.po,
+	build/i18n/po/reports.dtd/hy-AM.po,
+	build/i18n/po/reports.dtd/pt-BR.po,
+	build/i18n/po/reports.dtd/ru-RU.po,
+	build/i18n/po/reports.dtd/tr-TR.po,
+	build/i18n/po/reports.js/cs-CZ.po,
+	build/i18n/po/reports.js/de-DE.po,
+	build/i18n/po/reports.js/en-CA.po,
+	build/i18n/po/reports.js/en-GB.po,
+	build/i18n/po/reports.js/es-ES.po,
+	build/i18n/po/reports.js/fr-CA.po,
+	build/i18n/po/reports.js/hu-HU.po,
+	build/i18n/po/reports.js/hy-AM.po,
+	build/i18n/po/reports.js/pt-BR.po,
+	build/i18n/po/reports.js/ru-RU.po,
+	build/i18n/po/reports.js/tr-TR.po,
+	build/i18n/po/reservation.js/cs-CZ.po,
+	build/i18n/po/reservation.js/de-DE.po,
+	build/i18n/po/reservation.js/en-CA.po,
+	build/i18n/po/reservation.js/en-GB.po,
+	build/i18n/po/reservation.js/es-ES.po,
+	build/i18n/po/reservation.js/fr-CA.po,
+	build/i18n/po/reservation.js/hy-AM.po,
+	build/i18n/po/reservation.js/ru-RU.po,
+	build/i18n/po/selfcheck.js/cs-CZ.po,
+	build/i18n/po/selfcheck.js/de-DE.po,
+	build/i18n/po/selfcheck.js/en-CA.po,
+	build/i18n/po/selfcheck.js/en-GB.po,
+	build/i18n/po/selfcheck.js/es-ES.po,
+	build/i18n/po/selfcheck.js/fr-CA.po,
+	build/i18n/po/selfcheck.js/hy-AM.po,
+	build/i18n/po/selfcheck.js/pt-BR.po,
+	build/i18n/po/selfcheck.js/ru-RU.po,
+	build/i18n/po/serial.properties/cs-CZ.po,
+	build/i18n/po/serial.properties/de-DE.po,
+	build/i18n/po/serial.properties/en-CA.po,
+	build/i18n/po/serial.properties/en-GB.po,
+	build/i18n/po/serial.properties/es-ES.po,
+	build/i18n/po/serial.properties/fr-CA.po,
+	build/i18n/po/serial.properties/hy-AM.po,
+	build/i18n/po/vandelay.dtd/cs-CZ.po,
+	build/i18n/po/vandelay.dtd/de-DE.po,
+	build/i18n/po/vandelay.dtd/en-CA.po,
+	build/i18n/po/vandelay.dtd/en-GB.po,
+	build/i18n/po/vandelay.dtd/es-ES.po,
+	build/i18n/po/vandelay.dtd/fr-CA.po,
+	build/i18n/po/vandelay.dtd/hy-AM.po,
+	build/i18n/po/vandelay.dtd/pt-BR.po,
+	build/i18n/po/vandelay.dtd/ru-RU.po,
+	build/i18n/po/vandelay.dtd/tr-TR.po: Update translations from
+	Launchpad Created using the fancy new update_pofiles script. Huzzah! Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-12-22  Dan Scott <dscott at laurentian.ca>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/ResolverResolver.pm,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2: Resolver: Fix
+	method signature for deleting cache entries The order of arguments was incorrect and also contained an
+	unnecessary entry for the open-ils.resolver.delete_cached_holdings
+	method signature.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Art
+	<artrhyno at uwindsor.ca>
+
+2011-12-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: OpenURL
+	resolution in TPAC - further cleanup We appear to be getting one null or empty value in the args.issns
+	array, which was causing spurious lookups of null ISSNs, so skip the
+	entry if it is an empty string.  Also, switch from the product-specific "sfx" variable name to the
+	product-neutral "openurls" as we have CUFTS in the mix these days.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Art
+	<artrhyno at uwindsor.ca>
+
+2011-12-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/examples/opensrf.xml.example,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/ResolverResolver.pm: 
+	Make resolver HTTP timeout setting implementation neutral Rather than exposing the underlying mechanism (LWP) for the HTTP
+	request via the "lwp_timeout" setting, use "request_timeout" so that
+	if we switch to a different HTTP library the setting name doesn't
+	contradict it.  Also, add an example setting to opensrf.xml.example.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Art
+	<artrhyno at uwindsor.ca>
+
+2011-12-14  Art Rhyno <artrhyno at uwindsor.ca>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/ResolverResolver.pm,
+	Open-ILS/src/perlmods/lib/Template/Plugin/ResolverResolver.pm,
+	Open-ILS/src/templates/opac/parts/misc_util.tt2: Timeout for
+	resolver interactions These changes add some timeout options for using the resolver setup.
+	For example: request open-ils.resolver open-ils.resolver.resolve_holdings "issn",
+	    \ "0013-0618", "http://sfx.scholarsportal.info/windsor", 10 where "10" is the number of seconds for a timeout. A default timeout
+	can be specified in the opensrf.xml file in the ResolverResolver
+	section as well: <lwp_timeout>30</lwp_timeout> from TPAC, a request can be also include a timeout option: [% IF openurl.enabled == 'true';     FOR issn IN args.resolver_issns;       resolver = ResolverResolver.resolve_issn(issn,
+	          openurl.baseurl,20); FOR res IN resolver; %] where "20" is the number of seconds for a timeout.  In working through this, I found some bugs in my resolver collection
+	code in misc_util.tt2 for isbns which I have addressed.  Signed-off-by: Art Rhyno <artrhyno at uwindsor.ca> Signed-off-by: Dan
+	Scott <dscott at laurentian.ca> Signed-off-by: Art
+	<artrhyno at uwindsor.ca>
+
+2011-12-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Use
+	hold current shelf lib to determine availability : opac sorting The availability of a hold can now be determined by
+	hold.current_shelf_lib == hold.pickup_lib.  This change uses the new hold availability test to sort available
+	holds to front/top of a patron's holds list (for the OPAC).  Affects open-ils.circ.holds[.canceled|id_list].retrieve Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2012-01-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/c-apps/oils_sql.c: Teach cstore et al about
+	predicate-style truth tests in ORDER BY clauses Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js: Use hold current
+	shelf lib to determine availability : hold shelf browse The availability of a hold can now be determined by
+	hold.current_shelf_lib == hold.pickup_lib.  This change updates the staff client code to only display the
+	"available on" value (i.e. shelf_time) in the holds list when the
+	current_shelf_lib == pickup_lib and not just that it's captured and
+	on a shelf.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: Use hold current
+	shelf lib to determine availability : SIP The availability of a hold can now be determined by
+	hold.current_shelf_lib == hold.pickup_lib.  This change updates the unavailable holds count function for the
+	patron information SIP call(s).  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Validator.pm: 
+	Use hold current shelf lib to determine availability : A/T validator The availability of a hold can now be determined by
+	hold.current_shelf_lib == hold.pickup_lib.  This change updates the HoldIsAvailable action/trigger validator to
+	use the new test.  I've left the original belt-and-suspenders checks
+	in place and marked them as redundant within the code for reference.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: Use hold
+	current shelf lib to determine availability : opac hold count The availability of a hold can now be determined by
+	hold.current_shelf_lib == hold.pickup_lib.  This change updates the API call for open hold counts for a patron.  open-ils.actor.user.hold_requests.count Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Alter
+	hold pickup lib from shelf avoids transit When the pickup library for a hold is changed while the hold is on
+	the shelf, we no longer put the copy into transit to the new
+	location.  Instead, we clear the shelf_expire_time (to prevent
+	premature expiration) and leave the hold and copy otherwise
+	untouched.  This makes it possible for staff to identify items that are sitting
+	on the holds shelf that need to be put into transit to a new pickup
+	library.  The transit will be created when the item is checked in at
+	the originating library.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/templates/opac/parts/hold_status.tt2,
+	Open-ILS/web/opac/skin/default/js/myopac.js,
+	Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: New
+	hold status for "Wrong Shelf" Adds a new hold status code (8) to indicate when a hold is sitting
+	on the wrong holds shelf.  In the OPAC, a hold status of 8 is displayed as in-transit.  Neither
+	waiting-for-copy or in-transit are entirely accurate.  In-transit
+	makes slightly more sense, since the copy is captured and (slowly)
+	making its way to the correct shelf.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Hold
+	current_shelf_lib for shelf browse API Use the new current_shelf_lib column on hold requests to determine
+	which copies are on a given shelf.  This also removes the shelf_time
+	filter since shelf_time is guaranteed to be set if current_shelf_lib
+	is set.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Hold
+	current_shelf_lib API for setting/clearing.  Sets and clears the hold.current_shelf_lib value as appropriate
+	during hold capture, transit checkin, hold resetting, etc.  Also, we now create hold transits (instead of regular transits) when
+	a captured copy is (unexpectedly) found at the wrong branch and
+	needs to transit to the pickup lib.  This can happen if the captured
+	copy simply transits to the wrong place (existing behavior) or the
+	pickup lib for the hold was changed while the copy was on the shelf
+	(new behavior).  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.hold-current-shelf-lib.sql: 
+	Hold current_shelf_lib DB and IDL Schema, upgrade, and IDL pieces for a new
+	action.hold_request.current_shelf_lib column.  The goal of the
+	column is to track the location where a hold is currently sitting on
+	a hold shelf.  Typically, this will be the pickup library, however,
+	if the pickup library has changed while the hold was on the shelf,
+	the current shelf lib will be different.  The upgrade script sets current_shelf_lib to match the pickup_lib
+	for all holds that are currently active and on the shelf.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/version-upgrade/2.0-2.1-upgrade-db.sql: Avoid
+	updating deleted call numbers for 2.0 -> 2.1 upgrade 25% of the call numbers on our production system are deleted, so
+	filtering out the deleted call numbers from the update in the 2.0 ->
+	2.1 upgrade saves a significant amount of time.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2012-01-03  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/Proxy/Authen.pm: Add
+	OpenILS::WWW::Proxy::Authen Module Enables HTTP Basic Authentication access control.  Uses the OILSProxyPermissions and OILSProxyLoginType settings, but
+	prompts are controlled by the Apache AuthName directive.  This module allows things like Directory Indexing and non-perl or
+	otherwise incompatible with the normal proxy module Response (or
+	similar) handlers to be password-protected.  It also supports the OpenILS::WWW::Proxy user/passwd CGI params to
+	allow an easier transition between the two.  For example: <Location /authen_login/>     Options +Indexes     PerlOptions +GlobalRequest     PerlSetVar OILSProxyPermissions "VIEW_REPORT_OUTPUT"     PerlSendHeader On     AuthType Basic     AuthName "Notices Login"     PerlAuthenHandler OpenILS::WWW::Proxy::Authen     require valid-user     allow from all </Location> Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2012-01-03  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: Change default proxy
+	configs to Authen variant Also, because Authen causes Indexes to function, turn them off by
+	default.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2012-01-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0662.schema.coded-value-map-index-norma
+	lizer.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.coded-value-map-index-norma
+	lizer.sql: Stamping upgrade script for coded value map index
+	normalizer Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2012-01-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.coded-value-map-index-norma
+	lizer.sql: Coded value map index normalizer New index normalizer which maps a coded value from the record to the
+	display value configured in config.coded_value_map.  The normalizer
+	is applied with one parameter, the ctype of the coded_value_map to
+	use for the mapping.  E.g config.metabib_field_index_norm_map: id | field | norm |    params     | pos
+	---+-------+------+---------------+----- 57 |    31 |   17 |
+	["item_lang"] |  -1 * pos = -1 causes this normalizer to be applied to facet_entry's This is primarily useful for facets.  For example, you could create
+	a metabib_field for language and mark it as a facet_field.  Applying
+	this index would allow the mapped language names (e.g. "French"
+	instead of "fre") to display as facets.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2012-01-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: 
+	Revert "TPAC: Uniform search lib / depth settings" Reverting partial commit that accidentally crept in, causing TPAC
+	breakage.  This reverts commit ea71899306e026bd0c9c91180a0af76a55fbec08.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Fix typo causing Javascript Shell to not enable DEBUG_CIENT != DEBUG_CLIENT Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-12-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/Makefile.am: Use the FTP site for
+	Xulrunner downloads releases.mozilla.org was causing trouble for us; the FTP site
+	appears to be more stable.  Oh, and bump the Xulrunner version slightly while we are at it.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-12-29  Mike Rylander <mrylander at gmail.com>
+
+	* : Merge remote-tracking branch
+	'eg-working/user/dbs/lp894052-version-upgrade' One merge conflict in 2.0-2.1-upgrade-db.sql silenced with -X
+	theirs.  See LP#894052 for details.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-12-28  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2: TPAC: Add
+	"preferred search location" preference setting Working towards parity with the JSPAC, give the user the ability to
+	set their preferred search library in account preferences via the
+	org selector. The value defaults to the user's home OU.  Also set a sane default of 10 search results per page in the absence
+	of any preference, as the default had been set to 5.  While we're in there, remove some of the inline styles and weird
+	markup in the user preference page, and refactor the
+	O:W:EGCatLoader:Account module to accept an easily-appended list of
+	preferences to be set.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org>
+
+2011-12-27  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: TPAC: Set
+	search_ou context in common loader By setting the search_ou context in load_common() after checking for
+	a valid user session, we can catch the remaining pages in TPAC in
+	which the default search library was not being set properly.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org>
+
+2011-12-27  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: TPAC:
+	Resolve conflict with master The changes for LP909111 ended up causing a conflict with this
+	branch.  Resolve! Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org>
+
+2011-12-27  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2: TPAC: Uniform
+	search lib / depth settings The current TPAC code uses logic embedded within the templates to
+	determine which org unit and depth to apply to searches.  This commit attempts to standardize the logic within the new
+	OpenILS::WWWW::EGCatLoader::Util::_get_search_lib() function and
+	sets the result as a new context variable, "search_ou". The org unit
+	is determined as follows (first matching condition wins): * specific CGI "loc" value * logged-in user's preferred search library * logged-in user's home org unit * specific CGI "physical_loc" value The depth is set as follows (first matching condition wins): * specific CGI "depth" value * depth of the chosen org_unit As of this commit, a library that wishes to set the a default search
+	org unit for any given user should set the "physical_loc" CGI param;
+	after the user performs their first search, the "loc" CGI param will
+	propagate through most interfaces. When a user clicks "Your account
+	log in", the user's preferred search library or home org unit will
+	be set as the new search lib.  At any time after that, the user can select a different org unit
+	from the org unit selector to explicitly set the "loc" CGI param.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org>
+
+2011-12-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: TPac:
+	improve search depth extraction Improves how we determine the depth of a search.  The Order of
+	operations: 1. Depth encoded within the search query, e.g. depth(2) 2. CGI depth param 3. Default is to match the depth of the searched org unit Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-09-29  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/main.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/defaults/preferences/prefs.js,
+	Open-ILS/xul/staff_client/server/cat/copy_editor.js: Reverse Copy
+	Location picker labels via WS Setting If the setting is set then place the name before the org unit. This
+	allows for typing of the start of the name without having to deal
+	with the org unit shortname "eating" the start of the label (and
+	thus type-in), but preserves the information the org unit provides.  As an example, instead of having to type: CONS : St To get close to
+	the default "Stacks" in a long list you could just type St And
+	likely get to, or close to, Stacks.  The option can be toggled from the Workstation Administration menu.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Conflicts: 	Open-ILS/xul/staff_client/chrome/content/main/menu.js 	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-23  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/record/copy_table.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPAC: Display
+	monograph parts In search results and record details, display monograph parts if
+	associated with a copy. Uses unapi for search results and json_query
+	for record details. Only generates the "Part" column in the copy
+	table if that record actually has a monograph part; otherwise the
+	column is not generated.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org>
+
+2011-12-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/Checkin.pm: 
+	SIP2: Fix transit home on checkin The Checkin doesn't need a destination_loc, but the item needs it
+	set.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Sarah E. Chodrow <sarah.chodrow at bibliotheca-itg.com>
+
+2011-12-22  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_overlay.js: SVF in
+	bib record summary: extract attrs on the server This repairs a FIXME within the custom bib overlay code related to
+	parsing metabib.record_attr stores within the JS.  Instead, now we
+	use an attr parsing utility function which compiles a regular hash
+	so the client no longer needs to parse it.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_overlay.js: support
+	SVF in staff client bib record summary This is in support of
+	https://bugs.launchpad.net/evergreen/+bug/822928, re: Cat Date So for example, let's suppose you want to store a "Cat Date" in MARC
+	tag 915, subfield a.  You could do this in the database: INSERT INTO config.record_attr_definition
+	    (name,label,filter,sorter,tag,sf_list) VALUES ( 'cat_date', 'Cat
+	Date', 'f', 't', '915', 'd' ); Add this to server/locale/en-US/cat_custom.properties (optional but
+	recommended): staff.cat.bib_brief.cat_date.label=Cat Date:
+	staff.cat.bib_brief.cat_date.accesskey= And then add something like this to server/skin/custom.js:     try {
+	netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");        var prefs =
+
+	Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces['nsIPrefBranch']);        prefs.setCharPref(
+	'oils.bib_brief.horizontal.dynamic_grid_replacement.data',            js2JSON([                 ["title",           "edition",  "editor",
+	                "cat_date"], ["author",          "pubdate",
+	                "edit_date",    "holds"], ["bib_call_number", "tcn",
+	            "create_date",  "items"] ])         );         prefs.setCharPref(
+	'oils.bib_brief.alternate_copy_summary.dynamic_grid_replacement.data',            js2JSON([                 ["title",       "edition",  "editor",
+	                "cat_date"], ["author",      "pubdate",
+	                "edit_date",    "holds"], ["call_number", "tcn",      "create_date",
+	            "items"] ])         );     } catch(E) {         dump('Error in custom.js trying to set
+	    oils.bib_brief.*.dynamic_grid_replacement.data: ' + E +
+	    '\n'); } Finally, re-ingest any records with tag 915d (you can simply edit
+	the MARC via the MARC Editor for a specific record, or if the
+	ingest.reingest.force_on_same_marc row in config.internal_flag is
+	enabled and you're not doing this during library hours, you can
+	re-ingest all records with UPDATE biblio.record_entry SET marc =
+	marc;) Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-21  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0661.data.yaous-opac-tag-circed-items.s
+	ql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.yaous-opac-tag-circed-items.s
+	ql: Wrap upgrade for "Tag previously circulated items" YAOUS Also fix a typo ("currenlty") and use the full "circulation" for
+	easier translation.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.yaous-opac-tag-circed-items.s
+	ql, Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac; indicate search
+	results previously checked out When a user is logged in to the tpac and performs a search, indicate
+	in the results set when any of the result items were ever checked
+	out by the logged in user.  Items will only be tagged when the related org setting is enabled
+	and the user has opted-in to circ history tracking.  New org unit setting is "opac.search.tag_circulated_items" / "Tag
+	Circulated Items in Results" In the search results, just below
+	title/author/callnumber/copy-count, a new line is displayed that
+	says "I have checked out this item before" with a purdy little
+	checkmark.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/place_hold_result.tt2: TPac:
+	Don't show part selector on hold result page Instead, duplicate the hold list's "part name in parens" display,
+	when a part was selected.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/header.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPAC: Change
+	title tooltip in results table to useful message From dbs's original commit: The tooltip that would display when hovering over the title of a
+	result in the results table was simply the URI-escaped version of
+	the title text - not particularly helpful. Change this to say
+	"Display record details" as an actual hint about what action will
+	occur when the user clicks on a title in the results list.  This modified commit changes the title to 'Display record details
+	for "<title>"' This commit also introduces the HTML plugin as a new
+	loaded-by-default template plugin.  Among other things, it's useful
+	for ensuring HTML attributes are safely encoded, moresoe than |html,
+	which does not escape quotes.  https://bugs.launchpad.net/evergreen/+bug/902979 Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-12-21  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/result/copy_counts.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPAC: Split
+	result copy counts into a separate template As Thomas Berezansky suggests, sites are likely to want to customize
+	the display of copy counts depending on whether they're consortial
+	sharers, how deep they want to display, whether they want to just
+	show the matching search scope... make it easy to customize by
+	moving the copy counts portion of the results table into a separate
+	template.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org>
+
+2011-12-21  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/record/copy_counts.tt2,
+	Open-ILS/src/templates/opac/parts/record/copy_table.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Improve display
+	of holds/copy counts on record details Based on some suggestions from Thomas Berezansky in LP 906168:   * Change the "Copies" header to "Available copies"   * Simplify the copy language to "# copies at <library>" (we still
+	    need the noun "copies" but "available" has been factored out)   * Create a "Holds" header and move the holds information under
+	  that * Put the "Available copies" and "Holds" into inline-block elements     so that they can take less vertical space on a wide screen but     will wrap on a narrow screen.    * Fix the line spacing between LI elements In addition, break up the lengthy summary TT2 file into a few
+	smaller parts. In particular, make a copy_counts.tt2 file as sites
+	are very likely to customize this to, in some cases, not show the
+	consortial counts, or in other cases to only show the consortial
+	count and current search library.  Also fix some horrible CSS issues in the header in which the "Place
+	hold" and "Add to list" buttons were above the title / image, as
+	well as remove some of the CSS manipulation to plain H2 elements
+	that gave them no top margin.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org>
+
+2011-12-18  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPAC: Display
+	additional levels of copy counts In line with the MassLNC TPAC suggestion, display the copy counts
+	for search results and record details not only at the consortial
+	level, but also at up to two additional levels of the org unit
+	hierarchy (but no deeper than the user has chosen to search).  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org>
+
+2011-10-07  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/opac/myopac/holds/edit.tt2: TPac; display
+	mono part in account holds list/edit Part label is appended to the title, wrapped in (parens).  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org>
+
+2011-10-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2: TPac: holds
+	placement on monographic parts Ability to place holds on monographic parts.  In the holds placement
+	form, if a record has parts, a parts selector will display in the
+	form allowing the user to optionally specificy a monographic part
+	for the hold.  If a record has no non-part copies, the user is required to select a
+	part, because, in such cases, the hold cannot be fulfilled without
+	selecting a part.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org>
+
+2011-11-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/Conta
+	inerCSV.pm, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0660.data.bib-container-csv-unapi-templ
+	ate.sql: bookbag CSV gets bib attrs; A/T unapi method * Added a bib record unapi retrieval utility method for
+	action/trigger templates.  * Updated the bookbag CSV template to include data for the
+	"item_type" record attribute both to have it and as an example of
+	how the unapi retrieval works.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-12-20  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/examples/fm_IDL.xml: Add "Last circulation date" field to
+	new rcl view Some libraries will want the option of filtering out copies which
+	have truly never circulated, so offering up the bare "last
+	circulation date" field rather than coalescing it with "create date"
+	will give report writers the ability to use an IS NOT NULL clause.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml: Last Circulation timestamp for
+	reports Specifically intended for Weeding reports.  Easily swapped out (if needed) to include legacy circ data, when
+	available from a migration.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca> Signed-off-by: Thomas Berezansky
+	<tsbere at mvlc.org>
+
+2011-09-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml: Hold ratios by pickup library for
+	reports Specifically intended for "point in time" reports.  In our case, per-library purchase alerts.  Uses Hold Copy Map table to get more accurate numbers for
+	copy/volume/part holds.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca> Signed-off-by: Thomas Berezansky
+	<tsbere at mvlc.org>
+
+2011-12-20  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/tests/datasets/concerto.sql: Escape the backslash to
+	avoid warning in PostgreSQL 9.0- In PostgreSQL 9.1, "standard_conforming_strings" is ON by default
+	and there's no warning - but previous versions of PostgreSQL will
+	see the backslash and throw a warning about how you haven't escaped
+	the backslash. Thanks to Thomas Berezansky for noticing.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org>
+
+2011-12-09  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/tests/datasets/concerto.sql: Add concerto.sql dataset
+	with callnums, copies, and URIs Useful for testing a fresh Evergreen database, the concerto.sql
+	dataset is an SQL file that adds 100 bib records and automatically
+	generates assorted call numbers and copies for 3 of the branches. 50
+	of the records include unadorned 856 fields and 25 of them have
+	located URIs (25 scoped at SYS1, and 10 scoped at both SYS1 and
+	BR3).  In the effort to make the one-shot load of sample bib / copy / call
+	number data broad and realistic, delete some of the entities, add
+	prefixes and suffixes to some of the call numbers, and include some
+	monograph parts and conjoined items.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org>
+
+2011-12-20  Dan Scott <dscott at laurentian.ca>
+
+	* templates_custom/opac/advanced.tt2: Remove top-level
+	templates_custom directory This top-level directory and version of advanced.tt2 slipped into
+	commit c9cdea869b5 and was noticed by Bill Erickson. It should not
+	be here.  Send it into oblivion.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-19  Dan Scott <dscott at laurentian.ca>
+
+	* .gitignore: Add built staff client dir to .gitignore as well Thanks to Thomas Berezansky for the suggestion; you can tell what I
+	haven't built on my system :) Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-19  Dan Scott <dscott at laurentian.ca>
+
+	* .gitignore: Add a .gitignore file suitable for master "git status" is painful in a source directory in which you're built
+	and installed Evergreen. This commit adds a .gitignore file that
+	masks most of the files and directories that you don't want to even
+	think about, in the hopes that the default Evergreen development
+	experience can be mo' betta.  Variations on this could be backported to rel_2_1 and rel_2_0 but
+	take care as some of the files that used to be source files in older
+	releases are now build from *.in files via autoconf.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0659.add_create_report_perms.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.report_perms.sql: Wrap upgrade
+	script for CREATE_REPORT_TEMPLATE permission Permissions to create report templates will automatically be added
+	to any group that currently has the ability to run reports as part
+	of the upgrade process; if you want to make use of the ability to
+	prevent some groups from creating ad-hoc reports, remove the
+	CREATE_REPORT_TEMPLATE permission from permission.grp_perm_map for
+	that group.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Reporter.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.report_perms.sql,
+	Open-ILS/web/reports/oils_rpt.js,
+	Open-ILS/web/reports/oils_rpt_folders.js: Add permission for
+	creating report templates Because we would like people to be able to run them, but not create
+	them.  Also, allow VIEW_REPORT_OUTPUT in reporter interface, so that you
+	can see the contents of shared output folders.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-11-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/2.0-2.1-upgrade-db.sql: Avoid updating deleted
+	call numbers for 2.0 -> 2.1 upgrade 25% of the call numbers on our production system are deleted, so
+	filtering out the deleted call numbers from the update in the 2.0 ->
+	2.1 upgrade saves a significant amount of time.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-08  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/myopac.js,
+	Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml,
+	Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: Show
+	Suspended holds as Suspended In the staff client and JSPac show the status of a suspended hold as
+	Suspended rather than something like "Waiting for copy".  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-10  Jason Stephenson <jason at sigio.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Fieldmapper.pm: Add
+	class_for_hint function to OpenILS::Utils::Fieldmapper.  Use this function to find a Fieldmapper class from the JSON hint or
+	class id: my $class = Fieldmapper::class_for_hint('au'); print("$class\n"); Will print: Fieldmapper::actor::user Signed-off-by: Jason Stephenson <jason at sigio.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/checkin.js: LP904915 Restore
+	call number columns in Check In interface Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: turn
+	objects (such as null) into empty strings when they're being treated as strings (with escape_html) during
+	printing Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0658.schema.acn_dewey_sort_fix.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.dewey-sort-fix.sql: LP# 902667 -
+	Wrap upgrade script for Dewey sorting Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-10  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.dewey-sort-fix.sql: Fix Dewey call
+	number sorting Ported over Koha commit aef8358c - fix for Koha Bug 4265.  Further
+	documented in Evergreen LP # 902667 Here's the description from the
+	commit message by Magnus Enger: C4::ClassSortRoutine::Dewey turns "306 Les" into "306_Les" for
+	items.cn_sort and MARC-field 952$6, which results in "306.46 Les"
+	being sorted before "306 Les" in the OPAC.  With this patch, "306
+	Les" is turned into "306_000000000000000_Les".  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-01  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Cronscript.pm.in: Fix the
+	POD in Cronscript.pm.in.  I lied when I said it includes Data::Dumper, so you don't have to.
+	It does include Data::Dumper, but if you want to use Data::Dumper in
+	your script, you still have to use Data::Dumper.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-01  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Cronscript.pm.in: Make
+	some improvements to Cronscript.pm.  Allow the session method to function when called more than once with
+	different service names.  Add some useful new methods: logout: Calls open-ils.auth.session.delete if we're logged in.  die_event: Causes a script to croak if the object passed in is an
+	event, or optionally a certain named event.  warn_event: Causes a script to output an error message if the object
+	passed in is an event, or optionally a certain named event.  Use OpenILS::Application::AppUtils.  Default to staff login in Cronscript->authenticate method.  Improve the Croncript.pm.in POD to include a better synopsis of its
+	features.  Clean up some other sections of the POD, remove the TODO section,
+	and add some SEE ALSO entries.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-12-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: TPAC: Assume that
+	templates are encoded in UTF-8 Per http://template-toolkit.org/docs/faq/index.html under "Why do I
+	get rubbish for my utf-8 templates?", Template::Toolkit does not
+	assume that templates are encoded in UTF-8, which runs counter to
+	current assumptions circa 2011.  Practically, this means that before this change any UTF8 characters
+	used for purposes such as Unicode art or otherwise would be garbled
+	in the generated Web page. This commit tells Template::Toolkit to
+	assume that the templates are UTF8 without forcing us to monkey with
+	byte-order markers.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-14  bott <bott at grpl.org>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: Allow for the page
+	offset when listing the "Result x of y" values.  The record details page did not show the page offset correctly, so
+	result 13 would show up as "Result 3 of ###", and result 23 would
+	also show up as "Result 3 of ###".  Signed-off-by: bott <bott at grpl.org> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-12-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js: Fix
+	can_have_copies checks Bibs aren't required to have sources. Thus, adjust all appropriate
+	locations to support a default state of "no source bibs can have
+	copies", without erroring out.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-12-14  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	Process still-shelved, canceled holds in clear-shelf process Holds that are canceled but still physically on the hold shelf are
+	processed like other holds during the clear-shelf process.  They
+	will be grouped in the same manner and if a custom post-clear status
+	is configured, copies linked to already-canceled holds will get the
+	custom status.  The only difference is already-canceled holds will
+	not be re-canceled during the clear-shelf process.  This change has the added benefit of leveraging another API call to
+	retrieve the shelf-expired holds instead of using its own custom
+	json-query.  See https://bugs.launchpad.net/evergreen/+bug/904332 Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-13  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Clear
+	hold shelf/shelf_expire time for pickup lib change If a hold is on the holds shelf and the pickup library changes,
+	clear the shelf_time and shelf_expire_time, since the hold is now in
+	transit.  This is particularly important for avoiding action_trigger events
+	for the "hold_request.shelf_expires_soon" hook for what is now an
+	in-transit item.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-06  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2: TPAC: Add
+	prefixes and suffixes to call number displays Call numbers can be associated with prefixes and suffixes meant for
+	display purposes; display these with the call numbers in search
+	results and record details.  Thanks to Lebbeous and Bill for the assist in sorting out the
+	remaining portion of the hairy json_query for the record display.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-11  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Make
+	canceled but still on the shelf holds show up Browse Hold Shelf otherwise can't see holds canceled after the item
+	was placed on the shelf.  This also causes the expired view to show canceled but still in on
+	the hold shelf status holds to show up.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-12-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0657.schema.address-alert.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.address-alert.sql: Stamping
+	upgrade for LP898248: Address Alert Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/actor/user/register.tt2,
+	Open-ILS/web/css/skin/default/register.css,
+	Open-ILS/web/js/ui/default/actor/user/register.js: Alert addresses
+	for patron registration : UI Add support for comparing user addresses to alert addresses.  When
+	an address is found, the address in question is styled (the header
+	row turns red) and the configured alert message is shown along the
+	top-right, where other warnings appear.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: Alert
+	addresses for patron registration : API Middle-layer API call for matching addresses to alert addresses open-ils.actor.address_alert.test(auth, orgid, fields) Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/conify/global/actor/address_alert.tt2,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Alert addresses for patron registration : configuration UI Conify UI for managing Alert Addresses Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.address-alert.sql: Alert
+	addresses for patron registration : DB/IDL DB and IDL components to support configuration of alert addresses.
+	The target use case for alert addresses is in the patron
+	registration interface.  When a patron's address matches an alert
+	address, the staff should be notified.  Alert address fields are treated as regular expressions.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-13  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/c-apps/oils_sql.c: json_query boolean function param
+	support Solves the following problem when passing boolean parameter values
+	to json_query functions using the 'from' construct.  E.g.  {"from" : ["some_func_name", true]} oils_sql.c:2568 open-ils.cstore: Error quoting key string [(null)] Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-12-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* : Merge remote-tracking branch
+	'working/collab/dbs/tpac-non-fixed-width' Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-12-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: RPAC: Remove one
+	formatting row from results One of the table rows was being inserted into every result simply to
+	provide a border that is better handled via CSS on the existing
+	useful elements. Begone.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: results use
+	floated DIVs instead of table layout Rather than a table containing a single row for the rather gross
+	purpose of placing the facet sidebar on the left, a little bit of a
+	divider between the facets and the results, and the results on the
+	right, just use a floated div and a relatively positioned div for
+	the two pertinent chunks of content. Bonus: one touch of CSS moves
+	the facet sidebar to the right instead of the left.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-11  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Record details -
+	inline style to classes Continue the march towards no inline styles in the record details
+	page.  Includes a small tweak for electronic resource display so
+	that the unordered list gains a bit of space on the left-hand side
+	from the image location.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-11  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/base.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPAC: Include
+	Chilifresh conditionally Rather than including Chilifresh JavaScript and table cells
+	unconditionally, only include the Chilifresh calls if an account has
+	been defined in the Apache environment.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-11  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/advanced.tt2: TPAC: Fix styling in
+	advanced searchbar Per Peter Lux's comment, we needed to fix the styling in the
+	advanced search bar. Marking the DIV id with "search-box" makes it
+	consistent with the searchbar in other interfaces.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-11  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/advanced.tt2: TPAC: Fix whitespace in
+	advanced.tt2 Indentation was non-standard following plux's addition of the basic
+	link in the advanced search UI; fix that up.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-09  Peter Lux <plux at upei.ca>
+
+	* Open-ILS/src/templates/opac/advanced.tt2,
+	templates_custom/opac/advanced.tt2: TPAC: Link to Basic Search from
+	advanced page The searchbar in basic search, results, record details offers an
+	option to get to advanced search - but advanced search doesn't offer
+	a way to get directly back to a basic search. Now it does; however,
+	some CSS is required to make it look consistent.  Signed-off-by: Peter Lux <plux at upei.ca> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-12-09  Art Rhyno <artrhyno at uwindsor.ca>
+
+	* Open-ILS/examples/opensrf.xml.example,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/ResolverResolver.pm: 
+	Added CUFTS support in ResolverResolver This is based on the CUFTS implementation for UPEI. This is very
+	closely modeled on the SFX implementation.  opensrf.xml.example has been modified to include a <resolver_type>
+	element for ResolverResolver; by default, SFX will be used and this
+	shouldn't break anything else. If you use CUFTS rather than SFX, you
+	can specify 'cufts'.  Signed-off-by: Art Rhyno <artrhyno at uwindsor.ca> Signed-off-by: Dan
+	Scott <dscott at laurentian.ca>
+
+2011-12-09  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Fix record
+	summary e-resource and copy display Electronic resources were wrapped with an ugly black line and no
+	differentiation from the outstanding text. Give them a light
+	background and remove the black line. Also, use an unordered list if
+	we have more than one URI to display.  Move the copy summary below the "Copies" heading that immediately
+	follows it for a more logical grouping of elements.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-09  Chris Sharp <csharp at georgialibraries.org>
+
+	* Open-ILS/src/extras/Makefile.install: Fix typo in comment in
+	Open-ILS/src/extras/Makefile.install.  Signed-off-by: Chris Sharp <csharp at georgialibraries.org>
+	Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+
+2011-12-08  Jason Stephenson <jstephenson at mvlc.org>
+
+	* README: Update the README for Ubuntu Precise Pangolin (12.04).  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Chris Sharp <csharp at georgialibraries.org>
+
+2011-12-08  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/extras/Makefile.install: Update
+	Open-ILS/src/extras/Makefile.install for Ubuntu 12.04.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Chris Sharp <csharp at georgialibraries.org>
+
+2011-12-09  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/result/facets.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Remove more
+	explicit widths from results page Refactor the facet sidebar such that headers consist of a floated
+	span and a div with no specific width; absent a specific width, the
+	button will float over top of text that might expand due to
+	translation.  Also remove the explicit table cell width for the results counter
+	column and move some inline styles over to CSS. More to be done in
+	results table but we are on our way.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-09  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: TPAC: Use padding
+	instead of explicit width for tabs Explicit widths work well for a combination of a specific font sizes
+	and a known string; however, in the context of translation, strings
+	may get longer than the explicit width allows. Using padding gives
+	us more flexibility to accommodate different font sizes and variable
+	length strings; the uniformity of the tab size will be sacrificed
+	but perhaps that is not such a bad thing.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-08  Dan Scott <dscott at laurentian.ca>
+
+	* : commit 6ebb789434cb554ce1036d92a4dded3ecf23b989 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Wed Nov 16 15:19:18
+	2011 -0500
+
+2011-12-01  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/advanced.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2: Propagate
+	search scope through advanced search interfaces If a user had a chosen search scope (via the CGI "loc" parameter),
+	it would be lost when switching to the advanced search interfaces.
+	Now we progagate the search scope through the advanced search
+	interfaces.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0656.LP893315_schema.function.filter_de
+	leted_acns_from_unapi.holdings_xml.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.LP893315_schema.function.filter_de
+	leted_acns_from_unapi.holdings_xml.sql: Stamping upgrade for
+	LP893315: filter_deleted_acns_from_unapi Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-25  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.LP893315_schema.function.filter_de
+	leted_acns_from_unapi.holdings_xml.sql: LP893315: Do not return
+	delected call numbers in holdings_xml Per LP893315, deleted call numbers were obscuring the actual active
+	URIs associated with a given bib record in a given scope at the
+	default limit of 5 results per record in unapi.holdings_xml.  Filtering out the deleted call numbers from the results seems like a
+	good idea, as we're generally interested in only showing the active
+	results (at least as in-db unapi is currently used). This also
+	addresses the problem of not showing active URIs when there are
+	active URIs to display.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-05  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Code comments and tweaks for lost processing This commit is intended to do the following: * Fix case where MISSING status is not retained for items   being sent 'home' (as it was in previous versions) * Be more explicit about when we unset the LOST status and when   we do not in checkin_handle_lost() * Prevent update of the copy in checkin_handle_lost() unless we   actually change the status * Restore log messages for special handling of LOST/MISSING   checkins away from 'home' * Provide additional code comments to clarify intended behavior Note: Given the current restructure, MISSING item behavior is no
+	longer affected by 'lost_immediately_available' setting.  That
+	seemed more bug than feature, and can be implemented later (perhaps
+	as a separate setting) if required.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org>
+
+2011-11-29  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Check OILS_SETTING_LOST_IMMEDIATELY_AVAILABLE in
+	checkin_handle_lost.  Check the value of OILS_SETTING_LOST_IMMEDIATELY_AVAILABLE before
+	changing the copy status in checkin_handle_lost. This makes the
+	setting actually do something.  Add a couple of blank lines to aid in readability.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-11-17  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Fix LP851000.  Remove about 14 lines from OpenILS/Application/Circ/Circulate.pm in
+	the checkin_handle_circ subroutine that check whether or not the
+	checkin happens at the copy's circ_lib and the value of the
+	circ.lost_immediately_available org unit setting.  This change causes the handle_lost subroutine to run regardless of
+	where the checkin takes place for a more consistent experience.  Whether or not billings are voided, overdues restored, etc. is still
+	determined by the copy's circ_lib.  Given how the hold targeter and transit code works, it does not
+	appear the the circ.lost_immediately_available setting could ever do
+	what it was intended to do. Given these changes to the code it is
+	now unnecessary.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-11-25  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: TPAC:
+	Protect against missing 901c in legacy MARCXML Bad MARCXML to which Evergreen has been unable to add a 901c happens
+	- particularly with legacy MARCXML. Currently, TPAC crashes hard
+	with an ugly error if a 901c is not found when attempting to display
+	the record in search results. In comparison, the JSPAC displays the
+	record without a problem.  This commit logs a warning and enables the TPAC to continue somewhat
+	gracefully (the problem record is simply skipped in the search
+	results).  A more robust solution may be to teach unapi.bre to add
+	the record ID to the results and to have the TPAC pull from that,
+	rather than relying on the MARCXML itself to contain the record ID.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-12-05  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0655.config.bib_source.can_have_copies.
+	sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.config.bib_source.can_have_copies.
+	sql: Add versioned upgrade script for "Bib source: can have copies" Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-15  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/util.js: Refactor retrieval of
+	cbs object into cat.util.get_cbs_for_bre_id().  Avoid code duplication.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-04  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/web/js/dojo/openils/opac/nls/opac.js,
+	Open-ILS/web/opac/common/js/config.js,
+	Open-ILS/web/opac/skin/default/js/rdetail.js: Add can have copies
+	check to the Add MFHD Record link in rdetail.  This prevents the button from the JSPAC from being able to add MFHD
+	records to the affected bib record.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-04  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: Modify
+	copy browser to check for bib_source.can_have_copies.  Add code to server/cat/copy_browser.js.  Add error string to
+	server/local/en-US/cat.properties.  Swap obj. for g. that was copied
+	from opac.js.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief.js: Modify
+	server/cat/bib_brief.js to check for source can have volumes.  Copy/paste code from chrome/content/cat/opac.js.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-01  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.xul,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties: 
+	Check for bib_source.can_have_copies in cataloging.  Retrieve the BRE and CBS object in the add_volumes method of
+	opac.js.  Check if the CBS can have copies, and if not, tell the user such and
+	return.  Also required adding an api entry in constants.js and a new message
+	in offline.properties.  This is the beginning of the client code changes. There are very
+	likely to be more.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-30  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.p
+	m, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.config.bib_source.can_have_copies.
+	sql: Add can_have_copies field to config.bib_source.  Add the column definition to config.bib_source in
+	002.schema.config.sql.  Insert TRUE into the column for the default sources created in
+	950.data.seed-values.sql.  Add the field definition to class id cbs in fm_IDL.xml.  Teach OpenILS/Application/Storage/CDBI/config.pm about new field.  Add upgrade script for config.bib_source.can_have_copies.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-01  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/version-upgrade/2.0-2.1-upgrade-db.sql: 
+	LP881774: Missing schema on function in 2.0-2.1 upgrade Although the search path is altered to include the evergreen schema
+	at the start of the upgrade, one of the functions in the evergreen
+	schema does not resolve when invoked without the explicit schema
+	later in the upgrade script. We address that superficial (but
+	failure provoking / time wasting) problem by qualifying the function
+	with the evergreen schema in this commit, but we should also find
+	out why the altered search path does not seem to be functioning in
+	the upgrade script.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-12-01  Dan Scott <dscott at laurentian.ca>
+
+	* : commit e0a936729ada587e33ab3a701901c3d0a1ed3acb Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Thu Dec 1 16:02:29 2011
+	-0500
+
+2011-11-01  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: When editing
+	cards, lock tab on apply changes Hopefully to prevent people from moving away before saving.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-11-01  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.patron_card_editor.sql: Seed
+	values/upgrade script for card edit perms Not assigned to anyone by default.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-11-01  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Check Profile
+	Editing Perms for Card Editor Don't allow Active/Primary card changes unless you have the ability
+	to edit the patron's primary profile group.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-11-01  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/actor/user/register.tt2,
+	Open-ILS/src/templates/actor/user/register_table.tt2,
+	Open-ILS/web/js/dojo/openils/actor/nls/register.js,
+	Open-ILS/web/js/ui/default/actor/user/register.js: Active/Primary
+	Editing for Patron Cards Changes "See All" into an editing interface, allowing for changing
+	of the active and primary state of each card.  Each requires a specific permission: UPDATE_PATRON_ACTIVE_CARD UPDATE_PATRON_PRIMARY_CARD Without the appropriate permission the interface will show the green
+	check or red x instead of the editing elements. If you don't have
+	either permission then the Apply Changes button is hidden.  As the editing interface exists, also show the "See All" button when
+	there is only one card, but not when registering a new patron. This
+	allows for toggling the lone card's active flag, as well as
+	replacing a card but leaving the old one active.  To ensure that you can do the above, and to avoid some other errors,
+	the new card on a patron is saved to the editCard variable, rather
+	than using patron.card(). This both allows for "Replacing" a new
+	non-primary card into place as well as avoiding issues with editing
+	the primary and active states at the same time (the interface would
+	try and update the new primary card with the old primary card's
+	barcode). Also, when checking for duplicate barcodes, update the
+	editCard with the barcode so the See All interface can show the new
+	card's barcode in the list properly.  Finally, included is localization for the All Cards interface
+	headers and buttons.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-11-16  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Tpac: ability to edit
+	name, description of bookbags later You could already name and describe when creating them, and now you
+	can edit that later.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-25  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql: 
+	LP896405: Address SQL upgrade issues getting to 2.2-alpha1 Martha Driscoll tried out the 2.2-alpha1 upgrade script and found a
+	few problems noted in this thread:
+
+	http://list.georgialibraries.org/pipermail/open-ils-dev/2011-November/007747.html"upgrade_log" does not exist > LINE 1: INSERT INTO
+	config.upgrade_log (version, applied_to) VALUES .  This fails because the "applied_to" column does not exist at this
+	point in the schema upgrade. Just remove the "applied_to" column
+	from the INSERT statement.  This will probably fail because most sites won't have applied 0526
+	to their production server, so move the statements outside of the
+	transaction.  Also, in my own testing I ran into: public / evergreen function namespace issues we tried to address
+	back in the 2.0(?) timeframe. New sites will have the is_json()
+	function in the evergreen namespace, while old sites will have it in
+	public, so we do _not_ qualify the function name and just let the
+	searchpath handle the resolution.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-25  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/1.2.1-1.2.2-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.2.2.0-1.2.2.1-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.2.2.1-1.2.2.2-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.2.2.2-1.2.2.3-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.2.2.3-1.2.3.0-upgrade.sql,
+	Open-ILS/src/sql/Pg/1.2.4-1.4-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.4-shadow_full_rec-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.4.0.5-1.6.0.0-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/2.0-2.1-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/2.0.3-2.0.4-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/1.6.1-2.0-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0-2.1-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.0-2.0.1-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.1-2.0.2-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.2-2.0.3-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.3-2.0.4-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.4-2.0.5-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.5-2.0.6-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.6-2.0.7-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.7-2.0.8-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.8-2.0.9-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.0.9-2.0.10-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/version-upgrade/2.1.0-2.1.1-upgrade-db.sql: 
+	Start collecting version-upgrade scripts in one spot Rename the upgrade scripts missing "-upgrade-db" in their name Add the 2.0.* upgrade scripts to version-upgrade Discard the really old upgrade scripts that don't necessarily match
+	what was actually packaged and released.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-23  Ben Shum <bshum at biblio.org>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Fix for LP894125 - reshelving interval Update to reshelving code to utilize actor.org_unit_ancestor_setting
+	function and properly retrieve org settings for
+	"circ.reshelving_complete.interval" for org unit or ancestors.  Signed-off-by: Ben Shum <bshum at biblio.org> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org>
+
+2011-11-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief.xul: Enable record
+	summary to be scrollable at larger font sizes The record summary at the top of the cataloguing interfaces appears
+	to determine its size based on the "normal" font size at load; then,
+	when a larger font size is applied to the page, the text gets hidden
+	by the fixed size of the groupbox.  Ideally the groupbox would
+	adjust to accomodate the larger font size, but after trying many
+	different approaches the best short-term approach seems to be to
+	enable overflow so that scrollbars can appear when necessary.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-11-21  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/misc_util.tt2: Limit display to
+	856 with ind1 = 4 and ind2 = 0 or 1.  Minor modification to Open-ILS/src/templates/opac/parts/
+	misc_util.tt2 that limits the display of 856 urls to that have
+	indicator 1 equal to 4 and indicator 2 equal to 0 or 1. These should
+	be those that point directly to the resource.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2: TPac: show
+	non-asset.uri 856 URLs on detail page Display "global" 856 URLs in record detail page.  A "global" URL in
+	this case is one that has no ownership and has not been extracted
+	out as an asset.uri.  As of right now, this is any 856 that has no
+	$9, $w, or $n subfield data.  Links are displayed directly after asset.uri links using the same
+	style.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-11-21  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Avoid redundant
+	install_cpan_force dependencies The "install" target and each of the generic distro targets in
+	Makefile.install included install_cpan_force; make the "install"
+	target more useful by factoring out the install_libdbi dependency so
+	that "install" is truly common again (and we only add the
+	install_cpan_force dependency once).  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-21  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Add install_yaz dependency
+	to debian and ubuntu Makefile.install To build SimpleServer 1.15 we need a version of yaz 4.2+, so add
+	install_yaz as a dependency for debian and ubuntu. This should have
+	been added in LP 872284 but was overlooked due to local testing and
+	didn't get any further testing before being committed.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-18  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-11-17  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js,
+	Open-ILS/web/opac/skin/default/js/result_common.js: Switch to new
+	Google Books API; make SSL friendly As implied in the title, this commit does two things.  First, it
+	switches to the new Google Books API (which is both imminent and
+	also necessary to make SSL calls work).  Though the information is
+	scant, from what I have read and experienced, we do not need an API
+	key to do searches and previews.  I have also not hit any kind of
+	unauthenticated limit in several days of heavy testing, so I would
+	figure we are safe (at this point) for normal end-user OPAC
+	browsing.  Second, all Google Book requests are now done over https.  This
+	eliminates the majority of mixed content warnings when browsing
+	securely, though you still get a warning when you actually do
+	preview a book.  In addition to possibly implementing protocol detection (rather than
+	doing https all the time as a "lowest" common denominator), there
+	are a few minor points where we might consider future changes.
+	Those points are commented within the code.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-11-17  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0652.data.vandelay-queue-bib-bucket-typ
+	e.sql,
+	Open-ILS/src/sql/Pg/upgrade/0653.schema.unapi-indb-optional-org.sql
+	,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-queue-bib-bucket-typ
+	e.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.unapi-indb-optional-org.sql: 
+	Stamp upgrade scripts for both unapi update and vandelay-to-bucket Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.unapi-indb-optional-org.sql: 
+	Default to org tree root for bre unapi funcs If the org unit ("site") parameter to
+	unapi.biblio_record_entry_feed() or unapi.bre() is equal to "-" or
+	NULL, default to the root of the org unit tree.  In cases where the
+	caller does not care to limit by site, determing the shortname of
+	the root org node is one less step the client now has to take.  Original patch from Mike Rylander.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/vandelay/inc/queue.tt2,
+	Open-ILS/web/css/skin/default.css,
+	Open-ILS/web/js/dojo/openils/vandelay/nls/vandelay.js,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay; copy
+	imported bib queue recs to bucket Adds a "Copy to Bucket" option within the Vandelay queue interface.
+	User is given the option to name the bucket.  If the bucket already
+	exists, the records are added to the existing bucket.  Otherwise, a
+	new bucket is created and the records are added.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-queue-bib-bucket-typ
+	e.sql: Vandelay; API for creating buckets from queues * Adds a new biblio record entry bucket type of "vandelay_queue" * Adds a new API call that allows callers to create new buckets (or
+	add to existing buckets), copying imported records from a vandelay
+	queue into the bucket.  open-ils.vandelay.bib_queue.to_bucket Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0651.schema.unnest-hold-permit-upgrade-
+	script-repair.sql: Repair errant explode_array in upgrade script.  The upgrade script 0562.schema.copy_active_date.sql included 2 calls
+	to explode_array after explode_array had been removed from the
+	baseline schema.  This upgrade just copies the contents of the
+	action.hold_request_permit_test function from the baseline schema to
+	repair the function for anyone following the upgrade scripts.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0650.function.copy_visibility_vs_peer_b
+	ibs.sql, Open-ILS/src/sql/Pg/upgrade/XXXX.temp.sql: Stamping upgrade
+	script for copy visibility vs peer-bibs fix Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.temp.sql: Distinct
+	cache_copy_visibility copy/record Because if you peer bib a copy to the bib it is on things don't like
+	you.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP.pm: Obey renewal rules for
+	SIP2 Checkout If local policy OR the selfcheck are set to not do renewals than
+	don't attempt them.  Also, return whether a renewal was attempted (success or failure) so
+	that the self check on the other end has a better clue what went on.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/opensrf.xml.example,
+	Open-ILS/src/asterisk/pbx-daemon/eg-pbx-allocator.pl,
+	Open-ILS/src/asterisk/pbx-daemon/eg-pbx-daemon.conf,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/JustInTime.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Event.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/EventGroup.pm: 
+	Improvement for telephony: just-in-time event revalidation One of the shortcomings with using the Action/Trigger based
+	telephony in Evergreen until now was that while you might have
+	overdue notices generated and sent to a system where Asterisk runs
+	for later calling, but if the notice was generated on a Saturday
+	night, and you have Asterisk set up not to place any calls again
+	until Monday morning, Asterisk has no way of revalidating that call
+	at the last minute.  That is, the system could not determine whether
+	the items that were overdue on Saturday night are still overdue on
+	Monday morning, and whether the call should still be made.  Now we have a workable solution to that.  The eg-pbx-allocator.pl script, which takes call files for Asterisk
+	from a "staging" directory and slowly drips them onto Asterisk's
+	spool can now consult an open-ils.justintime which in turn asks
+	open-ils.trigger whether given events, enumerated within the call
+	files themselves, are still valid.  open-ils.trigger is designed to run as a private service, so that's
+	why we need a public service that doesn't do anything too sensitive.  This open-ils.justintime service can potentially be extended to
+	offer other just-in-time information to the allocator right before a
+	call goes onto Asterisk's spool. For example, that might be a good
+	time to check the time of day and make a late decision on which
+	phone number to use for a given user (day_phone, evening_phone,
+	other_phone).  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0649.schema.fix_full_circ_count_view.sq
+	l,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_full_circ_count_view.sq
+	l: Stamped upgrade for full circ count view fix Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-29  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/extend-reporter.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_full_circ_count_view.sq
+	l: Use DISTINCT in counts to avoid dupes Otherwise you get: Legacy count + 2(normal count)(aged count) Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-29  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/extend-reporter.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_full_circ_count_view.sq
+	l: Full Circ Count View Amplifies Legacy Circs The current extend_reported.full_circ_count sums the legacy circ
+	count column, but this results in amplifying the count by the number
+	of current circs in the system.  This commit adds the legacy count
+	to the GROUP BY instead of summing it.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-11-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Skip shelved holds at checkout auto-fill Already happened for volume/title hold, but target map checking
+	wasn't checking to see if the current copy was shelved.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Net::Z3950::SimpleServer
+	1.15 should not require sedding Checking both versions of the packages listed on ftp.indexdata.dk,
+	the hardcoded path to yaz-config does not exist in Makefile.PL -
+	thus, we should be able to drop the "sed" instruction for 1.15.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-10-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Install yaz-4.2 and
+	Net::Z3950::Simpleserver 1.15 Net::Z3950::Simpleserver 1.14+ requires yaz 4.2.x, as well as
+	currently suffering from a Makefile.PL problem that involves a
+	hard-coded path to yaz-config
+	(https://rt.cpan.org/Public/Bug/Display.html?id=70444).  Provide a
+	sed command to resolve the latter problem and upgrade our "current
+	version of yaz" to yaz 4.2.x.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-09-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/extras/circ/alt_holds_print.html,
+	Open-ILS/web/opac/extras/circ/alt_holds_print.js: Fix a problem in
+	the clear holds shelf list printer This is a "special" interface that you get to via Admin -> For
+	Developers -> Local Administration in the staff client.  The addition features to one "side" of this hackish interface of
+	label affix and parts had caused breakage on the other "side."  This
+	fixes that.  Also improve document printing, making it less likely the progress
+	dialog itself gets printed.  One day this will be replaced with something better.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0648.function.merge_record_assets_meets
+	_acq.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.function.merge_record_assets_meets
+	_acq.sql: Stamped upgrade for asset.merge_record_assets fix Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-13  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.function.merge_record_assets_meets
+	_acq.sql: LP#849143 fix some gaps in bib record merging Tweaks asset.merge_record_assets such that it considers acquisition
+	line items and user requests, serial subscriptions, booking resource
+	types, biblio monograph parts, and biblio peer bib copy maps. I'm
+	not handling vandelay.queued_record.imported_as or any other
+	vandelay tables, but we may wish to do that too. We're also leaving
+	acq.acq_lineitem_history alone.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-01  Liam Whalen <lwhalen at evergreen-dev.catalogue.nrcan.gc.ca>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: Aligned the MARC
+	editor subfields to 'start' fixes long subfield display When viewing a record in the MARC editor that has extremely long
+	entries in a subfield, the output would align in the center of the
+	subfield making the output hard to read.  This patch adds an align:
+	'start' option to both the subfield, and the subfield code elements
+	 in the marcSubfield function to make the subfields align in a more
+	readable manner.  Signed-off-by: Liam Whalen
+	<lwhalen at evergreen-dev.catalogue.nrcan.gc.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-11-15  Mike Rylander <mrylander at gmail.com>
+
+	* : Merge remote-tracking branch
+	'eg-working/collab/phasefx/merged_bill_and_receipt_fixes'
+
+2011-09-13  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.xul: LP#848945 -
+	Hide Empty Libs checkbox The "Show Libraries With Items" button in Holdings Maintenance shows
+	all the libs with items regardless of the library/depth filters. One
+	problem is that when the list refreshes (whenever an item/volume is
+	edited, deleted, or added), staff using this feature have to
+	re-press the button, which can take a while for some bibs. This
+	branch removes this button and replaces it with a "sticky" checkbox
+	labelled "Hide Empty Libs".  This allows you to do almost the same thing; you can set the context
+	library to Consortium and the depth filter to the lowest depth,
+	which would normally show all libs, but then use the checkbox to
+	prune out the ones that have no children and no volumes(*). One
+	possible use case that we'd lose is the ability to show a specific
+	set of libs that don't already have volumes in addition to all the
+	libs that do.  * - Also, the test for whether to hide an org or not is very
+	simplistic, but easy to implement. A more aggressive test would hide
+	a library and all its descendants if none of the descendants have
+	volumes.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Patch from Jeff
+	Davis (SITKA) fixing cardless patron updates Quoth the bug report
+	(https://bugs.launchpad.net/evergreen/+bug/851110):   On our Evergreen 2.0.8 system, it sometimes arises that a patron's
+	  card gets deleted. If it was the patron's only card, it becomes
+	  impossible to add a new card to the account via the staff client.    How to reproduce:   1. Retrieve a patron record for a patron who has no associated
+	  card.  2. Click the Edit button.    3. Click Replace Barcode and enter a new barcode.    4. Click Save. This does not work - the process hangs, and if you
+	  hit Reload, you will find that your changes were not saved.    I believe this happens because some code in register.js assumes
+	  the patron has at least one card. I have a potential fix that this
+	  comment box is too small to contain ... uh, that is to say, I will
+	  post it momentarily.  Which he did, and I applied.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-22  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/barcode.js: Throw
+	out non-digit barcodes for strict check Characters like "." are valid for numbers, but not the algorithm.  Thus, we need to throw out "16.00" despite the check for "16.00" ==
+	Number("16.00") returning true.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-22  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/circ/copy_status.js: Don't check
+	barcode without strict enabled Item status was, unlike other interfaces, doing the strict check,
+	THEN looking at the checkbox and if it was checked return.  This caused issues when the barcode crashes out the strict checking.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/holds.js: Fix JSPac Hold Editor
+	Org Selector Don't wipe out all changes just because the OU was changed.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0647.data.hold-notification-cleanup-mod
+	.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.hold-notification-cleanup-mod
+	.sql: Stamped upgrade script for hold_notification update via A/T
+	cleanup module Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Cleanup.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.hold-notification-cleanup-mod
+	.sql: Hold notification creation A/T cleanup module New CreateHoldNotification Action/Trigger cleanup module that, when
+	linked to a hold-based event_definition, adds an entry into
+	action.hold_notification for each hold processed.  The main
+	user-facing change from this will be that the hold notification time
+	/ count in the staff client will now take A/T notices into effect in
+	addition to manually created hold notifications.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-18  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Collections.pm: 
+	Further support for "circ.collections.exempt" setting Added support for skipping users that have the
+	"circ.collections.exempt" setting in the API call: open-ils.collections.users_of_interest.warning_penalty.retrieve This call is an alternate entry point for finding users to consider
+	for collections processing Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-19  Steven Callender <stevecallender at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Reshelving update.  Update to the reshelving code to make it faster and utilize the new
+	status change time field on asset.copy.  Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-14  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/issues.tt2: TPac: Fix
+	glitch in displaying received holdings Under "issues held" on the record detail page, holdings summaries
+	for received issues are nested in an additional layer of array as
+	compared to MFHD-based holdings, so compensate.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-24  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Clear
+	shelf canceled holds notification fix After cancelling a batch of holds via the clear-shelf process,
+	before we send the holds off to action/trigger for potential
+	notification generation, re-fetch the holds from the DB to pick up
+	the calculated cancel_time value (i.e. get a real value for "now").
+	Otherwise, A/T may die attempting to create a DateTime object by
+	parsing "now".  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2,
+	Open-ILS/src/templates/opac/parts/record/issues.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPac; hold
+	success confirmation; redirect repairs 1. After a successful hold placement, provide feedback to the user
+	that the hold placement succeeded.  After placement, the user is
+	taken to a page (same page for failed holds) where the title(s) are
+	listed along with the success/failure information for each.  2. In some cases, the user may be redirected to the my account page
+	instead of the point of origin for holds placement.  This occurs
+	generally when the user is not already logged in and is asked to log
+	in prior to holds placement.  3. As a side effect, this change replaces one of the ornery
+	history.go(-1) actions with a true href/URL.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/awards.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPac; reduce
+	vertical space caused by chilifresh link CSS loaded from chilifresh forces a fixed height on the
+	.chili_review class, which causes significant vertical space
+	gobbling in the results and details pages.  Solution is to change
+	the chili_review container from a <div> to a <span>, where the
+	height has no effect.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-23  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/c-apps/Makefile.am, Open-ILS/src/c-apps/idlval.c: 
+	Make idlval build, rather than be dead code The tool "idlval" contained in Open-ILS/src/c-apps can be used to
+	check the correctness of fieldmapper definitions in files like
+	Open-ILS/examples/fm_IDL.xml - but currently does not have a build
+	target, nor does it compile cleanly due to the use of unspecified
+	OpenSRF header files. This commit adds a build target, fixes the
+	compile problems, and installs the tool in the bin directory.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2011-11-08  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml: Add link to cbs from bre via
+	bre.source -> cbs.id in fm_IDL.xml.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/summary.js,
+	Open-ILS/xul/staff_client/server/patron/summary_overlay.xul,
+	Open-ILS/xul/staff_client/server/patron/summary_overlay_horiz.xul: 
+	Show the patron account Create Date in both horizontal and vertical
+	patron summary panes Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	LP887822 mint_condition/Quality not set correctly during item creation.  Specifically, the Javascript object for a new item (acp) does not
+	explicitly set the mint_condition field, leaving it null. The item
+	attribute editor treats the null as false (which it displays as
+	"Mediocre" for that field). The database has a not null constraint
+	the corresponding column in asset.copy, and defaults to true. So a
+	new item in the attribute editor will show "Mediocre", but when
+	actually created, will become "Good".  This branch just sets mint_condition to true when an item is
+	created.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/password_reset.tt2: Tpac; repair login
+	link after password reset After a successful password reset, the UI offers a link to "Log In
+	to My Account".  Loging in this way would ultimately redirect the
+	user back to the password reset form.  This patch updates the Log In
+	link to point to myopac/main, which will direct the user to log in
+	first,  instead of pointing directly to /login, which, lacking any
+	other information, will return the user to the referer after logging
+	in.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-15  Mike Rylander <mrylander at gmail.com>
+
+	* : Merge remote-tracking branch
+
+	'eg-working/collab/berick/lp_888239_prevent_post-capture_hold_suspend'
+
+2011-11-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/password_reset.tt2: tpac; honor password
+	reset matching email setting If the "circ.password_reset_request_requires_matching_email" org
+	unit setting is enable, prompt the user to enter the email address
+	associated with the account and subsequently pass it on to the
+	password_reset api call.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-14  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/HoldingCode.js: Serials: in
+	the holding code mini-wizard, offer a dropdown for seasons This spares the user from having to remember the MFHD code for the
+	season, when dealing with periodicals issued by season (21 - 24 for
+	Spring - Winter, respectively).  This also applies sets the "scrollOnFocus" attribute to false for
+	the dijits within the mini wizard, as the jumpy behavior you get in
+	less-than-fullscreen staff client windows is otherwise maddening.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-14  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: tpac;
+	improve ssl and authentication redirection Create a better separation between pages the require SSL and those
+	that also require authentication.  This change has a number of
+	beneficial side effects: 1. If a user is already logged in and is somehow redirected to the
+	non-SSL version of a page requiring SSL (via, for example, some
+	external link), they are simply taken to the SSL equivlent of the
+	page first.  If they are found to be logged in, we're done.  If not,
+	they are directed to the login page like usual.  2. password_reset page now requires SSL (but not auth, obviously) 3. Removed the unnecessary warning about logging out on a non-SSL
+	connection.  We now redirect the user to the SSL version of logout
+	so, if they are in fact logged in, they can be successfully logged
+	out.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-14  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.fix-nonfiling-titles.sql: Reindex
+	is not just for non-filing indicators anymore Since we discovered the apostrophe parsing problem affects records
+	with text containing apostrophes at any position, don't limit
+	ourselves to non-filing indicator titles. In theory you might want
+	to reindex any record that contains an apostrophe, but in practice
+	we found the most confusion occurs with searching for titles - so
+	target those in the upgrade script.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-14  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.fix-nonfiling-titles.sql: Add the
+	search_normalize() variant to in-database And teach our normalizers to use search_normalize() instead of
+	naco_normalize() across the board.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-10  Dan Scott <dscott at laurentian.ca>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm, Open-ILS/src/perlmods/lib/OpenILS/Utils/Normalize.pm,
+	Open-ILS/src/perlmods/t/14-OpenILS-Utils.t,
+	Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Create a
+	search_normalize() variant of naco_normalize() In the quest to support searching text that contains leading
+	articles joined by an apostrophe - for example, "l'histoire" - such
+	that a searcher can enter either "l'histoire" or "histoire" and get
+	results - add a variant of naco_normalize() that does not strip the
+	apostrophe entirely, but rather replaces it with a space such that
+	the root word can be indexed appropriately.  This implementation refactors the OpenILS::Utils::Normalize code to
+	make the differences between search_normalize() and naco_normalize()
+	as clear as possible, but duplicates code significantly in the in-db
+	version of the code. Someday maybe the database can rely on
+	OpenILS::Utils::Normalize instead of inline functions :) Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-11  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.fix-nonfiling-titles.sql: 
+	LP825039: Add reingest logic for non-filing titles Rather than reindexing all titles that have a non-filing indicator,
+	this upgrade handles the known problematic cases (apostrophes with
+	leading articles). On our system that's 55K out of 2.2M records -
+	not bad at all.  We also ensure the format is set to MODS32 for title:proper, as
+	sites might have customized it on a MARC basis and we don't want to
+	reindex the records with NULL values due to a mix of format and
+	XPath.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-11  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.fix-nonfiling-titles.sql: Add
+	unnumbered upgrade script for non-filing titles Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/953.data.MODS32-xsl.sql,
+	Open-ILS/xsl/MARC21slim2MODS32.xsl: Index leading articles with
+	apostrophes correctly Titles with non-filing characters used to get separated by spaces;
+	not a problem in English with leading articles like "The" and "A"
+	which are followed by spaces anyway, but a significant problem for
+	French where "L'année" is not supposed to be turned into "L'
+	année".  To combat this, we define a titleNonfiling variant in the MODS32
+	stylesheets that ignores the second indicator and does not wrap
+	leading articles in the nonSort element, avoiding the injection of
+	unwanted spaces.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-26  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Make checkin retargeting parts-aware Skip part holds on copies san parts Skip part holds for parts not on
+	the copy Skip title holds for copies with parts Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-10-11  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/support-scripts/edi_pusher.pl: More filtering of
+	characters that could end up in PO JEDI template output Backslashes cause problems too.  Let's JSON encode this thing and
+	get it right once and for all.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Ben Shum <bshum at biblio.org> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-11-10  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/HoldingCode.js,
+	Open-ILS/web/js/ui/default/serial/subscription/issuance.js: Serials:
+	allow freer input in holding code mini-wizard In the Subscription Details interface of the Alternate Serials
+	Control View, under the Issuance tab, if you create a new issuance
+	you can now enter things like "01/02" in (say) the month field to
+	denote a combined January/February issue.  All those fields are now
+	free-form, whereas some of them used to be numeric only.  Also, avoid an occasional issue where an error message about
+	dijit.form.DateTextBox not being a constructor would appear in the
+	JavaScript console.  The problem was in a race condition among some
+	co-dependent JavaScript files that were all being loaded at the same
+	time.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-11-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/web/opac/common/js/RemoteRequest.js,
+	Open-ILS/xul/staff_client/chrome/content/util/network.js: LP88653
+	force SSL for requests from local XUL Modifies RemoteRequest.js to convert any http:// request URL to
+	https:// if the requesting location has a chrome:// protocol.  Modifies util/network.js such that any use of util.network.request
+	(as opposed to util.network.simple_request) will assume "secure" for
+	the resulting request.  Adds an example to the bottom of eg_vhost.conf for forcing SSL for
+	an entire site (OPAC and everything), courtesy of Dan Wells.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-11-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install, README: Fedora 16 updates to
+	README and Makefile.install Fedora 16 is out, we can improve the README and Makefile.install
+	some to better support it.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/holds/edit.tt2: TPac; disallow
+	certain actions for captured holds In the hold edit page, where users can update the pickup library,
+	suspend holds, etc. disallow actions that don't make sense for holds
+	that have already been captured.  These include suspending the hold
+	and changing the expire time.  This patch also replaces the confusing "Cancel" button in the hold
+	edit interface (which does not cancel the hold) with a "Go Back"
+	button which returns to the holds list.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/holds.tt2: TPac; batch hold
+	update detects suspension of captured hold If the user attempts to suspend a captured hold via batch hold
+	update, warn that user af the update the some holds may not have
+	been suspended and why.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/extras/ils_events.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Prevent
+	hold suspencion for captured holds in API This codifies at the API layer the standard Evergreen practice of
+	disallowing suspension of holds that have already been captured.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	prevent suspend in transit initial poking Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-09  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: 
+	XML.ignoreWhitespace causes syntax errors So remove it.  Disabling pretty printing appears to be enough to fix the marc
+	editor.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-11-09  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Cronscript.pm.in: Fix a
+	typo that snuck through the cracks in Cronscript.pm.in.  We had Opensrf::AppSession rather than OpenSRF::AppSession, which
+	isn't caught by the simple use_ok() tests that we largely rely on
+	for our current Perl test suite. In addition, when we manually
+	tested the change to Cronscript.pm.in, we didn't do both configure
+	&& make to ensure that the new version of Cronscript.pm reflected
+	the changes. Lots to learn, luckily the method wasn't being used by
+	anything else in Evergreen yet.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: Fix vanishing
+	whitespace in marc editor XML.ignoreWhitespace and XML.prettyPrinting cause whitespace to
+	vanish.  So disable them at the top of marcedit.js.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-10-31  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: lp849447: trival
+	stylistic tweaks - rename variable avoid double-negative - avoid 'Variable declared in conditional statement' perlcritic
+	gripe Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-11-08  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js: Protect
+	against slony replication lag, LP#621448 Make open-ils.circ.captured_holds.id_list.* API calls authoritative
+	within the staff client to avoid replication-lag related stale
+	displays.  Inspired by James Fournie at SITKA.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-11-07  Dan Scott <dscott at laurentian.ca>
+
+	* README: README: Use consistent endings (none!) for
+	titles/subtitles Most, but not all, of the titles/subtitles had colons appended. This
+	looks really weird in the Table of Contents, so try to be
+	consistently unweird and have no appended colons.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-07  Dan Scott <dscott at laurentian.ca>
+
+	* README: Backup the existing opensrf config files before copying Per a suggestion from Wolf Halton <wolf.halton at gmail.com>, create
+	backup versions of the opensrf configuration files when we're
+	copying the Evergreen example versions over, so that we can retrieve
+	the Jabber user names and passwords and domains from the backups (if
+	necessary).  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/body.tt2: TPac; detail
+	page "Search Results" page correction On the detail page, when the user selects the "Search Results" link
+	to return the original search results, return to the correct page in
+	the search.  The correct page will be the page where the currently
+	viewed record sits within the search.  Normally, this is the last
+	viewed results page.  However, if the user does some paging within
+	the detail page, enough to cross a page boundry, "Search Results"
+	will take them to the new page (i.e. the page w/ the current
+	record).  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-11-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	TPac; sort items out list by due date, oldest first Sort items most in need of return (i.e. oldest due date) to top.
+	This is done by replacing the call to
+	"open-ils.actor.user.checked_out", which does a lot more than we
+	need, in a way that does not support sorting/paging, with a simple
+	json_query.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-28  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/menu.js: Close All
+	Tabs shortcut Enable CTRL+Click on the close tab "X" to close all tabs.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-27  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/default/js/holds.js: LP#860845 hold
+	placement UI can break hold placement UI can break and give misleading error on Submit Adds some defensive coding, but since I don't quite grok everything
+	going on here, may not be the best fix.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-13  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Skip forced targeting of frozen holds Otherwise a frozen hold can be manually retargeted by staff and
+	captured.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/common/li_table.tt2,
+	Open-ILS/web/js/ui/default/acq/common/li_table.js: Acq: List
+	provider code in lineitem lists Along with selection list and purchase order, when an item is
+	attached to a purchase order, also show the provider code Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-24  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/misc_util.tt2: TPac; improved
+	UPC extraction Handle the case where a record has multiple UPC's.  When this
+	occurs, use the first UPC as the value for added content lookups as
+	necessary.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-11-01  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Search.pm: This
+	prevents the acq unified_search method from returning anything other
+	than the objects of the expected type.  This is to address LP 884991 in which Acq users get a perm error for
+	each result of a search that they don't have access to retrieve.
+	They shouldn't even know about the existence of anything they don't
+	have access to retrieve.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-11-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/hold_error_messages.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2: Tpac; hold
+	error message 18n string extraction repairs Make it possible for xgettext.pl (using
+	Locale::Maketext::Extract::Plugin::TT2) to extract hold error
+	message strings for translation.  The plugin is not quite smart
+	enough to extract wholly dynamic values from the templates, since it
+	(presumably) only parses the templates and does not execute them.
+	The solution is to wrap the strings in l() where they are defined.  Add an example for the EVENT_MSG_MAP for the event
+	PATRON_EXCEEDS_FINES.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-11-04  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0646.schema.lp854972_copy_counts_unshad
+	ow.sql: Correct oversight: replace old with new approach to upgrade
+	script versioning Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-20  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0646.schema.lp854972_copy_counts_unshad
+	ow.sql: Previously invisible copies showed as beige in the staff
+	client, they stopped doing this in 2.0 This is because in 2.0 the copy counts logic was moved from
+	open-ils.storage.biblio.record_entry.copy_count.staff to an
+	in-database function wrapped in
+	open-ils.search.biblio.record.copy_count.staff.  Both methods
+	returned various counts including an 'unshadow' count, however the
+	'unshadow' in the new database function was not completed and it has
+	only been returning a simple copy count rather than a count of opac
+	visible copies as it should be to replicate the old behaviour.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-06  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/acq/nls/acq.js,
+	Open-ILS/web/js/ui/default/acq/common/li_table.js: Acq: better error
+	message if trying to create PO without provider or agency Before now, if you leave either the provider or ordering agency
+	fields blank in the "Create Purchase Order" dialog, you get a
+	nonsensical warning about prepayment.  This fixes that.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-03  Liam Whalen <lwhalen at nrcan-rncan.gc.ca>
+
+	* Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql: Modified
+	authority.indexing_ingest_or_delete to update MARC data The authority.indexing_ingest_or_delete trigger in the update script
+	was missing a call to authority.propagate_changes which is
+	responsible for updating the MARC data of records affected by an
+	auhtority merge.  This patch adds the call to
+	authority.propagate_changes as it appears in the
+	authority.indexing_ingest_or_delete trigger from the file
+	999.functions.global.sql.  Signed-off-by: Liam Whalen <lwhalen at nrcan-rncan.gc.ca>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-21  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/conify/global/vandelay/match_set.tt2: 
+	Repair Vandelay match_set_tree link ctx.base_path includes the "/eg" portion of the path, so no need to
+	duplicate that in the template.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-06  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/acq/common/li_table.js,
+	Open-ILS/web/js/ui/default/acq/search/unified.js: Acq: fix a bug
+	that sometimes prevents the general search page from loading Within Acquisitions General Search, javascript included from one
+	file in the <head> relies on the variable "localeStrings" being
+	initialized by javascript included from a file in <body>.  Sometimes
+	the wrong javascript wins the race, you get an error about
+	localeStrings being undefined in the Javascript console, and the
+	page stops loading.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-11-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/fine_generator.pl: Fine generator;
+	raise multi-session mode recv timeout When fetching the batch of overdue circ IDs to process for fine
+	generation, wait a little longer for the data to arrive, since it is
+	a longer running DB query than most.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-11-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: forgot to update
+	upgrade_log Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-11-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0645.schema.null_svf_protection.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.null_svf_protection.sql: pin
+	upgrade version number Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-11-01  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.null_svf_protection.sql: 
+	Protect SVF normalizers against NULL values Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-11-01  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/Amazon.pm: 
+	Force Amazon AC requests to use 10-digit ISBNs Inspired by a patch submitted by Ian Bays <ian.bays at ptfs-europe.com>
+	via https://bugs.launchpad.net/evergreen/+bug/870171, this patch
+	takes the incoming key and, if it is longer than 10 characters (a
+	10-digit ISBN or Amazon ID), attempts to normalize it and return a
+	10-digit ISBN.  We don't normalize all incoming keys because some sites are horribly
+	abusing the 020 MARC field to include an Amazon ID instead of an
+	ISBN - but that works in practice and we'd rather not break working
+	installations if we can avoid it.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: Use ne on
+	line 631 of Actor.pm.  This is so that we stop getting errors like Argument "1319057146.8881216485.4819607085" isn't numeric in numeric
+	ne (!=) at /usr/local/share/perl/5.10.1/OpenILS/Application/Actor.pm
+	line 630.  in /openils/var/log/open-ils.actor_stderr.log Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-11-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Tpac; bookbag MARC retrieved via unapi Make sure the bookbag interface has access to metabib.record_attr's
+	by retrieving and parsing the marcxml via unapi
+	(get_records_and_facets).  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-31  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Cronscript.pm.in: Trivial
+	whitespace touchup to Cronscript.pm.in Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-31  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Cronscript.pm.in: 
+	OpenILS::Utils::Cronscript can have only 1 session.  Work around the above limitation by using OpenSRF::AppSession to
+	create a session for open-ils.auth in the authenticate method.  Also requires us to manually check if we're bootstrapped, since we
+	can't rely on OpenILS::Utils::Cronscript->session to do it for us.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-31  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Cronscript.pm.in: Add
+	authentication capability to OpenILS::Utils::Cronscript.  This allows the client script to call authenticate with a hash ref
+	of user information so that the user can login and get an authtoken
+	if needed.  It also stores the authtoken and authtime values for later
+	retrieval.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-31  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Tpac: show staff saved
+	searches on no-results page Not having it there is awkward for the user who relies on the
+	feature and enters a search term that gets no results.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/templates/opac/parts/staff_saved_searches.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Tpac: staff saved
+	searches expand/collapse, use right ou context for setting 1) Display staff saved searches collapsed by default. This makes the
+	facet display right underneath it more accessible in the case of
+	long search histories.  2) When checking the org unit setting for the limiting number of
+	searches to save, use the user's ws_ou as the context, since this is
+	a staff-client feature.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-27  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/examples/apache/eg.conf: A tweak to eg.conf to prevent
+	against the BEAST exploit in TLS/SSL Based on recommedation from
+
+	https://community.qualys.com/blogs/securitylabs/2011/10/17/mitigating-the-beast-attack-on-tlsSigned-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-10-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/holds/edit.tt2: Tpac: fix the
+	doubly wrapped holds editor For some reason it must have made since in the past to wrap this
+	interface in both parts/base.tt2 and myopac/parts/base.tt2, but
+	nowadays that results in having extra headers and footers around the
+	actual page contents, so the layout looks broken.  This fixes that. No other interfaces were doing this double
+	wrapping.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Redirect.pm: Tpac: Rename
+	orig_loc to physical_loc, for clarity's sake.  This is an OPAC parameter not so much meant for use by patrons at
+	home, but for users at machines physically located in libraries.  In
+	conjunction with OpenILS::WWW::Redirector, it helps those machines
+	"remember" what branch they're in.  Anyway, the name orig_loc doesn't make the parameter's meaning quite
+	as clear as it could whne you encounter it in code.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: Tpac:
+	clear the per-process cache of org-unit settings on each page load Any time saved is not worth the confusion of changes to org unit
+	settings not taking effect in the TPAC without an apache restart, or
+	worse, taking effect for some page loads but not others.  Actually authored by Bill.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0644.data.YAOUS-target-when-closed.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.YAOUS-target-when-closed.sql: 
+	Stamping upgrade script for YAOUS-target-when-closed Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm, Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.YAOUS-target-when-closed.sql: 
+	Add and use two YAOUS to allow hold targeting on copies at closed
+	OUs One YAOUS completely ignores the closedness of the circ lib of the
+	copy being tested for potential targeting.  The other YAOUS ignores the closedness of the circ lib IFF the circ
+	lib of the copy being tested matches the pickup lib of the hold
+	request.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/holds/edit.tt2: Tpac; holds
+	edit page format icon improvements * Fixed the image path to the format_icon * Use the format_label as the title for the format_icon image Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/coded_value_selector.tt2: TPac;
+	sort coded value maps by label alphabetically Affects languages, formats, and audience.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/circs.tt2: Tpac; style due-date
+	red/error for overdue items In the patrons items out list, if an item is overdue, style the due
+	date as "error" (i.e. bold red).  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-27  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/checkin.js: LP#860685 List
+	Actions and Print List fix List Actions and Print List broken in Check In interface when not
+	using "Fast Entry (Asynchronous)", due to the way we're using
+	list.refresh_row.  This fixes the internal list state for tracking
+	retrieved versus un-retrieved list rows.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: LP874597
+	password from phone # when cloning users Patron: password from phone # does not work when cloning users Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Z3950.pm: 
+	Z39.50 service filter repairs Do not attempt to filter out Z39.50 services by permission when
+	retrieveing the services in a non-authenticate manner (i.e. from
+	within the Z39.50 code).  Otherwise, the code will die on
+	$e->requestor->id, because there is no requestor.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-10-05  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Z39.50 local catalog fetch-more repairs Fixes the following problem: When paging through local catalog results in the Z39.50 interface,
+	paging off then end of the local results would result in an unknown
+	server error caused by trying to retrieve an empty list of records.  $list->{count} in this context is the overall hit count, not the
+	counts in the current page of results.  Note also if {count} is
+	zero, the list of IDs will be undef, so we use both.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-26  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/Checkout.pm: 
+	SIP2 Checkout "no-code" failure fix Instead of assuming that code exists on a response do more checks.  Specifically, a response code can be empty but not zero when there
+	is no defined event code for the failure code.  An easily tested case of this is standing penalties.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-10-26  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0643.data.populate_authority_simple_hea
+	ding.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.populate_authority_simple_hea
+	ding.sql: Stamping Upgrade script to populate
+	authority.simple_heading Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-26  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.populate_authority_simple_hea
+	ding.sql: Upgrade script to populate authority.simple_heading Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-06  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm: Avoid
+	a possible bug in selection list deletion This particularly matters for the "ephemeral," unnamed selection
+	list that Acquisitions General Search uses to hold bib records
+	represented as lineitems, as that list is deleted for the next run
+	of that kind of search.  It's possible to get lineitems onto that list that are in a state
+	other than "new".  Code that deletes this list first deletes the
+	lineitems that belong to it, but that code formerly assumed that
+	there are two types of lineitems. "new" ones (that should be
+	deleted) and ones that belong to purchase orders (that should be
+	deatched).  That doesn't necessarily cover all possible lineitems on
+	the picklist, so deletion ultimately fails.  This fixes that.  [update: now this bugfix incorporates a bugfix, the need for which
+	was detected by Ben Shum. See LP #869581] Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-25  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Provide a QP modifier for sorting NULLS FIRST in the
+	core SQL Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm,
+	Open-ILS/src/templates/opac/myopac/lists.tt2: Tiny bookbag
+	improvements Bookbag feed item sort order now defined Bookbag list sort order on the "My Lists" page is now less
+	agressively propagated Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2: TPac; holds format
+	icon follow-up fix 'bre' is no longer available to the templates.  use bre_id instead.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2: Tpac; repair format
+	icon display in holds lists * Fetch MARC XML from unapi to pick up metabib::record_attr's for
+	each record.  * Update format icon code in holds list to use new-style precompiled
+	format_icon Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Create a
+	meaningful bookbag class Combine two meaningless opac-auto classes into a single bookbag
+	class.  Also give a max-width to the bookbag description to prevent
+	action buttons from sprawling off to the right side of the screen.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2: TPAC: Remove unused
+	HTML from bookbags page A number of "hide_me" nodes were being kept on the page, only one of
+	which is actually referenced anywhere (to be displayed as help for
+	sharing). The rest are not invoked anywhere, so we delete them to
+	reduce the clutter and page size.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Strip inline
+	styles from bookbags page Also use a margin instead of width percentage to keep bookbag action
+	buttons closer to the bookbag title; with a full-width layout the
+	buttons were almost disassociated from the bookbag title.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	TPAC: avoid problem with HOLD_EXISTS event in hold placement If you place a hold on something that generates a HOLD_EXISTS event
+	(and no other events?) you get a 500 error from Apache and an error
+	in the logs saying "not a hash reference" about $result in the lines
+	I've changed here.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/hold_history.tt2: TPac; use
+	canned get_hold_status call for history UI For consistency, use the same get_hold_status BLOCK to determine
+	holds status display in the holds history UI.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: LP875819: Fix
+	SRU and Z39.50 default search index failures Per http://www.loc.gov/standards/sru/specs/cql.html : All parts of CQL are case insensitive [...] If any case insensitive
+	part of CQL is specified with both upper and lower case, it is for
+	aesthetic purposes only.  So fold the SRU qualifier and relation to lower case. This then
+	matches the srw.serverchoice entry that we already have in
+	config.metabib_search_alias so that default searches will
+	successfully point to the keyword index.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	TPac; Fetch authoritative user object in my-account Since user data changes in my-account, any time we fetch the fleshed
+	user object, fetch it within a transaction to avoid retrieval from a
+	(potentially lagging) DB replica.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: TPAC: Search text
+	box is weird in Firefox The span border was conflicting with the input border for the text
+	input box. Also addresses the text box being jammed against the
+	"for" word.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: TPAC: Restore a
+	width to search bar elements Use em's instead of pixels to better handle relative fonts at some
+	distant point in the future.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* README: Fix README issues Martha Driscoll <driscoll at noblenet.org> noted that the
+	create_database.sql script wasn't actually targeted by the psql
+	command, and also that there was an extraneous <code> tag in the
+	OpenSRF start command.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/contentslider.css: TPAC: Delete
+	contentslider.css as it is not being used Nothing references contentslider.css, it is noise.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css: TPAC: Remove
+	unused CSS from semiauto.css Ran a script that essentially did the equivalent of: for i in "semiauto.css definitions"; do     echo -n $i; echo -n " : "; ack -c -h "$i"
+	    Open-ILS/src/templates/opac Where there were no hits, I deleted the entry from semiauto.css.  Now things are getting manageable...  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/anon_list.tt2: TPAC: Localize
+	the "move to bookbag" string Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/opac/myopac/main.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Bring used CSS
+	definitions over from semiauto.css Convert ".red" class to ".alert", delete classes that were defined
+	in semiauto.css as being verified as being in use that are actually
+	no longer in use, and merge the remainder to style.css. This will
+	avoid one more HTTP request as well as a huge mess of CSS to have to
+	worry about carrying around.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm: 
+	CStoreEditor batch_retrieve repairs 1. If the caller provides additional cstore params, like flesh,
+	flesh_fields, etc. make sure we only use the first component of the
+	search (the list of identifier values) for the cstore search.  2. Determine the identifier field from the class being retrieved
+	instead of hard-coding it to be "id" Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: add some 1em margins
+	just to avoid text against the left edge Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0642.data.acq-worksheet-hold-count.sql: 
+	ACQ: Add open holds count to lineitem worksheet Includes a generic bre_open_holds_count reactor utility method Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: TPAC: Remove most
+	egregious fixed-width style attributes Attacking the most obvious width elements in style.css gives us a
+	usable TPAC display, albeit with some remaining cleanup in extremely
+	limited widths.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : TPac: Put staff saved searches in same div as facets on the
+	results page Also: make a minor improvement to bookbag sorting clicking heading
+	sort links a second time reverses order.  And on the record page, make them less ugly. We need to get rid of
+	this 974-px-wide business. It's ridiculous, and it keeps us busy
+	fighting CSS just to keep a silly grey margin on the right side of
+	the display, and it keeps us from using all available space.  We
+	need to simplify the CSS greatly, in fact. Let's bite that bullet
+	sooner than later.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-18  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/src/templates/opac/results.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac: Put staff saved
+	searches in same div as facets on the results page And on the record page, make them less ugly. We need to get rid of
+	this 974-px-wide business. It's ridiculous, and it keeps us busy
+	fighting CSS just to keep a silly grey margin on the right side of
+	the display, and it keeps us from using all available space.  We
+	need to simplify the CSS greatly, in fact. Let's bite that bullet
+	sooner than later.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-18  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/parts/filtersort.tt2: remove the Sort by
+	Relavance option from the bookbag sort options Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-18  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: add a
+	couple semicolons Not strictly required, but may as well save a picosecond of grief
+	for the next person who adds to this code.  Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-09-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	Create events for hold_request.cancel.patron When a patron cancels his/her own hold, create events for the (already-existing) hold_request.cancel.patron A/T hook.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-10-18  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	Re-fetch hold for cancel notify to correct timestamp Re-fetch the cancelled hold from the DB before passing it off to
+	action/trigger for notification processing.  Otherwise, A/T attempts
+	to perform date math on "now" instead of a valid timestamp and
+	subsequently croaks.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Fielder.pm: Cache
+	open-ils.fielder results by locale The problem was particularly visible in search facets, but existed
+	before: the cache key used for fielder results did not take locale
+	into account, so on a multi-locale system the first locale won and
+	populated the cache for all other locales.  Use a session locale if provided, otherwise default to the locale
+	set in opensrf.xml Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-18  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2: Add a
+	view-in-catalog link to bookbags Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-14  Sarah E. Chodrow <sarah.chodrow at bibliotheca-itg.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: Initial patch
+	from Sarah Chodrow on LP bug 849447.  Also check for standing penalties and expired cards when checking if
+	it is ok for the patron to checkout, charge_ok.  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     per
 sonal 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: Sarah E. Chodrow (sarah.chodrow at bibliotheca-itg.com) Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0641.schema.org_unit_setting_json_check
+	.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_unit_setting_json_check
+	.sql: Stamping upgrade script for LP#847973 Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.org_unit_setting_json_check
+	.sql: LP#847973 ensure JSON values for org settings I don't believe you can violate this constraint via the Library
+	Settings UI, but this will catch speedy-admins mucking directly in
+	the database.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-17  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac: Describe
+	bookbags mo' semantically Rather than "big-strong", use a heading (H2, as the previously used
+	H2 headings got bumped to H1) and wrap the description in a styled
+	DIV rather than just dumping it after a <br /> and wrapping it in
+	<em>.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-14  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/parts/anon_list.tt2,
+	Open-ILS/src/templates/opac/parts/filtersort.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac: bookbags - stop
+	trying to show everything at once Go back to displaying one bookbag at a time (not counting the
+	temporary list, when that is populated) This hopefully constitutes a usability improvement.  While it doesn't provide paging of bookbags themselves or of the
+	items therein, it should make that easier to do.  Showing all
+	bookbags and all their items made it nonobvious how paging would
+	even be expected to behave.  This also provides the same sorting for the items in the temporary
+	list as in real bookbags.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-17  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd: Typo: It's MARC, not
+	Marc. Sheesh.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/marc_new.xul: Save MARC
+	Default Template per-server In case you use multiple servers with different template lists Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/cat/marc_new.xul,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: 
+	Remember MARC Template selection Implement both a workstation default and "last used" for the MARC
+	template selector.  Workstation default is set with a new "Set Workstation Default"
+	button.  "Last used" will override the workstation default, and is updated
+	every time you load a template. It is forgotten when you close the
+	client.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-04  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/adv_global.js: Add "submit on
+	enter" to all advanced search boxes Instead of just the one with an ID specified.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-14  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0640.schema-acs-nfi.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema-acs-nfi.sql: Stamped upgrade
+	scrip fro authorities-indb-with-nfi Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/020.schema.functions.sql: Move the NACO
+	normalization script to earlier in the baseline schema installation
+	process, as it is now used in the authority schema Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-10-07  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema-acs-nfi.sql: Wrapper
+	functions in the baseline schema that were missed in the upgrade
+	script Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-10-07  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema-acs-nfi.sql: Address
+	regression causing main headings to be null because the thesaurus
+	code we not being extracted as it was before Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-21  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/aut
+	hority.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema-acs-nfi.sql,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: New in-db search
+	and browse of authorities with non-filing-indicator support Upon authority ingest, record simple authority headings for
+	searching, browsing and sorting.  Respect non-filing indicators, if
+	configured (configuration is the nfi field on
+	authority.control_set_authority_field).  Provide a full suite of search/browse top/center alpha/rank
+	functions based on authority tag, bib tag or browse axis at the
+	database layer.  Provide functions to find the main-only and full tag list, and
+	ref-variant versions of the previously defined functions.  Teach OpenILS::WWW::SuperCat (responsible for RESTful
+	feed-generating interfaces) to use new
+	OpenILS::Application::SuperCat methods that in turn use the database
+	methods.  The change should be transparent to users of SuperCat web
+	APIs.  Carry indicators over from authority main entries to bibs, when
+	applying them in the marc editor.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/bill2.js: LP873614
+	print_init error printing bill history xulG.url_prefix needs to be present for anything using util/print.js
+	and the Mozilla print strategy.  Alternately, we could duplicate the
+	logic behind url_prefix and bundle it into print.js :-/ Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-10-13  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/support-scripts/settings-tester.pl: 
+	settings-tester.pl - add TPac required modules Keep up with the TPac requirements in settings-tester.pl Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-13  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/support-scripts/settings-tester.pl: Add MARC::Record
+	2.0.1 minimum test to settings-tester.pl Wrap the use_ok() tests in a BEGIN block, per the recommendation of
+	the Test::More perldoc.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-13  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/support-scripts/settings-tester.pl: 
+	Settings-tester.pl whitespace Might as well complete the conversion of the file into modernity.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-13  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/support-scripts/settings-tester.pl: Remove
+	oils_web.xml test from settings-tester.pl In master, oils_web.xml is no more, replaced instead by Apache
+	configuration. Awww yeah.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-13  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/support-scripts/settings-tester.pl: Modernize
+	settings-tester.pl a bit * Add a section that checks for Evergreen services in
+	opensrf_core.xml * Ignore the qstore database credentials, as qstore is unused
+	currently * Split things off into subroutines for easier reading Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-22  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm: 
+	Fixes for SIP2 Fee Payment.  Skip negative or zero bill balance when paying multiple bills.  Log amount paid, bill id, balance, and amount remaining when paying
+	multiple bills.  Use sprintf("%.2f") to avoid floating point errors.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-13  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0639.schema.asset_merge_record_assets.s
+	ql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.asset_merge_record_assets.s
+	ql: Stamping upgrade for asset.merge_record_assets fix from dbs Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-13  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.asset_merge_record_assets.s
+	ql: Fix located URI merging in action.merge_record_assets() Perhaps due to the unexpected results of the XPath expression, which
+	returns a count of nodes for subfields, etc, rather than just a
+	count of the number of 856 datafields, NULL was being concatenated
+	onto a string - which of course made the string NULL.  Use COALESCE() to prevent the NULLness from spreading and enable
+	action.merge_record_assets() to do the right thing.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-09-27  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/acq/invoice/view.tt2,
+	Open-ILS/src/templates/acq/lineitem/findbib.tt2,
+	Open-ILS/src/templates/acq/lineitem/related.tt2,
+	Open-ILS/src/templates/acq/lineitem/worksheet.tt2,
+	Open-ILS/src/templates/acq/picklist/brief_record.tt2,
+	Open-ILS/src/templates/acq/picklist/list.tt2,
+	Open-ILS/src/templates/acq/picklist/user_request.tt2,
+	Open-ILS/src/templates/acq/po/view.tt2,
+	Open-ILS/src/templates/acq/search/unified.tt2,
+	Open-ILS/src/templates/actor/user/register.tt2,
+	Open-ILS/src/templates/circ/selfcheck/main.tt2,
+	Open-ILS/src/templates/conify/global/action_trigger/event_definitio
+	n_data.tt2,
+	Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2,
+	Open-ILS/src/templates/conify/global/config/barcode_completion.tt2,
+	Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.
+	tt2,
+	Open-ILS/src/templates/conify/global/config/coded_value_map.tt2,
+	Open-ILS/src/templates/vandelay/inc/progress.tt2,
+	Open-ILS/src/templates/vandelay/inc/queue.tt2,
+	Open-ILS/src/templates/vandelay/inc/upload.tt2,
+	Open-ILS/web/conify/global/actor/org_unit.html,
+	Open-ILS/web/conify/global/admin.html,
+	Open-ILS/web/js/dojo/openils/widget/GridColumnPicker.js,
+	Open-ILS/web/js/dojo/openils/widget/TranslatorPopup.js,
+	Open-ILS/web/reports/oils_rpt.xhtml,
+	Open-ILS/web/reports/oils_rpt_builder.xhtml,
+	Open-ILS/web/reports/oils_rpt_editor.xhtml,
+	Open-ILS/web/reports/oils_rpt_folder_window.xhtml,
+	Open-ILS/web/reports/oils_rpt_param_editor.xhtml,
+	Open-ILS/xul/staff_client/server/admin/cash_reports.xhtml,
+	Open-ILS/xul/staff_client/server/admin/closed_dates.xhtml,
+	Open-ILS/xul/staff_client/server/admin/copy_locations.xhtml,
+	Open-ILS/xul/staff_client/server/admin/hold_pull_list.xhtml,
+	Open-ILS/xul/staff_client/server/admin/hold_pull_list_classic.xhtml
+	, Open-ILS/xul/staff_client/server/admin/non_cat_types.xhtml,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml,
+	Open-ILS/xul/staff_client/server/admin/stat_cat_editor.xhtml,
+	Open-ILS/xul/staff_client/server/patron/ue.xhtml,
+	Open-ILS/xul/staff_client/server/patron/user_edit.xhtml: More
+	self-closing cleanup All div and span tags in tt2, js, html, and xhtml files.  Ignored .xml files, as they are not (to my knowledge) served as
+	text/html.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-27  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.
+	tt2, Open-ILS/src/templates/vandelay/inc/attrs.tt2,
+	Open-ILS/src/templates/vandelay/inc/queue.tt2: Replace self-closing
+	divs with open/close divs XML != HTML Traditionally, Vandelay templates were parsed as XML on the server
+	for DTD replacement.  With the advent of locale::maketext for
+	templates, Vandelay no longer needs to be parsed as XML.  However,
+	not parsing as XML leaves any self-closing divs (<div/>) intact in
+	the final source, which are treated as opening divs in text/html.
+	This patch replaces self-closing divs with open/close pairs.  https://bugs.launchpad.net/evergreen/+bug/860676 Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-26  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP.pm: Verify session before
+	trying any transactions in SIP->pay_fee.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-12  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/lists.tt2: TPac: One prefers to
+	download CSV, not to display it For the "Download CSV" operation in the TPac "My Lists" interface,
+	provoke the user's browser to download the file, rather than
+	displaying the file in a new tab/window.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/xul/staff_client/server/index.xhtml: Give OrgTree.js a
+	locale, always We started generating locale-specific OrgTree.js files many moons
+	ago, and now no longer provide a "default" locale in the root of the
+	common/js directory. The result was that the index.xhtml page for
+	the staff client was throwing an "_l is undefined" exception;
+	largely meaningless, as it seems that the OrgTree isn't even used on
+	that page, but noise that doesn't need to be in the JavaScript
+	console.  Here we correct that exception by providing a locale, and hopefully
+	prevent any further copy/paste mistakes.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/c-apps/oils_auth.c: Authentication block logging * Login too-many-auth-failures message at Info level instead of
+	Internal * Log the username getting blocked Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-10-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0638.schema.unapi.sitem-fix.sql: Fix
+	cut-paste-o in unapi.sitem, re stream and unit subobjects~ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-12  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0637.schema.renewal_checkout_counting.s
+	ql: Incorrect version number in the upgrade script Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0636.data.grace_period_extend.sql: 
+	copy-paste-o from the seed data Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Fix z39.50 import isbn and issn searches on local catalog.  Make cat_search_z_style_wrapper do identifier searches for isbn and
+	issn.  Modify the_quest_for_knowledge to accept identifier searches for
+	isbn and issn.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-16  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/z3950.js,
+	Open-ILS/xul/staff_client/server/cat/z3950.xul: Add Show In Catalog
+	button to Z39.50 Import.  Changes to z3950.xul: Add show_in_catalog command.  Add button next
+	to Mark for Overlay button.  Changes to z3950.js: Enable/disable Show In Catalog button whenever
+	Mark for Overlay button is enabled/disabled.  Add code for
+	show_in_catalog to open the record detail screen in a new tab.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-12  Dan Scott <dscott at laurentian.ca>
+
+	* README: README: For master, focus on PostgreSQL 9.1 Given that the backports for Debian and Ubuntu already offer
+	PostgreSQL 9.1, and Fedora 16 (out in a few weeks) comes with 9.1,
+	focus on 9.1 where it is available.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/extras/Makefile.install, README: Add
+	instructions/targets for Ubuntu/Debian PG9.1 No Fedora/RHEL/CentOS changes due to my lack of test environment.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* README: Fix README for 9.1+ DB creation instructions Also fix 9.0 typo of - instead of _ in filename.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-11  Dan Scott <dscott at laurentian.ca>
+
+	* README: README: Minor whitespace cleanup Just to get the indentation standardized on second and subsequent
+	lines of bullets. No big whoop.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-11  Ben Shum <bshum at biblio.org>
+
+	* README: Change PostgreSQL 9 source for Ubuntu Lucid users.  Currently, Ubuntu Lucid does not have backport options for
+	PostgreSQL 9.  Instead, most community members who use Lucid have
+	been using Martin Pitt's PPA as an external repository source.
+	Signed-off-by: Ben Shum <bshum at biblio.org> Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-11  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: TPac: Use
+	workstation to determine staff Instead of user agent, which may be set easily by anyone, use the
+	presence of a workstation ID to determine "staff" use of the TPac.  This is much less likely to be spoofed or incorrect due to things
+	like previous use of the extension version of the client in Firefox.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-10-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/advanced/global_row.tt2: TPac;
+	repairs to advanced search query propagation In some cases, TPac will duplicate components of an advanced search
+	query into the advanced search rows.  This patch fixes that with
+	better array handling, particularly with CGI param search components
+	that do not have corresponding analogs at a given array position
+	(i.e.  starting out with arrays of different sizes) Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-07  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: Protect
+	against undefined value as ARRAY reference We should not assume that the caller is going to supply an array
+	(empty or not) of addresses or cards in the input values for the
+	open-ils.actor.patron.update method.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Galen
+	Charlton <gmc at esilibrary.com>
+
+2011-09-25  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/tests/datasets/edi_scratch/baker_taylor.ordrsp.jedi.pl: 
+	fix another POD glitch Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-25  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Picklist.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/bib
+	lio.pm, Open-ILS/src/perlmods/lib/OpenILS/Utils/CStoreEditor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/ModsParser.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Redirect.pm,
+	Open-ILS/src/perlmods/xt/author/pod.t: fix up POD - avoids some noise when building the Perl modules for   distributions that check for correctness when converting   POD to man pages - add a an author test, taken straight from the Test::Pod   documentation, for POD correctness Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-11  Galen Charlton <gmc at esilibrary.com>
+
+	* : Merge remote branch
+	'working/user/berick/marc-stream-importer-read-repair' Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-10-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Fix broken
+	Net::Z3950::SimpleServer 1.14 install Pin the install of Net::Z3950::SimpleServer to the
+	known-to-work-with yaz 3.0.x version, 1.12. 1.14 introduced
+	dependencies on yaz 4.1.x that can't be easily worked around.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Galen
+	Charlton <gmc at esilibrary.com>
+
+2011-07-21  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/Makefile.install: Correct varname for
+	PostgreSQL RPMs On Fedora, Red Hat, and CentOS, we were still trying to install the
+	set of PostgreSQL RPMs for PostgreSQL 8.4 using PGSQL_84_RPMS.  This
+	had been updated to PGSQL_90_RPMS to match the updated database
+	version - using the right varname resolves the problem (at least on
+	Fedora).  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-10-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Stamping baseline
+	schema for previous commit Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/upgrade/0637.schema.renewal_checkout_counting.s
+	ql: Fix, as provided by Doug Kyle, for LP#822918 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0636.data.grace_period_extend.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.grace_period_extend.sql: 
+	Stamped upgrade script for Grace Period Closed-Date Extension
+	features Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm, Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.grace_period_extend.sql: Grace
+	period auto extension and backdate awareness Grace period auto extension: Default is "grace periods don't auto extend".  OU setting turns on grace period auto extension. By default they
+	only do so when the grace period ends on a closed date, but there
+	are two modifiers to change that.  The first modifier causes grace periods to extend for all closed
+	dates that they intersect. This is "grace periods are only consumed
+	by open days." The second modifier causes a grace period that ends just before a
+	closed day, with or without extension having happened, to include
+	the closed day (and any following it) as well. This is mainly so
+	that a backdate into the closed period following the grace period
+	will assume the "best case" of the item having been returned after
+	hours on the last day of the closed date.  Backdate grace period awareness: By moving grace period calculations into a shared location
+	backdating can check the grace period, including extensions. If it
+	finds that the backdate is within the grace period (before or after
+	extension) then instead of voiding the fines for after the backdate
+	it instead voids all fines for the circulation. This emulates what
+	would have happened (no fines) if the item had been checked in at
+	the time the backdate was made to take effect.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-10-07  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/templates/conify/global/config/coded_value_map.tt2: 
+	trival typo fix Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-10-07  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/skin/custom.js.example: control
+	client dump statements through pref Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-10-07  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: TPac:
+	Jump-to-details on first result page only When activated, jump-to-record-details-on-1-hit should only come
+	into play on the first page of results.  In other words, if page 2
+	of a search has 1 item, do not jump to the record details page for
+	that item.  Instead, show page 2 of the search results.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/result/facets.tt2: TPac; start
+	new facet "search" on page 0 When selecting a facet, thereby appending it to the current search,
+	start the search over at the first page.  In other words, don't drop
+	into page X of a new search, since there may be no page X of the new
+	search.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-06  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/c-apps/oils_auth.c: fix authentication failure Ensure that the auth_limit values are read when open-ils.auth
+	initializes, not during oilsAuthInit().  This solves a problem
+	observed on brick-based setups where authentication could
+	incorrectly fail because the drone that processes
+	open-ils.auth.authenticate.complete didn't have the the block count
+	value initialized yet.  Also fixed type nit when compare the fail count to the block limit.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/patron/place_hold.js: Fix "0
+	holds created" message on successful hold Caused by results not always being an array.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm: 
+	TPac: My List add/remove page anchor fix Removed /g modifier from URL anchor regex to prevent URLs with
+	multiple page #-anchors.  This change primarily affects IE which
+	includes #-anchors in the referer header.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-10-04  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/acq/common/li_table.js,
+	Open-ILS/web/js/ui/default/acq/common/li_table_pager.js,
+	Open-ILS/web/js/ui/default/acq/search/unified.js: Really add
+	*entire* selection list to a purchase order, when desired, and generally do what a user would expect when, in Acq, the user
+	executes an operation on "all items".  This addresses LaunchPad bug #810030.  The fundamental issue is that an AcqLiTable, which is used in
+	several different ways in different interfaces, may be representing
+	items on a selection list (for example), but it doesn't necessarily
+	know all of the items that belong to that selection list.  It only
+	knows what it has drawn.  This addresses that deficiency by teaching the getSelected() method
+	some new tricks so that it can consult the server in the various
+	ways appropriate to getting a list of /all/ the items on a selection
+	list, a purchase order, a virtual PO, a set of search results, etc.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-05  Dan Scott <dscott at laurentian.ca>
+
+	* README: Fix copy-paste-o: "su - postgres" to become postgres Thanks to sal_ in IRC who caught this nugget! Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-05  Dan Scott <dscott at laurentian.ca>
+
+	* README: README: Explicitly identify accounts for commands Add a preamble to the beginning listing all of the accounts
+	referenced in the instructions (Linux accounts, PostgreSQL accounts,
+	Evergreen administrator accounts). Also move the Developer
+	Instructions to the start to follow the natural order of operations.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-05  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Avoid collecting facet data for non-facet fields If a config.metabib_field (Admin -> Server Admin -> MARC
+	Search/Facet Fields) starts out as a facet field but is later
+	changed, data for that facet can still bubble up since it has
+	already been extracted.  This patch prevents facets for
+	config.metabib_field entries whose facet_field=false from getting
+	collected/cached for search results.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0635.data.opac.jump-to-details-setting.
+	sql: TPac: jump to details page on single hit When enabled, any time an OPAC search yields 1 result, the user will
+	be redirected to the record detail page for that result.  This
+	change adds 2 new org unit settings, one to control the behavior in
+	the staff client, the other to control the public catalog.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-04  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd: Fix typo in lang.dtd:
+	"instantenous" Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-04  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/lang.dtd/es-ES.po: i18n: Fix es-ES illegal use of
+	'%' in lang.dtd The '%' character is used to include previously defined blocks in
+	DTD files; would be nice if translate-toolkit gave a more obvious
+	error to alert us to this rather than saying the en-US doesn't
+	validate and dying.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-04  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/about.html: Slightly
+	updated about.html for rel_2_1 Not sure we want to actually keep listing individuals in this file -
+	there's a lot more credit to spread around - but at least I can
+	bring it somewhat up to date with current info.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-10-04  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0634.security_lockdown.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.security_lockdown.sql: pin version
+	for upgrade script Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.security_lockdown.sql: Unwrapped
+	upgrade script for security lockdown Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_chrom
+	e.xul,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_offli
+	ne.xul,
+	Open-ILS/xul/staff_client/chrome/content/auth/controller.js,
+	Open-ILS/xul/staff_client/chrome/content/main/main.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/server/OpenILS/util_overlay.xul: Require
+	permission or pref to debug in client Disables all debug functions I know of unless: 1 - You have new DEBUG_CLIENT permission (after login) This should work even on operator change.  Once a given debug
+	interface is open you can change operator back.  2 - You have a client with the debug preference enabled This causes the client in all places I touched to think you have
+	DEBUG_CLIENT This also allows debugging *before* login, including in
+	the Standalone interface.  Debug functions I know of: Debug box on login page (already protected by pref) Debug items in
+	    Admin menu Venkman     Javascript Shells     Inspector     Chrome List CTRL+SHIFT+F7 debug box in overlays Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/auth/controller.js: Clear
+	password from password_prompt post-login Otherwise it remains as the plain text value.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-10-04  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/lang.dtd/ru-RU.po: i18n: Fix ru-RU lang.dtd problem No ampersands at the end of a string! Breaks moz2po horribly.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-04  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0633.new_print_method.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.new_print_method.sql: pin version
+	for upgrade script Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js,
+	Open-ILS/xul/staff_client/chrome/content/util/print_win.js: Switch
+	to Modal printing Prevents an OS-level race condition on window focus.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.new_print_method.sql: Unwrapped
+	upgrade script for print.custom_js_file Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/xul/staff_client/chrome/content/util/print.js,
+	Open-ILS/xul/staff_client/chrome/content/util/print_win.js: Remove
+	in-template javascript, add script files Adds support for a print_custom.js file and an org unit specified
+	file.  If either exists and contains a print_custom function it will be
+	called before printing to allow for DOM manipulation.  If neither exists the print_win.js file will call all functions it
+	has defined.  In addition, if any code sets do_print to false the window will
+	close instead of attempting to print.  The print_custom function will receive the type of template used, if
+	any.  This only applies to "Receipt Template" based print jobs, and
+	the type in question is the "Type" that shows in the template
+	editor.  Functions defined in print_win.js: print_init     Main function, checks for print_custom and does final printing print_do_sums     Does summing of values.  print_check_alt     Does swapping out of template blocks with display:none styling.  print_check_noprint     Disables printing under certain circumstances.  For more information about usage of the print_do_sums,
+	print_check_alt, and print_check_noprint functions check the
+	comments in print_win.js.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-10-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0632.data.username-limit-settings.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.temp.sql: Stamped upgrade script
+	for username limit settings Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-26  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.temp.sql: Unwrapped, badly named
+	upgrade script Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/myopac/update_username.tt2,
+	Open-ILS/web/opac/locale/en-US/opac.dtd: Wording change on username
+	error Add that they may be restricted by policy.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/templates/opac/myopac/prefs.tt2,
+	Open-ILS/web/opac/skin/default/js/myopac.js: Username Change Limits Default is "Only allowed to change username if it looks like a
+	barcode".  There is a "Lock Username Changes" option to disallow username
+	changing via the OPAC entirely, useful if syncing usernames to an
+	outside source.  There is also a username change limit disabling option that, if
+	enabled and the Lock option is disabled, allows the previous
+	behaviour of unlimited username changes.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/templates/opac/myopac/update_username.tt2,
+	Open-ILS/web/js/ui/default/actor/user/register.js,
+	Open-ILS/web/opac/skin/default/js/myopac.js: Username Rules In TPac, enforce the "username can't look like a barcode" rule.  Add
+	new setting for username validation. If set, usernames must match.
+	Add patron registration checks for usernames:     No spaces     If set, can look like a barcode (initial/no username picked)     If set, can look like a username     If both set, must look like one of them Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/update_email.tt2,
+	Open-ILS/src/templates/opac/myopac/update_username.tt2,
+	Open-ILS/web/opac/skin/default/js/myopac.js,
+	Open-ILS/web/opac/skin/default/xml/myopac/myopac_summary.xml: 
+	Require password to change email/username Alter backend to check password period, not just for password
+	changes.  Add form elements for asking for current password to JSPac
+	and TPac.  Add handling for said form elements where needed.  Add
+	handling for "incorrect password" events in TPac.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	TPac: Default Password Strength Rule Every other password interface seems to have it.  Implemented as a
+	single regex in this case.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/auth/session.js: When
+	workstation is invalid request a new seed The original one may no longer be valid Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-01  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/opensrf.xml.example,
+	Open-ILS/src/c-apps/oils_auth.c: Make more auth values configurable Amount of time seed is valid Amount of time to keep failure count in
+	memcache since last auth event Number of failures before locking out
+	auth attempts Also, remove seed from memcache once it has been used once.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-08-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/c-apps/oils_auth.c: Brute Force protection for
+	authentication Count auth failures in memcache.  If 10+ have occurred cause
+	failure.  After 90 seconds of no activity counter resets.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-30  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: link asset.copy_template.status to
+	config.copy_status in the IDL If nothing else, this provides a dropdown for status in the copy
+	template editor (the one for Serials, under the admin menus, not the
+	one on the copy editing interface).  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-10-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Make sure baseline
+	schema is up to date Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-10-03  Dan Scott <dscott at laurentian.ca>
+
+	* build/tools/update_db.sh: Fix update_db.sh to set eg_version
+	correctly psql wants --set=VARNAME=VALUE, we had -set VARNAME=VALUE; tested
+	this fix and it works with PostgreSQL 9.0.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/searchbar.tt2: TPAC: Fix
+	searchbar typo by closing div Nesting of divs was thrown off, resulting in the footer appearing in
+	the wrong place in search results / record display / etc, with the
+	result that the footer inherited the 974px width instead of full
+	100% width.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Dan Scott <dscott at laurentian.ca>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0631.schema.located_uri_visiblity_fix.s
+	ql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.located_uri_visiblity_fix.s
+	ql: LP865817: Fix Located URI visibility test Wrapped upgrade script for LP865817.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/300.schema.staged_search.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.located_uri_visiblity_fix.s
+	ql: Correct Located URI visiblity Located URIs should be visible when they exist at the search context
+	org unit or an ancestor thereof.  However, before the change
+	embodied in this commit, they effectively acted exactly like copies,
+	making records visible anywhere within the context+depth range.  An example, using the stock example OU hierarchy:  * Before this change, a Located URI with an owner of BR1 would
+	 cause its record to show up in a search at (or scoped to via a
+	depth parameter) BR1, SYS1 or CONS.   * Before this change, a Located URI with an owner of SYS1 would NOT
+	 cause its record to show up in a search at (or scoped to via a
+	depth parameter) BR1!  * After this change, a Located URI with an owner of BR1 will cause
+	 its record to show up only in a search with a context OU of BR1,
+	irrespective of depth scoping.   * After this change, a Located URI with an owner of SYS1 WILL cause
+	 its record to show up in a search with a context OU of BR1 or SYS1,
+	regardless of depth scoping.  Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: TPAC: No need for a
+	26px padding on the header bottom 26px on the bottom of the header was giving a bit too much space to
+	the header.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-10-03  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/topnav.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Replace
+	dashboard images with CSS Also gets rid of a number of tables and a bunch of CSS definitions
+	with hard-coded widths that will cause trouble when longer
+	translated terms get dropped into place.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-10-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/result/facets.tt2: Tpac: expand
+	facet display fix When only one facet is collapsed, make sure we can expand it.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-30  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/src/templates/opac/parts/result/facets.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac: Facets on
+	results page Show search facets along the left side of the results page.
+	Clicking on a facet re-runs the current search with the  new facet
+	appeneded.  Selected facets are styled to indicate they are
+	selected.  Clicking on a selected facet removes that facet from the
+	set of selected facets (i.e.  it backs out the facet).  TODO: update CSS to match default Evergreen skin Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/common/js/org_utils.js,
+	Open-ILS/web/opac/skin/default/js/rdetail.js: JSPAC: Fix a bug (I
+	think) in orgIsMine(), and show more MFHD holdings ...  ... when search scope would have it so.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-10-03  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: Tweak the tab shape
+	in TT OPAC A slight modification to the "tab" elements throughout the OPAC to
+	make them look more like tabs on a file folder.  I found the rounded
+	off bottoms less attractive, so I flattened them out to flow more
+	evenly with the rest of the page.  Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-03  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/src/templates/opac/parts/footer.tt2,
+	Open-ILS/src/templates/opac/parts/homesearch.tt2,
+	Open-ILS/src/templates/opac/parts/topnav_logo.tt2: Have TTPac
+	utilize gradient friendly, transparent PNG files for the Evergreen
+	logo Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-10-02  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/footer.tt2,
+	Open-ILS/src/templates/opac/parts/topnav.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Simple CSS
+	gradients for the header/footer Firefox, Safari, Chrome, Opera, and the Android browser support
+	gradients. Use them. iOS 5 will support gradients. IE does not,
+	naturally, but support is promised for IE 10.  Including better IE support.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-20  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/advanced.tt2,
+	Open-ILS/src/templates/opac/cnbrowse.tt2,
+	Open-ILS/src/templates/opac/home.tt2,
+	Open-ILS/src/templates/opac/login.tt2,
+	Open-ILS/src/templates/opac/mylist.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/base.tt2,
+	Open-ILS/src/templates/opac/place_hold.tt2,
+	Open-ILS/src/templates/opac/record.tt2,
+	Open-ILS/src/templates/opac/results.tt2: TPAC: Remove the printnav
+	bar from all screens Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-20  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Revamp the search bar
+	to a narrative, single-line style Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/summary.tt2: Add the
+	remaining extras back to the record details Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/opac/parts/record/series.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2: TPAC: and then
+	there were series Also, tighten up spacing considerably.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Move the copies up
+	higher Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/opac/parts/record/extras.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Remove "Expand all
+	extras" as there are fewer extras to expand Cleaner.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-19  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/opac/parts/record/body.tt2,
+	Open-ILS/src/templates/opac/parts/record/extras.tt2,
+	Open-ILS/src/templates/opac/parts/record/subjects.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Going for the Jungle
+	skin feel (like Amazon) Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-30  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/advanced/global_row.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2: TPac: propagate
+	searches to advanced search page The link that takes users to the advanced searc page now propagates
+	any existing (well, all) search URL params.  The change required
+	some minor augmentation to the code that builds the advanced search
+	form.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: LP740320: Make
+	<enter> submit the new bookbag dialog For the keyboard jockeys out there - if the enter key doesn't
+	submit, the UI reviewer will not commit.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-26  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/opac/skin/default/xml/page_rdetail.xml: Initial
+	dialog isn't quite wide enough, here's a hackish way to fix it Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-26  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/opac/skin/default/xml/page_rdetail.xml: Should
+	probably use a more common button rather than the one for the
+	advanced search Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-26  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: This makes more
+	sense as an alert; the Dojo dialog has no button which is not
+	user-friendly.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js,
+	Open-ILS/web/opac/skin/default/xml/page_rdetail.xml: Markup-based
+	dijit.Dialog implementation, inspired by and based on a patch from
+	Joseph Lewis in https://bugs.launchpad.net/evergreen/+bug/787162 Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/en-GB.po,
+	build/i18n/po/TranslatorPopup.js/en-GB.po,
+	build/i18n/po/User.js/en-GB.po,
+	build/i18n/po/XULTermLoader.js/en-GB.po,
+	build/i18n/po/acq.js/en-GB.po,
+	build/i18n/po/admin.properties/en-GB.po,
+	build/i18n/po/auth.properties/en-GB.po,
+	build/i18n/po/capture.js/en-GB.po,
+	build/i18n/po/cat.properties/en-GB.po,
+	build/i18n/po/circ.properties/en-GB.po,
+	build/i18n/po/common.properties/en-GB.po,
+	build/i18n/po/conify.dtd/en-GB.po,
+	build/i18n/po/conify.js/en-GB.po, build/i18n/po/db.seed/en-GB.po,
+	build/i18n/po/fm_IDL.dtd/en-GB.po,
+	build/i18n/po/ils_events.xml/en-GB.po,
+	build/i18n/po/lang.dtd/en-GB.po,
+	build/i18n/po/multiclass_search_help.html/en-GB.po,
+	build/i18n/po/offline.properties/en-GB.po,
+	build/i18n/po/opac.dtd/en-GB.po, build/i18n/po/opac.js/en-GB.po,
+	build/i18n/po/patron.properties/en-GB.po,
+	build/i18n/po/pickup_and_return.js/en-GB.po,
+	build/i18n/po/pull_list.js/en-GB.po,
+	build/i18n/po/register.js/en-GB.po,
+	build/i18n/po/reports.dtd/en-GB.po,
+	build/i18n/po/reports.js/en-GB.po,
+	build/i18n/po/reservation.js/en-GB.po,
+	build/i18n/po/selfcheck.js/en-GB.po,
+	build/i18n/po/vandelay.dtd/en-GB.po: i18n: Merge en-GB translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/en-CA.po,
+	build/i18n/po/TranslatorPopup.js/en-CA.po,
+	build/i18n/po/User.js/en-CA.po,
+	build/i18n/po/XULTermLoader.js/en-CA.po,
+	build/i18n/po/acq.js/en-CA.po,
+	build/i18n/po/admin.properties/en-CA.po,
+	build/i18n/po/auth.properties/en-CA.po,
+	build/i18n/po/capture.js/en-CA.po,
+	build/i18n/po/cat.properties/en-CA.po,
+	build/i18n/po/circ.properties/en-CA.po,
+	build/i18n/po/common.properties/en-CA.po,
+	build/i18n/po/conify.dtd/en-CA.po,
+	build/i18n/po/conify.js/en-CA.po, build/i18n/po/db.seed/en-CA.po,
+	build/i18n/po/fm_IDL.dtd/en-CA.po,
+	build/i18n/po/ils_events.xml/en-CA.po,
+	build/i18n/po/lang.dtd/en-CA.po,
+	build/i18n/po/multiclass_search_help.html/en-CA.po,
+	build/i18n/po/offline.properties/en-CA.po,
+	build/i18n/po/opac.dtd/en-CA.po, build/i18n/po/opac.js/en-CA.po,
+	build/i18n/po/patron.properties/en-CA.po,
+	build/i18n/po/pickup_and_return.js/en-CA.po,
+	build/i18n/po/pull_list.js/en-CA.po,
+	build/i18n/po/register.js/en-CA.po,
+	build/i18n/po/reports.dtd/en-CA.po,
+	build/i18n/po/reports.js/en-CA.po,
+	build/i18n/po/reservation.js/en-CA.po,
+	build/i18n/po/selfcheck.js/en-CA.po,
+	build/i18n/po/vandelay.dtd/en-CA.po: i18n: Merge en-CA translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/pt-BR.po,
+	build/i18n/po/TranslatorPopup.js/pt-BR.po,
+	build/i18n/po/User.js/pt-BR.po,
+	build/i18n/po/XULTermLoader.js/pt-BR.po,
+	build/i18n/po/acq.js/pt-BR.po,
+	build/i18n/po/admin.properties/pt-BR.po,
+	build/i18n/po/auth.properties/pt-BR.po,
+	build/i18n/po/capture.js/pt-BR.po,
+	build/i18n/po/cat.properties/pt-BR.po,
+	build/i18n/po/circ.properties/pt-BR.po,
+	build/i18n/po/common.properties/pt-BR.po,
+	build/i18n/po/conify.dtd/pt-BR.po,
+	build/i18n/po/conify.js/pt-BR.po, build/i18n/po/db.seed/pt-BR.po,
+	build/i18n/po/fm_IDL.dtd/pt-BR.po,
+	build/i18n/po/ils_events.xml/pt-BR.po,
+	build/i18n/po/lang.dtd/pt-BR.po,
+	build/i18n/po/multiclass_search_help.html/pt-BR.po,
+	build/i18n/po/offline.properties/pt-BR.po,
+	build/i18n/po/opac.dtd/pt-BR.po, build/i18n/po/opac.js/pt-BR.po,
+	build/i18n/po/patron.properties/pt-BR.po,
+	build/i18n/po/pickup_and_return.js/pt-BR.po,
+	build/i18n/po/pull_list.js/pt-BR.po,
+	build/i18n/po/register.js/pt-BR.po,
+	build/i18n/po/reports.dtd/pt-BR.po,
+	build/i18n/po/reports.js/pt-BR.po,
+	build/i18n/po/reservation.js/pt-BR.po,
+	build/i18n/po/selfcheck.js/pt-BR.po,
+	build/i18n/po/vandelay.dtd/pt-BR.po: i18n: Merge pt-BR translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/ru-RU.po,
+	build/i18n/po/TranslatorPopup.js/ru-RU.po,
+	build/i18n/po/User.js/ru-RU.po,
+	build/i18n/po/XULTermLoader.js/ru-RU.po,
+	build/i18n/po/acq.js/ru-RU.po,
+	build/i18n/po/admin.properties/ru-RU.po,
+	build/i18n/po/auth.properties/ru-RU.po,
+	build/i18n/po/capture.js/ru-RU.po,
+	build/i18n/po/cat.properties/ru-RU.po,
+	build/i18n/po/circ.properties/ru-RU.po,
+	build/i18n/po/common.properties/ru-RU.po,
+	build/i18n/po/conify.dtd/ru-RU.po,
+	build/i18n/po/conify.js/ru-RU.po, build/i18n/po/db.seed/ru-RU.po,
+	build/i18n/po/fm_IDL.dtd/ru-RU.po,
+	build/i18n/po/ils_events.xml/ru-RU.po,
+	build/i18n/po/lang.dtd/ru-RU.po,
+	build/i18n/po/multiclass_search_help.html/ru-RU.po,
+	build/i18n/po/offline.properties/ru-RU.po,
+	build/i18n/po/opac.dtd/ru-RU.po, build/i18n/po/opac.js/ru-RU.po,
+	build/i18n/po/patron.properties/ru-RU.po,
+	build/i18n/po/pickup_and_return.js/ru-RU.po,
+	build/i18n/po/pull_list.js/ru-RU.po,
+	build/i18n/po/register.js/ru-RU.po,
+	build/i18n/po/reports.dtd/ru-RU.po,
+	build/i18n/po/reports.js/ru-RU.po,
+	build/i18n/po/reservation.js/ru-RU.po,
+	build/i18n/po/selfcheck.js/ru-RU.po,
+	build/i18n/po/vandelay.dtd/ru-RU.po: i18n: Merge ru-RU translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/hy-AM.po,
+	build/i18n/po/TranslatorPopup.js/hy-AM.po,
+	build/i18n/po/User.js/hy-AM.po,
+	build/i18n/po/XULTermLoader.js/hy-AM.po,
+	build/i18n/po/acq.js/hy-AM.po,
+	build/i18n/po/admin.properties/hy-AM.po,
+	build/i18n/po/auth.properties/hy-AM.po,
+	build/i18n/po/capture.js/hy-AM.po,
+	build/i18n/po/cat.properties/hy-AM.po,
+	build/i18n/po/circ.properties/hy-AM.po,
+	build/i18n/po/common.properties/hy-AM.po,
+	build/i18n/po/conify.dtd/hy-AM.po,
+	build/i18n/po/conify.js/hy-AM.po, build/i18n/po/db.seed/hy-AM.po,
+	build/i18n/po/fm_IDL.dtd/hy-AM.po,
+	build/i18n/po/ils_events.xml/hy-AM.po,
+	build/i18n/po/lang.dtd/ar-AR.po, build/i18n/po/lang.dtd/hy-AM.po,
+	build/i18n/po/multiclass_search_help.html/hy-AM.po,
+	build/i18n/po/offline.properties/hy-AM.po,
+	build/i18n/po/opac.dtd/hy-AM.po, build/i18n/po/opac.js/hy-AM.po,
+	build/i18n/po/patron.properties/hy-AM.po,
+	build/i18n/po/pickup_and_return.js/hy-AM.po,
+	build/i18n/po/pull_list.js/hy-AM.po,
+	build/i18n/po/register.js/hy-AM.po,
+	build/i18n/po/reports.dtd/hy-AM.po,
+	build/i18n/po/reports.js/hy-AM.po,
+	build/i18n/po/reservation.js/hy-AM.po,
+	build/i18n/po/selfcheck.js/hy-AM.po,
+	build/i18n/po/vandelay.dtd/hy-AM.po:  i18n: Merge Armenian (hy-AM) translation from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/cs-CZ.po,
+	build/i18n/po/TranslatorPopup.js/cs-CZ.po,
+	build/i18n/po/User.js/cs-CZ.po,
+	build/i18n/po/XULTermLoader.js/cs-CZ.po,
+	build/i18n/po/acq.js/cs-CZ.po,
+	build/i18n/po/admin.properties/cs-CZ.po,
+	build/i18n/po/auth.properties/cs-CZ.po,
+	build/i18n/po/capture.js/cs-CZ.po,
+	build/i18n/po/cat.properties/cs-CZ.po,
+	build/i18n/po/circ.properties/cs-CZ.po,
+	build/i18n/po/common.properties/cs-CZ.po,
+	build/i18n/po/conify.dtd/cs-CZ.po,
+	build/i18n/po/conify.js/cs-CZ.po, build/i18n/po/db.seed/cs-CZ.po,
+	build/i18n/po/fm_IDL.dtd/cs-CZ.po,
+	build/i18n/po/ils_events.xml/cs-CZ.po,
+	build/i18n/po/lang.dtd/cs-CZ.po,
+	build/i18n/po/multiclass_search_help.html/cs-CZ.po,
+	build/i18n/po/offline.properties/cs-CZ.po,
+	build/i18n/po/opac.dtd/cs-CZ.po, build/i18n/po/opac.js/cs-CZ.po,
+	build/i18n/po/patron.properties/cs-CZ.po,
+	build/i18n/po/pickup_and_return.js/cs-CZ.po,
+	build/i18n/po/pull_list.js/cs-CZ.po,
+	build/i18n/po/register.js/cs-CZ.po,
+	build/i18n/po/reports.dtd/cs-CZ.po,
+	build/i18n/po/reports.js/cs-CZ.po,
+	build/i18n/po/reservation.js/cs-CZ.po,
+	build/i18n/po/selfcheck.js/cs-CZ.po,
+	build/i18n/po/vandelay.dtd/cs-CZ.po: i18n: Merge cs-CZ translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/es-ES.po,
+	build/i18n/po/TranslatorPopup.js/es-ES.po,
+	build/i18n/po/User.js/es-ES.po,
+	build/i18n/po/XULTermLoader.js/es-ES.po,
+	build/i18n/po/acq.js/es-ES.po,
+	build/i18n/po/admin.properties/es-ES.po,
+	build/i18n/po/auth.properties/es-ES.po,
+	build/i18n/po/capture.js/es-ES.po,
+	build/i18n/po/cat.properties/es-ES.po,
+	build/i18n/po/circ.properties/es-ES.po,
+	build/i18n/po/common.properties/es-ES.po,
+	build/i18n/po/conify.dtd/es-ES.po,
+	build/i18n/po/conify.js/es-ES.po, build/i18n/po/db.seed/es-ES.po,
+	build/i18n/po/fm_IDL.dtd/es-ES.po,
+	build/i18n/po/ils_events.xml/es-ES.po,
+	build/i18n/po/lang.dtd/es-ES.po,
+	build/i18n/po/multiclass_search_help.html/es-ES.po,
+	build/i18n/po/offline.properties/es-ES.po,
+	build/i18n/po/opac.dtd/es-ES.po, build/i18n/po/opac.js/es-ES.po,
+	build/i18n/po/patron.properties/es-ES.po,
+	build/i18n/po/pickup_and_return.js/es-ES.po,
+	build/i18n/po/pull_list.js/es-ES.po,
+	build/i18n/po/register.js/es-ES.po,
+	build/i18n/po/reports.dtd/es-ES.po,
+	build/i18n/po/reports.js/es-ES.po,
+	build/i18n/po/reservation.js/es-ES.po,
+	build/i18n/po/selfcheck.js/es-ES.po,
+	build/i18n/po/vandelay.dtd/es-ES.po: i18n: Merge es-ES translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-29  Dan Scott <dscott at laurentian.ca>
+
+	* build/i18n/po/AutoFieldWidget.js/fr-CA.po,
+	build/i18n/po/TranslatorPopup.js/fr-CA.po,
+	build/i18n/po/User.js/fr-CA.po,
+	build/i18n/po/XULTermLoader.js/fr-CA.po,
+	build/i18n/po/acq.js/fr-CA.po,
+	build/i18n/po/admin.properties/fr-CA.po,
+	build/i18n/po/auth.properties/fr-CA.po,
+	build/i18n/po/capture.js/fr-CA.po,
+	build/i18n/po/cat.properties/fr-CA.po,
+	build/i18n/po/circ.properties/fr-CA.po,
+	build/i18n/po/common.properties/fr-CA.po,
+	build/i18n/po/conify.dtd/fr-CA.po,
+	build/i18n/po/conify.js/fr-CA.po, build/i18n/po/db.seed/fr-CA.po,
+	build/i18n/po/fm_IDL.dtd/fr-CA.po,
+	build/i18n/po/ils_events.xml/fr-CA.po,
+	build/i18n/po/lang.dtd/fr-CA.po,
+	build/i18n/po/multiclass_search_help.html/fr-CA.po,
+	build/i18n/po/offline.properties/fr-CA.po,
+	build/i18n/po/opac.dtd/fr-CA.po, build/i18n/po/opac.js/fr-CA.po,
+	build/i18n/po/patron.properties/fr-CA.po,
+	build/i18n/po/pickup_and_return.js/fr-CA.po,
+	build/i18n/po/pull_list.js/fr-CA.po,
+	build/i18n/po/register.js/fr-CA.po,
+	build/i18n/po/reports.dtd/fr-CA.po,
+	build/i18n/po/reports.js/fr-CA.po,
+	build/i18n/po/reservation.js/fr-CA.po,
+	build/i18n/po/selfcheck.js/fr-CA.po,
+	build/i18n/po/vandelay.dtd/fr-CA.po: i18n: Merge fr-CA translation
+	from Launchpad Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-16  Liam Whalen <lwhalen at evergreen-dev.catalogue.nrcan.gc.ca>
+
+	* Open-ILS/xul/staff_client/server/cat/spine_labels.js: Modified
+	spine_labels.js to retain UTF-8 encoding Dan Wells posted a fix to the DEV list for receipt printing that
+	allowed the receipt printer to print UTF-8 characters.  I used the
+	ideas in that fix to modify spine_labels.js.  In spine_labels.js,
+	the url passed to the preview in preview_xul_192 was encoding the
+	url with the javascript encode() function.  This function does not
+	preserve UTF-8 encodings.  I changed the function to
+	encodeURIComponent, and UTF-8 characters are now displayed properly
+	by the spine label printer code.  Signed-off-by: Liam Whalen
+	<lwhalen at evergreen-dev.catalogue.nrcan.gc.ca> Signed-off-by: Dan
+	Scott <dscott at laurentian.ca>
+
+2011-09-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm: 
+	Added missing Penalty module import for AssetCommon The lack of import primarily affected the Action/Trigger
+	MarkItemLost reactor, which does not already import
+	OpenILS::Utils::Penalty directly or indirectly.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-28  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/examples/apache/eg.conf, README: Remove an installation
+	step: Listen 443 uncommenting Every distribution known to man ships Apache listening on port 443,
+	so installers always have to comment out the "Listen 443" directive
+	- so why not just comment it out ourselves and save a step in the
+	installation instructions? Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/base.tt2,
+	Open-ILS/src/templates/opac/parts/goog_analytics.tt2,
+	Open-ILS/src/templates/opac/parts/js.tt2: TPac: move google
+	analytics import to head Google Analytics documention recommends loading the JS in the page
+	<head>.
+	http://www.google.com/support/googleanalytics/bin/answer.py?answer=174090Use as directed by default.  Also, moved the JS loading chunk to its own template to ease
+	override by those who do not wish to use as directed.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-28  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/src/templates/conify/global/acq/edi_account.tt2: A slight
+	modification to prevent clipping in the EDI Accounts interface Just a few tweaks via CSS to make sure the footer notes don't clip
+	off part of the main grid.  Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/reporter/clark-kent.pl: Provide proper hrefs for
+	links back from report debugging pages Reimplementation of a fix provided by Michael Peters.  The
+	originally submitted patch included several fixes provided by an
+	unrelated patch, and a regression in build-time embedded tokens.  Original branch at:
+
+	http://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/mrpeters-isl/clark_kent_back_linksSigned-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/reporter/clark-kent.pl: LP856567: Mark HTML report
+	output as Unicode-encoded Non-ASCII characters in report ouput that has been generated in HTML
+	format appears to be corrupted when viewed in a browser. This can be
+	manually corrected by switching the "Encoding" browser option, but
+	it would be better to include <meta charset='utf-8'> in the output
+	HTML to tell the browser directly.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-09-27  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/Caption.pm: MFHD
+	compression fails with pattern-less captions The current code assumes that if you try to compress a range of MFHD
+	holdings, you actually have the necessary pattern information.  This
+	commit introduces a very basic check to avoid the most common
+	failure case.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-09-27  Mike Rylander <mrylander at gmail.com>
+
+	* build/tools/update_db.sh: Teach update_db.sh to find the currently
+	installed version number via eg_config and supply that when applying
+	updates Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/marc_stream_importer.pl: Read STDIN
+	up to record separator then stop The initial (and only known) target for the importer is OCLC
+	Connexion exports, which export 1 record at a time, with each record
+	ending with the standard record separator.  There is no end-of-file
+	/ end-of-transmission indicator, so the while() loop always blocks
+	and fails on the timeout alarm after the first record is read.  Until a more flexible solution is in place, roll back support for
+	reading multiple records via STDIN.  The original commit was 679506975f0efb6e2f6f17b0c19e3c53c5bfda44 Note, the feature being rolled back was not actually necessary to
+	implement the feature in the commit (file-based imports).  It was
+	just an added bonus.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-23  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	LP857460: Get the generic class scheme when adding vols In a default Evergreen instance, in the "Add Volumes" interface for
+	a bib record with both LC and Dewey call numbers, the list of call
+	numbers from which you can select appears to be limited to Dewey,
+	even though the "Bib Call #" field is populated with an LC call
+	number.  The problem is that here we're grabbing the first entry from the
+	asset.call_number_classification table, and you might expect that to
+	be the "Generic" entry - however, it turns out to be the "Dewey"
+	entry because the entries are ordered alphabetically by .name(), not
+	by database ID. (You can test this be changing the name of "Dewey"
+	to "Vicious" and see that the "Generic" entry is chosen instead).  This commit changes the process to first search the acnc array for a
+	name() = "Generic"; and then if we don't find that, fall back to the
+	first entry in the classification scheme.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Dan
+	Wells <dbw2 at calvin.edu>
+
+2011-09-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: Removed old vandelay
+	config from sample apache config Bye, bye xmlent Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-26  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/org_selector.tt2: TPac: Respect
+	OU opac_visible flags Unless we appear to be in staff mode. Then continue to ignore them.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/myopac/update_email.tt2,
+	Open-ILS/src/templates/opac/myopac/update_username.tt2: TPac: Fix
+	bolding of bad email/username HTML filter the variable, not the entire language string.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/myopac/main.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2: TPac: Hide
+	CC Payment info when not enabled Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/templates/opac/parts/myopac/main_base.tt2: TPac Fixes
+	- Missing Quotes Start off real easy, add some missing quotes.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-26  Dan Wells <dbw2 at calvin.edu>
+
+	* : commit 6d7ed210b38701d6ce7aa48c866f7d67ad5dcb8e Author: Dan
+	Wells <dbw2 at calvin.edu> Date:   Mon Sep 26 14:23:31 2011 -0400
+
+2011-09-14  Jeff Godin <jgodin at tadl.org>
+
+	* .mailmap: Create git .mailmap file for Evergreen This is an initial .mailmap file for Evergreen.  The .mailmap file is used by git-shortlog to "coalesce together
+	commits by the same person".  In the output of git-shortlog, this eliminates duplicate entries
+	such as the username at UUID entries from the svn to git migration.  Compare "git shortlog -nes" with and without this .mailmap Signed-off-by: Jeff Godin <jgodin at tadl.org> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-09-23  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.suppress_transits.sql: Unwrapped
+	Suppress Transits upgrade script Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-09-13  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Suppress Transits Add two new OU settings: circ.transit.suppress_hold circ.transit.suppress_non_hold If a transit would be generated between the current library and
+	another and the appropriate setting is set for both end with the
+	same value the transit will be suppressed. If either end is set to
+	an empty string then transit suppression will be disabled, even if
+	both ends are set to an empty string.  In addition, transits from other locations will be received when
+	their destination shares suppression with the current library.  circ.transit.suppress_hold will cause holds to go to the hold shelf
+	instead of into transit when in effect. Non-hold transits should not
+	check it. This should be useful when multiple parts of a library
+	share a hold shelf, but are split on the org tree.  circ.transit.suppress_non_hold will cause items to reshelve instead
+	of going into transit. Hold transits should not check it. This
+	should be useful when multiple parts of a library are in the same
+	building and have no need to transit items before
+	reshelving/cataloging.  In order to suppress *all* transits both settings need to be set.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-09-26  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/js.tt2: TPAC: Fix for staff UI
+	with multiple MFHD records XUL's JavaScript doesn't mind trailing commas on an array, but
+	really doesn't like an array in which the elements aren't separated
+	by commas :) Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/js.tt2,
+	Open-ILS/web/js/ui/default/opac/staff.js: TPac: MFHD staff client
+	actions integration Populdate the necessary window.mfhdDetails data for the staff client
+	and fire the mfhdDrawn event Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-26  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0629.data.jedi-template.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.jedi-template.sql: Stamping
+	upgrade script for EDI cleanup Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.jedi-template.sql,
+	Open-ILS/src/support-scripts/edi_pusher.pl: Some EDI translation
+	fixes for troublesome input characters This attempts to address enough of the issues in
+	https://bugs.launchpad.net/evergreen/+bug/812593 to move forward.  When the ? character appears in lineitem attributes for a PO that we
+	send off for EDI translation, the translator fails if that ? is the
+	last character of the string.  This commit avoids that situation.  This commit also removes any Unicode characters from the JEDI (the
+	input to the translator process), as they're not going to make it to
+	the EDIFACT output anyhow, and will just confound the translator.  This commit also pre-escapes quotation marks in lineitem attributes
+	so that we don't produce invalid JSON for our JEDI.  This commit also destroys the death star.  Seriously, the right way to fix some of the issues people have had
+	is for somebody to learn Ruby and to address them either in
+	edi_webrick.rb, in edi4r, or in openils-mapper (wherever the issues
+	may be).  Working on that.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-14  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/templates/opac/parts/js.tt2,
+	Open-ILS/src/templates/opac/parts/record/body.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/js/ui/default/opac/staff.js: TPac: Page through search
+	results on details page Consistent with jspac, when you land on a record details page and
+	you got there from doing a search, let the user page through the
+	search results directly on the record detail page.  This also includes the necessary JS callbacks to support paging in
+	the staff client.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/extras/Makefile.install: perl-parent prerequisite for
+	RHEL. hope it's fine for centos :) Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-18  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/record/issues.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPAC: Add some style
+	to MFHD holdings summaries Simple grey background for the holdings summary header for each
+	record; add a TBODY element to the holdings table for validity;
+	offset the MFHD type by 1em to group entries under each holdings
+	location.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-09-18  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Serial.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm: TPAC:
+	Give MFHD summaries OU / depth awareness Rather than returning all results and filtering on the client-side,
+	as we're currently doing in the JSPAC, teach the
+	open-ils.search.serial.record.bib.retrieve method to accept optional
+	OU & OU depth arguments and do the filtering in the query; cuts down
+	on network traffic and should be generally more efficient.  Note that in the absence of an explicit "depth" CGI param,
+	EGCatLoader/Record currently defaults to a depth of "0"; we could
+	teach it to look up & cache the depth of the "loc" param for the
+	sake of convenience & arguably more accuracy.  Also note that the sub/dist serial approach probably needs to be
+	taught similar method-side filtering, but I hope more knowledgeable
+	brains will work out what should happen with ssub.holding_lib /
+	sdist.owning_lib.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-09-18  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/templates/opac/parts/record/extras.tt2,
+	Open-ILS/src/templates/opac/parts/record/issues.tt2: TPAC: tentative
+	MFHD display steps Retrieve and display MFHD records in the TPAC, piggybacking on the
+	"Issues" twisty section.  TODO: Take org_unit & depth into account when deciding which MFHD
+	records to display. Right now we're just showing all of them.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-09-25  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/marc_stream_importer.pl: lp859190:
+	make marc_stream_import always import non-matches Fixes regression of (implicit, undocumented) functionality
+	introduced in commit da3a45344205.  Current use case for the
+	streaming MARC importer for OCLC Connexion exports assumes that
+	non-matching records should always be added.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js: silent
+	macro updates Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js: we need
+	%mbts_xact_start% for both the bills_current and bills_historical
+	receipt templates Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-20  Jeff Godin <jgodin at tadl.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/server/circ/print_list_template_editor.js: 
+	Fix bills_current template to use mbts_id macro Fix bills_current template to use mbts_id macro instead of
+	non-existant id macro. Also update sample data so that receipt
+	preview displays correctly with respect to mbts_id macro.  Fixes https://bugs.launchpad.net/evergreen/+bug/811175 Signed-off-by: Jeff Godin <jgodin at tadl.org> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-09-21  Jeff Godin <jgodin at tadl.org>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/patron/bill2.js,
+	Open-ILS/xul/staff_client/server/patron/bill_history.js: Fix:
+	Current Bills thinks it is Bill History This fixes LP 855894: Bills interface calls itself Bill History,
+	uses bills_historical receipt template https://bugs.launchpad.net/evergreen/+bug/855894 At some point in development, the Current Bills and the Bill History
+	interface were in a unified file, with an xul_param of "current"
+	used to switch between the two.  Nothing currently sets the xul_param "current", so the Current Bills
+	interface (bill2.xul and bill2.js) was improperly: * not hiding the xact_finish column * using a caption label of "Bill History" * using the bills_historical receipt template The Bill History interface was okay -- "not current" was the
+	default.  This commit removes the tests for xul_param('current') and uses the
+	appropriate code for each interface.  // this code in both bill2.js and bill_history.js: var template =
+	'bills_historical'; if (xul_param('current')) template =
+	'bills_current'; // becomes: var template = 'bills_current';    // in bill2.js var
+	template = 'bills_historical'; // in bill_history.js Also: added missing staff.patron.bill_interface.caption.label entity Signed-off-by: Jeff Godin <jgodin at tadl.org> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-09-20  Jeff Godin <jgodin at tadl.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/main/data.xul,
+	Open-ILS/xul/staff_client/server/patron/bill_cc_info.xul,
+	Open-ILS/xul/staff_client/server/patron/bills.js,
+	Open-ILS/xul/staff_client/server/patron/bills.xul,
+	Open-ILS/xul/staff_client/server/patron/bills_overlay.xul: Remove
+	the old bills interface.  Remove the old bills interface and references to it.  see https://bugs.launchpad.net/evergreen/+bug/854951 Also remove the XUL_PATRON_BILL_ALTERNATE_VIEW constant and the
+	bills_main_view receipt template, as they were only referenced in
+	bills.js.  The bills_main_view template will still persist in existing
+	workstation configurations until such time as we have code to remove
+	unused templates.  I made no effort to remove strings which may have only been used by
+	the old bills interface.  Signed-off-by: Jeff Godin <jgodin at tadl.org> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-09-22  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/main.tt2: TPac: repair IE
+	check-all action on transaction list IE does not respond to 'onchange' for checkboxes?  Use onclick
+	instead...  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-22  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/200.schema.acq.sql,
+	Open-ILS/src/sql/Pg/upgrade/0628.schema.acq_fund_view_repairs.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.schema.acq_lp800477: Stamped
+	upgrade script for ACQ fund view repairs At the heart of this change is the need to force
+	acq.fund_debit_total to return exactly 1 row per fund, instead of 1
+	per fund + encumbrance value.  However, such a change required
+	rearranging a number of dependent views.  Also added acq.fund_spent_balance to the set of views that needs
+	dropping and re-building.  Minor SQL format change to match surrounding code in schema file See also https://bugs.launchpad.net/evergreen/+bug/800477 Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-19  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/src/sql/Pg/200.schema.acq.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.schema.acq_lp800477: Addresses
+	LP#800477 where some acq views calculate the totals incorrectly or
+	in unexpected ways.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-22  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/constants.js: The
+	tpac should be SSL inside the staff client Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-22  Jason Etheridge <jason at esilibrary.com>
+
+	* : commit 6886c07f4ce333e9a0586ff373037137b9866991 Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Thu Sep 22 10:36:57 2011
+	-0400
+
+2011-09-22  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/myopac/main_pay.tt2,
+	Open-ILS/src/templates/opac/myopac/main_payment_form.tt2: TPac:
+	credit card payment bug fixes / cleanup * Repaired bug with paying multiple transactions * Replaced JS-based back/cancel navigation with a's * Added some debug logging Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-22  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/header.tt2: Tpac: better param
+	array detection in mkurl() Avoid propagating empty arrays as "ARRAY(JUNK)" Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-22  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0627.data.patron-password-reset-msg.sql
+	,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.patron-password-reset-msg.sql: 
+	Password resets: avoid run-on subjects The password reset template had a space on the first blank line
+	after the Subject: which lead to the first paragraph being tacked
+	onto the Subject line. Get rid of the space, and create an upgrade
+	script ready to roll.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/opac/password_reset.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac: password reset
+	honors success/error style Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.patron-password-reset-msg.sql
+	, Open-ILS/src/templates/opac/parts/login/form.tt2,
+	Open-ILS/src/templates/opac/password_reset.tt2: TPac: integrated
+	patron password reset Port the existing password reset functionality into TPac.  This
+	allows us to leverage the TPac innards for localization.  It also
+	means there's one less moving part.  (and, incidentally, no more
+	dojo for the form).  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: Tpac:
+	longer timeout for marc "expert" search Since MARC searches can take a while, raise the default timeout from
+	1 minute to 2, with the option (at the API layer) of raising it to
+	5.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/index.xhtml: Add Toggle option to
+	portal for TPac use In testing I didn't have to restart the staff client, but as
+	constants.js is loaded pretty much everywhere I have no clue where
+	the URL array may be stale.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/defaults/preferences/prefs.js: Create
+	preference for opac used in staff client If enabled use the TPac. Otherwise JSPac.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-21  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: TPAC: Make "Sort by"
+	select box match style of search bar The "Sort by" select box in search results had a native widget
+	style, compared to the search widget styles of the search bar. A
+	simple CSS tweak makes it consistent.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-21  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/results.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Group "Sort by" and
+	sort select box together The sort select box was weirdly way over on the right. Fix that.  Also address slightly weird vertical alignment of some elements of
+	the results header bar.  Also use <label> to group the "sort by" with the select box; a bit
+	better for screen reasers.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-21  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/bindings.xml: 
+	properties in chrome:// return XHR status 0 Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-21  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/bindings.xml: 
+	LP#854760 messagecat fails with certain 404 pages We were failing to check the HTTP status on the underlying XHR
+	requests.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/password-reset/request-form.tt2: Can't have
+	two identical IDs on the same page Nobody who cares about the pure Web experience ever noticed that
+	this page has two identical IDs. Chromium and other browsers
+	complain, though, so make them happy.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-08-30  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/holds.js: fix Show in
+	Catalog for part holds Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-09  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: make it obvious that Request Type is
+	required in Create Request dialog Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-28  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/patron/display.js,
+	Open-ILS/xul/staff_client/server/patron/display.xul,
+	Open-ILS/xul/staff_client/server/patron/display_horiz_overlay.xul,
+	Open-ILS/xul/staff_client/server/patron/display_overlay.xul: acq
+	user requests link from patron display Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-28  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/common/li_table.tt2,
+	Open-ILS/src/templates/acq/picklist/user_request.tt2,
+	Open-ILS/web/js/ui/default/acq/common/li_table.js,
+	Open-ILS/web/js/ui/default/acq/picklist/user_request.js: show acq
+	user requests action from lineitems in lists Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-28  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/picklist/user_request.tt2,
+	Open-ILS/web/js/ui/default/acq/picklist/user_request.js: wire up
+	Create Request action in acq user requests UI Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/picklist/user_request.tt2,
+	Open-ILS/web/js/dojo/openils/acq/nls/acq.js,
+	Open-ILS/web/js/ui/default/acq/picklist/user_request.js: context
+	filters for acq user requests UI Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/picklist/user_request.tt2,
+	Open-ILS/web/js/ui/default/acq/picklist/user_request.js: 
+	copy/paste-o's, remove (near) duplicate code Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-20  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js: Do not
+	overwrite controlmap entries, but extend them (Floating
+	Subdivisions!) Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-25  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Clear hold shelf [expire] time at checkout to alternate patron When an item on the holds shelf is checked out to an alternate
+	patron (i.e. not the hold user), clear the shelf_time and
+	shelf_expire_time along with capture_time, current_copy, etc. on the
+	hold.  tsbere++ for isolating the problem.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-09-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0625.data.opac_staff_saved_search_size.
+	sql, Open-ILS/src/sql/Pg/upgrade/0626.schema.bookbag-goodies.sql,
+	Open-ILS/src/sql/Pg/upgrade/XYXY.data.opac_staff_saved_search_size.
+	sql, Open-ILS/src/sql/Pg/upgrade/YYYY.schema.bookbag-goodies.sql: 
+	Take care of some missed db upgrade script numbers Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-19  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/acq/common/li_table.js: lp854084: fix
+	catalog link in line item table when using TT-OPAC Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/login.tt2,
+	Open-ILS/src/templates/opac/parts/config.tt2,
+	Open-ILS/src/templates/opac/parts/login/form.tt2: TPAC: Enable
+	password resets - crude, for now Use the existing crude password reset form to enable password
+	resets.  Slightly longer term, we need to destroy the existing form
+	and pull it into TPAC proper (including such good stuff as real
+	localization and getting rid of Dojo / Dijit), but this works for
+	now.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-09-16  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XYXY.data.opac_staff_saved_search_size.
+	sql, Open-ILS/src/templates/opac/parts/staff_saved_searches.tt2,
+	Open-ILS/src/templates/opac/record.tt2,
+	Open-ILS/src/templates/opac/results.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Staff saved searches
+	when browsing catalog in staff client By default, show a user's ten most recent searches to them on the
+	left side of the results and record details pages.  Configurable by
+	org unit setting 'opac.staff_saved_searches.size' Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-03  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/invoice/receive.tt2,
+	Open-ILS/src/templates/acq/invoice/view.tt2,
+	Open-ILS/web/js/dojo/openils/acq/nls/acq.js,
+	Open-ILS/web/js/ui/default/acq/invoice/receive.js,
+	Open-ILS/web/js/ui/default/acq/invoice/view.js: It's a lineitem
+	detail (copy) batch receiver You can get to it via a button in the upper right-hand corner of the
+	view-invoice interface, assuming you're looking at an invoice that's
+	already been created/saved (and which has acqlid objects in a
+	receivable state), not one you're just now creating.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor/Container.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/Conta
+	inerCSV.pm, Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat/Feed.pm,
+	Open-ILS/src/sql/Pg/070.schema.container.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.bookbag-goodies.sql,
+	Open-ILS/src/templates/opac/myopac/list/print.tt2,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2,
+	Open-ILS/src/templates/opac/parts/filtersort.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Bookbag enhancements
+	in TTOPAC Bookbags have descriptions now (and they're reflected in feeds).
+	Bookbag item notes are editable.  Bookbags can now be sorted by
+	title or author using QP tricks.  You can export a bookbag as CSV.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/results.tt2: TPAC: PROCESS config.tt2
+	needed in results.tt2 If the values in config.tt2 are not available to the results page,
+	then all of them are false - so Google Analytics, Resolver, etc,
+	won't work in the results page.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-07-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/refworks.tt2: Set
+	refworks default org to match org tree root Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/extras.tt2: TPac:
+	clicking on open "extras" tab closes the tab In record detail page, if a tab (e.g. Subjects) is open, clicking on
+	the tab header again will close the tab.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/record/extras.tt2: TPac: display
+	table of contents on record details Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0624.data.fix_marc_conf_cont.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_marc_conf_cont.sql: Stamping db
+	upgrade script for Fixed Field Cont/Conf typo/thinko Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_marc_conf_cont.sql: In-DB
+	suffered from Cont/Conf issues as well Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/js/dojo/MARC/FixedFields.js: Fix Fixed Fields Editor
+	Conf and Cont Conf was defined with Cont's fields Cont was missing Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-16  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg.conf, Open-ILS/tests/datasets/README: 
+	lp 851915: remove last references to /openils/lib/perl5 Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-09-16  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/examples/apache/startup.pl,
+	Open-ILS/src/extras/import/direct_ingest.pl,
+	Open-ILS/src/extras/import/direct_loader.pl,
+	Open-ILS/src/extras/import/pg_loader.pl,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent.pm: LP 851915:
+	Remove references to /openils/lib/perl5 To prevent old versions of the OpenSRF and Evergreen Perl modules
+	from conflicting with the new versions of these modules (which are
+	now located in the default system Perl package directories), remove
+	references to them.  Also, O:W:AddedContent contains an old reference to a
+	distro-specific Perl directory that we can clean up at the same
+	time.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Galen
+	Charlton <gmc at esilibrary.com>
+
+2011-09-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0622.data.YAOUS-i18n-update.sql,
+	Open-ILS/src/sql/Pg/upgrade/0623.schema.YAOUS-log-table.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.YAOUS-i18n-update.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.YAOUS-log-table.sql: pin
+	down upgrade script version numbers
+
+2011-09-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema.YAOUS-log-table.sql: add
+	in the org setting history triggers Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-08  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.YAOUS-i18n-update.sql,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: CLEANUP
+	ALL THE COUST and fix history view Move all COUST seed values to the same insert statement in
+	950.data.seed-values.sql Make data upgrade file do *all* the changes
+	that happen in the seed values Add groups to some of the new
+	settings since Joseph looked at the list Make history view escape &,
+	<, and > before showing values to prevent HTML from being parsed Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-09-07  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/800.fkeys.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/9999.data-seed-values-group update.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.YAOUS-i18n-update.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.YAOUS-log-table.sql: 
+	Cleanup, yay! Give YAOUS logging table a surrogate pkey and upgrade
+	script; clean up some typos; position the existing upgrade script
+	correctly Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-07-07  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: 
+	Added the following features/imporovements suggested by the
+	community:  * Sort history by date descending.   * Add revert button to history.   * Search after pause.   * Dynamically adjust amount of time message is shown by its length.   * Fix a bug about things not being shown in history after delete.   * Fix a problem with user not being shown change if they make a
+	   change in a context that isn't currently shown.   * Do i18n on everything.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-20  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/800.fkeys.sql: Fixed my database errors
+	(although some still exist, I can't tell if they are mine or not,
+	I'm going to test the master and see if they exist there...) Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-17  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql: Cleaned up so it
+	shouldn't ruin the database creation (hopefully).  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-15  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/9999.data-seed-values-group update.sql: 
+	Fixed the non i18n settings for oust.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-15  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: Got
+	rid of old bug (pre me) that existed when an autowidget was used
+	then canceled and the next setting wasn't an autowidget. The
+	autowidget would continue to appear because it was never destroyed.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-15  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/9999.data-seed-values-group update.sql,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: Changed
+	text in seed values to reflect addition of groups, added an update
+	script for groups, fixed org_unit_settings.js so the dojo grid would
+	correctly alphabetize with the additon of groups and the removal of
+	groups from the labels themselves.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-15  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0550.data.seed_values_ous_groups.sql: 
+	Remove duplicates due to groups in seed-values.sql, and include
+	groups in seed-values; delete seed values upgrade patch.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-14  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: 
+	Updated so that the history shows the org-unit shortname rather than
+	the id.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-14  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: 
+	Convert buttons to toobar cleaning up page a lot. Added new
+	notification system.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-13  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: 
+	Added revision logging to oust, updated fm_IDL.xml to reflect that
+	and changed org_unit_settings.js and org_unit_settings.xhtml to add
+	some functionality of revisions.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-09  Joseph Lewis <joehms22 at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0549.data.seed_values_admin_cleanup.sql
+	, Open-ILS/src/sql/Pg/upgrade/0550.data.seed_values_ous_groups.sql,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: Updated
+	the staff_client code to be much better at searching, renamed the
+	sql upgrade script b/c 0549 was just snatched up! Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-09  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: 
+	Finished import/export of settings.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-08  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties: 
+	Updated to include search.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-07  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: 
+	Added Tags support in the org_unit_settings display page.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-06  Joseph Lewis <joehms22 at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0549.data.seed_values_admin_cleanup.sql: 
+	Whoops, typed in the wrong number.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-06  Joseph Lewis <joehms22 at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0549.data.seed_values_admin_cleanup.sql: 
+	Forgot to put in the logging information :) Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-06-06  Joseph Lewis <joehms22 at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0549.data.seed_values_admin_cleanup.sql: 
+	Added seed values for the "tags" of the settings in org unit
+	settings.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com>
+
+2011-09-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: Set ind2 to the
+	value of indicicator 2 supplied by the user, not ind1 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-14  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/openils/BibTemplate.js: Make sure we only
+	render the most recent request to the canvas, so a laggy network
+	does not cause double rendering or stale display Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-14  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	lp834961: fix authoritative versions of callnumber retrieval calls Makes open-ils.search.callnumber[.fleshed].retrieve.authoritative
+	actually be authoritative.  Fixes bug where adding a volume could
+	result in a false ASSET_CALL_NUMBER_NOT_FOUND error if using
+	database replication and Slony-II.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-13  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js,
+	Open-ILS/xul/staff_client/server/cat/marcedit.xul: Provide a default
+	value for, and explicitly change, the record type so the type
+	dropdown works as intended Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-13  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/fund/list.tt2: Update find view link in
+	fund list UI to reflect relocated template Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-13  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/startup.pl: Remove unused reference to
+	oils_web.xml in startup.pl TODO: give EGCatLoader child_init-like functionality to connect to
+	opensrf to address the (unlikely) case that EGWeb/EGCatLoader are
+	the first/only mod_perl handlers loaded on an Evergreen Apache
+	server.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-13  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: Further updates to
+	eg_vhost for tpac * Comment out locale handlers that do not have translations by
+	default.  Otherwise, Apache will log the error in the error log.  * Added some additional configuration comments Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-13  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0621.data.opac_payment_history_age_limi
+	t.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.opac_payment_history_age_limi
+	t.sql: Stamped upgrade for opac_payment_history_age_limit ...which is a new org setting defining how far back to reach for
+	payments to display in the payments history page in tpac.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-13  Bill Erickson <berick at esilibrary.com>
+
+	* : Template Toolkit OPAC See Template Toolkit OPAC release notes at
+
+	http://evergreen-ils.org/dokuwiki/doku.php?id=dev:opac:template-toolkit:release_notesAdditional non-tpac-specific changes include moving web templates
+	from the web dir into Open-ILS/src/templates/, removing /default/
+	from the template paths, and porting vandelay strings from the DTD
+	into the template (for better/consistent translation support).  Merge remote branch
+	'working/collab/berick/template-toolkit-opac-master-merge' Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-13  Bill Erickson <berick at esilibrary.com>
+
+	* : Merge remote branch 'working/user/dbs/tpac-css-buttons' into
+	template-toolkit-opac-master-merge
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/myopac/prefs_base.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSS-ize account
+	preference sub-tabs Same old, same old.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/holds/edit.tt2: Fix
+	mislabelling of Cancel button as Submit As funny as it was to give people two options: Submit, or Submit,
+	one could imagine that it would be confusing. Also, remove the alt /
+	title attributes now that we're using meaningful markup that stands
+	on its own.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/circ_history.tt2,
+	Open-ILS/src/templates/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSS-ize holds and
+	holds history tabs From images to CSS-styled links.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/results.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSS-ize the search
+	results control bar Along with the standard "swap images with fancy CSS links", we also
+	bring some style to the rather drab "Detailed View" link in the
+	search results control bar.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/circ_history.tt2,
+	Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSS-ize current circ
+	and circulation history tabs More accessible. More win.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/myopac/base.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSSize fine/payment
+	tabs on My Account page More consolidation of CSS is a win for making changes in one place.
+	More accessibility as well.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/myopac/base.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSS versions of the
+	main MyOPAC tabs We can reuse much of the advanced search tab CSS (imagine that!), so
+	not only are we getting accessibility and HTTP request wins, we're
+	cutting down on the size of the CSS to deal with to skin this
+	cat(alogue).  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/topnav.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: CSSize the My OPAC
+	login / logout buttons Use the same relative positioning as the surrounding blocks and
+	things look relatively (hah) clean.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: 5% radius for subtly
+	rounded corners 15% was too much, especially on long thin blocks; it looked like
+	space-time was being warped.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/web/css/skin/default/opac/style.css: Add some Web
+	1.5-ishness with rounder corners for tabs 5% radius is a lot more subtle.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/advanced.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Style the advanced
+	search tabs with CSS We could go further and disable the link on the active advanced
+	search tab, but for now we're just replacing what was there with a
+	reasonable visual approximation.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/parts/topnav.tt2: Turn the login
+	button into a CSS "button" It's just a fancy link; treat it as such with some fancy CSS.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: TPac: Default to
+	en_us if no locales are configured Code will create an en_us handler that falls through to the strings
+	in the templates.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/myopac/main.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2,
+	Open-ILS/src/templates/opac/parts/login/form.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: opac-button is more
+	general than submit-button Didn't make sense to use a class of submit-button for reset buttons.
+	So...  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/extras/Makefile.install: Added TPac perl dependencies
+	for deb distros Template::Plugin::POSIX Locale::Maketext::Lexicon (via
+	liblocale-maketext-lexicon-perl) Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/myopac/main.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2,
+	Open-ILS/src/templates/opac/parts/login/form.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/web/css/skin/default/opac/style.css: Use SUBMIT buttons
+	instead of IMAGE buttons With a bit of CSS, we can replace <input type="image"> buttons with
+	<input type="submit"> buttons. The payoff is directly translatable
+	values and better semantics for screen readers, etc, rather than
+	having to set up a process of generating buttons in your colour &
+	languages of choice - as well as fewer HTTP requests for images over
+	the network.  Note that we also replace some of the JavaScript-dependent reset /
+	cancel links with <input type="reset"> buttons.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/opac/parts/hold_status.tt2: TPac: repaired
+	hold status display bug Pipe dynamic text through |html inside the hold_status block instead
+	of piping the output, since the block returns HTML.  Repaired faulty </div> Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/qtype_selector.tt2: TPac: Do not
+	URI-escape index class/names in search dropdown id|bibcn, for example, through the |uri filter turns into
+	"id%7Cbibcn" in the option value.  Pipe through |html instead, just
+	to be safe.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* : Merge remote branch 'working/collab/berick/tpac-misc-cleanup'
+	into template-toolkit-opac-master-merge
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* : Merge remote branch
+	'working/user/dbs/lp801624_blow_away_postgresql'
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/oils_web.xml.example, README: Removed sample
+	oils_web.xml; removed from README Thanks for the suggestion, Dan.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/base.tt2,
+	Open-ILS/src/templates/vandelay/vandelay.tt2: Remove
+	no-longer-necessary DTD override in vandelay Also, since vandelay was the only code using this hacked-in override
+	option, remove the option from the base template.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/vandelay/inc/attrs.tt2,
+	Open-ILS/src/templates/vandelay/inc/export.tt2,
+	Open-ILS/src/templates/vandelay/inc/import_errors.tt2,
+	Open-ILS/src/templates/vandelay/inc/marchtml.tt2,
+	Open-ILS/src/templates/vandelay/inc/matches.tt2,
+	Open-ILS/src/templates/vandelay/inc/progress.tt2,
+	Open-ILS/src/templates/vandelay/inc/queue.tt2,
+	Open-ILS/src/templates/vandelay/inc/queueselect.tt2,
+	Open-ILS/src/templates/vandelay/inc/toolbar.tt2,
+	Open-ILS/src/templates/vandelay/inc/upload.tt2,
+	Open-ILS/src/templates/vandelay/vandelay.tt2,
+	Open-ILS/web/opac/locale/en-US/vandelay.dtd: Vandelay: import
+	strings from DTD Using the new template-style embedded string localizer:  [% l('...')
+	%] Removed vandelay.dtd.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay:
+	repaired URL path to embedded match set editor Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/acq/currency_type/list.tt2,
+	Open-ILS/src/templates/acq/financial/list_currency_types.tt2,
+	Open-ILS/src/templates/acq/financial/list_funding_sources.tt2,
+	Open-ILS/src/templates/acq/financial/list_funds.tt2,
+	Open-ILS/src/templates/acq/financial/view_fund.tt2,
+	Open-ILS/src/templates/acq/financial/view_funding_source.tt2,
+	Open-ILS/src/templates/acq/financial/view_provider.tt2,
+	Open-ILS/src/templates/acq/fund/list.tt2,
+	Open-ILS/src/templates/acq/fund/view.tt2,
+	Open-ILS/src/templates/acq/funding_source/list.tt2,
+	Open-ILS/src/templates/acq/funding_source/view.tt2: TPac: template
+	path cleanup Rearrange the few templates that relied on the now-defunct
+	oils_web.xml handler path/template mapping.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: TPac: deprecate
+	oils_web.xml Configuration values are now loaded from Apache configuration.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/oils_web.xml.example,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: TPac: locale
+	handling improvements Allow Locale::Maketext to fall through to parent locales (superordinate) when the a translation for a string in the given
+	locale is not present.  Locale::Maketext suppports arbitrary-length
+	locale tags, so it's possible to create locale hierarchies.  For example, you could create branch-specific translations that fall
+	through to system, then full locale, then base locale, then the
+	default template strings.  en_us_systemA_branchX => en_us_systemA => en_us => en => <template
+	strings> Each template string that needs translating will be tried against
+	each locale in order until it finds a translation.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/src/templates/opac/parts/record/summaryplus.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPac: Review &
+	More content cafe option on results page Links to a new top-level page.  Also cleaned up some bare &'s in the
+	content cafe url.  added a ctx->proto = http / https var.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/opac/parts/hold_status.tt2,
+	Open-ILS/src/templates/opac/parts/misc_util.tt2: TPac: move hold
+	status chunk to separate template ...for easier local overrideing of text that dislays for hold status Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/extras.tt2: TPac: Push
+	subject extras tab to top of extras Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/record/extras.tt2: TPac: toggle
+	expandy arrow image to down-arrow on expanded record extras tabs Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/src/templates/opac/parts/result/table.tt2: TPac:
+	on-fly-list management improvements * implemented remove-from-list function * After add or remove from list on results page, direct user back to
+	the context record via page anchor Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/update_email.tt2,
+	Open-ILS/src/templates/opac/myopac/update_password.tt2,
+	Open-ILS/src/templates/opac/myopac/update_username.tt2: TPac: avoid
+	1995-esque "Submit Query" for form submission On the update username, email, and password pages, use "Submit"
+	instead of relying on the browser "Submit Query" label Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-11  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 0d51d18b12745c89b6dff1a04612b5fe97d4c0ba Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Fri Sep 9 10:25:10 2011 -0400
+
+2011-09-08  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/000.english.pg91.fts-config.sql,
+	Open-ILS/src/sql/Pg/create_database_9_1.sql,
+	Open-ILS/src/support-scripts/eg_db_config.pl: Take a stab at 9.1
+	support Second create database SQL to deal with CREATE EXTENSION instead of
+	contrib files.  Check create DB steps for errors. If any found, die.  This should
+	cover "could not load file" from pre-9.1 as well.  Also copied the 9.0 fts-config as 9.1 to avoid that warning during
+	database load.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install, README: Remove references to
+	Fedora 13 and 14 Fedora 13 has not been supported for months, Fedora 14 is about to
+	lose support. Simplifies README and prereq installer a bit.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Refresh dynamic link cache
+	after libjs install The build of SpiderMonkey can fail if it can't find the freshly
+	installed libjs library, so run ldconfig after building libjs to
+	avoid that bit o' fun.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-10  Dan Scott <dscott at laurentian.ca>
+
+	* Open-ILS/src/extras/Makefile.install: Fix prerequisite install on
+	Fedora 15 The postgresql package shipped in Fedora proper is just called
+	'postgresql-devel', so get that right.  Also, try to put 64-bit libraries in the right directory.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-09-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0620.schema.penalty_fixes.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.penalty_fixes.sql: Stamping upgrade
+	for penalty visiblity issue Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-09  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/Penalty.pm,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.penalty_fixes.sql: Fix some
+	standing penalty issues Circulations were using the circ matchpoint org unit for blocking.
+	That could, depending on the matchpoint that matched, result in
+	staff not being able to see the penalty that is being blocked for.  In addition, blocking is done based on the full path, not ancestors.
+	But, backend functions only used ancestors. Changed them to use the
+	full_path variant instead.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-09  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Fix
+	dos_print when NSPrint interface is used By adding params.dos_print = true where needed.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-09-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2: TPac: minor
+	i18n string repairs Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/Makefile.am: Repair makefile.am: install template
+	dirs that were previously under /default/ Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-08  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 6d21b9431c8d73c88b8d41c874ff766c11f90746 Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Thu Sep 8 16:08:30 2011
+	-0400
+
+2011-09-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/lists.tt2: Make bookbag
+	title/author links Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-08  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0619.schema.au_last_update_time.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.au_last_update_date.sql: 
+	Stamping for LP821404 au last_update_time Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-08  Bill Erickson <berick at esilibrary.com>
+
+	* : commit b5bdaab4e418a996182ba8210b91956605198e3a Author: Michael
+	Peters <mrpeters at library.in.gov> Date:   Fri Aug 5 10:30:39 2011
+	-0400
+
+2011-09-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.au_last_update_date.sql: 
+	fire last_update_time trigger on user insert in addition to update Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.au_last_update_date.sql,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/display.js,
+	Open-ILS/xul/staff_client/server/patron/util.js: change column name
+	from last_update_date to last_update_time Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-05  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema.au_last_update_date.sql: 
+	upgrade script for actor.usr.last_update_date Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-05  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/display.js,
+	Open-ILS/xul/staff_client/server/patron/util.js: Add an
+	actor.usr.last_update_date column Though should we call it edit_date, like on asset.copy? :)  Also
+	added trigger, and some display definitions in the staff client.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-09-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/summary.js: a CSS hook in
+	case folks want to hide this If you'd like to hide usr_summary stat cats in the patron info pane,
+	add this to server/skin/patron_summary_custom.css: .stat_cat_summary_row { display: none; } Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/patron/summary.js: Stat Cat
+	Summary Display Fixes 1 - Suppress sip field and format in horizontal interface 2 - Make
+	"show in summary" work for vertical interface Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/auth/controller.js,
+	Open-ILS/xul/staff_client/chrome/content/main/main.js: Support
+	server/id for server name Strip off the /id part to get the real server name.  Each /id gets a
+	different workstation registration.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-09-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0618.data.org-setting-phone_pw.sql: 
+	tweak description for "Patron: password from phone #" setting Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0618.data.org-setting-phone_pw.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.phone_pw.sql: lp#794153 stamping
+	upgrade script for phone pw Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-02  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.phone_pw.sql: Unwrapped upgrade
+	script for descripition changes Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-02  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Seed data update for
+	regex descriptions Mention capture group stuff in day_phone Add note about day_phone to
+	generic phone Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-13  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Regex check for
+	"last 4 digits of phone number" If the day_phone regex (direct or from generic phone) has a capture
+	group use it as the "last 4 digits".  For example, you might configure this for day_phone regex: [2-9]\d{2}-\d{3}-(\d{4})( x\d+)? With this patch the extension will be ignored for the last 4 digits.  Note: Does not require that the "last 4 digits" capture group
+	actually contain 4 digits.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-09-07  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/AstCa
+	ll.pm: A/T reactor 'AstCall' can't have global CStoreEditor It's not good for any Evergreen service to try to have a global
+	cstoreeditor instance.  Scope it to the handler() sub that needs it,
+	and comment out the thus-far unused/unfinished retrieve() sub.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-07  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0617.schema.add-reservation-email-notif
+	y.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.add-reservation-email-notif
+	y.sql: Stamping upgrade script for reservation capture notification~ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-30  Jeff Davis <jdavis at sitka.bclibraries.ca>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Booking.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Validator.pm,
+	Open-ILS/src/sql/Pg/095.schema.booking.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.add-reservation-email-notif
+	y.sql, Open-ILS/web/js/dojo/openils/booking/nls/reservation.js,
+	Open-ILS/web/js/ui/default/booking/reservation.js,
+	Open-ILS/web/templates/default/booking/reservation.tt2: Email
+	notification of reservation capture When a reserved resource is captured, Evergreen does not notify the
+	patron that the resource is ready for pickup. (As far as I am aware
+	this is true of all versions of Evergreen that include bookings.)
+	This could give rise to situations where the patron goes to pick up
+	the resource at the specified time, only to find that it hasn't been
+	captured and is currently unavailable.  This change gives you a checkbox to enable email notification when
+	creating the reservation, and adds a hook, reactor, and validator so
+	that you can create an action trigger to send the emails.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-07  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: Fix
+	unified interface w/ editing multiple volumes Breakage if editing existing items across volumes with non-default
+	values for call number class, prefix, or suffix.  This was due to
+	some logic happening within a loop that was sadly referencing data
+	that changed out from under it with every loop iteration (so for
+	example, we were effectively referencing the last rendered class
+	menu instead of each in turn).  Remember folks: for (var unsafe = 0; unsafe < 10; unsafe++) {     setTimeout(         function(safe) {             return function() {                 do_something_with(safe); // good                 do_something_with(unsafe); // bad             };         }(unsafe),         1000     ); } Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	LP#838311 acn_id = undefined error in vol/copy ui Fixes race condition between multiple event listeners on drop-down
+	menus.  Bug happened most often when batch applying values across
+	multiple volumes and then hitting save/create/update.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/XUL.js,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: Add CSV filetype
+	filter options Vandelay CSV export Includes generic support for specifying default filename, extension,
+	and new filter types for the XUL NsIFilePicker wrapper Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-07  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/Makefile.install: Display warning message and
+	prompt before PostgreSQL removal Building on the good work in LP# 801624, use the -P "prompt" flag
+	instead of -yq for apt(itude) to ensure that the user has the
+	ability to quit the dependency install and reevaluate whether they
+	want to actually destroy their existing PostgreSQL databases. Note
+	that this is specifically in the context of the removal of the
+	database packages, rather than a global change.  Also, turn the inline comment into a displayed description of what
+	is happening and why, along with a nice big warning.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-19  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/extras/Makefile.install: conditional remove of libpq5
+	libpq-dev in Makefile In Makefile.install for the install_pgsql_client_debs_90 target.
+	Only do it if version 8 of libpq-dev is installed.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: 
+	Remove "fallback to old style" UPDATE perm The middle layer no longer supports the UPDATE_ORG_UNIT_SETTING. +
+	name form of editing permissions. Don't use it as a fallback.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-08-30  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: 
+	Library Settings Editor: Use real perms When update_perm exists use that permission, instead of a permission
+	based solely on the name of the permission.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-07  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0616.schema.actor_org_unit_trigger_prox
+	_update.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.schema.actor_org_unit_trigger_prox
+	_update.sql: Stamping the upgrade script for in-db OU proximity
+	update Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-29  Steven Callender <stevecallender at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/020.schema.functions.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.schema.actor_org_unit_trigger_prox
+	_update.sql: LP#836768 Proximity update trigger Update org proximity automatically when parent org unit is changed
+	to avoid the need to use the autogen -u parameter, by means of a
+	trigger on the actor.org_unit table and a new function.  Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-30  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/oils_sip.xml.example, Open-ILS/src/Makefile.am: 
+	Fix for LP bug #702422.  Add @libdir@/javascript/ path in legacy script section of
+	oils_sip.xml.example so that legacy scripts work with SIP2.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-31  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/js/ui/default/conify/global/acq/provider.js,
+	Open-ILS/web/templates/default/conify/global/acq/provider.tt2: 
+	Adding org unit context selector to providers screen This helps
+	alleviate the bug reported in LP 731510 and generally improves
+	usability.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-26  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/support-scripts/eg_db_config.pl: Correct pg_config
+	failure in eg_db_config.pl Missing a =s in getopts config means it becomes a 0 or 1, when it
+	should be a string.  The problem only occurs when you are specifying a particular
+	postgresql pg_config file (for example, if you have multiple
+	versions of postgresql installed).  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-09-07  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/Configure.pm: Clear
+	org_unit cache fix for autogen.sh autogen.sh is not properly clearing the org_tree cache.  It is
+	unclear how this hasn't caused a problem before, but this fix works
+	for me and should be at least harmless in other enviroments.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-09-06  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0615.schema.generic-mapping-index-norma
+	lizer.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.generic-mapping-index-norma
+	lizer.sql: Stamp upgrade for generic mapping index normalizer Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-09-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.generic-mapping-index-norma
+	lizer.sql: Generic mapping index normalizer Useful for mapping values extracted for SVF
+	(metabib.record_attr.attrs) attributes to alternate values.  For
+	example, you can map collections of MARC Audience codes into groups
+	of codes for to create audience groups.  This normalizer takes a text parameter (in addition to the extracted
+	value) that defines a simple mapping between input and output.  Each
+	mapping consists of one or more comma separated strings on the left
+	of a separator (called the source group), a separator, and a
+	alphanumeric string to the right of the separator (called the
+	mapping target). The format of a mapping is:   {string}[,{string}][..]=>{non-whitespace-string} For example:   a,b,c=>X Multiple mappings can be supplied, separated by whitespace.  Each
+	mapping itself is not sensitive to most whitespace.  For instance,
+	the following are all equivalent:  a,b,c=>X  a, b, c => X     a   ,   b   ,   c    =>     X In each, "a", "b" and "c" are mapped to "X", and anything else is
+	returned without mapping.  Additionionally, whitespace within a string in the source group is
+	tolerated.  Given a mapping of:   a e i o u, y, w => V The string "a e i o u", "y" or "w" will return "V".  In addition to explicit mapping, an empty source group will produce
+	a default mapping, where anything not matching another mapping will
+	return the mapping target.  For instance, given the following:   =>X a,b,c=>Y An input of "b" will return "Y" and an input of "k" will return "X".
+	The Default mapping target may be the same as the mapping target
+	with an explicit source group.  For instance, the following can be
+	interperated as "map a, b and c to X, map 1, 2, 3 and anything we
+	don't know about to Y":  a,b,c=>X 1,2,3=>Y =>Y As a practical example, simplifying the audience values in MARC
+	fixed fields to three groups and using those values in a new coded
+	value map would allow one to create a dynamically populated search
+	interface that uses more patron- friendly terms.  For instance:   a,b,j=>K c,d=>T a=>A =>A g=>E The above makes the assumption that Unknown, Specialized and Not
+	Coded should be lumped in with Audult, just to be safe, and General
+	is for (E)veryone.  Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-06  Jason Etheridge <jason at esilibrary.com>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_chrom
+	e.xul,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_offli
+	ne.xul: Pull in custom.js with offline/chrome overlays Or at least try to.  Main goal here is for browser.xul to see url
+	constant changes from custom.js and feed them to embedded
+	Acquisition interfaces via xulG.urls Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-09-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/advanced/search.tt2: TPac: first
+	try audience_group SVF for audience maps Allow for configuration of an "audience_group"
+	config.record_attr_definition for collecting MARC audience codes
+	into more human-friendly groups.  This allows the TPac to behave
+	more like the current OPAC, which groups audience values into
+	simpler collections. As with "mattype", if no "audience_group"
+	configuration exists, fall back to the traditional, long-form
+	"audience" attribute.  For future referene, here's an example setup using an
+	"audience_group" attribute.  -- Can be done in MARC Record Attributes admin UI INSERT INTO
+	    config.record_attr_definition (name, label, description, fixed_field, filter) VALUES     ('audience_group', 'Audience Group', 'Audience Group', 'Audn',
+	    TRUE); -- Can be done in MARC Coded Value Maps admin UI INSERT INTO
+	    config.coded_value_map (ctype, code, value, description) VALUES     ('audience_group', 'A', 'Adult', 'Adult Audience'),     ('audience_group', 'T', 'Teen', 'Teen Audience'),     ('audience_group', 'C', 'Children', 'Children Audience'); -- No UI currently INSERT INTO config.record_attr_index_norm_map     (attr, norm, params) VALUES     ('audience_group', (         SELECT id FROM             config.index_normalizer WHERE func =             'generic_map_normalizer'         ),         '["=>A g,e,f=>A a,c,j,b=>C d=>T"]' ); Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-06  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Repaired field name thinko for
+	config.record_attr_index_norm_map Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-01  Dan Wells <dbw2 at calvin.edu>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Hourly fine periods do not charge enough Hourly fine periods are not charging for the first period of
+	overdue-ness. If an item is due at 2:00pm and has a fine of $.50 per
+	hour, the first fine should be eligible for generation at 2:01pm. As
+	it stands, the first fine does not generate until an entire fine
+	period has elapsed, so in this case, 3:00pm.  The previous version of the code had a special case for day-
+	granular fine periods, so a majority of fines were not affected.
+	This commit expands the same idea (charging for the fine period you
+	are currently "in") to all fine periods.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-09-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	TPac: Multiple holds in staff client place-holds session Leave the patron_barcode cookie in place after holds placement
+	succeeds from the embedded catalog so that the next hold request
+	will use the same patron.  This allows for multiple hold request to
+	take place within one session.  The negative is that the cookie
+	sticks around even after a patron session is closed.  This is
+	normally not a problem, because each new patron sesion will update
+	the cookie.  (And when the cookie is not updated, staff still have
+	the option to /not/ place a hold for the pre-selected user).
+	However, it would be nice to have the staff client clear the cookie
+	at the right time.  Will look at that too.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: TPac:
+	MARC expert search bug fixes - Allow for searching on tags w/o specifying subfield - Protect against empty search queries - Cleanup: Avoid some of the manual osrf session management by using   $U->simplereq, which does all of that for us.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/parts/filtersort.tt2,
+	Open-ILS/src/templates/opac/results.tt2,
+	Open-ILS/web/js/ui/default/opac/simple.js: TPac: Submit search on
+	sort/limit change By popular demand, when the user changes the search sort or
+	limit-to-available options, the form is immediately resubmitted via
+	JavaScript.  Fails gracefully in the absence of JS.  Minor JS cleanup.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-02  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 9e5a0f04763fe16e36b9798592a605058b848c2b Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Fri Sep 2 12:07:14 2011 -0400
+
+2011-09-02  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.cache_visibility_and_peer_r
+	ecords.sql: LP#837566 undeleting a bib record causes an error fixes a column reference Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-09-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: fix
+	Acq -> Update Barcodes post-parts Items from acquisitions were having null instead of [] for .parts() Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/opac/myopac/prefs.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/opac/parts/anon_list.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/parts/result/lowhits.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/web/css/skin/default/opac/semiauto.css: TPac: more template
+	scrubbing and cleaning Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/admin/printer_settings.js: 
+	LP#838969 Silent print cannot be unselected Thanks Bill! Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-09-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: Tpac: Support for
+	skinning via Apache configuration More generally, support for augmenting the Template Toolkit template
+	path list to allow for per-vhost template paths.  For example, a 3-tier consortium could do something like this: <VirtualHost ...>     [...]     PerlAddVar OILSTemplatePath "/openils/var/templates_branch_abc"     PerlAddVar OILSTemplatePath "/openils/var/templates_system_xyz"     PerlAddVar OILSTemplatePath "/openils/var/templates_shared"
+	</VirtualHost> Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: Don't prepend / to
+	relative template paths Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/src/templates/acq/common/claim_dialog.tt2,
+	Open-ILS/src/templates/acq/common/final_claim_dialog.tt2,
+	Open-ILS/src/templates/acq/common/info.tt2,
+	Open-ILS/src/templates/acq/common/inv_dialog.tt2,
+	Open-ILS/src/templates/acq/common/jubgrid.tt2,
+	Open-ILS/src/templates/acq/common/li_table.tt2,
+	Open-ILS/src/templates/acq/common/li_table_pager.tt2,
+	Open-ILS/src/templates/acq/common/notes.tt2,
+	Open-ILS/src/templates/acq/financial/claim_eligible.tt2,
+	Open-ILS/src/templates/acq/financial/list_currency_types.tt2,
+	Open-ILS/src/templates/acq/financial/list_funding_sources.tt2,
+	Open-ILS/src/templates/acq/financial/list_funds.tt2,
+	Open-ILS/src/templates/acq/financial/view_fund.tt2,
+	Open-ILS/src/templates/acq/financial/view_funding_source.tt2,
+	Open-ILS/src/templates/acq/financial/view_provider.tt2,
+	Open-ILS/src/templates/acq/invoice/view.tt2,
+	Open-ILS/src/templates/acq/lineitem/findbib.tt2,
+	Open-ILS/src/templates/acq/lineitem/history.tt2,
+	Open-ILS/src/templates/acq/lineitem/related.tt2,
+	Open-ILS/src/templates/acq/lineitem/search.tt2,
+	Open-ILS/src/templates/acq/lineitem/worksheet.tt2,
+	Open-ILS/src/templates/acq/picklist/bib_search.tt2,
+	Open-ILS/src/templates/acq/picklist/brief_record.tt2,
+	Open-ILS/src/templates/acq/picklist/from_bib.tt2,
+	Open-ILS/src/templates/acq/picklist/list.tt2,
+	Open-ILS/src/templates/acq/picklist/upload.tt2,
+	Open-ILS/src/templates/acq/picklist/user_request.tt2,
+	Open-ILS/src/templates/acq/picklist/view.tt2,
+	Open-ILS/src/templates/acq/po/create.tt2,
+	Open-ILS/src/templates/acq/po/edi_messages.tt2,
+	Open-ILS/src/templates/acq/po/events.tt2,
+	Open-ILS/src/templates/acq/po/history.tt2,
+	Open-ILS/src/templates/acq/po/item_table.tt2,
+	Open-ILS/src/templates/acq/po/search.tt2,
+	Open-ILS/src/templates/acq/po/view.tt2,
+	Open-ILS/src/templates/acq/receiving/process.tt2,
+	Open-ILS/src/templates/acq/search/unified.tt2,
+	Open-ILS/src/templates/acq/settings/li_attr.tt2,
+	Open-ILS/src/templates/actor/user/register.tt2,
+	Open-ILS/src/templates/actor/user/register_table.tt2,
+	Open-ILS/src/templates/actor/user/trigger_events.tt2,
+	Open-ILS/src/templates/base.tt2,
+	Open-ILS/src/templates/booking/capture.tt2,
+	Open-ILS/src/templates/booking/pickup.tt2,
+	Open-ILS/src/templates/booking/pull_list.tt2,
+	Open-ILS/src/templates/booking/reservation.tt2,
+	Open-ILS/src/templates/booking/return.tt2,
+	Open-ILS/src/templates/cat/authority/list.tt2,
+	Open-ILS/src/templates/circ/selfcheck/audio_config.tt2,
+	Open-ILS/src/templates/circ/selfcheck/banner.tt2,
+	Open-ILS/src/templates/circ/selfcheck/circ_page.tt2,
+	Open-ILS/src/templates/circ/selfcheck/fines.tt2,
+	Open-ILS/src/templates/circ/selfcheck/holds_page.tt2,
+	Open-ILS/src/templates/circ/selfcheck/main.tt2,
+	Open-ILS/src/templates/circ/selfcheck/patron_login.tt2,
+	Open-ILS/src/templates/circ/selfcheck/payment.tt2,
+	Open-ILS/src/templates/circ/selfcheck/summary.tt2,
+	Open-ILS/src/templates/conify/global/acq/cancel_reason.tt2,
+	Open-ILS/src/templates/conify/global/acq/claim_event_type.tt2,
+	Open-ILS/src/templates/conify/global/acq/claim_policy.tt2,
+	Open-ILS/src/templates/conify/global/acq/claim_policy_action.tt2,
+	Open-ILS/src/templates/conify/global/acq/claim_type.tt2,
+	Open-ILS/src/templates/conify/global/acq/distribution_formula.tt2,
+	Open-ILS/src/templates/conify/global/acq/edi_account.tt2,
+	Open-ILS/src/templates/conify/global/acq/exchange_rate.tt2,
+	Open-ILS/src/templates/conify/global/acq/fund_tag.tt2,
+	Open-ILS/src/templates/conify/global/acq/invoice_item_type.tt2,
+	Open-ILS/src/templates/conify/global/acq/invoice_payment_method.tt2
+	, Open-ILS/src/templates/conify/global/acq/lineitem_alert.tt2,
+	Open-ILS/src/templates/conify/global/acq/lineitem_marc_attr_def.tt2
+	, Open-ILS/src/templates/conify/global/acq/provider.tt2,
+	Open-ILS/src/templates/conify/global/action/survey.tt2,
+	Open-ILS/src/templates/conify/global/action/survey/edit.tt2,
+	Open-ILS/src/templates/conify/global/action_trigger/event_definitio
+	n.tt2,
+	Open-ILS/src/templates/conify/global/action_trigger/event_definitio
+	n_data.tt2,
+	Open-ILS/src/templates/conify/global/asset/copy_location_order.tt2,
+	Open-ILS/src/templates/conify/global/asset/copy_template.tt2,
+	Open-ILS/src/templates/conify/global/biblio/monograph_part.tt2,
+	Open-ILS/src/templates/conify/global/booking/resource.tt2,
+	Open-ILS/src/templates/conify/global/booking/resource_attr.tt2,
+	Open-ILS/src/templates/conify/global/booking/resource_attr_map.tt2,
+	Open-ILS/src/templates/conify/global/booking/resource_attr_value.tt
+	2, Open-ILS/src/templates/conify/global/booking/resource_type.tt2,
+	Open-ILS/src/templates/conify/global/cat/authority/browse_axis.tt2,
+	Open-ILS/src/templates/conify/global/cat/authority/browse_axis_auth
+	ority_field_map.tt2,
+	Open-ILS/src/templates/conify/global/cat/authority/control_set.tt2,
+	Open-ILS/src/templates/conify/global/cat/authority/control_set_auth
+	ority_field.tt2,
+	Open-ILS/src/templates/conify/global/cat/authority/control_set_bib_
+	field.tt2,
+	Open-ILS/src/templates/conify/global/cat/authority/thesaurus.tt2,
+	Open-ILS/src/templates/conify/global/config/acn_prefix.tt2,
+	Open-ILS/src/templates/conify/global/config/acn_suffix.tt2,
+	Open-ILS/src/templates/conify/global/config/actor_sip_fields.tt2,
+	Open-ILS/src/templates/conify/global/config/asset_sip_fields.tt2,
+	Open-ILS/src/templates/conify/global/config/barcode_completion.tt2,
+	Open-ILS/src/templates/conify/global/config/billing_type.tt2,
+	Open-ILS/src/templates/conify/global/config/circ_matrix_matchpoint.
+	tt2,
+	Open-ILS/src/templates/conify/global/config/circ_matrix_weights.tt2
+	, Open-ILS/src/templates/conify/global/config/circ_modifier.tt2,
+	Open-ILS/src/templates/conify/global/config/coded_value_map.tt2,
+	Open-ILS/src/templates/conify/global/config/global_flag.tt2,
+	Open-ILS/src/templates/conify/global/config/hard_due_date.tt2,
+	Open-ILS/src/templates/conify/global/config/hard_due_date_values.tt
+	2,
+	Open-ILS/src/templates/conify/global/config/hold_matrix_matchpoint.
+	tt2,
+	Open-ILS/src/templates/conify/global/config/hold_matrix_weights.tt2
+	, Open-ILS/src/templates/conify/global/config/idl_field_doc.tt2,
+	Open-ILS/src/templates/conify/global/config/metabib_field.tt2,
+	Open-ILS/src/templates/conify/global/config/org_unit_setting_type.t
+	t2,
+	Open-ILS/src/templates/conify/global/config/record_attr_definition.
+	tt2,
+	Open-ILS/src/templates/conify/global/config/rule_age_hold_protect.t
+	t2,
+	Open-ILS/src/templates/conify/global/config/rule_circ_duration.tt2,
+	Open-ILS/src/templates/conify/global/config/rule_max_fine.tt2,
+	Open-ILS/src/templates/conify/global/config/rule_recurring_fine.tt2
+	, Open-ILS/src/templates/conify/global/config/standing_penalty.tt2,
+	Open-ILS/src/templates/conify/global/config/usr_setting_type.tt2,
+	Open-ILS/src/templates/conify/global/config/weight_assoc.tt2,
+	Open-ILS/src/templates/conify/global/config/z3950_source.tt2,
+	Open-ILS/src/templates/conify/global/permission/grp_penalty_thresho
+	ld.tt2,
+	Open-ILS/src/templates/conify/global/vandelay/match_set.tt2,
+	Open-ILS/src/templates/conify/global/vandelay/match_set_tree.tt2,
+	Open-ILS/src/templates/default/acq/common/claim_dialog.tt2,
+	Open-ILS/src/templates/default/acq/common/final_claim_dialog.tt2,
+	Open-ILS/src/templates/default/acq/common/info.tt2,
+	Open-ILS/src/templates/default/acq/common/inv_dialog.tt2,
+	Open-ILS/src/templates/default/acq/common/jubgrid.tt2,
+	Open-ILS/src/templates/default/acq/common/li_table.tt2,
+	Open-ILS/src/templates/default/acq/common/li_table_pager.tt2,
+	Open-ILS/src/templates/default/acq/common/notes.tt2,
+	Open-ILS/src/templates/default/acq/financial/claim_eligible.tt2,
+	Open-ILS/src/templates/default/acq/financial/list_currency_types.tt
+	2,
+	Open-ILS/src/templates/default/acq/financial/list_funding_sources.t
+	t2, Open-ILS/src/templates/default/acq/financial/list_funds.tt2,
+	Open-ILS/src/templates/default/acq/financial/view_fund.tt2,
+	Open-ILS/src/templates/default/acq/financial/view_funding_source.tt
+	2, Open-ILS/src/templates/default/acq/financial/view_provider.tt2,
+	Open-ILS/src/templates/default/acq/invoice/view.tt2,
+	Open-ILS/src/templates/default/acq/lineitem/findbib.tt2,
+	Open-ILS/src/templates/default/acq/lineitem/history.tt2,
+	Open-ILS/src/templates/default/acq/lineitem/related.tt2,
+	Open-ILS/src/templates/default/acq/lineitem/search.tt2,
+	Open-ILS/src/templates/default/acq/lineitem/worksheet.tt2,
+	Open-ILS/src/templates/default/acq/picklist/bib_search.tt2,
+	Open-ILS/src/templates/default/acq/picklist/brief_record.tt2,
+	Open-ILS/src/templates/default/acq/picklist/from_bib.tt2,
+	Open-ILS/src/templates/default/acq/picklist/list.tt2,
+	Open-ILS/src/templates/default/acq/picklist/upload.tt2,
+	Open-ILS/src/templates/default/acq/picklist/user_request.tt2,
+	Open-ILS/src/templates/default/acq/picklist/view.tt2,
+	Open-ILS/src/templates/default/acq/po/create.tt2,
+	Open-ILS/src/templates/default/acq/po/edi_messages.tt2,
+	Open-ILS/src/templates/default/acq/po/events.tt2,
+	Open-ILS/src/templates/default/acq/po/history.tt2,
+	Open-ILS/src/templates/default/acq/po/item_table.tt2,
+	Open-ILS/src/templates/default/acq/po/search.tt2,
+	Open-ILS/src/templates/default/acq/po/view.tt2,
+	Open-ILS/src/templates/default/acq/receiving/process.tt2,
+	Open-ILS/src/templates/default/acq/search/unified.tt2,
+	Open-ILS/src/templates/default/acq/settings/li_attr.tt2,
+	Open-ILS/src/templates/default/actor/user/register.tt2,
+	Open-ILS/src/templates/default/actor/user/register_table.tt2,
+	Open-ILS/src/templates/default/actor/user/trigger_events.tt2,
+	Open-ILS/src/templates/default/base.tt2,
+	Open-ILS/src/templates/default/booking/capture.tt2,
+	Open-ILS/src/templates/default/booking/pickup.tt2,
+	Open-ILS/src/templates/default/booking/pull_list.tt2,
+	Open-ILS/src/templates/default/booking/reservation.tt2,
+	Open-ILS/src/templates/default/booking/return.tt2,
+	Open-ILS/src/templates/default/cat/authority/list.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/audio_config.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/banner.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/circ_page.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/fines.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/holds_page.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/main.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/patron_login.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/payment.tt2,
+	Open-ILS/src/templates/default/circ/selfcheck/summary.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/cancel_reason.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/claim_event_type.t
+	t2,
+	Open-ILS/src/templates/default/conify/global/acq/claim_policy.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/claim_policy_actio
+	n.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/claim_type.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/distribution_formu
+	la.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/edi_account.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/exchange_rate.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/fund_tag.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/invoice_item_type.
+	tt2,
+	Open-ILS/src/templates/default/conify/global/acq/invoice_payment_me
+	thod.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/lineitem_alert.tt2
+	,
+	Open-ILS/src/templates/default/conify/global/acq/lineitem_marc_attr
+	_def.tt2,
+	Open-ILS/src/templates/default/conify/global/acq/provider.tt2,
+	Open-ILS/src/templates/default/conify/global/action/survey.tt2,
+	Open-ILS/src/templates/default/conify/global/action/survey/edit.tt2
+	,
+	Open-ILS/src/templates/default/conify/global/action_trigger/event_d
+	efinition.tt2,
+	Open-ILS/src/templates/default/conify/global/action_trigger/event_d
+	efinition_data.tt2,
+	Open-ILS/src/templates/default/conify/global/asset/copy_location_or
+	der.tt2,
+	Open-ILS/src/templates/default/conify/global/asset/copy_template.tt
+	2,
+	Open-ILS/src/templates/default/conify/global/biblio/monograph_part.
+	tt2,
+	Open-ILS/src/templates/default/conify/global/booking/resource.tt2,
+	Open-ILS/src/templates/default/conify/global/booking/resource_attr.
+	tt2,
+	Open-ILS/src/templates/default/conify/global/booking/resource_attr_
+	map.tt2,
+	Open-ILS/src/templates/default/conify/global/booking/resource_attr_
+	value.tt2,
+	Open-ILS/src/templates/default/conify/global/booking/resource_type.
+	tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/browse_a
+	xis.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/browse_a
+	xis_authority_field_map.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/control_
+	set.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/control_
+	set_authority_field.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/control_
+	set_bib_field.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/thesauru
+	s.tt2,
+	Open-ILS/src/templates/default/conify/global/config/acn_prefix.tt2,
+	Open-ILS/src/templates/default/conify/global/config/acn_suffix.tt2,
+	Open-ILS/src/templates/default/conify/global/config/actor_sip_field
+	s.tt2,
+	Open-ILS/src/templates/default/conify/global/config/asset_sip_field
+	s.tt2,
+	Open-ILS/src/templates/default/conify/global/config/barcode_complet
+	ion.tt2,
+	Open-ILS/src/templates/default/conify/global/config/billing_type.tt
+	2,
+	Open-ILS/src/templates/default/conify/global/config/circ_matrix_mat
+	chpoint.tt2,
+	Open-ILS/src/templates/default/conify/global/config/circ_matrix_wei
+	ghts.tt2,
+	Open-ILS/src/templates/default/conify/global/config/circ_modifier.t
+	t2,
+	Open-ILS/src/templates/default/conify/global/config/coded_value_map
+	.tt2,
+	Open-ILS/src/templates/default/conify/global/config/global_flag.tt2
+	,
+	Open-ILS/src/templates/default/conify/global/config/hard_due_date.t
+	t2,
+	Open-ILS/src/templates/default/conify/global/config/hard_due_date_v
+	alues.tt2,
+	Open-ILS/src/templates/default/conify/global/config/hold_matrix_mat
+	chpoint.tt2,
+	Open-ILS/src/templates/default/conify/global/config/hold_matrix_wei
+	ghts.tt2,
+	Open-ILS/src/templates/default/conify/global/config/idl_field_doc.t
+	t2,
+	Open-ILS/src/templates/default/conify/global/config/metabib_field.t
+	t2,
+	Open-ILS/src/templates/default/conify/global/config/org_unit_settin
+	g_type.tt2,
+	Open-ILS/src/templates/default/conify/global/config/record_attr_def
+	inition.tt2,
+	Open-ILS/src/templates/default/conify/global/config/rule_age_hold_p
+	rotect.tt2,
+	Open-ILS/src/templates/default/conify/global/config/rule_circ_durat
+	ion.tt2,
+	Open-ILS/src/templates/default/conify/global/config/rule_max_fine.t
+	t2,
+	Open-ILS/src/templates/default/conify/global/config/rule_recurring_
+	fine.tt2,
+	Open-ILS/src/templates/default/conify/global/config/standing_penalt
+	y.tt2,
+	Open-ILS/src/templates/default/conify/global/config/usr_setting_typ
+	e.tt2,
+	Open-ILS/src/templates/default/conify/global/config/weight_assoc.tt
+	2,
+	Open-ILS/src/templates/default/conify/global/config/z3950_source.tt
+	2,
+	Open-ILS/src/templates/default/conify/global/permission/grp_penalty
+	_threshold.tt2,
+	Open-ILS/src/templates/default/conify/global/vandelay/match_set.tt2
+	,
+	Open-ILS/src/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2, Open-ILS/src/templates/default/footer.tt2,
+	Open-ILS/src/templates/default/header.tt2,
+	Open-ILS/src/templates/default/menu.tt2,
+	Open-ILS/src/templates/default/opac/advanced.tt2,
+	Open-ILS/src/templates/default/opac/cnbrowse.tt2,
+	Open-ILS/src/templates/default/opac/home.tt2,
+	Open-ILS/src/templates/default/opac/login.tt2,
+	Open-ILS/src/templates/default/opac/mylist.tt2,
+	Open-ILS/src/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/src/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/default/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main_pay.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main_payments.tt2,
+	Open-ILS/src/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/src/templates/default/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/default/opac/myopac/prefs_settings.tt2,
+	Open-ILS/src/templates/default/opac/myopac/receipt_email.tt2,
+	Open-ILS/src/templates/default/opac/myopac/receipt_print.tt2,
+	Open-ILS/src/templates/default/opac/myopac/update_email.tt2,
+	Open-ILS/src/templates/default/opac/myopac/update_password.tt2,
+	Open-ILS/src/templates/default/opac/myopac/update_username.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/src/templates/default/opac/parts/anon_list.tt2,
+	Open-ILS/src/templates/default/opac/parts/base.tt2,
+	Open-ILS/src/templates/default/opac/parts/chilifresh.tt2,
+	Open-ILS/src/templates/default/opac/parts/coded_value_selector.tt2,
+	Open-ILS/src/templates/default/opac/parts/config.tt2,
+	Open-ILS/src/templates/default/opac/parts/filtersort.tt2,
+	Open-ILS/src/templates/default/opac/parts/footer.tt2,
+	Open-ILS/src/templates/default/opac/parts/header.tt2,
+	Open-ILS/src/templates/default/opac/parts/hold_error_messages.tt2,
+	Open-ILS/src/templates/default/opac/parts/homesearch.tt2,
+	Open-ILS/src/templates/default/opac/parts/js.tt2,
+	Open-ILS/src/templates/default/opac/parts/login/form.tt2,
+	Open-ILS/src/templates/default/opac/parts/login/help.tt2,
+	Open-ILS/src/templates/default/opac/parts/login/password_hint.tt2,
+	Open-ILS/src/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/default/opac/parts/myopac/base.tt2,
+	Open-ILS/src/templates/default/opac/parts/myopac/main_base.tt2,
+	Open-ILS/src/templates/default/opac/parts/myopac/main_refund_policy
+	.tt2,
+	Open-ILS/src/templates/default/opac/parts/myopac/prefs_base.tt2,
+	Open-ILS/src/templates/default/opac/parts/myopac/prefs_hints.tt2,
+	Open-ILS/src/templates/default/opac/parts/org_selector.tt2,
+	Open-ILS/src/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/default/opac/parts/place_hold_result.tt2,
+	Open-ILS/src/templates/default/opac/parts/printnav.tt2,
+	Open-ILS/src/templates/default/opac/parts/qtype_selector.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/awards.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/body.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/issues.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/refworks.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/series.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/subjects.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summaryplus.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/lowhits_purchase.t
+	t2, Open-ILS/src/templates/default/opac/parts/result/paginate.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/src/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/src/templates/default/opac/parts/tips.tt2,
+	Open-ILS/src/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/src/templates/default/opac/parts/topnav_links.tt2,
+	Open-ILS/src/templates/default/opac/parts/topnav_logo.tt2,
+	Open-ILS/src/templates/default/opac/place_hold.tt2,
+	Open-ILS/src/templates/default/opac/record.tt2,
+	Open-ILS/src/templates/default/opac/results.tt2,
+	Open-ILS/src/templates/default/serial/list_item.tt2,
+	Open-ILS/src/templates/default/serial/list_stream.tt2,
+	Open-ILS/src/templates/default/serial/list_subscription.tt2,
+	Open-ILS/src/templates/default/serial/print_routing_list_users.tt2,
+	Open-ILS/src/templates/default/serial/subscription.tt2,
+	Open-ILS/src/templates/default/serial/subscription/caption_and_patt
+	ern.tt2,
+	Open-ILS/src/templates/default/serial/subscription/distribution.tt2
+	, Open-ILS/src/templates/default/serial/subscription/issuance.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/attrs.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/export.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/import_errors.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/item_attrs.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/marchtml.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/matches.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/profiles.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/progress.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/queue.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/queueselect.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/toolbar.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/upload.tt2,
+	Open-ILS/src/templates/default/vandelay/vandelay.tt2,
+	Open-ILS/src/templates/footer.tt2,
+	Open-ILS/src/templates/header.tt2, Open-ILS/src/templates/menu.tt2,
+	Open-ILS/src/templates/opac/advanced.tt2,
+	Open-ILS/src/templates/opac/cnbrowse.tt2,
+	Open-ILS/src/templates/opac/home.tt2,
+	Open-ILS/src/templates/opac/login.tt2,
+	Open-ILS/src/templates/opac/mylist.tt2,
+	Open-ILS/src/templates/opac/myopac/circ_history.tt2,
+	Open-ILS/src/templates/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/opac/myopac/main.tt2,
+	Open-ILS/src/templates/opac/myopac/main_pay.tt2,
+	Open-ILS/src/templates/opac/myopac/main_payment_form.tt2,
+	Open-ILS/src/templates/opac/myopac/main_payments.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/opac/myopac/prefs_settings.tt2,
+	Open-ILS/src/templates/opac/myopac/receipt_email.tt2,
+	Open-ILS/src/templates/opac/myopac/receipt_print.tt2,
+	Open-ILS/src/templates/opac/myopac/update_email.tt2,
+	Open-ILS/src/templates/opac/myopac/update_password.tt2,
+	Open-ILS/src/templates/opac/myopac/update_username.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/global_row.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/opac/parts/advanced/search.tt2,
+	Open-ILS/src/templates/opac/parts/anon_list.tt2,
+	Open-ILS/src/templates/opac/parts/base.tt2,
+	Open-ILS/src/templates/opac/parts/chilifresh.tt2,
+	Open-ILS/src/templates/opac/parts/coded_value_selector.tt2,
+	Open-ILS/src/templates/opac/parts/config.tt2,
+	Open-ILS/src/templates/opac/parts/filtersort.tt2,
+	Open-ILS/src/templates/opac/parts/footer.tt2,
+	Open-ILS/src/templates/opac/parts/header.tt2,
+	Open-ILS/src/templates/opac/parts/hold_error_messages.tt2,
+	Open-ILS/src/templates/opac/parts/homesearch.tt2,
+	Open-ILS/src/templates/opac/parts/js.tt2,
+	Open-ILS/src/templates/opac/parts/login/form.tt2,
+	Open-ILS/src/templates/opac/parts/login/help.tt2,
+	Open-ILS/src/templates/opac/parts/login/password_hint.tt2,
+	Open-ILS/src/templates/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/base.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_base.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/main_refund_policy.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/prefs_base.tt2,
+	Open-ILS/src/templates/opac/parts/myopac/prefs_hints.tt2,
+	Open-ILS/src/templates/opac/parts/org_selector.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/opac/parts/place_hold_result.tt2,
+	Open-ILS/src/templates/opac/parts/printnav.tt2,
+	Open-ILS/src/templates/opac/parts/qtype_selector.tt2,
+	Open-ILS/src/templates/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/opac/parts/record/awards.tt2,
+	Open-ILS/src/templates/opac/parts/record/body.tt2,
+	Open-ILS/src/templates/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/src/templates/opac/parts/record/extras.tt2,
+	Open-ILS/src/templates/opac/parts/record/issues.tt2,
+	Open-ILS/src/templates/opac/parts/record/refworks.tt2,
+	Open-ILS/src/templates/opac/parts/record/series.tt2,
+	Open-ILS/src/templates/opac/parts/record/subjects.tt2,
+	Open-ILS/src/templates/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/opac/parts/record/summaryplus.tt2,
+	Open-ILS/src/templates/opac/parts/result/lowhits.tt2,
+	Open-ILS/src/templates/opac/parts/result/lowhits_purchase.tt2,
+	Open-ILS/src/templates/opac/parts/result/paginate.tt2,
+	Open-ILS/src/templates/opac/parts/result/table.tt2,
+	Open-ILS/src/templates/opac/parts/searchbar.tt2,
+	Open-ILS/src/templates/opac/parts/tips.tt2,
+	Open-ILS/src/templates/opac/parts/topnav.tt2,
+	Open-ILS/src/templates/opac/parts/topnav_links.tt2,
+	Open-ILS/src/templates/opac/parts/topnav_logo.tt2,
+	Open-ILS/src/templates/opac/place_hold.tt2,
+	Open-ILS/src/templates/opac/record.tt2,
+	Open-ILS/src/templates/opac/results.tt2,
+	Open-ILS/src/templates/serial/list_item.tt2,
+	Open-ILS/src/templates/serial/list_stream.tt2,
+	Open-ILS/src/templates/serial/list_subscription.tt2,
+	Open-ILS/src/templates/serial/print_routing_list_users.tt2,
+	Open-ILS/src/templates/serial/subscription.tt2,
+	Open-ILS/src/templates/serial/subscription/caption_and_pattern.tt2,
+	Open-ILS/src/templates/serial/subscription/distribution.tt2,
+	Open-ILS/src/templates/serial/subscription/issuance.tt2,
+	Open-ILS/src/templates/vandelay/inc/attrs.tt2,
+	Open-ILS/src/templates/vandelay/inc/export.tt2,
+	Open-ILS/src/templates/vandelay/inc/import_errors.tt2,
+	Open-ILS/src/templates/vandelay/inc/item_attrs.tt2,
+	Open-ILS/src/templates/vandelay/inc/marchtml.tt2,
+	Open-ILS/src/templates/vandelay/inc/matches.tt2,
+	Open-ILS/src/templates/vandelay/inc/profiles.tt2,
+	Open-ILS/src/templates/vandelay/inc/progress.tt2,
+	Open-ILS/src/templates/vandelay/inc/queue.tt2,
+	Open-ILS/src/templates/vandelay/inc/queueselect.tt2,
+	Open-ILS/src/templates/vandelay/inc/toolbar.tt2,
+	Open-ILS/src/templates/vandelay/inc/upload.tt2,
+	Open-ILS/src/templates/vandelay/vandelay.tt2: Remove /default/ from
+	template paths The original goal of having a /default/ component to the template
+	path was to support alternate skins.  However, Template Toolkit
+	supports alternate skins through a more elegant mechanism of
+	providing template overlays via template path configuration.  In
+	other words, skin files will be differentiated by the location of
+	their root path and not because they live in a different skin
+	directory inside the main template root.  Because of this, the /default/ component in the template path serves
+	no purpose and generally just gets in the way.  As a part of this, EGWeb.pm no longer inserts the skin name into the
+	template file path.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-09-01  Bill Erickson <berick at esilibrary.com>
+
+	* : commit e7b515aa363e3990fdbe7f5b6104999911e568a8 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Sep 1 08:44:20 2011
+	-0400
+
+2011-08-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/record/cn_details.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/copyinfo.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/issues.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/series.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/subjects.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css: TPac: more cleanup of
+	unused IDs and files Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/myopac/main_base.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/awards.tt2: Tpac:
+	more unused ID cleanup; parts/record Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-31  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/upgrade/0613.schema.vandelay_isxn_normalization
+	.sql: Address LP#837517, Vandelay ISxN matching Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-31  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0612.schema.authority_overlay_protectio
+	n.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority_overlay_protectio
+	n.sql: Add the forgotten script-numbering to previous commit
+	(db756e623a9) Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-30  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority_overlay_protectio
+	n.sql: Address LP#837522, bib-killing authority overlay generation
+	bug Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/search.tt2: Tpac:
+	removed unused code and IDs in advanced search parts Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-31  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 9836fe817670d0b82057e13f805b9fba2fad2755 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Tue Aug 30 16:28:20
+	2011 -0400
+
+2011-08-30  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Tpac: only show opac_visible notification opt-in settings Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/templates/default/opac/myopac/prefs.tt2: Tpac: Support
+	for adding/editing pending addresses Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/misc_util.tt2: Tpac:
+	show hold/copy count summary in holds status Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/myopac/holds.tt2: TPac: apply
+	the select-all JS to holds list Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/config.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summary.tt2: Tpac:
+	config option for record detail jacket size Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-29  Bill Erickson <berick at esilibrary.com>
+
+	* : Tpac: merged esi/template-toolkit-opac; conflict resolution Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-29  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 5978a4f9f74ccaef678a7bc664231cda4e1592b7 Merge: 5c43def
+	ca2d65d Author: Bill Erickson <berick at esilibrary.com> Date:   Mon
+	Aug 29 11:23:44 2011 -0400
+
+2011-08-26  Jason Etheridge <jason at esilibrary.com>
+
+	* : commit 6a1aa49194919a29ea77f09a2387aadd7d7790ff Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Fri Aug 26 16:02:05 2011
+	-0400
+
+2011-08-23  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/list.js: Expose sort
+	values from lists Specifically useful for things like receipt templates.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-23  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.magic_macros.sql: Five initial OU
+	settings for %INCLUDE()% use header_text footer_text notice_text alert_text event_text None are really restricted to a specific purpose. Names are more of
+	a hint than a requirement.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Receipt
+	Macros: %INCLUDE()% Takes a single parameter: The name of the include.  Each include is an OU setting: circ.staff_client.receipt.<name> The includes are done as the first substitution. This has the
+	benefit of allowing other substitutions within them (including
+	additional calls to %INCLUDE()%) and the downside of not allowing
+	dynamic includes.  Because an include can contain includes the code keeps track of all
+	includes already done, skipping those already included. This
+	prevents infinite loops when A includes B and B includes A, or
+	longer variants thereof.  Primary intended use would be for libraries to place frequently
+	changed notices and such in their templates. Instead of having to
+	edit every template on every workstation they use the %INCLUDE()%
+	macro and edit the org unit settings. At the next login the updated
+	text appears on every workstation.  Due to the includes being processed first a library could use them
+	to centrally administer templates by using an include for each piece
+	of each template.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-19  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Receipt
+	Macros: %SORT()% Added to line item templates.  Takes one or more comma separated
+	parameters: field AS type ASC/DESC AS type is optional ASC/DESC is optional Field is the field name without % signs.  Type is DATE, INT, FLOAT,
+	NUMBER, LOWER, or UPPER DATE will sort based on wrapping both sides in "new Date" INT will
+	sort based on wrapping both sides in parseInt FLOAT and NUMBER will
+	sort based on wrapping both sides in parseFloat LOWER will apply
+	.toLowerCase to both sides UPPER will apply .toUpperCase to both
+	sides ASC (default) will sort in ascending order.  DESC will sort in
+	descending order.  Can be specified more than once: %SORT(a,b)% %SORT(c)% Would sort by
+	a, then b, then c.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-30  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Item.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/Checkout.pm: Add
+	SIP2 chargeable loan support.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/xul/staff_client/server/patron/info_notes.xul: LP#824257
+	Fix nasty overlapping when patron has more than 6 notes Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-25  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: Push phrases down to be subqueries, so they can be ORed together Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 5c43defce39395e1e254be914241ef9a39ef1b5a Merge: a5ea78e
+	75acf58 Author: Bill Erickson <berick at esilibrary.com> Date:   Thu
+	Aug 25 16:03:27 2011 -0400
+
+2011-08-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/main.xul: Add IDs to
+	offline import/export buttons Ensures that the import one, at least, can be found and disabled
+	when pending transactions exist.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-22  Atom Edoceo <atom at helium.edoceo.lan>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/main.js,
+	Open-ILS/xul/staff_client/chrome/content/main/main.xul: Add a new
+	visible alert to the main client screen alerting about pending
+	transactions Signed-off-by: Edoceo <code at edoceo.com> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2011-08-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0610.data.acq-copy-creator-from-receive
+	r.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq-copy-creator-from-receive
+	r.sql: Stamped upgrade script for acq-copy-creator-from-receiver Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-24  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.acq-copy-creator-from-receive
+	r.sql: Option to set copy creator value to ACQ receiver YAOUS to support updating the asset.copy.creator value to match the
+	staff user that marked the ACQ-copy (acq.lineitem_detail) as
+	received.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0609.schema.acq-lineitem-detail-receive
+	r.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-lineitem-detail-receive
+	r.sql: Stamped upgrade script for acq-lineitem-detail-receiver Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-24  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/acq/common/li_table.js,
+	Open-ILS/web/templates/default/acq/common/li_table.tt2: Show copy
+	receiver in ACQ copy grid Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-24  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm,
+	Open-ILS/src/sql/Pg/200.schema.acq.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.acq-lineitem-detail-receive
+	r.sql: Column to track ACQ copy (lineitem_detail) receiver Creates acq.lineitem_detail.receiver column, set to the staff that
+	marked the copy as received.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-24  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Protect against div-by-0 for negated words Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-24  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Track count of dummy atoms and use a NULL tsquery when
+	all dummy Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-24  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Use unphrases in SQL generation Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-24  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: add "unphrases" to capture negated phrases ( -"foo bar" ) and
+	make the negator configurable Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-23  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: Ignore empty atoms in query decomposition Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-23  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm,
+	Open-ILS/web/js/dojo/openils/acq/nls/acq.js,
+	Open-ILS/web/js/ui/default/acq/lineitem/related.js,
+	Open-ILS/web/templates/default/acq/lineitem/related.tt2: Add to
+	existing PO (by ID) from related items page In the View/Place orders page for a bib record, it's now possible to
+	add a lineitem representing the bib record to an existing purchase
+	order.  Includes a new general API call for adding a LI to a PO.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-23  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js: Support
+	labelFormat for read-only AutoFieldWidget's Previously only worked with edit widgets (e.g. drop-downs).  This
+	also takes into account the fact that different instances of
+	AutoFieldWidget for the same class and value may have different
+	labelFormat's One user-visible result of this change is the ACQ read-only fund
+	display in purchase orders.  Funds will now show the code and year
+	for funds in the copy grid before and after the data is rendered
+	read-only.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-09  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/patron/bill2.js: Branchify patch
+	from Steven Chan on LP bug #821640.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-06-23  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/oils_ctl.sh: Really stop the z39.50 daemon when
+	a client is connected.  Send a SIGTERM instead of SIGINT from do_action when the action is
+	stop in oils_ctl.sh.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-22  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/examples/oils_z3950.xml.example: Enhance sample Z39.50
+	config file Make "expose holdings" the default; use specific indexes for ISBN
+	and ISSN; show how to scope results to a part of the org tree; and
+	show that multiple database configs can be specified in the same
+	file.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-06-10  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/oils_ctl.sh,
+	Open-ILS/examples/oils_yaz.xml.example,
+	Open-ILS/examples/oils_z3950.xml.example, Open-ILS/src/Makefile.am: 
+	Make some oils_ctl.sh improvements.  Add start|stop|restart commands for z39.50 to oils_ctl.sh.  Use LOCALSTATEDIR and SYSCONFDIR configuration variables in
+	oils_ctl.sh.  Modify the existing SIP2 commands in oils_ctl.sh to use these
+	configuration variables.  Modify src/Makefile.am to replace LOCALSTATEDIR and SYSCONFDIR
+	variables in oils_ctl.sh when installing.  Add example/default xml configurations for z39.50:
+	Open-ILS/examples/oils_yaz.xml.example
+	Open-ILS/examples/oils_z3950.xml.example Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-07-03  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Menu item for "portal" To return a tab to "new" state without close/reopen Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-03  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/index.xhtml: Make portal name its
+	tab.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-23  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0608.data.vandelay-export-error-match-i
+	nfo.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-export-error-match-i
+	nfo.sql: Stamped upgrade script for LP#825245 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.vandelay-export-error-match-i
+	nfo.sql: Vandelay: added some info to print/csv bib output Added bib match count, import error, and error detail to print and
+	CSV queued record export.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay: show
+	record match counts in record queue UI Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-23  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0607.schema.oua_force_order.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.oua_force_order.sql: master-stamped
+	upgrade script for LP#816131 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-22  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/020.schema.functions.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.oua_force_order.sql: Reverse
+	direction of org_unit_ancestors Apparently callers expect it to start at the top of the org tree.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-11  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.oua_force_order.sql: Unwrapped
+	upgrade script for oua_force_order Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-11  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/020.schema.functions.sql: New version of
+	actor.org_unit_ancestors Preserves order through joins Basically actor.org_unit_ancestors_distance with a join to get the
+	entire org units, rather than just IDs and a distance.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-11  Liam Whalen <lwhalen at evergreen-dev.catalogue.nrcan.gc.ca>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: Fixed seaching for a colon (:) surrounded by white space When searching for a colon surrounded by white space the search
+	would freeze.  An example of such a search would be: Climate change
+	economics and policy : an RFF anthology This was happening because
+	the decompose function within QueryParser.pm Would build a regular
+	expression that would search the query for both classes and class
+	aliases e.g (keyword and kw).  However, when buliding the regex for
+	aliases QueryParser would add extraneous or symbols (|) to the end
+	of the regex without adding the accompanying alias.  This was
+	happening because there was a check to see if the corresponding
+	class to each alias had already been added to the regex.  But, the
+	check to see if the alias had already been appened to the regex
+	happened too late.  I have moved the check to encopase the appending
+	of the or symbols and the class.  Signed-off-by: Liam Whalen
+	<lwhalen at evergreen-dev.catalogue.nrcan.gc.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-07-06  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/web/templates/default/conify/global/booking/resource.tt2,
+	Open-ILS/web/templates/default/conify/global/booking/resource_attr.
+	tt2,
+	Open-ILS/web/templates/default/conify/global/booking/resource_attr_
+	map.tt2,
+	Open-ILS/web/templates/default/conify/global/booking/resource_attr_
+	value.tt2,
+	Open-ILS/web/templates/default/conify/global/booking/resource_type.
+	tt2: Adds org unit selectors to Admin -> Server Admin -> Booking
+	menu items, also modifies the IDL to give context-field based pcrud
+	perms instead of 'require global' This makes the booking module more
+	org-unit scopable Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-19  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Fix "Retarget Local Holds" for non-holdable copies Specificially: Wrap holdable check in is_true Add check for current copy status
+	holdable Add check for current copy location holdable The latter stores the fetched location for later use.  The one later
+	use I found updated to check if the location is a reference.  The update copy code already checks if location is a reference and
+	deals with it properly.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/opac/locale/en-US/vandelay.dtd,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2,
+	Open-ILS/web/templates/default/vandelay/inc/upload.tt2: Vandelay:
+	Insufficient Quality Fall-Thru Merge Profile When a user selects "Merge On Single Match" or "Merge On Best Match"
+	and apply a minimum quality ratio, the fall-through profile will be
+	used in a secondary merge attempt for any records that fail the
+	initial merge due to insufficient record quality.  This allows the user to choose 2 different outcomes based on record
+	quality.  For example, you may wish to do a full overlay for all
+	high-quality records, but only extract subjects or other information
+	from lower quality records.  This also allows users to do
+	record+copy imports for high-quality records and copy-only imports
+	for low quality records (using a no-op merge profile like "replace
+	901c").  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-09  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/extras/Makefile.install: Branchify patch from LP bug
+	#802523.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-23  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold_result.tt2: UI
+	cleanup for batch-holds from lists * Handle hold placement override with a single form and checkboxes
+	instead of a series individual forms * Added a cancel button on the override page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/js/ui/default/opac/simple.js,
+	Open-ILS/web/templates/default/opac/results.tt2: Make the sort-by
+	and limit-to-available controls appear after adv search This is hackish and suboptimal until we leverage the parsed queries
+	soon to be returned by QP.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-22  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0606.schema.czs_use_perm_column.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.czs_use_perm_column.sql: 
+	stamp an upgrade version for the czs use_perm feature Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-22  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Z3950.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/800.fkeys.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.czs_use_perm_column.sql: 
+	use_perm column for config.z3950_source The idea is that if a permission code is specified for a given
+	source, then staff will need that permission to use that source in
+	the staff client z39.50 interface.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-08-18  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold_result.tt2,
+	Open-ILS/web/templates/default/opac/place_hold.tt2: TPac: batch
+	holds from on-the-fly lists and bookbags * Enable the 'Place Hold' action in the drop-down for bookbag and
+	on-the-fly list items * Place hold form now support lists of targets and will report error
+	conditions for each target * Batch and individual hold overrides supported where appropriate Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-19  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm: Fix
+	penalty generation during billing creation by passing the editor object referencing the database transaction to
+	xact_org Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/default/js/holds.js: Display only available
+	formats for metarecord holds in IE The OPAC's usual hideMe()/unHideMe() tricks don't work for <option>
+	elements in Internet Explorer 8.  Use the disabled attribute.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-20  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/Makefile.am: Remove cache-generator.sh from
+	Makefile.am In a previous commit, we removed cache-generator.sh. Now we remove
+	the remaining reference to it in the Makefile.am that was generating
+	an error (reported by Ben Webb).  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-08-19  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/templates/default/opac/parts/myopac/main_refund_policy
+	.tt2: T-PAC: Localize payment refund policy message The policy in all likelihood will differ from library to library
+	anyway, but we might as well ensure that it can be translated.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-19  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/parts/chilifresh.tt2,
+	Open-ILS/src/templates/default/opac/parts/config.tt2,
+	Open-ILS/src/templates/default/opac/parts/js.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/table.tt2: Disable
+	Google Analytics in T-PAC by default The option to enable Google Analytics has been turned into a config
+	setting in parts/config.tt2 for now, with a place to set the GA
+	account code.  Also, get consistent with foo.enabled instead of a mix of foo.enable
+	/ foo.enabled in config.tt2.  Also, be a bit more careful about whitespace and hide comments in
+	the HTML source about things that are disabled (such as ChiliFresh
+	and Google Analytics) until they are enabled.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay: repair
+	item attr context org selector 1. Prevents resetting the context selector to the workstation org
+	unit each time it's changed.  2. Prevent the unintentional pileup of dojo.connect() events, which
+	can lead to exponential growth in the number of server calls to
+	fetch import-item-attribute-definitions with each change of the
+	context org selector.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-19  Dan Scott <dan at coffeecode.net>
+
+	* : commit 9dc177553046e2e704a3cd62a3c608c05c325abf Author: Ben Shum
+	<bshum at biblio.org> Date:   Tue Aug 2 11:15:57 2011 -0400
+
+2011-08-09  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Branchify
+	second patch from James Fournie on LP bug #791941.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-09  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js: Branchify
+	the first patch from James Fournie on LP bug #791941.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-09  Robert Soulliere <robert.soulliere at mohawkcollege.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Branchify patch from LP bug #809478 and forward port to master.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: Tpac:
+	fetch bib record piles non-atomicly to avoid large messages Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: Tpac:
+	fetch bib record piles non-atomicly to avoid large messages Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Tpac: stream bookbag entry retrieval to reduce msg size Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-19  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Tpac: stream bookbag entry retrieval to reduce msg size Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-16  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/upgrade/0605.schema.lp826844_org_unit_parent_pr
+	otect_fix.sql: Stricter order for actor.org_unit_parent_protect() actor.org_unit_parent_protect() may not work due to the fact that
+	'IF' conditions in PL/pgSQL are not necessarily processed in the
+	order written. This line: "IF TG_OP = 'INSERT' OR NEW.parent_ou IS DISTINCT FROM OLD.parent_ou
+	THEN" may fail because the 'IS DISTINCT FROM' happens before the 'INSERT'
+	check, and and that fails because there is no 'OLD' variable for
+	INSERTs.  This commit may not be the optimal style for this circumstance in
+	this language, but it works.  It also appears to change more than it
+	really does due to a loss of one level of indentation in the
+	structure.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-08-16  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/005.schema.actors.sql: Whitespace Only Changes Files uses primarily tabs, function used both spaces and tabs.  It
+	now uses all tabs.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-08-18  Dan Scott <dan at coffeecode.net>
+
+	* README: Update README to reflect the --create-database option Now that eg_db_config.pl is intelligent enough to create the
+	database, update the README to free people from the tyranny of
+	having to manually issue database creation (and contrib-adding)
+	commands.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-18  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 7b7f8360915b1fa2ee2406a4e695519dd5c3d70b Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Aug 18 12:17:03 2011
+	-0400
+
+2011-08-18  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: Tpac: style
+	inactive holds w/ grey bground Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/create_database.sql,
+	Open-ILS/src/support-scripts/eg_db_config.pl: Add --create-database
+	option to eg_db_config.pl Uses create_database.sql and superuser rights to do all database
+	creation steps other than making a usable superuser account to begin
+	with.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-18  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/parts/footer.tt2,
+	Open-ILS/web/opac/skin/default/xml/footer.xml: T-PAC: Point the
+	Basic Catalog link to the T-PAC Now that the T-PAC provides the base functionality (and more!)
+	required by the HTML-only basic catalog, but in a more extensible /
+	skinnable fashion, replace the link from the JSPAC to the Basic
+	Catalog with a link to the T-PAC - and add a reciprocal link from
+	the T-PAC back to the JSPAC, in case anybody wants to go that route.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-18  Dan Scott <dan at coffeecode.net>
+
+	* : commit 23f951a15724538e67cef3529cc81f233077e66f Author: Dan
+	Scott <dan at coffeecode.net> Date:   Thu Aug 18 07:36:18 2011 -0400
+
+2011-08-15  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/autogen.sh: Remove CONFIG references from
+	autogen.sh We're relying on OpenILS::Utils::Cronscript for the location of the
+	opensrf_core.xml file, so the vestigial references were unnecessary
+	noise.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-08-15  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/Makefile.am, Open-ILS/src/extras/autogen.sh,
+	Open-ILS/src/extras/cache-generator.sh,
+	Open-ILS/src/perlmods/MANIFEST,
+	Open-ILS/src/perlmods/t/14-OpenILS-Utils.t: Further autogen.sh
+	cleanup * Roll cache-generator.sh functionality into autogen.sh * No longer install deleted scripts * Teach Perl build infrastructure about OpenILS::Utils::Configure Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-08-15  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/autogen.sh,
+	Open-ILS/src/extras/facet_types_js.pl,
+	Open-ILS/src/extras/fieldmapper.pl,
+	Open-ILS/src/extras/locale_html_options.pl,
+	Open-ILS/src/extras/org_lasso_js.pl,
+	Open-ILS/src/extras/org_tree_html_options.pl,
+	Open-ILS/src/extras/org_tree_js.pl,
+	Open-ILS/src/extras/org_tree_proximity.pl,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/Configure.pm: Revamp
+	autogen.sh to call functions from a Perl module This cut moves all of the logic from the individual scripts that
+	autogen.sh used to call into a self-contained Perl module. We use
+	OpenILS::Utils::Cronscript to avoid much of the init dupe code.  Note that calling Perl functions from a bash script is not crazy
+	pretty, but perhaps in the long run autogen.sh becomes something
+	else. This is just a step towards consolidating those functions in a
+	single module while maintaining the same interface as before.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/searchbar.tt2: Tpac:
+	repaired propagator casulaty; using mkurl instead Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: TPAC:
+	Strip the "page" GET param from author searches mkurl() generates a URL that, by default, retains all of the
+	parameters that the currnt query string includes - useful for
+	retaining library search scope, etc. However, searches for authors
+	that are launched by clicking on the author's name in the search
+	results page / record details were failing in many cases because the
+	"page" parameter came along with it - and if there weren't five
+	pages of results for page=5, for example, then no hits would be
+	shown.  This commit removes the page param from the URL. In other places,
+	all of the params are stripped (see cnbrowse) but as I assume we
+	want to retain search scope and potentially other parameters, we'll
+	start with the smallest possible change.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/results.tt2: Mark a string for
+	i18n support in the TPAC Even alt strings deserve translation support...  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds/edit.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_pay.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payments.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs_notify.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs_settings.tt2,
+	Open-ILS/web/templates/default/opac/myopac/receipt_email.tt2,
+	Open-ILS/web/templates/default/opac/myopac/receipt_print.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_username.tt2: 
+	Escape TPAC "myopac" output to protect against XSS attacks We're using the Template::Toolkit html and uri filters to ensure
+	that the usual suspects are escaped at output time to prevent
+	trivial XSS attacks.  berick: did some merge cleanup Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: Assume
+	username, not barcode, in TPAC login In the absence of a barcode regex OU setting (opac.barcode_regex),
+	the TPAC was assuming that the entered value was a barcode. However,
+	the default JSPAC assumption was that the entered value was a
+	username. This commit makes the TPAC continue to function with the
+	same assumptions as the default JSPAC in the absence of a barcode
+	regex OU setting.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/table.tt2: TPAC:
+	Strip the "page" GET param from author searches mkurl() generates a URL that, by default, retains all of the
+	parameters that the currnt query string includes - useful for
+	retaining library search scope, etc. However, searches for authors
+	that are launched by clicking on the author's name in the search
+	results page / record details were failing in many cases because the
+	"page" parameter came along with it - and if there weren't five
+	pages of results for page=5, for example, then no hits would be
+	shown.  This commit removes the page param from the URL. In other places,
+	all of the params are stripped (see cnbrowse) but as I assume we
+	want to retain search scope and potentially other parameters, we'll
+	start with the smallest possible change.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/record/summary.tt2: 
+	TPac: Removed errant 'html' almost-filter Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/record/authors.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/awards.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/issues.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summaryplus.tt2: 
+	Tpac: more html output sanitizing Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	TPac: Removed errant 'html' almost-filter Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/authors.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/awards.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/issues.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summaryplus.tt2: 
+	Tpac: more html output sanitizing Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/results.tt2: Mark a string for
+	i18n support in the TPAC Even alt strings deserve translation support...  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/table.tt2: Tpac:
+	more html output scrubbing Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: Tpac:
+	more html output scrubbing Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/src/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/src/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/src/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/src/templates/default/opac/myopac/holds/edit.tt2,
+	Open-ILS/src/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main_pay.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/src/templates/default/opac/myopac/main_payments.tt2,
+	Open-ILS/src/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/src/templates/default/opac/myopac/prefs_notify.tt2,
+	Open-ILS/src/templates/default/opac/myopac/prefs_settings.tt2,
+	Open-ILS/src/templates/default/opac/myopac/receipt_email.tt2,
+	Open-ILS/src/templates/default/opac/myopac/receipt_print.tt2,
+	Open-ILS/src/templates/default/opac/myopac/update_email.tt2,
+	Open-ILS/src/templates/default/opac/myopac/update_username.tt2: 
+	Escape TPAC "myopac" output to protect against XSS attacks We're using the Template::Toolkit html and uri filters to ensure
+	that the usual suspects are escaped at output time to prevent
+	trivial XSS attacks.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/anon_list.tt2,
+	Open-ILS/src/templates/default/opac/parts/coded_value_selector.tt2,
+	Open-ILS/src/templates/default/opac/parts/org_selector.tt2,
+	Open-ILS/src/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/src/templates/default/opac/parts/qtype_selector.tt2,
+	Open-ILS/src/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/src/templates/default/opac/results.tt2: TPac: more
+	aggressive dynamic output filtering Making heavier user of html/uri filters to prevent accidental or
+	malicious rendering of html from dynamic data.  More to follow.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/anon_list.tt2,
+	Open-ILS/web/templates/default/opac/parts/coded_value_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/org_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/qtype_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: TPac: more
+	aggressive dynamic output filtering Making heavier user of html/uri filters to prevent accidental or
+	malicious rendering of html from dynamic data.  More to follow.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: Assume
+	username, not barcode, in TPAC login In the absence of a barcode regex OU setting (opac.barcode_regex),
+	the TPAC was assuming that the entered value was a barcode. However,
+	the default JSPAC assumption was that the entered value was a
+	username. This commit makes the TPAC continue to function with the
+	same assumptions as the default JSPAC in the absence of a barcode
+	regex OU setting.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-17  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay: don't
+	clear item import profile when creating new queue This avoids the problem of: enter import-profile in the UI => enter
+	name for new queue => profile is cleared.  Import profile is still
+	cleared/set when an existing queue is selected, since existing
+	queues already have an item import profile set.  Part II of 90a7bde48a6ef5f7be73375612b5db88f8b31c95 Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-16  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/table.tt2: Address
+	ISBN issues in T-PAC A few problems fixed here: * Refer to args.isbns (plural) consistently; at times we were
+	  referring to args.isbn which did not exist * Grab the textContent of the SFX ISBN node rather than the raw   XML::LibXML Element * Use an assignment operation when regex'ing the SFX ISBN, as the   in-place was interpreted as a "print me" stmt and displaying the
+	  raw SFX ISBN.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-16  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/default/opac/parts/result/table.tt2: T-PAC:
+	Do not display a call number if we don't have one Electronic records might not have a call number, so don't try to
+	display one if there isn't one (in search results).  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-08-16  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 87671d4fc36d64de375e4d4024f817d3c5b09606 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Tue Aug 16 15:32:57 2011
+	-0400
+
+2011-08-16  Dan Scott <dan at coffeecode.net>
+
+	* : commit abef2d3dd1b3fecc02dd2eaa99da8def00fec1b5 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Tue Aug 16 15:09:58 2011 -0400
+
+2011-08-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/templates/default/opac/parts/record/series.tt2,
+	Open-ILS/src/templates/default/opac/parts/result/paginate.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/series.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/paginate.tt2: 
+	TTPac: move some templates into the right place Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-16  Bill Erickson <berick at esilibrary.com>
+
+	* : Merged esi/template-toolkit-opac and repaired some merge
+	conflicts Note to self: the simple/detail view options on the results page
+	will need some tweaking, particularly since many/most will want to
+	see the detail view by default.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-16  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0602.schema.lp790329_opac_copy_count.sq
+	l: Opps ... use the correct number Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-16  Bill Erickson <berick at esilibrary.com>
+
+	* : commit d52347cf7a69f4f21050388f81da0ab94b518b92 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Tue Aug 16 11:10:44 2011
+	-0400
+
+2011-07-28  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm, Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.lp790329_opac_lasso_counts.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.lp790329_staff_opac_lasso_counts.s
+	ql, Open-ILS/web/opac/skin/default/js/result_common.js: LP#790329
+	org_lasso search is broken Fix the JavaScript error when we attempt to create a feed for the
+	shortname of the org_unit_lasso (lassos have no shortname) - which
+	lets the request hit the backend Perl module, which in turn chokes
+	on a test for OU that only allows two conditions: either all digits
+	is treated as a numeric ID for an org unit, or it is a shortname. Of
+	course, lassos are negative integers, so we have to modify the test
+	slightly to make it happier.  There was no depth for org lasso copy counts, and this was handled
+	correctly in the main case by the
+	asset.opac_lasso_record_copy_count() function and its staff variant,
+	but when a copy was not found at a given org_unit in the lasso a
+	request was made for the non-existent depth and the function would
+	error out.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-08-16  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0602.schema.lp790329_opac_copy_count.sq
+	l: Placeholder for 2.0-only LP#790329 fix Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: Vandelay: don't
+	clear match-set when creating new queue This avoids the problem of: enter match set in the UI => enter name
+	for new queue => match set is cleared.  Match set is still
+	cleared/set when an existing queue is selected, since existing
+	queues already have a match set.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-16  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/edi_translator/edi_webrick.bash: Keep the logging
+	output of the EDI translator by default There is valuable troubleshooting information there that is
+	otherwise hard to find.  This particularly matters when the output
+	of an EDI Action/Trigger template (JEDI) doesn't successfully get
+	translated to EDIFACT for nonobvious reasons.  In production environments, you might instead pipe to logger so that
+	you can collect output with syslog, rather than in a flat file.  As
+	long as output goes *somewhere.* Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js: LP#820409 fix org
+	unit admin UI This reverts part of 17e659eec3e23caf5d301b33aa5019b672ecd0e8, which
+	was tightening checks against null and '' to avoid implicit
+	type-casting.  This line var modified_ou = new aou().fromStoreItem( current_ou );
+	was producing a fieldmapper object where certain fields were being
+	set to contain the string "undefined" rather than a null.  The update method would take isdeleted == "undefined" as True.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0600.schema.fix_cat_default_class_looku
+	p.sql, Open-ILS/src/sql/Pg/upgrade/0601.schema.fix_aous_lookup.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_aous_lookup.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_cat_default_class_lookup.sql: 
+	Stamped upgrades for LP#825303 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/020.schema.functions.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_aous_lookup.sql: return only
+	the one applicable OU setting value Correct actor.org_unit_ancestor_setting so that it returns at most
+	 one setting value, rather than the entire set of values defined for
+	the OU and its ancestors.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_cat_default_class_lookup.sql: 
+	lp#825303: fix cat.default_classification_scheme lookup Fixes a bug where the wrong default classification scheme could be
+	chosen when adding a new volume whose classification scheme was not
+	explicitly set.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-16  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/paginate.tt2: 
+	TTPac: Hide pagination for 1-page hits Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: TTpac: added
+	simple/detailed record view option to results page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/paginate.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: TTPac:
+	move results pageing chunk to new template table.tt2 and paging are complex enough and will likely result in
+	much local customization.  Break them up into 2 page to simplify.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: TTpac:
+	show page range in results paging display Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/searchbar.tt2: TTPac:
+	change default any-format to 'All Formats' Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-15  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/opac/parts/coded_value_selector.tt2: 
+	TTpac: option to override no-choice label in coded value selector Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-15  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2: TTpac:
+	Chilifresh reviews panel occupies the width of the table Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0599.data.fix_author_other_index.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_author_other_index.sql: Stamped
+	upgrade script for "lp 823496: do not fail to index personal names
+	that have relators" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-09  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_author_other_index.sql: lp
+	823496: don't fail to index personal names that have relators The default definition for the author|other index inadvertantly
+	excluded names from 600, 700, 720, and 800 fields that have relator
+	values ($e) or codes ($4).  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/upgrade/0598.schema.vandelay_one_match_per.sql: 
+	Vandelay: capture one match per catalog record When searching for matches to existing catalog records
+	(biblio.record_entry's), Vandelay can in some cases result in
+	multiple like matches for the same record (with the same match
+	score).  This trims it down to 1 match per record.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-04  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm: 
+	Add some additional logging in SIP/Transaction/Feepayment.pm.  This should help with debugging, etc.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-04  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Msg.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm: Add
+	OILS_SIP_MSG_BILL_ERR for when an error occurs getting bills.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-14  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm: 
+	Add event textcode as alternative to descr in FeePayment.pm.  Some events have no descr, it seems.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-13  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm: 
+	Bail from fee payment if no bills are found.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-30  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/examples/oils_sip.xml.example,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Msg.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/FeePayment.pm: Add
+	SIP2 fee payment, the 37/38 message/response pairs.  * Pay individual bill if a fee id is given by the SC.  * Pay multiple bills in batch so if one fails the whole transaction   is aborted and a failure response is sent to the SC.  * Reject payments outright if the SC sends an overpayment.  * Add constants for bill not found and overpayment messages.  * Whole lotta logging goin' on (maybe too much).  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Don't
+	escape_html numbers in util/print.js Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-10  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Escape
+	HTML characters in template subs This prevents injection of random HTML from various sources.  Like bad bib records, org unit settings, patron info, etc.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-10  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Use
+	openDialog to make go_print workaround vanish By passing params and the go_print function into openDialog we get
+	to ignore race conditions, as the window is created with the passed
+	in arguments.  Oh, and we can stop using js2JSON and such.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-10  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/window.js: Add
+	openDialog to window class Uses window.openDialog instead of window.open.
+	https://developer.mozilla.org/en/DOM/window.openDialog Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/skin/cat.css: No more lightpink
+	for disabled copy editor Folks can still provide custom CSS against those class hooks if
+	desired Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-11  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/cat/copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul,
+	Open-ILS/xul/staff_client/server/skin/cat.css,
+	Open-ILS/xul/staff_client/server/skin/global.css: in lieu of Ready
+	Item Editor We're trying to prevent folks from using the item attribute editor
+	in the unified interface when the volume pane is still updating its
+	information (i.e. building the copies to feed to the attribute
+	editor), so that a given editing widget isn't ripped out from under
+	staff while its being used.  This change removes the heavy-handed
+	Ready Item Editor button and instead tries to more gracefully manage
+	the editor state based on change and keypress events.  Also change
+	the color scheme for a disabled editor from red to light pink.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0597.schema.vandelay.bib_match_isxn_cas
+	eless.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.bib_match_isxn_cas
+	eless.sql: Stamped upgrade script for "For vandelay bib matching,
+	make 020, 022, 024 tags case-insensitive" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay.bib_match_isxn_cas
+	eless.sql: For vandelay bib matching, make 020, 022, 024 tags
+	case-insensitive For user convenience.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-12  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0594.schema.acp_status_date_changed.sql: 
+	Removed errant '-' causing sql syntax failure Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 78ef0457cf7c21a148b590291484fb16340bb408 Merge: c186e12
+	72db882 Author: Bill Erickson <berick at esilibrary.com> Date:   Thu
+	Aug 11 17:48:00 2011 -0400
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2: TTpac:
+	minor i18n and other cleanup Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: TTpac:
+	removed last bits of propagator; minor cleanup Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: TTpac:
+	Added Expand/Collaps all 'extras' tabs in detail page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: TTpac:
+	more use of mkurl() and general cleanup Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/web/templates/default/opac/parts/header.tt2: Force-encode
+	CGI param values to prevent decode errors CGI.pm decode()'s parameter values, so if it encounters a value that
+	is already decoded, it will croak and kill the page.  Proactively
+	encode paramter values so decode() won't fail.  The better solution may be to determine how we get such data, but
+	until then, let's allow the t-pac to work on funky data.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	TTpac: start using mkurl();  more todo..  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-11  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2: TTopac:
+	cgi-based replacement for url 'propagator' Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	TTpac: show MARC callnumber in record detail page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	TTpac: option to view larger sets of copies on record page On record details page, added a "Show More Copies" option to show
+	more (50) copies per page of copies than the default (10).  Also added a
+	"Show Fewer Copies" option to return to the default copy page size.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: TTpac:
+	show full 245 for title on record details page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: TTpac:
+	Capture and show all ISBNs on record details page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/subjects.tt2: 
+	Show more subject data in the expanded ttopac subjects display Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/series.tt2: Added
+	support for series display in ttopac record details Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summaryplus.tt2: 
+	Accommodate multiple 520a's in tt-opac summary display MARC args.summary is now an array of summary entries.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/network.js: Tweak
+	Override Dialog so that the text can wrap Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: 
+	Tweak wording for Checkout's Override Once feature Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-27  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/circ/checkout.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: Add
+	note that overrides will stay for the session Same way other overrides get an additional note.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/network.js,
+	Open-ILS/xul/staff_client/server/circ/checkout.js: Allow "override
+	once per patron" at checkout Specifically for patron-derived overrides:
+	PATRON_EXCEEDS_OVERDUE_COUNT PATRON_BARRED
+	PATRON_EXCEEDS_CHECKOUT_COUNT PATRON_EXCEEDS_FINES This is done by: Adding support for a list of "reported" overrides
+	to util/network.js Using that in Checkout to build an auto-override
+	list for the current patron Passing that list in at Checkout Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-08-10  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 38ed96cab162e58dfc089d00a20e60336693b44a Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Aug 10 10:23:32 2011
+	-0400
+
+2011-08-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/0596.schema.vandelay-item-import-error-
+	detail.sql: Granular invalid data detection for Vandelay item import When an import item contains any data for a field, the code now
+	verifies the data is valid for the selected field.  When the data is
+	not valid, we capture information on which field is invalid and what
+	data was used for the field (import_error, error_detail) so it can
+	be reported in the interface.  This adds new import_errors: import.item.invalid.status import.item.invalid.price
+	import.item.invalid.deposit_amount import.item.invalid.owning_lib
+	import.item.invalid.circ_lib import.item.invalid.copy_number
+	import.item.invalid.circ_as_type Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/import_errors.tt2: Show
+	copy status/location names in Vandelay items grid Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-09  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0595.data.org-setting-ui.patron_search.
+	result_cap.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.org-setting-ui.patron_search.
+	result_cap.sql: Stamping upgrade scripts for LP#818740 Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.org-setting-ui.patron_search.
+	result_cap.sql,
+	Open-ILS/xul/staff_client/server/patron/search_result.js: Org
+	setting for the result cap for Patron Search Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/display.js: Fix stop sign
+	page race condition with checkout This would happen most often when retrieving multiple patrons at the
+	same time from patron search--the stop sign page would show but then
+	get trampled by the checkout interface, which normally loads first.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/myopac.js: Tell OPAC to use
+	checkin date, not stop_fines date The column is labeled "Date Returned", not "Date we stopped
+	generating fines".  This does lead to "(fines accruing)" for an item that has hit max
+	fines, or stopped fines for some other reason.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/circ/selfcheck/selfcheck.js: username
+	login for web selfcheck Changes the behavior for the patron-login component (after staff
+	login) to match the OPAC.  By default, it assumes you are logging in
+	with a usrname, but if the org unit setting 'opac.barcode_regex' is
+	enabled and the incoming value matches, then it gets treated as a
+	library card barcode instead. If usrname is used, then the card
+	referenced by actor.usr.card is checked in lieu of a specified
+	barcode.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/items.js,
+	Open-ILS/xul/staff_client/server/patron/items_overlay.xul: action
+	for marking items claimed never checked out Menu action in Patron Items Out for marking items as Claimed Never
+	Checked Out.  Note that this action behaves differently than Claimed
+	Returned, in that the item is actually checked in and the
+	transaction closed, and will not continue to show up in Items Out
+	for the patron.  If decide later to provide an option for making the two actions
+	consistent, there is code in the original working branch,
+	collab/phasefx/claimed_never_cko, which modifies the patron display
+	and the .checked_out methods to look for open CLAIMSNEVERCHECKEDOUT
+	transactions.  Some cleanup would be needed to avoid merge
+	conflicts.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0593.data.org-setting-circ.offline.skip
+	_foo_if_newer_status_changed_time.sql,
+	Open-ILS/src/sql/Pg/upgrade/0594.schema.acp_status_date_changed.sql
+	,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.org-setting-circ.offline.skip
+	_foo_if_newer_status_changed_time.sql,
+	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.acp_status_date_changed.sql: 
+	Stamped upgrade scripts for LP#797409 Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-08  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/YYYY.schema.acp_status_date_changed.sql: 
+	Ign Reshelving->Available for status_changed_time This solves a complication when wanting to check status_changed_time
+	against offline xact_time when processing offline transactions.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/offline/offline.pl: Robustify SKIP_ASSET_CHANGE
+	functionality by skipping status_changed_time test if a barcode has been
+	encountered in prior offline transaction within a given session.
+	Also return the SKIP_ASSET_CHANGE event for a given barcode if a
+	prior test resulted in SKIP_ASSET_CHANGE Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-03  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/extras/ils_events.xml,
+	Open-ILS/src/offline/offline.pl,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.org-setting-circ.offline.skip
+	_foo_if_newer_status_changed_time.sql: Offline checkin & renewal
+	checks, & ou settings Augmented edoceo's patch for checking an offline checkout against an
+	item's Status Changed Time and throwing a SKIP_ASSET_CHANGED event
+	if warranted as follows: 1) include checkin and renewal transactions 2) add org unit settings for each, and a corresponding upgrade
+	script 3) removed the description from the payload and created a dedicated
+	ils_event However, there are two issues affecting this functionality, even
+	before my meddling: 1) the Reshelving -> Available rollover updates an item's Status
+	   Changed Time, and can thus trigger this event 2) if an item is manipulated more than once in an offline session,
+	   then its Status Changed Time can be updated as the transactions are
+	   being processed, causing related transactions after the initial
+	transaction to fail Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-01  Atom Edoceo <atom at helium.edoceo.lan>
+
+	* Open-ILS/src/offline/offline.pl,
+	Open-ILS/src/support-scripts/test-scripts/offline.pl: LP#797409:
+	Offline Transaction - Option to Skip Old Records Skip Copy with later Status Change Time on offline checkout import
+	Requires the following option in offline-config.pl   $main::config{skip_late} = 1; Signed-off-by: David Busby <code at edoceo.com> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com> Signed-off-by: Mike Rylander
+	<mrylander at gmail.com>
+
+2011-08-05  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Whoops. Do that availability test regard of whether hold_boundaries
+	are used.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-05  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: In
+	a middle-layer method for returning holdable formats on a
+	metarecord, Do a better test of copy holdability than we were doing previously.
+	We can't do a perfect test: we don't really know what patron we're
+	doing this for, and even if we did, from here it's nontrivial to
+	figure out whether we're doing indb holds or script-based, much less
+	run the tests.  Still, we can test whether a copy's in a holdable status, a holdable
+	location, and is itself not explicitly marked unholdable.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-05  Bill Erickson <berick at esilibrary.com>
+
+	* : commit c186e123539192b23fddc6cd7683fe4a1c80c34c Merge: 25934ee
+	04008a5 Author: Bill Erickson <berick at esilibrary.com> Date:   Fri
+	Aug 5 14:57:03 2011 -0400
+
+2011-08-05  Bill Erickson <berick at esilibrary.com>
+
+	* : Merge remote branch 'esi/template-toolkit-opac' into
+	template-toolkit-opac-master-merge
+
+2011-08-05  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm: Speed
+	up t-pac record details copy retrieval Using JOIN filters instead of WHERE clauses, drastically speed up
+	paged/sorted copy retrieval, particularly for items with many
+	copies, in the record details page.  Thanks for the suggestions, Mike.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-05  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXY.data.config.metabib_field.lccn.sql: 
+	This doesn't need to be lying around any more Its purpose was superceded by another upgrade script in master.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-04  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/items.js: mrpeters caught
+	this; wrong variable fed to error dialog Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: Repaired
+	copy private/public note vandelay bug Previously, all copy notes imported through vandelay were coming in
+	as public copy notes.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* : Merge remote branch 'esi/template-toolkit-opac' into
+	template-toolkit-opac-master-merge
+
+2011-07-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/examples/opensrf.xml.example,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: remove the
+	unfinished id_as_barcode functionality remove the unfinished id_as_barcode setting for open-ils.actor and
+	remove unused open-ils.actor.user.retrieve_id_by_barcode_or_username
+	method Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0592.data.ACQ_INVOICE_REOPEN-perm.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.lp818311.sql: Stamped upgrade
+	script for ACQ_INVOICE_REOPEN permission addition Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.lp818311.sql: Upgrade script for
+	LP818311 branch.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: LP#818311:
+	ACQ_INVOICE_REOPEN is missing This patch adds the missing ACQ_INVOICE_REOPEN to the Acquisitions
+	Administrator user.  Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Speed up holds history retrieval Consistent w/ circ history retrieval, use the longer column
+	'transform' stored proc invocation to limit retrieval to historical
+	holds IDs instead of entire objects, which are later fetched/fleshed
+	anyway.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-29  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	build/i18n/scripts/dojo_resource.py: Fix i18n build Two problems thrown at the i18n build:   * $$ quoting is not understood by db-seed-i18n.py; simple approach
+	    is to use standard single-quote escaping of the single-quote in     950.data.seed-values.sql (warning: this might lead to other
+	    problems with the regular expression in db-seed-i18n.py)   * authority.js includes Unicode values (shock!) and so we must
+	    treat the incoming strings as unicode() instead of plain old str() Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	Faster T-pac circ history retrieval * Take advantage of the new default sorting behavior of
+	action.usr_visible_circs to perform limit/offset within the DB
+	instead of fetching the whole circ history in the mod_perl code and
+	sorting through it.  * Also use the  more powerful/verbose column transform syntax for
+	calling stored procedures to retrieve only the historical circ IDs
+	instead of the full circ objects, since we are re-fetching fleshed
+	circ objects later in the code.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-03  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/holds.js: Fix staff client
+	Clear Expired Hold Shelf action Accomodate an API change.  FIXME: See if can remove some of the
+	redundant and/or un-needed data being sent over the wire.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-28  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: Only update MARC
+	on full entry of fixed fields AKA: Lang is 3 characters long. Entering 1 character would cause
+	focus to leave.  MARC would also update incorrectly.  This only triggers the update when the full 3 characters are
+	entered.  This not only prevents issues with catalogers editing
+	multi-character fixed fields but also makes it less likely they
+	accidentally corrupt the records.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0591.schema.circ_holds_history_repairs.
+	sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.circ_holds_history_repairs.
+	sql: Stamped upgrade script for schema.circ_holds_history_repairs Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.circ_holds_history_repairs.
+	sql: Repair holds history func; sort circ history desc.  Update holds history to use oils_json_to_text instead of
+	oils_json_to_string, which does not exist.  Sort circ history newest to oldest by default.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/filtersort.tt2: Fix
+	title/author sort.  Use SVF 'titlesort'/'authorsort' Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-04  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: 
+	Repaired qtype bug introduced w/ bool searching Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-03  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 9398a9ca85624f4e9a4cfc87fbd9f6d38f721457 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Wed Aug 3 16:42:17
+	2011 -0400
+
+2011-08-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/holds/edit.tt2: Speed up
+	hold editing by only fetching hold to edit Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/org_selector.tt2: 
+	Repaired bug in t-pac org selector value propagation Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0590.schema.more_cache_visibility_break
+	age.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.more_cache_visibility_breakage.sql: 
+	Stamped upgrade script for more_cache_visbility_breakage Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.more_cache_visibility_breakage.sql: 
+	Unwrapped upgrade script for more_cache_visbility_breakage Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql: Extraneous
+	semicolons break SQL Remove them so that cache_copy_visibility can function.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: Fix
+	overzealous template application The idea was that we'd track templates if they were applied prior to
+	copies actually being specified in the unified interface, and then
+	apply them "for real" once copies were entered.  But these
+	remembered templates kept applying themselves whenever changes were
+	made in the volume/copy creator portion of the interface (possibly
+	overriding tweaks made by staff).  So now we delete the list of
+	tracked templates once they're applied to actual copies.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-08-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/util/widgets.js,
+	Open-ILS/xul/staff_client/server/cat/copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul,
+	Open-ILS/xul/staff_client/server/skin/global.css: robustify (and
+	klunkify) unified volume copy creator Disable/style the Item Editor while changes in the volume/item pane
+	are being considered, and require an explicit press of a Ready Item
+	Editor button to enable the interface.  This reduces the chance of
+	editing widgets in the item editor from being ripped out from under
+	you (for example, if you try to go straight from editing a call
+	number to editing an item attribute).  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-21  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: 
+	lp#792595: Don't allow pre-cats into record buckets via Item Status
+	-> Actions for Catalogers Alerts with the number of pre-cat records skipped prior to invoking
+	the title bucket dialog.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-28  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/conify/global/actor/org_unit.html,
+	Open-ILS/web/conify/global/actor/org_unit.js,
+	Open-ILS/web/opac/locale/en-US/conify.dtd: This adds a SAN box to
+	the org unit editor's address editor pane.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-03  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0589.money.materialized_summary_payment
+	-triggers.sql: Upgrade script for a patch from Steven Callender
+	addressing payment types in money.materialized_summary_payment Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-20  Liam Whalen <lwhalen at evergreen-dev.catalogue.nrcan.gc.ca>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Deleted a line the removed single quotes (') from search strings The multiclass_query function replaces single quotes with spaces (')
+	( ).  This causes a problem when toggling between Advanced and Basic
+	search.  If a search is conducted with a ' in it, that quote appears
+	in the basic search box displayed above the results.  However, if
+	the user then clicks the 'Advanced' button to toggle to the advanced
+	search the single quote is missing from the search term.  By
+	removing the line $query =~ /s/'/ /go; from Biblio.pm this problem
+	is resolved.  Signed-off-by: Liam Whalen
+	<lwhalen at evergreen-dev.catalogue.nrcan.gc.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-08-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/2.0-2.1-upgrade-db.sql: 2.0-2.1 upgrade
+	integration of a patch from Steven Callender addressing payment
+	types in money.materialized_summary_payment Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Upgrade script for a
+	patch from Steven Callender addressing payment types in
+	money.materialized_summary_payment Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-28  Steven Callender <stevecallender at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/080.schema.money.sql,
+	Open-ILS/src/sql/Pg/1.4.0.5-1.6.0.0-upgrade-db.sql: A fix so that
+	the last payment types will be cash_payment and check_payment rather
+	than bnm_payment for cash and check payments.  Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+	Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-03  Bill Erickson <berick at esilibrary.com>
+
+	* : Merge remote branch 'working/user/shadowspar/ttopac-altcleanup'
+	into template-toolkit-opac-master-merge
+
+2011-08-03  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/templates/default/conify/global/cat/authority/browse_a
+	xis.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/browse_a
+	xis_authority_field_map.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/control_
+	set.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/control_
+	set_authority_field.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/control_
+	set_bib_field.tt2,
+	Open-ILS/src/templates/default/conify/global/cat/authority/thesauru
+	s.tt2,
+	Open-ILS/src/templates/default/conify/global/vandelay/match_set.tt2
+	,
+	Open-ILS/src/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2, Open-ILS/src/templates/default/opac/cnbrowse.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/expert.tt2,
+	Open-ILS/src/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/src/templates/default/opac/parts/hold_error_messages.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/src/templates/default/opac/parts/record/summaryplus.tt2,
+	Open-ILS/src/templates/default/vandelay/inc/import_errors.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/browse_a
+	xis.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/browse_a
+	xis_authority_field_map.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set_authority_field.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set_bib_field.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/thesauru
+	s.tt2,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set.tt2
+	,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2, Open-ILS/web/templates/default/opac/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/expert.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/web/templates/default/opac/parts/hold_error_messages.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summaryplus.tt2,
+	Open-ILS/web/templates/default/vandelay/inc/import_errors.tt2: More
+	template moving from 'web' to 'src'.  These are the templates that have been added since the initial Great
+	Migration from Open-ILS/web/templates to Open-ILS/src/templates.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-03  Bill Erickson <berick at esilibrary.com>
+
+	* : Repaired merge conflicts resuling from ttopac-move-templates Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Quote container id param for safety Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 3a523a078311d23d1dd960070f59cf39d947b936 Merge: 18a1031
+	5c2de55 Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Aug
+	2 20:01:49 2011 -0400
+
+2011-08-02  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Fixed some syntax errors, but getting no results when
+	I'd expect some I searched with this     container(bre,bookbag,12,$authtoken) where $authtoken is substituted with an actual live authtoken for
+	the user that owns that container, and here is the example generated
+	query that returns no results:   SELECT * FROM  search.query_parser_fts(             4::INT,             2::INT,             $core_query_3553$SELECT  m.source AS id,
+	ARRAY_ACCUM(DISTINCT m.source) AS records, 1.0/((AVG(         (1) ) * COALESCE( NULLIF( FIRST(mrd.attrs @>
+	hstore('item_lang', $_3553$eng$_3553$)), FALSE )::INT * 5,
+	1)))::NUMERIC AS rel, 1.0/((AVG(         (1) ) * COALESCE( NULLIF( FIRST(mrd.attrs @>
+	hstore('item_lang', $_3553$eng$_3553$)), FALSE )::INT * 5,
+	1)))::NUMERIC AS rank, FIRST(mrd.attrs->'date1') AS tie_break FROM
+	metabib.metarecord_source_map m JOIN metabib.record_attr mrd ON
+	(m.source = mrd.id) JOIN ( SELECT ci.target_biblio_record_entry AS container_item         FROM  container.biblio_record_entry_bucket_item ci               JOIN container.biblio_record_entry_bucket c ON (c.id =
+	              ci.bucket)         WHERE c.btype = $_3553$bookbag$_3553$ AND c.id = 12               AND (c.pub IS TRUE OR c.owner = 1)) container ON
+	              (container.container_item = mrd.id) WHERE 1=1 AND (TRUE) GROUP BY 1 ORDER BY 4 ASC NULLS LAST, 5 DESC NULLS LAST,
+	3 DESC LIMIT 10000 $core_query_3553$::TEXT,             $${}$$::INT[],             $${}$$::INT[],             NULL::INT,             1000::INT,             10000::INT,             'f'::BOOL,             't'::BOOL         ); Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-08-02  Joseph Lewis <joehms22 at gmail.com>
+
+	* Open-ILS/web/Makefile.am,
+	Open-ILS/web/opac/skin/craftsman/css/default.css,
+	Open-ILS/web/opac/skin/craftsman/css/layout.css,
+	Open-ILS/web/opac/skin/craftsman/js/rdetail.js,
+	Open-ILS/web/opac/skin/craftsman/js/result_common.js,
+	Open-ILS/web/opac/skin/craftsman/js/search_bar.js,
+	Open-ILS/web/opac/skin/craftsman/js/sidebar.js,
+	Open-ILS/web/opac/skin/craftsman/xml/advanced/adv_global_row.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/advanced/advanced_global.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/body.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/altcanvas.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/cn_browse.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/css_common.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/fonts.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/holds.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/libselect.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/login.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/logo.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/orgtree.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/searchbar.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/sidebar.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/statusbar.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/common/tips.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/footer.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/home/homesearch.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/home/index_body.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/page_cnbrowse.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/page_myopac.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/page_rdetail.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/rdetail/rdetail_cn_details.xml
+	,
+	Open-ILS/web/opac/skin/craftsman/xml/rdetail/rdetail_copyinfo.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/rdetail/rdetail_extras.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/rdetail/rdetail_summary.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/result/filtersort.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/result/result_info.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/result/result_lowhits.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/result/result_table.xml,
+	Open-ILS/web/opac/theme/craftsman/css/colors.css: Remove craftsman
+	skin.  Signed-off-by: Joseph Lewis <joehms22 at gmail.com> Via LP: https://bugs.launchpad.net/evergreen/+bug/820010 And this email thread:
+
+	http://libmail.georgialibraries.org/pipermail/open-ils-dev/2010-August/006269.htmlSigned-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 33466952162f6cf93ac7d67433c94b61da662121 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Tue Aug 2 14:58:57 2011 -0400
+
+2011-07-22  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Add cointainer() and record_list() filters to
+	QueryParser The container() filter takes 3 or 4 positional params:   - class (bre, acn, acp, au)   - type  (bookbag, etc -- btype of the container)   - id    (container id)   - token (authtoken, optional, for checkin ownership of non-public
+	  containers) The record_list() filter takes a list of record ids to restrict the
+	search by.  These are bib ids by default, but are treated as
+	metarecord ids in the presence of the #metabib (aka #metarecord)
+	modifier.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Actually JOIN the VALUES list; syntax copy/paste-o; use
+	the correct field for bre containers Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 024c72c037287e34550cddeb5d9131cc782e910f Merge: 9bd8972
+	e1658e2 Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Aug
+	2 14:39:31 2011 -0400
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 00a8204a3d5ce25dc1c68766f885a9eface9cf06 Merge: 7c0f0df
+	e1658e2 Author: Bill Erickson <berick at esilibrary.com> Date:   Tue
+	Aug 2 13:04:25 2011 -0400
+
+2011-08-02  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: lp758945:
+	make receipt template macros repeatable Patch from Jason Boyer to allow macros to be used more than once in
+	a section; prior to this patch, only the first occurrence was
+	replaced with the substitation value.  Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-08-02  Thomas Berezansky <tsbere at mvlc.org>
+
+	* : commit 4af3bfb5121033ca69b8c6ca2187fcfb014c114a Author: Dan
+	Scott <dan at coffeecode.net> Date:   Sun Jul 24 15:51:38 2011 -0400
+
+2011-07-21  Dan Scott <dan at coffeecode.net>
+
+	* README: Provide Fedora-friendly instructions for the DBD libraries We had only provided the Debian / Ubuntu location of the
+	libdbi-libdbd libraries, so add the Fedora location as well.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-21  Dan Scott <dan at coffeecode.net>
+
+	* README: Bring more of the wiki docs over to the README Document Perl prerequisites for a standalone PostgreSQL server.
+	Include a section on starting Evergreen and basic troubleshooting.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-21  Dan Scott <dan at coffeecode.net>
+
+	* README: Update the README to include database installation
+	instructions A long time ago, the database server was installed by default.
+	Nowadays, installing the database server is a separate step reserved
+	for whatever machine you want to devote to PostgreSQL.  Not that you
+	can't put it on the same machine as the rest of Evergreen and
+	OpenSRF...  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/vandelay.dtd: Fixed typo in
+	vandelay UI Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-02  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 5a0a387a341c53747bb7274ee78ff3495152b88f Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Tue Aug 2 11:26:19 2011
+	-0400
+
+2011-08-02  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.replace_field-default-value
+	.sql: Have replace_field return input XML when no replace rule is
+	provided Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-08-02  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 82fe5b97b9706ef432b4359a4153e1272b4a07de Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Mon Aug 1 14:09:23 2011
+	-0400
+
+2011-08-02  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_overlay.xu
+	l: Add the new patron retrieval to the toolbar Specifically, in the little list of things that shows up when you
+	use the arrow next to patron search.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties: 
+	Label tweaks re: Database ID vs Record ID, etc.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties: 
+	Add "Retrieve patron via Database ID" menu entry Add "Retrieve patron via Database ID" menu entry to top-level Search
+	menu Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2: 
+	Allow advanced search bool selectors to size down ... to avoid unnecessary horizontal screen gobbling Tested in Chrome, FF, and IE Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm: calculate
+	penalties when letting Mark Item Damaged add bills Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-08-02  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Fix
+	oils_i18n_gettext id numbers config.metabib_field ids 29/30 had 28 for translation id.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-08-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2: 
+	Support for boolean operators in advanced search Implements a new column with And/Or selectors.  Terms are grouped
+	from top to bottom in the UI as left to right in the compiled query.  A && B || C && D  => ((A && B) || C) && D Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: maketext filter
+	must be registered as a dynamic filter to properly handle arguments Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js: 
+	AutoFieldWidget support for augmenting pcrud search options Adds a new searchOptions attribute to AutoFieldWidget for specifying
+	additional parameters to pcrud when retrieving linked objects.  The
+	initial use case is for supporting a "select" list to allow
+	AutoFieldWidget to retrieve only the display column of a linked
+	object and not the whole object.  Example:  // fetch 'remote_field_name' on the remote objects instead of  // fetching the entire object  myGrid.overrideWidgetArgs.some_field = {searchOptions :  {"select":{"some_hint":["remote_field_name"]}}}; Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2: Remove KCLS
+	mattype SQL seed data comment Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-08-01  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb/I18NFilter.pm,
+	Open-ILS/web/templates/default/opac/parts/header.tt2: Bypass
+	install_filter mem leak via direct insertion See https://rt.cpan.org/Ticket/Display.html?id=46691 On the one hand we have a memory leak, on the other we have a bug
+	caused by the fix to the memory leak.  Bypass this altogether and
+	insert the filter manually into the template environment using
+	Template's FILTER configuration argument.  This has the added bonus
+	of simplifying the i18n filter code.  Since the filter is manually inserted, it's not necessary (and
+	possibly counter-productive) to USE the filter directly in the
+	template.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/spine_labels.js: use isNaN
+	here, since NaN == NaN => false Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-30  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: Changed
+	opac-auto-079 in semiauto.css to warning_box in
+	templates/default/opac/myopac/hold_history.tt2,
+	templates/default/opac/myopac/circ_history.tt2,
+	templates/default/opac/myopac/circs.tt2,
+	templates/default/opac/myopac/holds.tt2
+
+2011-07-30  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2: Changed
+	opac-auto-097b in semiauto to item_list_padding  in
+	templates/default/opac/parts/anon_list.tt2,
+	templates/default/opac/myopac/lists.tt2,
+	templates/default/opac/myopac/circs.tt2
+
+2011-07-30  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2: Changed
+	opac-auto-179 in semiauto.css to selector_actions_for_list and
+	opac-auto-179-inner-option to selector_actions_for_list_inner_option
+	in templates/default/opac/parts/anon_list.tt2 and
+	templates/default/opac/myopac/lists.tt2
+
+2011-07-30  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2: 
+	Changed opac-auto-017 in semiauto to adv_global_filter_sort in
+	templates/default/opac/parts/advanced/search.tt2
+
+2011-07-30  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2: 
+	Changed opac-auto-012 in semiauto to adv_global_input_container  in
+	/default/opac/parts/advanced/search.tt2
+
+2011-07-30  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2: 
+	changed opac-auto-078 in semiauto to qtype_selector_margin in
+	/default/opac/parts/advanced/global_row.tt2
+
+2011-07-29  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: Clean up
+	OpenSRF::AppSession objects after use These things need ->kill_me called on them after we're done using
+	them.  (note to self: check to see if we can just add a DESTROY sub to that
+	package) Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-29  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit b8a2dde209effe413057e05cb4c616dacb78bd74 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Fri Jul 29 12:33:52
+	2011 -0400
+
+2011-07-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/advanced/numeric.tt2: 
+	advanced/cnbrowse label tweak Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: Prevent
+	undef warnings on org unit lookup Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-29  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/web/templates/default/opac/parts/qtype_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2: 
+	cnbrowse tweaks Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-29  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2: 
+	Direct entry point into the call number browser Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm: If
+	there's no sort org unit, just fall back to the usual sorting Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/misc_util.tt2: Don't
+	build image tags for non-existing mattype icons Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm: Sort
+	copies on record detail page with copies belonging to "sort org
+	unit" first "sort org unit" needs to eventually be an abstract concept that
+	could either refer to "orig_loc" or to "loc" or perhaps be skipped
+	altogether, depending on some future configuration.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-28  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/test/mfhd.t: Fix
+	broken builds due to test that can't find its data LP 817699 reports a problem that began with commit
+	e9cd992fa4dbf1013346336193cb7469ecee10a8, reintroducing a problem
+	that had previously been resolved with commit
+	f017d1261c369b9b5cc3c9cfc4f50d3cdf12a445. In short, tests can and
+	are run from different directories, but a new test opened a file
+	without making any allowance that the test might be run from
+	anything other than the /test/ directory.  This fix uses the dirname(__FILE__) approach to provide the
+	appropriate relative directory for the test data, and enables the
+	tests to be processed without dying.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: 
+	item_barcode had broken the rest of numeric search but now it's fixed Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2: 
+	Minor code cleanup of unused code; avoids Apache warning Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/results.tt2: Avoid server-error
+	on barcode search when barcode not found Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/acq/nls/acq.js,
+	Open-ILS/web/js/ui/default/acq/common/li_table.js: Make users
+	confirm they really want to delete lineitems from POs...  ... when they've already been ordered. There's really no reason to
+	ever make such a deletion this that I can think of, but I use a
+	confirm() instead of stricter measures in case I'm missing
+	something.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-07-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0587.maintain_control_numbers_with_OCLC
+	_awareness.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.maintain_control_numbers_with_OCLC
+	_awareness.sql: Stamped upgrade for user/dbs/oclcnumbers Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-21  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.maintain_control_numbers_with_OCLC
+	_awareness.sql: Prevent control numbers from duplicating In maintain_control_numbers(), if you have more than one 001 or 003,
+	and at least one is the correct one, you will end up duplicating the
+	correct number every time the record is saved.  For example, if the incoming record was record ID # 12345, and the
+	record contained: 001: 12345 001: ocm10202 ... then after maintain_control_numbers() ran, the record would
+	contain: 001: 12345 001: 12345 Also, clean up some leftovers from the refactor I suggested in the
+	previous commit.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dscott at laurentian.ca>
+
+2011-07-21  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxxx.maintain_control_numbers_with_OCLC
+	_awareness.sql: Add an unwrapped upgrade script for OCLC-aware
+	control numbers The upgrade script creates the SCN and LCCN search indexes and
+	populates them using metabib.full_rec as a source; cheating, but the
+	normalized values will work for non-exact search purposes. Sites can
+	reingest all of their bibs if they want exact search to work.  Also, refactor maintain_control_numbers() using a suggestion by Dan
+	Wells to eliminate some duplicate code.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-07-21  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Treat OCLC numbers
+	specially in maintain_control_numbers For some reason, many records that come with OCLC numbers in the 001
+	field are not populated with a 003 field. This resulted in the OCLC
+	number being thrown away entirely, rather than being moved into the
+	035, as there was no corresponding control number identifier field.  However, given that we know that control numbers starting with "ocm"
+	or "ocn" are special OCLC numbers, we can generate the 035
+	accordingly even in the absence of a 003. This update to
+	maintain_control_numbers() teaches it to do the right thing for OCLC
+	numbers.  In addition, add an identifier search index so we can easily find
+	records by their system control numbers (035 $a subfields).  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-07-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0587.data.config.metabib_field.lccn.sql: 
+	Revert "Add lccn field to the identifier search class" This change will be absorbed when merging
+	working/user/dbs/oclcnumbers, which I will do pronto...  This reverts commit 94f69d21b6759dc43c151c7796dafee74083f62c.
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0587.data.config.metabib_field.lccn.sql: 
+	Add lccn field to the identifier search class Facilitates easily searching by LCCN (010 ‡a).  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-28  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 553527a256d00c7914e21291634b214add46941d Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Jul 28 11:36:23 2011
+	-0400
+
+2011-07-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/js/ui/default/opac/simple.js,
+	Open-ILS/web/templates/default/opac/parts/advanced/expert.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2: You
+	can now have multiple rows in your MARC Expert Search Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/expert.tt2: MARC
+	expert search working This just needs the JS row cloning so you can search on multiple
+	terms at a time.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/advanced/numeric.tt2,
+	Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: It's ugly and
+	hacky, but numeric search fully works (item barcode included) Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/oils_sip.xml.example,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/Checkin.pm: SIP2
+	support for checkin local holds as transits Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/checkin_overlay.xul,
+	Open-ILS/xul/staff_client/server/skin/circ.css: Capture local holds
+	as transits checkin modifier Capture holds (not already on hold shelf) as transits instead.  Use cases may include: New material being cataloged before it is "released". If captured
+	normally before release the shelf expire time would start ticking
+	and notices would go out.  Checking items in on a closed day. Can capture holds to avoid them
+	being on a pull list and set them aside to avoid "ready for pickup"
+	notices and ticking shelf expire clock.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm, Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/checkin_overlay.xul,
+	Open-ILS/xul/staff_client/server/skin/circ.css: Auto-retarget local
+	holds on "new" copy checkin When a new item is checked in local holds will be searched and
+	re-targeted.  The search and retarget stops when a hold is found locally that the
+	item can fill.  Already-captured holds will not be retargeted.  "New" is (currently) defined as "In progress" at checkin Retarget occurs: Only if the copy's circ library is the checkin
+	library Only if the checkin is an actual checkin (not a renewal)
+	Only if the checkin is capturing holds and transits Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/checkin_overlay.xul,
+	Open-ILS/xul/staff_client/server/skin/circ.css: Clear Shelf Expired
+	Hold on Checkin Only if modifier is set and at the pickup library.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/server/cat/bibs_abreast.js,
+	Open-ILS/xul/staff_client/server/cat/marc_new.xul,
+	Open-ILS/xul/staff_client/server/cat/record_buckets.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/z3950.js,
+	Open-ILS/xul/staff_client/server/index.xhtml,
+	Open-ILS/xul/staff_client/server/patron/holds.js,
+	Open-ILS/xul/staff_client/server/patron/items.js: move query params
+	into the constants to better support current opac and TT-opac Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-27  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 161a58e33efb65920782e4be78616e8a8b3a8f33 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Jul 27 14:40:46 2011
+	-0400
+
+2011-07-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXY.data.config.metabib_field.lccn.sql
+	, Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/advanced.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/expert.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/numeric.tt2: 
+	Numeric search mostly works (except for item barcode) Expert search is next Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-27  Bill Erickson <berick at esilibrary.com>
+
+	* : commit c15551d3faed8487ebebc955b45135eb44b82fe5 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Jul 27 11:05:41 2011
+	-0400
+
+2011-07-27  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: Don't show
+	users who are already logged in a login form; that's confusing Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2: 
+	Confirm CC payments with another page load, not confirm() popup This does something gross. Your CC card number is rendered in a
+	hidden field on the last confirmation page.  At least it's all SSL
+	only.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/style.css: Show most up-to-date
+	email address in update-email interface plus cosmetic change to payment mini table Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main_pay.tt2: CC
+	payment improvements: Link from receipt after payment back to account summary.  Error reporting Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main_pay.tt2: Better to
+	tell the user something rather than nothing Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/extras/ils_events.xml: Add missing
+	INVALID_USER_XACT_ID event Code introduced in c5d36d2a99e45b9a02d00a1e795b66a38c271b43 (SVN
+	r17079) can generate this event.  The description I gave it is meant
+	to be kind of user-oriented, since patrons might see it in the OPAC.
+	A somewhat more informative description in available in the commit I
+	named above.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2: 
+	Remove ? icon by "Security Code" in payment form It can go back in later if we want to make it actually do something.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payments.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2: Give
+	the patrons the opportunity to see and change their e-mail
+	address...  ... before they submit fine payments.  This way they have a better
+	chance of getting a receipt e-mailed to them.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0586.data.persistent_login_default_perm
+	.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.persistent_login_default_perm
+	.sql: Stamped upgrade script for persistent_login_default_perm Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.persistent_login_default_perm
+	.sql: Add the PERSISTENT_LOGIN permission to the system, and ...  ... make it belong to Users (which includes Staff and Patrons) by
+	default.  This doesn't mean that all logins are persistent (long-lived) by
+	default, it just means that users do have the permission to request
+	a long-lived auth session by default.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/login/form.tt2: 
+	Persistent logins are more of a "stay logged in" feature than a
+	"remember me" Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/util/browser.js,
+	Open-ILS/xul/staff_client/server/cat/spine_labels.js,
+	Open-ILS/xul/staff_client/server/patron/display.js: Load embedded
+	OPAC via SSL by default, w/ override option * url_prefix option for using/forcing SSL.  * oils.secure_opac preference for doing such with the embedded OPAC -------- To use the preference, you may want to include something like this
+	in server/skin/custom.js: // Force non-SSL for the OPAC try {
+	netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");    var prefs =
+
+	Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces['nsIPrefBranch']);if (!prefs.prefHasUserValue('oils.secure_opac')) {         prefs.setBoolPref('oils.secure_opac',false);     } } catch(E) {     alert('Error in custom.js trying to set oils.secure_opac
+	    preference to false: ' + E + '\n'); } Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-26  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/receipt_email.tt2,
+	Open-ILS/web/templates/default/opac/myopac/receipt_print.tt2: Links
+	to return to payment history from receipt print/email pages Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-25  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/Makefile.install: Ubuntu Lucid needs
+	MARC::Record from CPAN As Ubuntu Lucid ships with MARC::Record 2.0.0, and Serials requires
+	2.0.1 or greater, we must install MARC::Record from CPAN or face
+	failing open-ils.search requests.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/js/ui/default/opac/simple.js,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2: 
+	Select-all checkboxes for fine payment In the process, had to change the checkbox/cgi param name of the
+	misc fees to xact_misc and tell the middle layer to lump xact
+	together with xact_misc.  Should test carefully.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-21  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/standing_penalties.js: 
+	Correctly populate certain columns in the patron Messages interface When applying penalties, the csp's referenced by the ausp's are
+	fleshed.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-25  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0585.checkout_fills_related_hold_exact_
+	match.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.checkout_fills_related_hold_exact_
+	match.sql: Stamped upgrade script for
+	checkout_fills_related_hold_exact_match Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.checkout_fills_related_hold_exact_
+	match.sql: Unwrapped Upgrade Script for Checkout Fills Related Hold modifications Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Checkout Fills Related
+	Hold modifications Two changes: 1 - Check hold_copy_map for related holds This removes the "Title or Volume hold only" restriction, allowing
+	any hold type to fill.  This check happens first whenever the option
+	is enabled.  2 - Add new option for *only* checking hold_copy_map.  This allows for non-holdable copies to not fill Title or Volume
+	holds on checkout.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-25  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0584.data.org-setting-ui.circ.billing.u
+	ncheck_bills_and_unfocus_payment_box.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.org-setting-ui.circ.billing.u
+	ncheck_bills_and_unfocus_payment_box.sql: Stamped upgrade script for
+	uncheck_bills_and_unfocus_payment_box Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.org-setting-ui.circ.billing.u
+	ncheck_bills_and_unfocus_payment_box.sql,
+	Open-ILS/xul/staff_client/server/patron/bill2.js,
+	Open-ILS/xul/staff_client/server/patron/bill2.xul: GUI: Uncheck
+	bills by default in the patron billing interface Org unit setting and behavior.  Also defaults the focus to the
+	Uncheck All button instead of the Payment Received field in that
+	interface.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main_payments.tt2: 
+	Empty case for payment history Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-11  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_overlay.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: Add
+	support for Holds and Items counts in dynamic staff Record Summary (use 'holds' and 'items' with your
+	oils.bib_brief.*.dynamic_grid_replacement.data customizations) Also make the Bib Call # retrieval asynchronous and dependent on the
+	field being configured for display.  This branch has merged in (and
+	depends on) the changes from collab/phasefx/dynamic_bib_brief Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-21  Michael Peters <mrpeters at library.in.gov>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CopyLocations.pm: 
+	LP#813151 Copy Location sort order in Advanced Search This patch addresses the unintuitive copy location sort order in
+	Advanced Search when searching at a specific branch. Thanks to Dan
+	Wells for the code suggestion which changes the order in the listbox
+	to alphabetical sort by asset.copy_location.name.  Tested, and
+	confirmed working in 2.0.4 test and production environments.  Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-25  Robin Isard <robin.isard at algomau.ca>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/parts/record/cn_details.tt2: 
+	Changed opac-auto-004 to rdetail_print_details_cn_spacer in file
+	cn_details.tt2
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.opac_payment_history_age_limi
+	t.sql: YAOUS to limit OPAC payment history display to configured
+	interval Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 77f9c6f5f87a5b0454b240bb10b7cfab325d4722 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Mon Jul 25 14:15:25 2011
+	-0400
+
+2011-06-10  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_extras.xml,
+	Open-ILS/web/opac/skin/default/xml/result/result_table.xml: 
+	NOVELIST/CHILIFRESH include statements missing a hash which was
+	causing (none) errors.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-07-25  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/acq.css,
+	Open-ILS/web/js/ui/default/acq/common/li_table.js,
+	Open-ILS/web/templates/default/acq/common/li_table.tt2: Show LI
+	summary in copies display page Using the new, self-contained Lineitem.fetchAndRender, show a full
+	LI summary along the top of the LI copies edit page.  Includes some minor layout smoothing Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit c6e73ef359f34c1495db622d260b3de16f5f6f96 Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Wed Jul 20 01:29:43 2011
+	-0400
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 4231369f29d3eaac461d1de247d0242b8eed7f91 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Mon Jul 25 11:38:17 2011
+	-0400
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit a75c19a8ceabcd2bf43ae937623e79dfbe7244fd Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Wed Jul 20 16:51:46 2011
+	-0400
+
+2011-07-25  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 93e509cc0f7474bc8cc0ce493644e6509a79c0d4 Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Wed Jul 20 01:49:07 2011
+	-0400
+
+2011-07-25  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/holds.js: Comment out line that
+	breaks holds placement in IE auto is not a valid option for a border, and IE faults on it.  Other
+	browsers seem to ignore it, as far as I can tell.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-24  Mike Rylander <mrylander at gmail.com>
+
+	* : commit c0b13ededa3340f6f2085abf76a87e4f162a1c60 Merge: b621481
+	b82f698 Author: Mike Rylander <mrylander at gmail.com> Date:   Sun Jul
+	24 11:14:15 2011 -0400
+
+2011-07-22  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Add cointainer() and record_list() filters to
+	QueryParser The container() filter takes 3 or 4 positional params:   - class (bre, acn, acp, au)   - type  (bookbag, etc -- btype of the container)   - id    (container id)   - token (authtoken, optional, for checkin ownership of non-public
+	  containers) The record_list() filter takes a list of record ids to restrict the
+	search by.  These are bib ids by default, but are treated as
+	metarecord ids in the presence of the #metabib (aka #metarecord)
+	modifier.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2: More
+	better call number browser, uses supercat directly, doesn't use mvr
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2: 
+	Also was missing the author search link Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2: Call
+	number shelf browser: fix prev/next links, wrong argument order
+	in...  ... call to open-ils.search.callnumber.browse (count and offset
+	mixed up) Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/cn_browse.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cnbrowse.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2: Shelf
+	browser! Needs improvements: can't find jacket images by UPC yet Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-20  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/opac/parts/hold_error_messages.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2: More power
+	to present friendly messages when hold placement fails This area could use a little cleanup, elegance, but it can give end
+	users better messages for a diverse set of reasons why hold
+	placement failed.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-20  Bill Erickson <berick at esilibrary.com>
+
+	* : commit b82f69844875d05272cc6d93d90b2160f0f9acf4 Author: Michael
+	Peters <mrpeters at library.in.gov> Date:   Wed Jul 20 11:09:40 2011
+	-0400
+
+2011-07-20  evergreen <evergreen at squeeze.debian>
+
+	* : according to git i've made changes to 950.data.seed-values.sql
+
+2011-07-18  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/admin/transit_list.js,
+	Open-ILS/xul/staff_client/server/admin/work_log.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_buckets.js,
+	Open-ILS/xul/staff_client/server/cat/copy_summary.xul,
+	Open-ILS/xul/staff_client/server/cat/record_buckets.js,
+	Open-ILS/xul/staff_client/server/cat/z3950.js,
+	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.js,
+	Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/checkout.js,
+	Open-ILS/xul/staff_client/server/circ/copy_details.xul,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/circ/in_house_use.js,
+	Open-ILS/xul/staff_client/server/circ/renew.js,
+	Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/patron/hold_details.js,
+	Open-ILS/xul/staff_client/server/patron/holds.js,
+	Open-ILS/xul/staff_client/server/patron/items.js,
+	Open-ILS/xul/staff_client/server/serial/manage_dists.js,
+	Open-ILS/xul/staff_client/server/serial/manage_items.js,
+	Open-ILS/xul/staff_client/server/serial/manage_subs.js: remove
+	circ.util.std_map_row_to_columns; default to the one provided by
+	list.js Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-18  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/list.js,
+	Open-ILS/xul/staff_client/server/circ/util.js: Better sort support
+	for xul lists (see launchpad bug
+	://bugs.launchpad.net/evergreen/+bug/751745) Example of supplying a
+	sort_value function for item Create Date, and automatic sort_value
+	for fm_columns-generated timestamp and money column definitions.
+	Need to provide more such functions, and eventually move everything
+	over to fm_columns Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit b6428a0389e439f8f7e23a3c17a62a02ed54a089 Merge: 8585968
+	e9cd992 Author: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Date:   Tue Jul 19 16:53:06 2011 -0400
+
+2011-07-17  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: Make inactive
+	cards/patrons "not exist" via SIP2 And make sure if we do get a deleted patron for some reason they are
+	ignored too.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-19  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0583.schema.aging_circ_view.sql: rerun
+	DB update 0582 to avoid upgrade problem This implements the same update as 0582.schema.aging_circ_view.sql,
+	and exists purely the the sake of avoid a potential upgrade glitch
+	for somebody who's upgrading from 2.0.8+ that includes a version of
+	this fix that's not compatible with with 2.1+.  Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-07-19  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/Holding.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/test/mfhd.t,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/test/mfhddata2.txt: 
+	MFHD compressed holding fixes 1. Add new utility method to MFHD.pm:     holdings_by_caption(): return all holdings attached to a     given caption 2. Add 'passthru_open_ended' option to get_decompressed_holdings()     Previously, attempts to decompress an open-ended holding     would error out.  Now, in the absence of this option,     open-ended holdings are discarded and you get a warning     (since they cannot logically be decompressed), while if     this option is 'true' they are passed back unaffected 3. compressed_to_last() on an open-ended holding now more    correctly returns 'undef' rather than the unaltered holding 4. get_compressed_holdings() will now honor an open-ended holding    by treating it as "infinite", and thus absorbing any holdings    which would follow 5. Overloaded comparison operator now correctly detects "swap"    cases (where only the second operand is a holding) 6. Overloaded comparison operator now consistently treats    open-ended holdings as "g
 reater-than" a single or closed    holding which has the same starting point 7. Fix 2 thinkos in comparison operator for overlapping    compressed holdings 8. Add new compressed_end() method to Holding.pm which can add    or set a new ending to a holding, making compressed if needed 9. Correctly recognize partially compressed holdings     If a holding is defined as:         863 40 $81.1 $a1 $b2-10     this actually means:         863 40 $81.1 $a1-1 $b2-10     so let's make sure to treat it that way.  9. Expand the MFHD test suite to better cover the improvements    in this commit There is also the beginnings of a _get_truncated_holdings() method
+	for handling odd cases where an open-ended holding is followed by a
+	single/closed holding, but it is currently commented out, pending
+	further design consideration.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-07-18  Steven Callender <stevecallender at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/display.js: lp#812550:
+	Removed nulls from showing for patron penalties when no note
+	attached to penalty.  Signed-off-by: Steven Callender <stevecallender at esilibrary.com>
+	Signed-off-by: Michael Peters <mrpeters at library.in.gov>
+	Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-07-18  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/js/ui/default/opac/staff.js,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/xul/staff_client/server/patron/holds.js: Fix the wrongish
+	way we were doing staff-assisted holds Now the patron that a staff user wants to place a hold for is passed
+	around as a cookie It's a little unclear when is best from a workflow perspective to
+	kill said cookie... hrmmm....  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-18  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-18  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : Merge remote branch
+	'working/collab/phasefx/unified_vol_copy_ui_from_item_status_ui' Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-18  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2: Alert or
+	block holds on available copy at same pickup lib This improves upon the earlier commit that attempted to deal with
+	what to do when either of these org_unit settings are true:      circ.holds.hold_has_copy_at.alert      circ.holds.hold_has_copy_at.block The correct use of these settings are that when /any/ type of hold
+	is attempted at a given pickup lib, if either of those settings are
+	true in the context of said pickup lib, and there are copies in an
+	available status at the pickup lib already, inform the user before
+	placing the hold.  In the alert case, the user can place the hold
+	anyway with another click.  In the block case, there's an end on't.
+	Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-18  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Remove extraneous
+	COMMIT message in 950 seed data The extra COMMIT message didn't hurt when creating a new schema, but
+	did result in a warning message that could cause confusion. So, get
+	rid of it to avoid that.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-07-06  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief.xul,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_vertical.xul,
+	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.js,
+	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.xul,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: Item
+	Status->Alternate View support for the dynamic Record Summary For now, you could put something like this in server/skin/custom.js
+	to re-configure the display: try {
+	netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");    var prefs =
+
+	Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces['nsIPrefBranch']);prefs.setCharPref(
+	'oils.bib_brief.alternate_copy_summary.dynamic_grid_replacement.data',        js2JSON([             ['title',       'edition',  'editor'],             ['author',      'pubdate',  'edit_date'],             ['call_number', 'tcn',      'create_date']         ])     ); } catch(E) {     dump('Error in custom.js trying to set
+
+	oils.bib_brief.alternate_copy_summary.dynamic_grid_replacement.data: ' + E + '\n');} Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-06  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: 
+	dynamic Record Summary layout based on preference For now, you could add something like this to server/skin/custom.js
+	to re-configure the display: try {
+	netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");    var prefs =
+
+	Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces['nsIPrefBranch']);prefs.setCharPref(         'oils.bib_brief.horizontal.dynamic_grid_replacement.data',         js2JSON([             ['title',           'edition',  'editor'],             ['author',          'pubdate',  'edit_date'],             ['bib_call_number', 'tcn',      'create_date']         ])     ); } catch(E) {     dump('Error in custom.js trying to set
+	    oils.bib_brief.horizontal.dynamic_grid_replacement.data: ' + E +
+	    '\n'); } Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-06  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_overlay.xul,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_vertical.xul: some
+	refactoring in prep for dynamic Record Summary layout Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/bib_brief_overlay.xul: in
+	staff Record Summary (bib brief) pane, stretch the column for title,
+	author, and bib call # Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-18  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/xul/staff_client/server/cat/spine_labels.js: Address
+	minor code formatting consistency The rest of the code has spaces around the conditional clause in an
+	if() statement, so do likewise here.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-06  James Fournie <jfournie at sitka.bclibraries.ca>
+
+	* Open-ILS/xul/staff_client/server/cat/spine_labels.js: Spine label
+	editor assumes LC as reported in LP #780665.  This patch encapsulates the LC-assuming code in an IF block which
+	considers the asset.call_number.volume.label_class.  If that is
+	equal to 3, it will use the LC formatting.  Signed-off-by: James Fournie <jfournie at sitka.bclibraries.ca>
+	Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-07-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/bill2.js: fix bill ui
+	display update bug where total owed and total checked were not
+	updated if the total owed as paid off in full Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0582.schema.aging_circ_view.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXX.schema.aging_circ_view.sql: Stamping
+	upgrade script for "Bad join condition all_circulation view" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXX.schema.aging_circ_view.sql: Bad join
+	condition in secondary (physical) address lookup, causing terrible
+	performance of circ aging Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-13  mrpeters-isl <mrpeters at library.in.gov>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_browser.js: LP795032 Fix
+	cursor rendering and dropdown position in holdings maintenance OU
+	dropdown Signed-off-by: mrpeters-isl <mrpeters at library.in.gov> Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0581.schema.opac_renewal_reuse_circ_lib
+	.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.opac_renewal_reuse_circ_lib.sql: 
+	Stamping upgrade script for "Opac Renewal at original circ library" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.opac_renewal_reuse_circ_lib.sql: 
+	Default to existing behaviour for the new circ-behaviour global flag Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-05  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Cache global flag at first use This way only the first opac renewal per backend has to ask the
+	database for the global flag.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-05  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.opac_renewal_reuse_circ_lib.sql: 
+	Unwrapped upgrade script Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-02  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Opac Renewal at
+	original circ library Fixes multiple potential issues: 1 - Bad home ou on patron breaks
+	    circ rules Ex. Patron edited while editor would let you pick bad
+	home ou 2 - Item not allowed to circ at patron home ou     Ex. Patron went to where they were allowed to pick it up 3 -
+	    Fines change to patron home ou fine rules Ex. Patron's home ou
+	    doesn't charge fines but circ lib does Ex. Circ lib doesn't charge
+	fines but Patron's home ou does Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0580.schema.aou_parent_protec.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.aou_parent_protect.sql: Stamping
+	upgrade script for "Prevent OU loops at DB level" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.aou_parent_protect.sql: Unwrapped
+	upgrade script for ou loop protect May need to be split into "create function" and "add trigger"
+	pieces.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/005.schema.actors.sql: Prevent OU loops at DB
+	level Database trigger to prevent actor.org_unit from being parent of self Actually detects any loops, even those above the current point Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-07  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search.pm: Make
+	spell-checking case insensitive As it stands, if you search for a proper noun using lower case, but
+	manage to trigger the "did you mean" functionality, all the words
+	are 'corrected' even if just the case is wrong.  However, we are
+	stripping out the best correction precisely because it is the same
+	word, different case.  It is a bit confusing to explain, but here is
+	an example: daniel potatoe gets corrected to: Daniela potato This happens because the current spell check is case sensitive, so
+	'daniel' is spelled wrong, but then we remove 'Daniel' from the list
+	of corrections (presumably to avoid possibly suggesting terms which
+	would yield the same exact result set).  So, we either need to make the spell-check itself case insensitive,
+	or stop removing the re-cased corrections.  Since the catalog search
+	itself is already case-insensitive, I think it makes sense that the
+	spell check should follow suit.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-07-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0579.schema.fix_checkout_overrides.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_checkout_overrides.sql: 
+	Stamping upgrade script for "INDB Circ Matrix + Checkout Overrides
+	Fix" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.fix_checkout_overrides.sql: 
+	Unwrapped upgrade script for checkout overrides Replace the function.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/100.circ_matrix.sql: INDB Circ Matrix +
+	Checkout Overrides Fix Move most failures to after matchpoint lookup.  This prevents "no
+	duration rule" errors on overridable errors.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0578.schema.part_holds_bib_report.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.part_holds_bib_report.sql: Stamping
+	upgrade script for "Fix part holds in reporter.hold_request_record" Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-15  evergreen <evergreen at squeeze.debian>
+
+	* : commit 5166299cd88855b4a872733b1b5896ef29fd97bf Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Fri Jul 15 15:55:18 2011 -0400
+
+2011-07-15  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/reporter-schema.sql: Fix part holds in
+	reporter.hold_request_record Specifically, make them show a bib id, instead of null.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-15  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/parts/org_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2: Allow
+	overriding some hold events when permissions apply Works fine now for HOLD_EXISTS and HOLD_ITEM_CHECKOUT_OUT, at least But this was also supposed to work with these org settings:  circ.holds.hold_has_copy_at.alert  circ.holds.hold_has_copy_at.block which are supposed to define
+	behavior when the user wants to place a (copy- or volume-level
+	only?) hold on an item at a branch that's not his home_ou but his
+	home_ou has an available copy.  Anyway, the open-ils.circ.title_hold.is_possible method is supposed
+	to return information about whether local copies are available to
+	support such a function, but it doesn't seem to do so.  I think.
+	Will revisit.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/0577.schema.vandelay-item-import-copy-l
+	oc-ancestors.sql: Vandelay item import copy location inheritance When importing items that have a copy location configured and no
+	such location exists at the copy's owning/circ lib, Vandelay will
+	now use copy locations from ancestor org units as appropriate.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-14  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/skin/default/js/holds.js: Corrected the logic of
+	format string building for metarecord holds and...  made hold possiblity checking for metarecord holds respect the
+	format string (so you can't place holds on formats for which there
+	will never be anything targetable) Made possible by much concerted effort from Mike Rylander Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-14  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Correct CDBI thinko -- search_where is smart about
+	wantarray, search is not Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-13  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/opac/staff.js,
+	Open-ILS/web/templates/default/opac/parts/org_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/xul/staff_client/server/patron/holds.js: Preset correct
+	default pickup lib for staff placing holds for patrons Also, for hold placement, only enable org unit selection where
+	can_have_vols is true.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-12  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Remove deprecated,
+	conflicting version of vandelay.match_bib_record from base schema.
+	Thanks, Galen Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0576.fix_maintain_901_quoting.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.fix_maintain_901_quoting.sql: pin
+	an upgrade version for fix_maintain_901_quoting Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-07-12  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.fix_maintain_901_quoting.sql: 
+	upgrade script for bugfix for lp#809540 Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-12  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql: lp#809540: quote
+	replacement values properly in maintain_901() Prevents a failure if, for example, the tcn_value of a bib to be
+	added or updated contains the string '\1'.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/advanced.js,
+	Open-ILS/web/opac/skin/default/xml/common/sidebar.xml: alert the
+	user when the OPAC's Quick Search->Item Barcode function returns a
+	pre-cataloged item Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-07-12  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: copy
+	and volume level holds for staff Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/z3950.js,
+	Open-ILS/xul/staff_client/server/cat/z3950.xul: "Mark Local Result
+	as Overlay Target" action in z39.50 client Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Removing errant
+	comma spotted by Thomas Berezansky Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-11  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/opac/staff.js,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2: When
+	coming from staff client patron interface, pre-populate the patron barcode text box by which staff places a
+	hold for a patron.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-11  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit a473e68540e532916eda31d35635bbba2dc54137 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Mon Jul 11 17:43:51
+	2011 -0400
+
+2011-07-11  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 01eca7f7ef95d687064270f1cab88bbd8fbb139e Merge: 3f35fdb
+	16c32ec Author: Mike Rylander <mrylander at gmail.com> Date:   Mon Jul
+	11 16:16:21 2011 -0400
+
+2011-07-11  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/acq/common/li_table.js: append line
+	items to table in specified order Prior to this patch, the order that line items were displayed in
+	(e.g.) a purchase order view was effetively randomized based on the
+	amount of time it would take for async calls to fetch additional
+	line item details to return.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-11  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 49081017012efb43fbc3114058cee53f629aab9c Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Mon Jul 11 14:23:30
+	2011 -0400
+
+2011-07-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.authority-control-sets.sql: 
+	Unstamped upgrade script for Authority Control Sets ... with additional fixes from Lebbeous Fogle-Weekley Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql: Merge/rebase cleanup
+	-- remove useless/incorrect versions of the MARC flattener for
+	different record types Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Merge/rebase cleanup
+	-- authority template by id is needed Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-05  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/default/js/authbrowse.js: Make search by
+	authority ID actually work on the first try and also show an odd number of authority record results so that
+	there can actually be a "middle." Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-07-05  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js,
+	Open-ILS/web/templates/default/conify/global/cat/authority/browse_a
+	xis.tt2: Provide sorters for browse axes Make the default bib result sorter 'titlesort' for every browse
+	axis, which is what makes sense if you think about it.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-30  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Create facet for
+	going right to records linked to a given authority record Still need an upgrade script, of course, but so does this whole
+	branch Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-30  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/default/js/authbrowse.js,
+	Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml: attempted to
+	add sanity to paging, but not really there yet Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-30  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/default/js/authbrowse.js: Make linking to
+	bib records work better by saying any format will do.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-29  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/common/js/config.js,
+	Open-ILS/web/opac/skin/default/css/layout.css,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js,
+	Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml: working!
+	with paging and linking to bibs, except: ... my new facet thingy doesn't seem to work.  here's what I did
+	sql-wise:     INSERT INTO config.metabib_field (         id, field_class, name, label, xpath,         format, search_field, facet_field     ) VALUES (         28, 'identifier',         'authority_id', 'Authority Record ID',         '//marc:datafield/marc:subfield[@code=''0'']', 'marcxml',
+	    false, true );     INSERT INTO config.metabib_field_index_norm_map (field, norm)     VALUES (28, 5); Yet after re-ingesting my bibs I have nothing new in
+	metabib.facet_entry.  So the "show related bibliographic holdings"
+	links don't quite work (I believe they /would/, though, if I had the
+	facet thingy right).  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-29  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/MARC/Record.js,
+	Open-ILS/web/opac/skin/default/css/layout.css,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js: Finally starting to
+	get somewhere: record display Record display kind of works.  Need paging and links to bibs.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js,
+	Open-ILS/web/opac/skin/default/xml/common/js_common.xml: Closer to
+	being able to get authority control set from thesaurus code Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js: towards using
+	fielder in openils.AuthorityControlSet Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/web/opac/skin/default/js/advanced.js,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js,
+	Open-ILS/web/opac/skin/default/xml/common/sidebar.xml,
+	Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml: working on
+	an auth browser Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-27  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js: Add function
+	to set Control Set by Thesaurus Code Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-27  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/FixedFields.js: Normalize fixed field
+	names to OCLC values where they exist (what catalogers are used to) Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-23  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml, Open-ILS/web/Makefile.am,
+	Open-ILS/web/js/ui/default/cat/authority/list.js,
+	Open-ILS/web/opac/common/js/config.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/advanced.js,
+	Open-ILS/web/opac/skin/default/js/authbrowse.js,
+	Open-ILS/web/opac/skin/default/xml/common/js_common.xml,
+	Open-ILS/web/opac/skin/default/xml/common/sidebar.xml,
+	Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml,
+	Open-ILS/web/opac/skin/default/xml/setenv.xml,
+	Open-ILS/web/templates/default/conify/global/cat/authority/thesauru
+	s.tt2, Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	config ui trivial improvements, scratching out a place for a browse
+	UI
+
+2011-06-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set_authority_field.tt2: Fix minor glitch when trying to create new
+	authority fields The Autogrid can handle empty arrays as values for acsaf.bib_fields
+	and acsaf.axis_maps, but can't handle undefined.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/cat/authority/common.js,
+	Open-ILS/web/js/ui/default/conify/global/cat/authority/common.js,
+	Open-ILS/web/templates/default/cat/authority/browse_axis.tt2,
+	Open-ILS/web/templates/default/cat/authority/browse_axis_authority_
+	field_map.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set_authority_
+	field.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set_bib_field.
+	tt2, Open-ILS/web/templates/default/cat/authority/thesaurus.tt2,
+	Open-ILS/web/templates/default/conify/global/authority/authority_fi
+	eld.tt2.old,
+	Open-ILS/web/templates/default/conify/global/authority/bib_field.tt
+	2.old,
+	Open-ILS/web/templates/default/conify/global/authority/control_set.
+	tt2.old,
+	Open-ILS/web/templates/default/conify/global/authority/thesaurus.tt
+	2.old,
+	Open-ILS/web/templates/default/conify/global/cat/authority/browse_a
+	xis.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/browse_a
+	xis_authority_field_map.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set_authority_field.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/control_
+	set_bib_field.tt2,
+	Open-ILS/web/templates/default/conify/global/cat/authority/thesauru
+	s.tt2, Open-ILS/xul/staff_client/chrome/content/main/menu.js: Move
+	the authority control set config interfaces back into conify Really, that's where they make sense.  And they're done.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/authority/nls/authority.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/templates/default/cat/authority/browse_axis.tt2,
+	Open-ILS/web/templates/default/cat/authority/browse_axis_authority_
+	field_map.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set_authority_
+	field.tt2, Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Axis-field map editor and editor for the axes themselves The editor for the axes themselves is accessed directly from staff
+	client menu.  Everything else is reached indirectly from the control
+	set editor.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/authority/nls/authority.js,
+	Open-ILS/web/js/ui/default/cat/authority/common.js,
+	Open-ILS/web/templates/default/cat/authority/control_set_authority_
+	field.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set_bib_field.
+	tt2, Open-ILS/web/templates/default/cat/authority/thesaurus.tt2: Add
+	bib field editor.  Also make all the editors written so far...  ... for authority control sets-related objects do the right thing to
+	help users create/edit new child objects linked to the right parent
+	table without extra effort.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-22  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/Authority.pm,
+	Open-ILS/web/js/ui/default/cat/authority/common.js,
+	Open-ILS/web/templates/default/cat/authority/control_set.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set_authority_
+	field.tt2,
+	Open-ILS/web/templates/default/cat/authority/thesaurus.tt2: Ability
+	to return to specific authority.control_set or to specific authority.control_set_authority_field from a child
+	table.  Other improvements heading toward finishing authority
+	control set config UI Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-21  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/cat/authority/control_set_authority_
+	field.tt2: Editor for authority fields Due to time constraints (and AutoGrid limitations) a click-through
+	UI with separate pages for separate objects used by the new
+	authority control sets feature is necessary for now rather than a
+	comprehensive interface with multiple grids on the same page.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-21  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/authority/nls/authority.js,
+	Open-ILS/web/templates/default/cat/authority/control_set.tt2,
+	Open-ILS/web/templates/default/cat/authority/thesaurus.tt2: Thesauri
+	editor
+
+2011-06-21  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/authority/control_set.tt2,
+	Open-ILS/web/templates/default/cat/authority/control_set.tt2,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js: moving stuff
+	where it goes
+
+2011-06-21  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/Authority.pm,
+	Open-ILS/web/js/dojo/openils/authority/nls/authority.js,
+	Open-ILS/web/js/dojo/openils/widget/AutoGrid.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/templates/default/authority/control_set.tt2,
+	Open-ILS/web/templates/default/conify/global/authority/authority_fi
+	eld.tt2,
+	Open-ILS/web/templates/default/conify/global/authority/authority_fi
+	eld.tt2.old,
+	Open-ILS/web/templates/default/conify/global/authority/bib_field.tt
+	2,
+	Open-ILS/web/templates/default/conify/global/authority/bib_field.tt
+	2.old,
+	Open-ILS/web/templates/default/conify/global/authority/control_set.
+	tt2,
+	Open-ILS/web/templates/default/conify/global/authority/control_set.
+	tt2.old,
+	Open-ILS/web/templates/default/conify/global/authority/thesaurus.tt
+	2,
+	Open-ILS/web/templates/default/conify/global/authority/thesaurus.tt
+	2.old, Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties: 
+	conify type interfaces in progress.  not completely deleting old unfinished ones yet; there are probably
+	things to salvage Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-15  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Put thesaurus-z
+	handling back in Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-03  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/web/templates/default/conify/global/authority/authority_fi
+	eld.tt2,
+	Open-ILS/web/templates/default/conify/global/authority/bib_field.tt
+	2,
+	Open-ILS/web/templates/default/conify/global/authority/control_set.
+	tt2,
+	Open-ILS/web/templates/default/conify/global/authority/thesaurus.tt
+	2: Beginnings of the config interfaces Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-30  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Move RULE down so
+	that the named tables actually exist Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-29  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: Switch
+	authority startwith index back to the pre-checking-deletedness
+	version Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql: correcting template
+	generation; filter out subfields that we do not use in the authority
+	record Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: Minor bug fixes
+	(alignment of fm classes, etc); Do not check deletedness, just
+	remove the afr data upon "delete" of an authority; We still need the
+	non-tpo index on afr.value Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-27  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Authority.pm,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: Heading
+	normalization bug; Use CStoreEditor, not Editor; syntax-y bugs Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-27  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/web/js/dojo/MARC/FixedFields.js,
+	Open-ILS/web/js/dojo/openils/AuthorityControlSet.js: General bug
+	fixes and formatting cleanup Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-26  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: 
+	Repaired syntax errors in SuperCat.pm Signed-off-by: berick <berick at esilibrary.com>
+
+2011-05-26  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: Repaired syntax
+	errors and thinkos  * Syntax in AuthorityControlSet.js  * Protect against empty kwargs hash  * marcedit.js fixes: Load dojo class before use; Load in my_init(),
+	 before which dojo is not defined Signed-off-by: berick <berick at esilibrary.com>
+
+2011-05-26  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/Authority.pm: 
+	Protect against empty lists of linked bib searches Instead of returning undef when passed an empty list of bibs, always
+	return an array from
+	open-ils.cat.authority.records.count_linked_bibs Apart from
+	consistency, this prevents JS errors in the Manage Authorities UI.  Signed-off-by: berick <berick at esilibrary.com>
+
+2011-05-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql: SQL typo cleanup Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/ui/default/cat/authority/list.js,
+	Open-ILS/web/templates/default/cat/authority/list.tt2: Use the
+	configured set of authority browse axes in the authority browse
+	interfaces
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Use the new
+	singular methods that accept an axis as a param for browse and
+	startwith
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: Add
+	method for returning valid authority browse axes
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: Browse
+	axis based browse and startswith methods; minor documentation
+	corrections
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: Use ACS utility
+	functions instead of hard-wired mapping
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js: Fetch ACS
+	stuff up front; enhance inter-object mapping per IDL; utility
+	functions
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml: Add axis_maps virtual field to
+	control set authority field
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Adding tables for
+	browse axis mapping
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: Use
+	MARC.FixedFields.setFixedField and validate by startwith search
+	against simple_normalized_heading
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js: Function to
+	find authority records matching a MARC field
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Authority.pm: 
+	adjust parameters and documentation note
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Authority.pm: 
+	use the new transformed-value starwith operator
+
+2011-05-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/c-apps/oils_sql.c: add a special startwith op for use
+	with transformed values (cannot do it another way currently)
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Authority.pm: 
+	Methods for searching by marcxml, constrained (or not) by control
+	set
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/800.fkeys.sql: Add an index using
+	authority.simple_normalize_heading for search
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Variant of
+	authority.normalize_heading which ignores thesaurus for comparing
+	slim auth records generated from bibs
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/openils/AuthorityControlSet.js: functions for
+	converting bibs to authorities based on ACS
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/AuthorityControlSet.js,
+	Open-ILS/web/js/dojo/openils/AuthorityControlSet.js,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: Move the
+	AuthorityControlSet module into openils -- it loads data from the
+	server
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/AuthorityControlSet.js: Utility methods
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/FixedFields.js,
+	Open-ILS/web/js/dojo/MARC/Record.js: Bug fixes; Add a method for
+	setting fixed fields; Set the Type FF when rtype=AUT
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/020.schema.functions.sql: Move the function to
+	before its first use
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/AuthorityControlSet.js: Only load
+	control sets once, set the default to the first (for now... YAOUS
+	later)
+
+2011-05-06  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/AuthorityControlSet.js: Add some logic
+	for fetching stored controlsets and switching amongst them
+
+2011-05-06  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/FixedFields.js,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: Initial move of
+	fixed-field manipulation out to the MARC Dojo module
+
+2011-05-06  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/javascript/backend/catalog/fixed_fields.js: bring
+	backend version up to date with the marc-editor embedded version
+
+2011-05-06  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/js/dojo/MARC/AuthorityControlSet.js: Stub of a new
+	Dojo module for manipulating ACSs
+
+2011-05-06  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/020.schema.functions.sql: Use unicode escape
+	instead of raw bytes, for ease of maintenance
+
+2011-04-21  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/020.schema.functions.sql: replace the perlish
+	authority.normalize_heading with a nearly-equiv plpgsql version that
+	understands control sets
+
+2011-04-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Fix XPath in tracing
+	links view; Replace authority overlay template building function
+	with a PLPGSQL + SQL/XML version that is control set aware
+
+2011-04-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Add See From
+	tracings to LoC authority control set
+
+2011-04-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Use control sets to
+	drive the tracing links view
+
+2011-04-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml: Add pcrud controller to control set
+	classes; realign IDL to match tables
+
+2011-04-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql: Trigger to map from
+	thesaurus to control set
+
+2011-04-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql: Actually use
+	authority.rec_descriptor, populating it with RecStat, ELvl and Subj
+	(aka Thesaurus)
+
+2011-04-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: figure out
+	non-authoritive fields to search based on the main_entry field on
+	subordinate fields
+
+2011-04-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Seed data for
+	Authority Control Sets -- LoC
+
+2011-04-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Reworking tables a
+	bit to include subfield list on controlling tags, specify hierarchy
+	of tags (main-entry pointers for non-main fields), and remove
+	unneeded name/description on bib fields
+
+2011-04-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/999.functions.global.sql: Fieldmapper additions
+	for Authority Control Set tables/classes
+
+2011-04-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/011.schema.authority.sql: Initial schema
+	changes for Authority Control Sets; some whitespace cleanup
+
+2011-07-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/js.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/awards.tt2: Wrapped
+	up Novelist integration support Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/chilifresh.tt2: Load
+	Chilifresh content after page load Execute the CF JS after other inline JS has run.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/extras.tt2: 
+	Removed duplicate 'extras' tab Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summaryplus.tt2: 
+	Avoid mixed content warnings on embedded content cafe Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summaryplus.tt2: 
+	Support for embedded Content Cafe on details page Added support for two new Apache environment variables
+	OILS_CONTENT_CAFE_USER and OILS_CONTENT_CAFE_PASS.  If set, a
+	Content Cafe pane will be loaded (via iframe) directly into a new
+	"Summaries & More" section on the record details page of the TT-pac,
+	when the section is expanded.  In addition to the C. Cafe content,
+	we also show the 520 bib summary in the same pane.  "Summaries & More" is only visible if either there is 520 data or
+	there is a suitable identifier (isbn or upc) and the content cafe
+	configuration is in place.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-08  Bill Erickson <berick at esilibrary.com>
+
+	* : commit df467c8cd0feeee08ce401544e60453899aa4ed7 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Wed Jul 6 16:34:41 2011 -0400
+
+2011-07-07  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	Ignore part-mapped copies for mr/title/volume holds Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/biblio.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/dbi
+	.pm: Add Class::DBI linking for monograph parts (and some for
+	conjoined items AKA peer bibs) Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	Correct a documentation comment Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Filter out copies that have a monograph part designator when
+	the hold is a non-P hold Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-28  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/holds.js,
+	Open-ILS/web/opac/skin/default/xml/common/holds.xml: Suggest parts
+	selection on failed parts-capable hold When a title has copy parts and the user does not select a specific
+	part for the hold, treat it as a regular title hold.  If the title
+	hold fails, suggest to the user that he/she should select a specific
+	part, since that opens the door to a new set of potentially
+	capturable copies, which allow the hold to be successfully placed.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-07  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0574.data.hold_pull_list_template.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxx.data.hold_pull_list_template.sql: 
+	Stamped DB version for hold_pull_list_template w/ parts Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-06  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/xxx.data.hold_pull_list_template.sql,
+	Open-ILS/web/opac/extras/circ/alt_holds_print.html,
+	Open-ILS/web/opac/extras/circ/alt_holds_print.js: Add "parts" to
+	Print Full Pull List and Print Full Pull List (Alternate strategy) Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-07  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0573.schema.staff_search_find_no_copies
+	.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.staff_search_find_no_copies.sql: 
+	Stamping upgrade version number for staff_search_find_no_copies
+	branch Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.staff_search_find_no_copies.sql: 
+	Unwrapped upgrade script Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-06  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/300.schema.staged_search.sql: Allow staff
+	search to find bibs sans copies AKA, no call number OR no call numbers with copies Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-17  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: in unified
+	vol/copy editor disallow editing of item attributes when no copies
+	except via templates Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-07-07  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 6227dcdcd4cf3be18579b9239857c8c3f3ae0e11 Merge: b17e3b1
+	2fc6c99 Author: Bill Erickson <berick at esilibrary.com> Date:   Wed
+	Jul 6 15:21:58 2011 -0400
+
+2011-07-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0572.schema.vandelay-record-matching-an
+	d-quality.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.vandelay-record-matching-and-quali
+	ty.sql: Stamped DB version Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-07-06  Bill Erickson <berick at squeeze.localnet>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/800.fkeys.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.vandelay-record-matching-and-quali
+	ty.sql: Seed data and schema cleanup for merge  * Updated A/T event-def ID in seed data to match master  * Move schema elements into the correct order in the baseline files
+	 (mike) Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-05-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: Logic
+	error fixes in Vandelay * When counting import failures, also count records that have no
+	import items attached * Fixed problem w/ not setting import time/as on newly imported
+	records Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-05-31  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0526.schema.upgrade-dep-tracking.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.vandelay-record-matching-and-quali
+	ty.sql, Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: Repaired typo
+	on schema and upgrade SQL ARRAY_ACUM is not a defined function.  Per Dan Scott, replaced with
+	ARRAY_AGG instead of the correctly spelled ARRAY_ACCUM, since we'll
+	be using that function in place of ARRAY_ACCUM going forward.  Thanks, Dan.  Minor syntax/cleanup repairs Remove tmp seed data file.  T'was replaced with upgrade script Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-05-26  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.vandelay-record-matching-and-quali
+	ty.sql: Correct regression that was held over due to massive moving
+	of functions upgrade script cleanup Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-26  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: seed data for
+	vandlelay export templates
+
+2011-05-26  berick <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.vandelay-record-matching-and-quali
+	ty.sql: Initial upgrade script for vandelay improvements TODO:     * Set up the ALTER TABLE statements     * Further review     * Testing
+
+2011-05-24  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/vandelay/inc/queue.tt2: repair
+	selector column width (move to width attr) to free up space in queue
+	display
+
+2011-05-24  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: disable sorting
+	on selector column in queue grid
+
+2011-05-23  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: avoid pile-up of
+	dojo-attached event handlers for queue upload inputs
+
+2011-05-23  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: set
+	imported_as / import_time on import items after successful import
+
+2011-05-23  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: Yet more Vandelay
+	fixes * Remove the deprecated .nomatch API call.  no-match is now a
+	runtime option * Re-fetch queued record after auto-import to avoid clobbering
+	imported_as as set by the DB during auto import
+
+2011-05-21  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: Spacing
+	and code comments to keep future-miker from becoming confused again
+	by the lack thereof Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-20  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2: Show the "match score," a hopefully clearer term for match
+	point quality, in the expression tree UI Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: Add
+	items-imported to VL queue summary Added total_items_imported value to queue summary API call.
+	Displaying value in vandelay queue summary area.
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Track import time and
+	target copy on import items Added import_time and imported_as columns to vandelay.import_item For you branch trackers: ALTER TABLE vandelay.import_item     ADD import_time TIMESTAMP WITH TIME ZONE; ALTER TABLE vandelay.import_item     ADD imported_as BIGINT REFERENCES     asset.copy (id) DEFERRABLE INITIALLY DEFERRED;
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2: more delineation of quality vs. score in match set config
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2: Match set point quality terminology change Change "Quality" in the context of a match set point to "Match Score
+	Value" to avoid overriding the term "quality".
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/vandelay/inc/upload.tt2: Return to
+	dijit.form.Button for VL upload form Otherwise the form is not correctly POSTed
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: show activity
+	dialog on vandelay item export
+
+2011-05-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/vandelay.dtd,
+	Open-ILS/web/templates/default/vandelay/inc/upload.tt2: More
+	Vandelay text and style cleanup * More consistent use of the word "match" * Make upload input more obvious w/ a border * Move some strings into DTD
+
+2011-05-19  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: 
+	Flexible TCN match configuration If users do not want records with duplicate TCN values imported,
+	users should rely on match-sets to enforce this policy instead of a
+	hard-coded duplicate tcn block.  This is done by automatically
+	calling the 'override' version of bib XML import.  The only
+	tcn-related failure that can now occur is if no free, non-dupe TCN
+	value can be extracted from the record.
+
+2011-05-19  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/opac/locale/en-US/vandelay.dtd: Vandelay import
+	improvements / bug fixes  * Allow for quality ratio control during import-on-1match  * Allow for 901c matching when no match-set is selected  * Tidy up some display strings  * Numerous small bug fixes
+
+2011-05-19  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Clean up match_set
+	data on delete Delete via cascade match_set_point's and match_set_quality entries
+	for a given match_set on delete
+
+2011-05-19  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/vandelay/inc/profiles.tt2: Display
+	org shortname in merge profile editor ...instead of org unit ID
+
+2011-05-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: return after
+	Email sent alert
+
+2011-05-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: This function
+	also gets used with authority queues, so don't assume import_items()
+
+2011-05-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: email template for
+	import items export
+
+2011-05-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: tweak formatting for
+	CSV export templates, and add headers
+
+2011-05-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: CSV template for
+	import items export
+
+2011-05-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: robustify
+	exportHandler, assume response of 1 is success for email methods,
+	and make import_item export methods atomic
+
+2011-05-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: toward Import Item
+	templates for export.  May want to consider providing IDL links for
+	some of these fields so we can flesh them in the environment
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml: Remove excised field from IDL
+
+2011-05-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: fix variable name
+	for Import Items Export
+
+2011-05-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: change the group
+	field for these templates, though they weren't breaking anything
+	before (these are called with fire_object_event and instead of
+	create_events_for_hook, if that makes a difference)
+
+2011-05-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: templates for exporting
+	authority queues, but needs testing.  blockers here include
+	importing authority records being broken, and possibly selection of
+	an authority queue to inspect being broken
+
+2011-05-12  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql: email template for
+	queued bib records
+
+2011-05-11  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: In the event that a
+	bib queue is not using a match_set, bail out of...  ... match_set_test_marcxml() early.  Needs tested.  Also may need
+	special check for non-null but empty match_sets.
+
+2011-05-11  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/renumber_me.sql,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: CSV template and
+	file saving worked out
+
+2011-05-11  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/upgrade/renumber_me.sql,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: first template and
+	supporting code, printing queued bib records
+
+2011-05-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: remove
+	.atomic. from these method names
+
+2011-05-10  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: add .atomic to
+	the end of the queue export API calls where it belongs
+
+2011-05-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: wire in
+	the event firing, though we still need the templates.  Put streaming
+	back in for the print/csv/email export methods, since we can
+	respond_complete for email and it to doesn't hurt the other two.
+
+2011-05-09  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: 
+	register the methods we're expecting for the print/csv/email exports
+	in Vandelay, and remove limit/offset options for such methods, and
+	expectation of streaming
+
+2011-05-06  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/import_errors.tt2: 
+	initial export drop-down for items UI
+
+2011-05-06  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: initial
+	export drop-down for queue UI
+
+2011-05-05  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: more
+	import error tracking and reporting bug fixes
+
+2011-05-05  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: run
+	zz_match_bibs_trigger before update/insert so NEW.quality:= will
+	work
+
+2011-05-05  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/matches.tt2,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: expose new
+	import options to queue interface importer dialog; mucho import bug
+	fixes in the middle layer code; expose queued rec quality in matches
+	interface
+
+2011-05-05  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/profiles.tt2: added edit
+	support for lwm_ratio on merge_profile; default ratio to that of the
+	merge profile if selected and if a ratio is set on the profile
+
+2011-05-05  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: added missing lwm_ratio field to
+	vandelay.merge_profile
+
+2011-05-05  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: record
+	import error handling improvements
+
+2011-05-04  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2: the vandelay match set editor now does quality metrics too
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/opac/locale/en-US/vandelay.dtd,
+	Open-ILS/web/templates/default/vandelay/inc/matches.tt2,
+	Open-ILS/web/templates/default/vandelay/inc/upload.tt2: Best Match
+	w/ quality ratio merging  * Mew Best Match option in merge/overlay  * support for upload time minimum record quality ratio  * We now /only/ create new records if no matches exist and the user    selected a match-free import  * Selecting a match-free import no longer trumps other merge
+	   imports.  They both work together now.  TODO: find out why queued record quality is not getting set at
+	queued rec creation time.
+
+2011-05-04  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2: working in quality metric editor
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: grab attr value from
+	vandelay.extract_rec_attrs hstore to compare to configured value
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: repaired copy/paste
+	error in match_bib_record
+
+2011-05-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Allow different
+	quality measures for different values on the same tag+sf/svf
+
+2011-05-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Save incumbent record
+	quality in bib_match.quality, incoming in queued_record.quality
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/vandelay.dtd,
+	Open-ILS/web/templates/default/vandelay/inc/upload.tt2: initial
+	support for selecting merge-on-best-match and setting minimum
+	quality ratio
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/matches.tt2: show match
+	score/quality in VL record match grid
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: added missing bib_match.match_score
+	field to IDL
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/matches.tt2: slight mods
+	to vandelay match set page to sync w/ updated bib/auth match table
+	layout
+
+2011-05-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql: Give authority
+	flattening the same treatment as biblio flattening
+
+2011-05-04  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Only ingest bibs and
+	items and run matches /before/ we import a bib
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/vandelay.dtd: more vandelay menubar
+	slimming
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: don't match on
+	deleted bib records
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: also remove matched_set from IDL
+
+2011-05-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Clean up uses of
+	vandelay.incoming_record_quality to provide all required params;
+	Remove matched_set on matches, just look at the match_set for the
+	queue of the vandelay record in question
+
+2011-05-03  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Add MARC::Charset
+	dance to the remaining plperlu function
+
+2011-05-03  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/upload.tt2: match set
+	selection support in vl uploage UI, part 1
+
+2011-05-03  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: delete
+	match_set_point's starting with leaf nodes to avoid foreign key
+	constraints on nodes w/ children
+
+2011-05-03  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/opac/locale/en-US/vandelay.dtd,
+	Open-ILS/web/templates/default/vandelay/inc/attrs.tt2,
+	Open-ILS/web/templates/default/vandelay/inc/toolbar.tt2,
+	Open-ILS/web/templates/default/vandelay/vandelay.tt2: create an
+	embedded view of the vandelay match-set admin ui inside of vandelay
+	(as one of the tabs)
+
+2011-05-03  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/import_errors.tt2,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: added support
+	for viewing all import-items related to a queue, with a filter to
+	limit to those that failed import
+
+2011-05-02  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: added view
+	for all failed item imports for a queue; next up is export options
+
+2011-05-02  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js: added support for
+	'limit records to those with any import errors' in vandelay queue
+	display
+
+2011-05-02  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: added
+	'with_import_error' option to queued record retrieval;  returns recs
+	with either a record or item import failure (or both)
+
+2011-05-02  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/vandelay.css,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/upload.tt2: Vandelay
+	file upload page cleanup  * Separate data configuration parameters from import actions  * Since import item profile is linked to queue, show the profile
+	    for the selected queue and dissallow changing the profile for
+	    existing queues in the UI (which has no effect)
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/vandelay.css,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/opac/locale/en-US/vandelay.dtd,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: added new
+	stub actions for limit-to-import-errors and show all item import
+	errors; displaying new summary info; much rearrangement to bettet
+	fit the UI pieces
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: add
+	error and item import/error summary info to queue summary api call
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/vandelay/inc/queue.tt2: No longer
+	limit to non-imported items by default in queue display
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js: hide item import
+	error grid when not in use misc. bug fixes
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/vandelay.css,
+	Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/import_errors.tt2: show
+	rec summary and import failure reason when appropriate
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/import_errors.tt2,
+	Open-ILS/web/templates/default/vandelay/vandelay.tt2: show item
+	import error counts and rec import error as link to error page;
+	initial error page
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/vandelay/vandelay.js,
+	Open-ILS/web/templates/default/vandelay/inc/queue.tt2: record / item
+	import failures summar links
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: added virtual field for import_items
+	to queued record
+
+2011-04-25  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: added
+	option to flesh import items on queued record retrieval
+
+2011-04-23  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: Make
+	sort order of imported item retrieval stable
+
+2011-04-22  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: added
+	api call open-ils.vandelay.import_item.queue.retrieve for fetching
+	import-items by queue, w/ optional has-import-failure filter
+
+2011-04-22  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: added
+	with_rec_import_error and with_item_import_error filters to
+	records-by-queue retrieval
+
+2011-04-22  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: rec
+	import bug error capturing bug fixes
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: remove unused
+	match_attr and actually capture eg_record into eg_id
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Secondary sort by
+	quality ratio (higher means incoming is more "good" than existing)
+	instead of simple incoming quality, which is a no-op (all the same)
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: functions for
+	performing queue-wide vandelay.auto_overlay_bib_record_with_best
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: match_score column
+	for recording matchiness; functions for auto-overlay based on
+	"bestness"; low-water-mark boundary for best-auto-overlay
+
+2011-04-22  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Bugfix for negative
+	matches
+
+2011-04-22  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js: some
+	changes in the UI to reflect DB side changes Negation and quality are now ignored for operator nodes, and are not
+	settable in the UI.  Also in the UI, you can no longer replace the root node of the tree
+	with a non-op node, meaning the root of a tree is always AND or OR.  This is due to some bug that hangs the UI now when you try to save a
+	single-non-op-node tree, and it's not worth debugging: just remove
+	the feature.
+
+2011-04-22  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Replace
+	vandelay.match_bib_record() with the new tree-y version
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: We don't have a
+	matched_attr column anymore, because we're using the fancy
+	expression tree, so test for 901c match directly
+
+2011-04-22  berick <berick at commidore64.esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: initial cut of
+	capturing bib/auth import errors
+
+2011-04-21  berick <berick at commidore64.esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: initial
+	item-import-failure reporting;  needs testing
+
+2011-04-21  berick <berick at commidore64.esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: previous cast
+	solution didn't work.  casting inline instead
+
+2011-04-21  berick <berick at commidore64.esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql: repaired some
+	thinko's in vandelay.match_bib_record stored proc
+
+2011-04-21  berick <berick at commidore64.esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml: cleaned out some non-existent fields
+	from vandelay classes
+
+2011-04-18  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: Working
+	ML method to update a tree
+
+2011-04-18  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2: Terminology change, more consitent with existing crad editor
+
+2011-04-18  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js: 
+	make the "Your Expression" preview more accurate by showing "NOT (a OR b OR c)" instead of "(a NOR b NOR c)".  This really only matters in the case of a single clause inside the
+	negated expression: Now such a thing shows up as "NOT (a)" versus "(a)"
+
+2011-04-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Admin -> Server Administration -> Import Match Sets That's where you'll find the interface for the match set expression
+	editor in the staff client.
+
+2011-04-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/conify/global/vandelay/match_set.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set.tt2
+	,
+	Open-ILS/web/templates/default/conify/global/vandelay/match_set_tre
+	e.tt2, Open-ILS/web/templates/default/vandelay/match_set.tt2,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: move
+	parts to conify namespace
+
+2011-04-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/dojo/openils/vandelay/TreeStoreModel.js,
+	Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: UI
+	perfection. it previews. it saves...  (or if it would if the ML method were done, but it will be easy now) I just need to move things to the conify path and add staff client
+	menu entries
+
+2011-04-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js: Match Set Tree
+	editor improvements/cleanup You can now replace the root node of the tree with anything, and the children will be automatically deleted.  This makes it
+	easier to create a single-node tree with no operators, if the user
+	should so desire.  comment cleanup, etc
+
+2011-04-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: make
+	sure user can only add reasonbly valid match points to the tree
+
+2011-04-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/dojo/openils/vandelay/TreeStoreModel.js,
+	Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: 1) implemented working replace mode 2) autocreate new tree on launch
+	if needed
+
+2011-04-14  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/dojo/openils/vandelay/TreeStoreModel.js,
+	Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: lots of
+	things here, but nearly last big UI todo is...  to implement openils.vandelay.TreeDndSource._is_replaceable() and
+	then make the changes to itemCreator
+
+2011-04-14  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: Ability
+	to delete nodes from working tree. Show metadata about match_set.
+
+2011-04-13  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoGrid.js,
+	Open-ILS/web/templates/default/vandelay/match_set.tt2,
+	Open-ILS/web/templates/default/vandelay/match_set_tree.tt2: Add an
+	autogrid-based interface for CRUD ops on vms objects, with links to
+	the tree editor
+
+2011-04-12  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/000.functions.general.sql,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Corrected merge from
+	trunk
+
+2011-04-08  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js,
+	Open-ILS/web/js/dojo/openils/vandelay/TreeDndSource.js,
+	Open-ILS/web/js/dojo/openils/vandelay/TreeStoreModel.js,
+	Open-ILS/web/js/dojo/openils/vandelay/nls/match_set.js,
+	Open-ILS/web/js/ui/default/vandelay/match_set.js,
+	Open-ILS/web/templates/default/vandelay/match_set.tt2: Initial vmsp
+	tree editor __ notes __ now we can retrieve a tree from the server and use it as the basis
+	of our dijit.Tree widget. Still work to be done. Can't save anything
+	yet.  Note to self: borrow dojo dnd's "copy" operation (as opposed to
+	move) to mean replacing a node in the tree, rather than adding to
+	the tree.  Re the permissions I changed, actual users of Evergreen hate having
+	as much granularity as there was before, and it just confuses people
+	trying to figure out what perms to give to whom.  Note to self 2: add ADMIN_IMPORT_MATCH_SET to ppl Usability 1) the tree editor will only let bool_op nodes have children 2) you can't put the unset "dummy" node from the leftside onto the
+	tree incidentally, gave fm objects a toString method that identifies
+	their classname hint, as an aid to debugging in general
+
+2011-03-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql: Structure match set
+	points as a tree
+
+2011-03-14  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Protect bib matching
+	from 901$c which has no corresponding incumbent record; also, boost
+	the quality of an exact match
+
+2011-03-14  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: SQL schema cleanup
+
+2011-03-14  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Add table and columns
+	for tracking current import/overlay errors per object
+
+2011-03-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql: Mostly, new function(s)
+	for bib matching based on SVF and tag+subfield; also, goodly amounts
+	of moving things around
+
+2011-03-11  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/examples/fm_IDL.xml: Teach fieldmapper about the new
+	vandelay classes
+
+2011-03-10  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql: moving functions around;
+	tables for configuring match points and quality metrics
+
+2011-06-16  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: Delete
+	protection - Ensure you can touch group Same protection editing a user seems to get: If you don't have the
+	right group_application.user perm, reject Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-07-06  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b17e3b14d28839739764ce4c29bd3bec01f0fc3c Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Thu Jun 16 17:03:36 2011 -0400
+
+2011-07-05  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Can't use 0 in true/false, use defined instead This allows for setting renewals/grace period to 0 by force Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-07-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5c02c79bba48a5e876b088eadf9bc4201a353b81 Merge: b519857
+	47ab015 Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Jul
+	5 21:09:37 2011 -0400
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.xul,
+	Open-ILS/xul/staff_client/server/circ/copy_status_overlay.xul: 
+	Attempt at providing a per bib invocation of the unified vol/copy
+	editor from Item Status, but it's very capable of exercising the
+	bugs referenced below: https://bugs.launchpad.net/evergreen/+bug/787561
+	https://bugs.launchpad.net/evergreen/+bug/787563 Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-07-05  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 47ab015a78b94d7e9e530747729825302fbaa016 Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Sat Jul 2 18:50:27 2011 -0400
+
+2011-07-05  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/templates/password-reset/request-form.tt2,
+	Open-ILS/src/templates/password-reset/reset-form.tt2: LP805971:
+	Specify UTF8 encoding in password reset templates As reported by Liam Whalen in Launchpad bug 805971: "The file
+	/openils/var/template/password-reset/reset-form.tt2 does not display
+	utf-8 characters.  I modified it to include '<meta
+	http-equiv="Content-Type" content="text/html; charset=UTF-8" />'
+	inside the <head> tag, and the fr-CA version of the page now
+	displays correctly." I duplicated the problem in Firefox 5 and confirmed that the
+	addition of the META tag corrects the problem.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-07-04  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 874a4f15e83418774623109e520b712c405ae373 Merge: 328c8b2
+	52402b4 Author: Mike Rylander <mrylander at gmail.com> Date:   Mon Jul
+	4 20:04:29 2011 -0400
+
+2011-07-01  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0571.schema.facet_normalizer.sql: 
+	Normalize facet values Spotted by Lebbeous Fogle-Weekley, facet values were not being
+	normalized.  This is due to changes in how facets are stored in
+	2.1+.  This alternate implementation mirrors the way search_field
+	index definitions work, which is a bit cleaner than inserting
+	normalization into the field extraction process.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-07-01  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0570.schema.fix-authsort.sql,
+	Open-ILS/src/sql/Pg/upgrade/0yyy.schema.fix-authsort.sql: Stampping
+	upgrade for authorsort fix from Lebbeous Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-30  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0yyy.schema.fix-authsort.sql: Fix the
+	SVF authorsort field (metabib.record_attr->'authorsort') It's important not to include things like $0 that we wouldn't want
+	in there.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-29  Jason Stephenson <jstephenson at mvlc.org>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Transaction/Checkout.pm: Use
+	open-ils.circ.checkout.full in SIP2.  Change the SIP2 checkout code to use a single call to open-ils.
+	circ.checkout.full instead of doing the whole checkout.permit
+	checkout dance.  Further simplify the checkout logic in
+	O::SIP::Transaction::Checkout.  Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
+	Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-30  Dan Scott <dan at coffeecode.net>
+
+	* : commit 4fc8fa24f1b6eb67a8aa8adec46d5570f8589d80 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Thu Jun 30 13:57:59 2011 -0400
+
+2011-06-14  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: when using
+	params.data keys as print macros, render bare numbers correctly, and
+	treat nulls as empty strings Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-13  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/util/list.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief_overlay.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.xul: add Print
+	button and associated template for Holdings Maintenance wire up List
+	  Actions for Holdings Maintenance * give List Actions support for nested rows in trees   * give util.list.print support for nested rows in trees   * we can leverage bib_brief_overlay to populate params.data for
+	  printing instead of fleshing out DOM Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-30  Dan Scott <dan at coffeecode.net>
+
+	* : commit 1feb47d85f731af3bf591268aabda0b2f807872e Author: Dan
+	Scott <dan at coffeecode.net> Date:   Thu Jun 30 12:44:57 2011 -0400
+
+2011-06-09  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: Hold
+	Notes column New column in holds list UIs that allows staff to see at a glance
+	the (initial) text content of attached hold notes.  In some cases, this
+	helps avoid the need to open the dedicated notes UI.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-29  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.xul,
+	Open-ILS/xul/staff_client/server/cat/copy_buckets.js,
+	Open-ILS/xul/staff_client/server/cat/copy_buckets.xul,
+	Open-ILS/xul/staff_client/server/cat/copy_buckets_overlay.xul,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.xul,
+	Open-ILS/xul/staff_client/server/circ/copy_status_overlay.xul,
+	Open-ILS/xul/staff_client/server/locale/en-US/patron.properties,
+	Open-ILS/xul/staff_client/server/patron/holds.js,
+	Open-ILS/xul/staff_client/server/patron/place_hold.js,
+	Open-ILS/xul/staff_client/server/patron/place_hold.xul: Staff UI for
+	batch holds on items.  "Request Item" action in Holdings Maintenance, Item Status, and Copy
+	Buckets is the entry-point.  Works on selected items in the first
+	two interfaces and all items in the bucket for the latter.  UI
+	allows you to place Copy type, Recall type, or Force type holds.  It
+	reports the # of successes and breaks down the failures by failure
+	event.  You can retry failures (optionally changing some of the
+	request parameters like Pickup Library) or "override" them.
+	Clicking the hyperlink for a set of failures will show the items
+	involved in a new Item Status tab.  More technical blurbs from squashed commits:   * "open-ils.circ.holds.test_and_create.batch" Takes an argument
+	  hash and a list of targets.  All the holds created will be
+	  identical except for the targets.  * retrieve and display Recall and Force holds like Copy holds   * give the Item Status UI an inefficient way to handle being
+	  passed copy id's (via xulG) in addition to barcodes * wire-up item hold request ui   * place hold UI Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* : Merge remote-tracking branch
+	'remotes/working/user/dbs/ttopac-kill-dont-hide' into
+	dbs/template-toolkit-integration-on-master
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2: Don't
+	include non-existent elements in search results It does not make sense to clutter HTML output with table rows that
+	are destined to remain hidden and empty of any data; therefore,
+	instead of setting the class to "hide_me" when there is no value to
+	display, just do not display the row at all.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* : commit b6b49024f57a19a84e62d6b1730ba5d467340a4f Merge: 2477dcc
+	c9801ec Author: Dan Scott <dan at coffeecode.net> Date:   Wed Jun 29
+	14:44:43 2011 -0400
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* : commit f98f6d72d0ad2d8bfcb30492df55bff738f9cac1 Author: Rick
+	Scott <rick at shadowspar.dyndns.org> Date:   Wed Jun 29 14:31:28 2011
+	-0400
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/MANIFEST,
+	Open-ILS/src/perlmods/lib/Template/Plugin/ResolverResolver.pm,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: Merge in
+	the TT Resolver plugin code Add the plugin to the MANIFEST to ensure that it gets installed
+	appropriately, and pull in the appropriate changes to the record
+	summary and search results pages.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Art
+	Rhyno <artrhyno at uwindsor.ca>
+
+2011-06-29  Bill Erickson <berick at esilibrary.com>
+
+	* : commit be32ff5da0fbcb5e84a357e7cdd93e8eb699f2a2 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Wed Jun 29 13:05:43 2011 -0400
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* : commit b13ca3e8e572d893e954d308a9181a32a78e7eba Merge: 80797f7
+	2cc3997 Author: Dan Scott <dan at coffeecode.net> Date:   Wed Jun 29
+	09:55:00 2011 -0400
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* : Merge remote-tracking branch
+	'remotes/working/user/dbs/ttopac-speech-input' into
+	dbs/template-toolkit-integration
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* : Merge remote-tracking branch
+	'remotes/working/user/dbs/ttopac-display-uris-and-cps' into
+	dbs/template-toolkit-integration
+
+2011-06-29  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	Don't display located URIs in record details copy table The more correct approach would be to modify the JSON query to
+	exclude copies from volumes where label = '##URI##', or to cut over
+	to the in-db unapi-based xml_holdings + acp approach - but for now
+	this is a quick and dirty fix that can't possibly hurt.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-28  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: Improve
+	copy display in search results Even though we were trying to root our findnodes() call at a
+	specific point in the DOM, the XPath was retrieving all volume
+	elements in the entire DOM and we were therefore getting duplicate
+	items listed in the search results. Accordingly, use the volume ID
+	to root the search to the specific volume.  Also, offer designers a bit more of an opportunity to style the
+	holdings by placing them in a table as well. Bonus points for using
+	thead/th, eh? Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-28  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/config.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/refworks.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2: Add RefWorks export
+	support for a record details page This marks the addition of a config.tt2 file in parts that can be a
+	consolidation point for skin-specific settings, such as enabling
+	particular behaviour, setting proxy information, specific URLs, etc.  RefWorks support is currently driven by the marctxt format in
+	supercat; TBD if we can easily point at an in-db unapi variation of
+	this. Also, yet to be done is addition of RefWorks export for lists
+	and search results.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Dan
+	Scott <dan at coffeecode.net>
+
+2011-06-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0569.schema.unapi-auri-fix.sql: Correct
+	copy-paste-o spotted by Dan Scott Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-28  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2: Take
+	advantage of Wekbit speech input The x-webkit-speech attribute enables speech input on current
+	versions of Chrome. It's a frill, and I'm not sure we really want
+	entire libraries of patrons mumbling to themselves more than we
+	already have, but it's a low-cost frill so let's take advantage of
+	it.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Dan
+	Scott <dan at coffeecode.net>
+
+2011-06-28  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	Display located URIs in record details page We can reuse the work put into misc_util.tt2 to generate args.uris
+	in the display within the record details page. In the absence of
+	good design, we add a basic class and matching CSS to style.css in
+	the hopes that a design-oriented person can come along behind us and
+	make the URIs stand out appropriately.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Dan
+	Scott <dan at coffeecode.net>
+
+2011-06-28  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: Display
+	multiple copies and URIs per record in search results By building up a list of hashes in args.holding instead of a single
+	result, we can display multiple copies in search results.  Similarly, adding args.uri to misc_util.tt2 gives us the list of
+	located URIs to display in search results. Note that the XPath for
+	holdings_xml in in-db unapi will change slightly.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Dan
+	Scott <dan at coffeecode.net>
+
+2011-06-28  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/acq/common/li_table.tt2: Michael
+	Peters provided a patch to add some missing labels...  ... to a key acquisitions interface.  It works.  Also fixed some
+	unclosed tags while I was at it.  Wasn't sure whether to copy and paste Michael's sign-off or what,
+	but here's the link to his original patch for purists:
+
+	https://launchpadlibrarian.net/74191964/0001-LP802578-Acquisitions-Batch-copy-update-missing-head.patchSigned-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-24  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/js/result_common.js: Fix broken
+	images for items without ISBNs in search results The search results code happily sets the src attribute of the cover
+	image to an empty string (as returned by cleanISBN()) if currentISBN
+	has not been defined (which is generally the case if an item doesn't
+	have an ISBN, such as a DVD or a thesis or an old book).  Protect against the empty string and set the src attribute to
+	'/opac/images/blank.png' to avoid broken image indicators in search
+	results.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Mike
+	Rylander <mrylander at gmail.com>
+
+2011-06-28  evergreen <evergreen at squeeze.debian>
+
+	* : commit 08b13c6648eb9316baaeb84c5b2bfcaa39e2f72a Merge: a73fa06
+	b365101 Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Jun
+	28 10:57:42 2011 -0400
+
+2011-06-28  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/TagURI.pm: Add a method to
+	generate a URI from extracted or supplied parts (both class and
+	object method) Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-16  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_editor.xul: batch menus
+	for Volume Edit refactoring menu generators for CN classes and
+	affixes description of Auto-Merge checkbox in Volume Edit Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-27  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties,
+	Open-ILS/xul/staff_client/server/patron/holds.js: Saner behavior for
+	Actions for Selected Holds -> Transfer to Marked Title * Transfer the actual selected title holds, rather than all title
+	holds for the bibs referenced by those selected.  * middle layer method for changing the target and resetting
+	specified holds * label change for clarity, Transfer All Title Holds Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-27  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/0568.schema.cache_visibility_speed_boos
+	t.sql: Cleanup of missed commit from the original topic branch Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-27  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f762b75ac430ed70365ebc0385d2c9d0da04ab26 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Mon Jun 27 18:47:14 2011
+	-0400
+
+2011-06-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.cache_visibility_speed_boost.sql: 
+	Unwrapped upgrade script Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-21  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql: Attempt to speed up
+	cache visbility trigger With the old version merges were timing out.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/templates/default/conify/global/config/metabib_field.t
+	t2, Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Configuration interface for config.metabib_field table This interface enables admins to create and modify the entries used
+	for defining indexes, faceting, and eventually display.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Dan Scott <dscott at laurentian.ca>
+
+2011-06-27  evergreen <evergreen at squeeze.debian>
+
+	* : commit 38c0795a42c17d41657deccc8df93b562044ed17 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Mon Jun 27 14:18:39 2011 -0400
+
+2011-06-27  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 2cc3997a195b2e73cb98254f0528730c30a06115 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Mon Jun 27 14:18:39 2011 -0400
+
+2011-06-27  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0567.data.ou_setting_generate_overdue_o
+	n_lost.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.ou_setting_generate_overdue_o
+	n_lost.sql.sql: Upgrade stamping for "overdues fines on lost
+	checkin" merge Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-27  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.ou_setting_generate_overdue_o
+	n_lost.sql.sql: Unstamped upgrade script for
+	circ.lost.generate_overdue_on_checkin seed data Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-24  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Const.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Option to generate
+	lacking overdues on lost checkin New org unit setting "circ.lost.generate_overdue_on_checkin".  This org unit setting enables retroactive overdue fine generation
+	for lost item checkin.  When enabled, the system will generate
+	overdue fines starting from the date of the last created overdue
+	fine for the circulation and working its way up to the checkin time
+	or stopping at the max fine amount (consistent with regular overdue
+	fine generation).  This differs from the existing org unit setting
+	"circ.restore_overdue_on_lost_return", which only un-voids existing
+	overdue fines.  Consider an item whose due date is the 1st, that gets marked lost on
+	the 7th, then checked in on the 14th.  If set,
+	"circ.restore_overdue_on_lost_return" would un-void the fines
+	created up to the 7th and "circ.lost.generate_overdue_on_checkin"
+	would create new overdue fines from the 7th up to the 14th (or up to
+	the max fine amount).  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-27  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac-poc/base.tt2,
+	Open-ILS/web/templates/default/opac-poc/common.tt2,
+	Open-ILS/web/templates/default/opac-poc/home.tt2,
+	Open-ILS/web/templates/default/opac-poc/login.tt2,
+	Open-ILS/web/templates/default/opac-poc/marc_attrs.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/_links.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/bookbags.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/fines.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/update_email.tt2,
+	Open-ILS/web/templates/default/opac-poc/place_hold.tt2,
+	Open-ILS/web/templates/default/opac-poc/record.tt2,
+	Open-ILS/web/templates/default/opac-poc/results.tt2: The TT OPAC
+	proof of concept is dead code - remove it Leading up to the TT OPAC dev fest, some people were confused by the
+	opac-poc directory. It hasn't been touched since February 14th and
+	we can always retrieve the old code from history if absolutely
+	necessary.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Dan
+	Scott <dan at coffeecode.net>
+
+2011-06-24  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm: with scan
+	missing pieces, retarget affected holds prior to recirculating to
+	previous patron, lest the checkout reset the holds for us without
+	retargeting Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-22  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	retarget title holds after transfering to a new bib Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-25  Dan Scott <dan at coffeecode.net>
+
+	* README: Include Apache configuration instructions in README Borrowing heavily from the wiki for these instructions, this helps
+	round out the README. Still more to do.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-24  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/xul/staff_client/server/patron/search_result.js: Show
+	human label for Internet Access Level in Patron Search Looks like fm_columns uses a prefix of "au_" for the column name
+	defined in util.js. Therefore, au_net_access_level lets us define
+	the label to display in place of the integer value.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/patron/search_result.js: Specify
+	the display field for linked objects with fm_columns If a display field isn't specified, it defaults to the key field,
+	which is essentially the same as not fleshing the object in the
+	first place.  Let me know if fieldmapper has or gains a way of
+	specifying such "display" fields, and we can augment fm_columns to
+	use it as well.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-05-31  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/list.js: Let
+	fm_columns use cached data.hash objects for linked fields Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-06-24  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/Makefile.install, README: Support Fedora 15 as
+	a target in Makefile.install Add Fedora 15 to the Makefile.install as a simple clone of the
+	Fedora 14 target for now. Correct Makefile.install target names in
+	README, and point out that nothing special is required for Fedora 15
+	for PostgreSQL 9 support.  While we're in the README, rip out the Dojo toolkit install info as
+	packaged releases include Dojo now (we retain the developer
+	instructions for installing Dojo manually for git users, of course).  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f0b408bc6822b9b8be150c9af5947748edba06f2 Author: Jason
+	Stephenson <jstephenson at mvlc.org> Date:   Mon Jun 20 14:07:54 2011
+	-0400
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ad0bbbb835fb6185a8b76cc5ae38dd0ec7209cc3 Author: Ben Webb
+	<bjwebb67 at googlemail.com> Date:   Mon Jun 13 13:31:53 2011 +0100
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 581fec9d0dcb81e09a2923d8c540ea94fafc47e2 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Fri Jun 24 11:34:05 2011
+	-0400
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema.unAPI_XMLAGG_cleanup.sql: 
+	Upgrade script for the XMLAGG cleanup Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/990.schema.unapi.sql: Address LP#801129, in-db
+	unAPI failure Cleanup of improper use of XMLAGG in the unAPI stored procs first
+	identified by Bill Erickson in
+	https://bugs.launchpad.net/bugs/801129 Signed-off-by: Mike Rylander <mrylander at gmail.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-24  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0565.schema.action-trigger.event_defini
+	tion.hold-cancel-no-target-notification.sql: upgrade script for A/T
+	event def: Hold Cancelled (No Target) Email Notification Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-24  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0564.data.org-setting-cat.volume.delete
+	_on_empty.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.delete_empty_volume.sql: 
+	cat.volume.delete_on_empty org setting.  break up and wrap the
+	upgrade script Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.delete_empty_volume.sql: 
+	Sample hold cancelled with no target notice Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/BibCommon.pm: 
+	Cancel bib holds with bib is deleted And notify user via A/T Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-06  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm: 
+	Cancel volume/copy holds on delete Cancel all holds that directly target a copy or volume when the
+	copy/volume is being deleted.  Sends async message to A/T for each hold to create and run the
+	necessary events (e.g.  send cancellation notices).  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.data.delete_empty_volume.sql: 
+	unwrapped upgrade script for cat.volume.delete_on_empty Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties: 
+	Delete volume on last copy setting When the last copy for a volume is deleted, go ahead and delete the
+	volume when this new setting is activated.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-02  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm: 
+	Option to force-delete copies during volume delete Added a "force_delete_copies" option to
+	open-ils.cat.asset.volume.fleshed.batch.update* which forces
+	deletion of all copies attached to a volume if the volume is being
+	deleted.  There are still scenarios that will result in copies not
+	being deleted (e.g. copy is checked out), in which case the override
+	option will behave here the same way it behaves in
+	open-ils.cat.asset.copy.fleshed.batch.update* Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-24  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0563.data.collections_exempt_perm.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.collections_exempt_perm.sql: 
+	Stamp the upgrade with a version number Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.collections_exempt_perm.sql: 
+	Un-stamped upgrade script for collection exempt perm Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-03  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/web/js/ui/default/actor/user/register.js: Permission to
+	control patron-collections-exempt Adds a new permission 'UPDATE_PATRON_COLLECTIONS_EXEMPT' which
+	controls who can toggle the circ.collections.exempt user setting in
+	the patron registration interface.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-06-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-23  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 1dbba207ec03198615abeadc9237f5582cdfb811 Author: Jason
+	Stephenson <jstephenson at mvlc.org> Date:   Wed Jun 22 10:48:58 2011
+	-0400
+
+2011-06-22  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 9544ad05dc0d30ed5782b528fac3e2bdfa90e4dd Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Wed Jun 22 10:36:13 2011
+	-0400
+
+2011-06-21  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Serial.pm,
+	Open-ILS/web/opac/skin/default/js/rdetail.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/serial.properties,
+	Open-ILS/xul/staff_client/server/serial/sdist_editor.js,
+	Open-ILS/xul/staff_client/server/serial/ssub_editor.js: Further
+	clean-up of Serials interfaces When trying to come up with good tests, found a few bugs (imagine!).
+	Some have been nagging for a while now.  1) For 'MFHDDrawn' event, make sure it runs if deleting the last
+	serials data of any kind for that record (to unpopulate the menus
+	properly) 2) Make sure global mfhd member (g.mfhd) is cleared in the same case
+	(i.e. deleting the last serials data for that record) 3) Add a string to better indicate when no MFHD records are
+	available for 'Legacy Record Entry' drop-down 4) Convert submitted empty drop-down values to 'null' as needed in
+	distribution editor 5) Mark subscription 'start date' as a required field 6) Make serial virtual records better handle deleted 'legacy record
+	entries' attached to distributions, and also expose non-deleted
+	record entries even if in 'use_sdist_only' summary mode Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-06-17  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/serial/sdist_editor.js: Better
+	coordination of MFHD/SRE adding/deleting Adding or deleting MFHD records from the XUL menus requires
+	coordinating the OPAC display, the XUL menus, and the Serial Control
+	distribution editors.  The previous code frequently required some
+	non-obvious manual refreshing to make it work.  This commit keeps them in sync using custom events instead.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-06-21  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/t/14-OpenILS-Utils.t: Add unit tests for LP
+	800269 - holdings for captions only Running "prove -l lib" in Open-ILS/src/perlmods shows that the two
+	new unit tests pass, whereas they fail using the previously
+	installed version of MFHD.pm. Good evidence that the fix from
+	dbwells does indeed solve the reported bug.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-21  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD.pm: MFHD compressed
+	holdings short-circuit logic If you attempt to get compressed (or uncompressed) holdings from a
+	MFHD record with only a caption, the code should short-circuit and
+	return an empty list.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dan at coffeecode.net>
+
+2011-06-21  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0562.schema.copy_active_date.sql: 
+	Update serial.unit auditor table along w/ asset.copy change Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-21  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 4c21518b658e7c56b819acb78b626a239a13ca24 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Tue Jun 21 16:11:44 2011
+	-0400
+
+2011-06-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.active_date.sql: Unwrapped
+	upgrade script for active date Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-12  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/asset.pm
+	,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/serial.p
+	m, Open-ILS/src/perlmods/lib/OpenILS/Utils/PermitHold.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/099.matrix_weights.sql,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/210.schema.serials.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/web/conify/global/config/copy_status.html,
+	Open-ILS/web/js/dojo/openils/conify/nls/conify.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/craftsman/xml/rdetail/rdetail_cn_details.xml
+	, Open-ILS/web/opac/skin/default/js/copy_details.js,
+	Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml,
+	Open-ILS/web/templates/default/conify/global/config/circ_matrix_mat
+	chpoint.tt2, Open-ILS/xul/staff_client/server/cat/copy_editor.js,
+	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.js,
+	Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.xul,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: Active
+	date Record the date a copy first became "active" after creation in
+	active_date.  Offer Org Unit setting for using the active date for
+	age hold protection.  Any copy without an active_date, with age hold
+	    protect using it, will be protected until it has an active date.
+	Regardless of create_date.  Circ/Hold matrix can match on item age
+	based on active_date.  Active is defined as entering a status with copy_active set to true.
+	By default: Available Checked out Reshelving On holds shelf ILL Reserves On
+	reservation shelf Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-12  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm,
+	Open-ILS/web/opac/skin/default/js/result_common.js: Refactor cover
+	image fetching in OpenLibrary added content We were only trying to retrieve images from the items array in the
+	OpenLibrary response, but there are only items if the OpenLibrary
+	has online editions available - whereas there may be covers attached
+	to the metadata for the work. So now we make the metadata work
+	harder.  Also, cut down on broken images in search results by
+	short-circuiting if OpenLibrary doesn't have a matching record for a
+	given ISBN.  Thanks to Bill Erickson for pointing out that there were a lot of
+	blank images getting returned due to the items reliance.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm,
+	Open-ILS/web/opac/skin/default/js/result_common.js: Teach
+	result_common.js to OpenLibrary requests Now that the proxied OpenLibrary requests are working, teach
+	result_common.js to use them and get an advantage from being an
+	access-rights-authenticated IP address (if applicable).  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Support proxying bulk Read API requests for access rights Using IP-based access right determination runs into problems with a
+	pure JavaScript API, as users may be accessing the API from any
+	location in the world. Proxying the requests via the library system
+	server ensures that the access rights for users of those libraries
+	are properly displayed.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Return transparent images if no cover art is found For now the URL is hardcoded; later on we'll refactor
+	AddedContent.pm to give us access to more information about our
+	Apache environment to default to something much, much smarter.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Working TOC HTML and cover images from OpenLibrary Read API TOCs are now part of the "data" response in the Read API.  Covers are accessed with the "cover" key in the "items" objects.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Get OpenLibrary covers from any related items Cover requests for exact matches sometimes fail to produce results,
+	but covers from similar items (other editions of the same work) are
+	often available. Take that! Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Begin cutting AddedContent over to the OpenLibrary Read API Use the all-in-one Read API request to get results; this should cut
+	our requests in half and improve our caching results.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/js/result_common.js: Don't make
+	OpenLibrary requests without an ID It is rather silly to make requests if you have not pulled any IDs
+	out of the records to pass along to OpenLibrary, so do not do that.
+	Also refactor and add a bit more defensiveness.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/js/result_common.js,
+	Open-ILS/web/opac/skin/default/xml/result/result_table.xml: 
+	Implement OpenLibrary ebook availability via Ajax George Oates provided an OpenLibrary GIF to use for the links, and
+	we can drop the links right into the block of white space between
+	copy counts and bibliographic info.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-05-27  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/js/result_common.js: integrate the
+	OpenLibrary Read API into search results Still early days, but works based on the sample Read API output
+	provided by Mike for a single ISBN search.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-06-21  Mike Rylander <mrylander at gmail.com>
+
+	* : commit aa155d652e018084f5bc5369df86e46c3ea822a7 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Tue Jun 21 13:24:11 2011
+	-0400
+
+2011-06-21  Jason Etheridge <jason at esilibrary.com>
+
+	* : commit d7faf719729d2cc69d8d4e9af9cb5cdd31e3ba5f Author: Michael
+	Peters <mrpeters at library.in.gov> Date:   Tue Jun 21 11:57:39 2011
+	-0400
+
+2011-06-21  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0561.schema.tnf_index.sql: Reserve
+	0561 (used in 2.0) to avoid confusion -- part duex Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-21  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Reserve 0561 (used in
+	2.0) to avoid confusion Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-21  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 804ce3723c05cb44da0dc8fceef68138b709cf13 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Fri Jun 17 12:30:12 2011 -0400
+
+2011-06-20  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0559.schema.biblio.extract_located_uris
+	.sql: DROP biblio.reingest_uris() after use We will hopefully only need to reingest URIs in bulk once, and can
+	therefore DROP the biblio.reingest_uris() function after it has been
+	successfully invoked.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Galen
+	Charlton <gmc at esilibrary.com>
+
+2011-06-20  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0559.schema.biblio.extract_located_uris
+	.sql: Protect URI reingest from failure due to malformed XML In an ideal world, there would be no malformed XML. But our world is
+	the real world of libraries, and while the well_formed_xml()
+	protects against malformed XML in Evergreen 2.0 systems, in some
+	cases bad XML has been able to find its way into Evergreen systems
+	in the past.  A single biblio.record_entry row containing malformed XML in the
+	marc column will prevent the call to reingest URIs from succeeding.
+	By limiting the set of records to those with well-formed XML, we can
+	increase the chance of the URI reingest succeeding at the cost of
+	more processing time.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Galen
+	Charlton <gmc at esilibrary.com>
+
+2011-06-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 7ca0a42853740d4d531b87fb274089c1ecf163b1 Merge: 73533f9
+	4f51810 Author: Mike Rylander <mrylander at gmail.com> Date:   Sat Jun
+	18 21:39:15 2011 -0400
+
+2011-06-14  Thomas Berezansky <tsbere at mvlc.org>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Grace period is an interval. Convert to seconds.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-06-17  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0560.fix_opac_copy_vis_cache.sql: 
+	lp#788763 - final upgrade script Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-06-17  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/999.functions.global.sql: lp#788763 - fix
+	updating copy status, locations, and OU visibiilty Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-06-16  evergreen <evergreen at squeeze.debian>
+
+	* : commit 38332f0bbc18de90a3b83876a3249b3d3e4883bc Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Jun 16 11:50:16 2011
+	-0400
+
+2011-06-16  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/opac/skin/default/js/holds.js: Check if in staff
+	client when placing holds Staff may have valid reasons to use a non-opac-visible org unit.  So
+	before bailing on a hidden org unit, check if we are in the staff
+	client.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0559.schema.biblio.extract_located_uris
+	.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.biblio.extract_located_uris.sql: 
+	Move the user/dbs/lp797304_lp797307 upgrade script into place with a
+	number Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-16  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.biblio.extract_located_uris.sql: 
+	Merging branch user/dbs/lp797304_lp797307 Signed-off-by: Mike Rylander <mrylander at gmail.com> Cherry picking the following: commit 7be2a32620587af27de4316e42a308e913e9314c Author: Dan Scott
+	<dan at coffeecode.net> Date:   Tue Jun 14 22:35:26 2011 -0400     Add a stored procedure to reingest problematic URIs     Assuming that href = label in asset.uri is a red enough flag for
+	    the problem in LP 797307 where the perfectly good label was
+	    being thrown away, reingest the unique set of records connected with
+	    such asset.uri rows.      Signed-off-by: Dan Scott <dscott at laurentian.ca> commit 39fe0c4a8a3074ff4c1e427ad9f00a0760bac260 Author: Dan Scott
+	<dan at coffeecode.net> Date:   Tue Jun 14 21:54:51 2011 -0400     Add unwrapped upgrade script for biblio.extract_located_uris     See XXXX.biblio.extract_located_uris.sql for the upgrade script,
+	    waiting to be signed off and committed.      Signed-off-by: Dan Scott <dscott at laurentian.ca>  create mode 100644
+	 Open-ILS/src/sql/Pg/upgrade/XXXX.biblio.extract_located_uris.sql commit 7e6d2bfd7e9a5cbe57e4aacdf0b4b015a566883d Author: Dan Scott
+	<dan at coffeecode.net> Date:   Tue Jun 14 21:34:15 2011 -0400     Avoid duplicate row issues in biblio.extract_located_uris     As there is currently no unique constraint on the non-ID columns
+	    of asset.uri, ensure that we only select a single ID from the
+	    tables until we dedupe the tables. Use an ORDER BY to grab the
+	    matching row with the lowest ID so we can clear out the rows with
+	higher IDs.      Signed-off-by: Dan Scott <dscott at laurentian.ca> commit e79a805299ec734a29ee5bfa77dc74bc1fd208cd Author: Dan Scott
+	<dan at coffeecode.net> Date:   Tue Jun 14 14:02:49 2011 -0400     Fix LP 797304 and 797307 - asset.uri parsing bugs     Per 797304: one would expect asset.uri.label to be populated
+	    with the value of 856 $y, however, it was getting populated with
+	    856 $u - perhaps as a result of the ordering of array entries in
+	    XPATH() not matching the XPath expression. Instead of including 856
+	    $u in the XPath expression for uri_label, just assign its value to
+	    uri_label if uri_label is otherwise NULL.      Per 797307: biblio.extract_located_uris() tries to reuse an
+	    existing active asset.uri entry rather than create a new row;
+	    however, it does not handle the case where there is no public note
+	    aka "use restriction" and will end up creating a duplicate row every
+	    time the record is reingested. Teach it to handle NULL values
+	properly.      Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-15  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b42682021989dd67cfa5a4bfeb8ad7684bfbf2d1 Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Wed Jun 15 03:13:50 2011
+	-0400
+
+2011-06-14  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 0c2d1a7a9bbeaa368a431ffc94e63dbb9e36592c Merge: c1b1d40
+	9de353a Author: Dan Wells <dbw2 at calvin.edu> Date:   Tue Jun 14
+	09:38:23 2011 -0400
+
+2011-06-14  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 9de353a732864b56815dc255e99da33f08f904b9 Author: Dan
+	Wells <dbw2 at calvin.edu> Date:   Tue Jun 14 09:38:23 2011 -0400
+
+2011-06-13  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/extras/Makefile.install: Resolve Squeeze installation
+	problems with PostgreSQL 9.0 When you install OpenSRF on Debian Squeeze, one of the packages (apache2-prefork-dev) installs 8.4 versions of libpq5 and libpq-dev
+	as dependencies. These conflict with the 9.0 versions that are
+	required as dependencies for PostgreSQL 9.0 - so get them out of the
+	way, pin the 9.0 versions of the packages, and reinstall
+	apache2-prefork-dev.  We will probably need to do something similar for Lucid.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-13  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/serial/notes.xul: Trivial
+	aesthetic change: only one "close window" button for the window, rather than one per note.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+2011-06-13  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 400fa7e97d6fdf99175af39f8f769024f3871bf1 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Mon Jun 13 16:40:07
+	2011 -0400
+
+2011-06-13  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Serial.pm,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/serial.properties,
+	Open-ILS/xul/staff_client/server/serial/notes.xul: Serial note perms
+	and edit support This expands the interface to allow for editing notes on serials
+	objects.  At some point we will likely want to track edit dates as
+	well, but this gets the ball rolling.  Also renames some methods from 'create' to 'update' to match new
+	capabilities and make the overall API more consistent, and adds perm
+	checks based on related objects.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-06-13  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/examples/opensrf.xml.example: Set a more generous AC
+	timeout value A timeout value of 1 second is a bit too tight for many added
+	content providers; set the default to 30 seconds to avoid too many
+	artificial timeouts.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit a66e257f791c550a00f3b927c2d34abf34a920e7 Author: Dan
+	Wells <dbw2 at calvin.edu> Date:   Tue Jun 7 12:06:57 2011 -0400
+
+2011-06-13  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: 
+	clearer label for not charging last patron when marking an item
+	damaged Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-13  Galen Charlton <gmc at esilibrary.com>
+
+	* : updated favicon to match staff client logo Favicon created by Michael Peters <mrpeters at library.in.gov> Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-06-13  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0557.schema.in-db_unapi_copy_related_vi
+	sibility-1.sql,
+	Open-ILS/src/sql/Pg/upgrade/0558.schema.in-db_unapi_copy_related_vi
+	sibility-2.sql: Typo, we need commas Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-13  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0558.schema.in-db_unapi_copy_related_vi
+	sibility-2.sql: Thinko fix -- split upgrade script, forgot to inc
+	the version in the second Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 36b0a67a4520151082e72056893d92ad3bf797f1 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Mon Jun 13 10:38:29 2011
+	-0400
+
+2011-06-13  Jason Etheridge <jason at esilibrary.com>
+
+	* : commit 7aa41faefa305af9be76dcb1d72c951edfd774aa Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Mon Jun 13 10:33:49 2011
+	-0400
+
+2011-05-31  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/common/js/Cookies.js,
+	Open-ILS/web/reports/oils_rpt_common.xhtml,
+	Open-ILS/xul/staff_client/server/admin/cash_reports.xhtml,
+	Open-ILS/xul/staff_client/server/admin/copy_locations.xhtml,
+	Open-ILS/xul/staff_client/server/admin/hold_pull_list.xhtml,
+	Open-ILS/xul/staff_client/server/admin/hold_pull_list_classic.xhtml
+	, Open-ILS/xul/staff_client/server/admin/non_cat_types.xhtml,
+	Open-ILS/xul/staff_client/server/admin/stat_cat_editor.xhtml,
+	Open-ILS/xul/staff_client/server/patron/user_edit.xhtml: Remove all
+	references to Cookie(s).js and Cookies.js Dojo toolkit is the new Cookie manager, so any lingering references
+	to Cookie.js (a typo in any case) are no longer valid, and we no
+	longer need to ship Cookies.js with Evergreen.  Cookie.js typo was reported by Steven Chan in LP 790429 Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 00d0a00744d3ede693572acec2ef342cc299295a Merge: 9c760ed
+	ec98041 Author: Mike Rylander <mrylander at gmail.com> Date:   Mon Jun
+	13 10:17:08 2011 -0400
+
+2011-06-07  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/xml/result/result_table.xml: Use
+	the new status.opac_visible attribute in search summary Until we exposed the OPAC visibility of the status element as set in
+	config.copy_status, We previously had to hardcode the logic for
+	whether a given copy should be displayed based on its status. Now we
+	can simply use the status.opac_visible attribute to determine
+	visibility.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-07  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: Add
+	opac_visible attribute to copy and serial unit statuses config.copy_status defines an opac_visible column, but that
+	attribute was not being exposed in the holdings XML, so code that
+	displayed copies and serial units based on the holdings XML had to
+	hardcode the display based on the status ID or name instead of using
+	the configured setting.  To simplify display logic, teach holdings XML about the opac_visible
+	column and expose its value in the status element as a new
+	opac_visible attribute.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-06  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/xml/result/result_table.xml: Make
+	copy status visibility match default config.copy_status settings Previous version of this patch had hardcoded copy status settings to
+	0, 7, 12 to match the "Available" settings, rather than the OPAC
+	visibility settings available from config.copy_status for each
+	status.  Until config.copy_status.opac_visible translates into an
+	opac_visible attribute on the status element in the holdings XML,
+	this is probably the best we can do.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-05-30  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/opac/skin/default/xml/result/result_table.xml: Plug
+	the many OPAC visibility holes in search result item display Check volume and circ_lib and copy status OPAC visibility (and
+	deleted status in the case of volumes) in addition to the existing
+	copy and copy-location checks.  Worst hack is hard-coded copy status IDs of 0, 7, 12 - but this is
+	currently used throughout the code, so one more can't hurt that much (OWWW).  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-13  Dan Scott <dan at coffeecode.net>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Prevent uninit var warnings in QueryParser.pm $suffix_op and $prefix_op would not be defined if $suffix or $prefix
+	did not evaluate to true, leading to warnings about undefined
+	variables in open-ils.storage_stderr.log.  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-13  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/updates/check: Updater apparently reads extensionVersion Without it no updates are ever found. :( Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-11  Dan Scott <dan at coffeecode.net>
+
+	* : commit 3151bb5c5dc8e6512a9e8619f09a2bf5fc047717 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Sat Jun 11 07:23:45 2011 -0400
+
+2011-06-11  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/upgrade/0555.unnest_oils_xpath_table.sql,
+	Open-ILS/src/sql/Pg/upgrade/0556.unnest_biblio_extract_metabib_fiel
+	d_entry.sql: Update upgrade files that had conflicting numbers Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-11  Dan Scott <dan at coffeecode.net>
+
+	* : commit ba6ffe0fe4140cc6761f2a9fff65e38649b8925c Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Fri Jun 10 16:40:46 2011
+	-0400
+
+2011-03-29  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm, Open-ILS/xul/staff_client/server/patron/search_form.js: patch
+	from James Fournie re:
+	https://bugs.launchpad.net/evergreen/+bug/510959 for improved patron
+	opt-in Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	Showing hold/copy summary in details page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-10  Bill Erickson <berick at esilibrary.com>
+
+	* : commit b29048c055d68892414ece81623cc8302a36c0a1 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Fri Jun 10 14:21:50 2011
+	-0400
+
+2011-06-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: Pass ENV down to
+	template environment Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-10  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: Added Chilifresh secure
+	url to sample apache config
+
+2011-06-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/README: Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git training
+
+2011-06-08  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/patron/display.js: Replace
+	instance of location.href xulG.set_tab populates xulG properly in new URL, location.href does
+	not Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-07  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: Correct error
+	in call number owning library change Send IDs to the backend, not objects.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-10  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 7543140d57b955bdfb45f0bffa0fbe31d9a1e1da Merge: 888bcf0
+	305eef7 Author: Bill Erickson <berick at esilibrary.com> Date:   Fri
+	Jun 10 11:48:53 2011 -0400
+
+2011-06-10  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Mark invalid
+	home ous as such in patron editor Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-10  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Mark invalid
+	home ous as such in patron editor Signed-off-by: Thomas Berezansky <tsbere at mvlc.org>
+
+2011-06-10  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties: 
+	missing string for MFHD deletion Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/prefs_settings.tt2: added
+	notification of successful settings update to patron prefs page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: honor
+	hit count user pref on results page Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/prefs_settings.tt2: 
+	Initial support for updating user prefs Starting with hits-per-page and enable/disable circ/hold history Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-09  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 65e493c9bc74426131438323b47d1b111d3fa005 Merge: 7317039
+	000ddbb Author: Mike Rylander <mrylander at gmail.com> Date:   Thu Jun
+	9 14:07:11 2011 -0400
+
+2011-06-09  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: syntax error Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-09  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0549.data.transit-checkin-interval.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.transit-checkin-interval.sql: 
+	pin a version number Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/XXXX.data.transit-checkin-interval.sql: 
+	Unwrapped upgrade script for transit checkin interval setting/perm Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/extras/ils_events.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/xul/staff_client/server/circ/util.js: Transit minimum
+	checkin interval setting OK, here's the situation, a copy went away on a week's vacation...  Support for preventing checkin of a copy that was put into transit
+	"too recently".  The scenario that prompted the development is this: Copy at Branch A is checked in and put into transit to fill a hold
+	at Branch B.  The copy is then accidentally checked in at Branch B.
+	(Imagine a crate of items with a superbarcode gets checked in at
+	Branch B and the copy in question was presumed to be in that crate).
+	This puts the item on the holds shelf (assuming a hold transit) at
+	Branch B and notifies the patrom the item is ready for pickup.
+	However, the copy is still just embarking from Branch A.  This new setting allows libraries to configure a minimum transit
+	time.  If a copy is put into transit and checked in during the
+	configured interval, the checkin will return an (overridable) event
+	that prevents checkin.  If the setting is not configured, this has
+	no affect on checkin.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/prefs_settings.tt2: 
+	added read support for holds history setting
+
+2011-06-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/prefs_settings.tt2: Read
+	support for some user settings in setting page Search hits per page and circ history opt-in displaying TODO: add more settings TODO: implement POST/write for updating
+	values Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	Extend hold shelf expire date beyond closed dates If the shelf_expire_time on a hold would land on a closed date for
+	the pickup library, push the expire time out to just beyond the
+	close date range, similar to the circulation due date overlap logic.  In the current iteration, the time component of the date is pushed
+	out to the end of the day (23:59:59).  If this is not generally the
+	desired behavior, an org setting could be added to bypass this step
+	so that the time matches "now" (i.e. capture time) instead.  Signed-off-by: Bill Erickson <berick at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-06-08  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2: Select all
+	fines for CC payment by default
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_browser.js: honor
+	ui.unified_volume_copy_editor setting with Add Volumes in Holdings
+	Maintenance Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: make
+	unified vol/copy editor honor required stat cats Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-05-31  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: Add
+	i18n support for "Retrieving title..." tab name Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-05-27  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	Integration of unified vol/copy editor and fast  add * Wire up unified vol/copy editor for marc editor fast item add
+	function * Robustify callnumber vivication for unified vol/copy editor from
+	marc editor * Load opac after unified vol/copy with marc editor fast add.  * Various bug fixes Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-07  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/002.functions.aggregate.sql,
+	Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/2.0-2.1-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/300.schema.staged_search.sql,
+	Open-ILS/src/sql/Pg/pgmemcache-ou_tree_traversal_cache.sql,
+	Open-ILS/src/sql/Pg/upgrade/0549.unnest_oils_xpath_table.sql,
+	Open-ILS/src/sql/Pg/upgrade/0550.unnest_biblio_extract_metabib_fiel
+	d_entry.sql,
+	Open-ILS/src/sql/Pg/upgrade/0551.unnest_metabib_remap_metarecord_fo
+	r_bib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0552.unnest_biblio_map_authority_linkin
+	g.sql,
+	Open-ILS/src/sql/Pg/upgrade/0553.unnest_action_hold_request_permit_
+	test.sql,
+	Open-ILS/src/sql/Pg/upgrade/0554.unnest_search_query_parser_fts.sql: 
+	Use native unnest() db function instead of explode_array() Per LP 789747, the custom explode_array() database function was
+	found to generate significantly slower results for searches than
+	using the native (and equivalent) unnest() array function. Given
+	that unnest() has been part of PostgreSQL since 8.4 and Evergreen
+	2.0 requires a minimum of PostgreSQL 8.4, this patch removes the
+	definition of the explode_array() functions and replaces its usage
+	with unnest().  Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-06-03  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Prevent future
+	dates of birth in patron editor The patron editor form allowed staff to enter a date of birth that
+	takes place in the future. While it is theoretically conceivable
+	(hah) that a library might register patrons that have yet to be
+	born, it is unlikely enough that we will not even assign this
+	behavior to an org-unit setting, but we will take the bold move of
+	using a regular expression to prevent a future dates of birth at
+	all.  Note that if a library system travels into the past, this will cause
+	all sorts of problems in the patron editor interface (not to mention
+	overdues). Please do not mix Evergreen and time travel.  Signed-off-by: Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+	Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-02  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: Fix false MFHD
+	editing cues (LP #791974) The in-DB serial holdings use the same general display code as the
+	MFHD records, but were falsely triggering MFHD administration
+	widgets when in fact no MFHD record exists.  These holdings were
+	already being marked, so this fix honors that mark.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dan at coffeecode.net>
+
+2011-06-02  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: Tweak MFHD scoping Three changes: 1) Add a closure for 'entryNum' value (currently used for some
+	display placement and menu-entry correlation) 2) Remove depth-climb to simplify code and better approximate copy
+	scoping 3) Move 'here' assignment out of the foreach Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dan at coffeecode.net>
+
+2011-06-06  Dan Scott <dan at coffeecode.net>
+
+	* : commit 19685ce120646a4eec75322f387d93d7d64a4e38 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Mon Jun 6 12:11:58 2011 -0400
+
+2011-06-06  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: fix
+	View Holds by preventing an empty IN list with cstore, and stubbing
+	out part_holds Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Jason Stephenson <jstephenson at mvlc.org>
+
+2011-06-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/alternate_copy_summary.js,
+	Open-ILS/xul/staff_client/server/circ/util.js: for the Circulate as
+	Type column in xul lists, display the actual citm value instead of
+	the code Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-06-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js: Fix
+	Circulate as Type in the item editor.  The citm retrieval method was changed to use open-ils.fielder, which
+	doesn't return actual fieldmapper objects, so when data.js went to
+	convert the retrieved list to a hash, it broke.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-06-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/functional.js: Allow
+	util.functional.convert_object_list_to_hash to handle more than
+	fieldmapper-like objects Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-06-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit dfbf4956fc9ad4c19cda234f4468f23788cf862d Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Fri Jun 3 16:35:25 2011
+	-0400
+
+2011-06-03  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: tweak
+	function name Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-06-03  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: Refactor the
+	"show copy notes button" functionality Collapse the duplicated code for showing / hiding the "show copy
+	notes button" into a single method. Might make maintenance a bit
+	easier some day.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-06-01  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: fix the Copy
+	Notes button in the unified vol/copy editor Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-06-03  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0547.data.perm_list_cleanup.sql,
+	Open-ILS/src/sql/Pg/upgrade/0548.data.perm_list_cleanup_pt_2.sql: 
+	Clean up a few stock perm mistakes, part 2 0547 did not completely apply to rel_2_1, so the correction of
+	errant inserts from 0545 has been split off into this upgrade
+	instead, for clarity.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-06-03  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0547.data.perm_list_cleanup.sql: Clean
+	up a few stock perm mistakes This upgrade file does cleanup for three errors: 1) deletes errant inserts from 0545 (group 4 is not the circulation
+	admin group) 2) accounts for spelling errors (Admin != Administrator) 3) adds a group missed in 0542, for upgraders Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-06-03  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 06bd754a9229eb8751ca63ed9e34bb4e7c77b22a Author: Dan
+	Wells <dbw2 at calvin.edu> Date:   Fri Jun 3 13:00:25 2011 -0400
+
+2011-06-03  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 7d1040a86595c50dadb235c5c014ae7a5e9294f4 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Fri Jun 3 08:35:21 2011
+	-0400
+
+2011-05-28  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.sip_statcats.sql: Upgrade script,
+	needs wrapping.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-05-28  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/actor.pm
+	,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/asset.pm
+	, Open-ILS/src/perlmods/lib/OpenILS/SIP/Item.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/templates/default/conify/global/config/actor_sip_field
+	s.tt2,
+	Open-ILS/web/templates/default/conify/global/config/asset_sip_field
+	s.tt2, Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/server/admin/stat_cat_editor.js,
+	Open-ILS/xul/staff_client/server/admin/stat_cat_editor.xhtml: Sip
+	Statcats - Actor/Asset Statcats via SIP2 Stat cats can now have a sip_field and sip_format.  sip_field is the
+	field identifier code, sip_format is one of the following: 1 - Null/Empty, places stat cat value in as-is 2 - A plain string,
+	placed in value as-is when stat cat has value 3 - A plain string
+	with a %s, 1 and 2 combined, where the stat cat value replaces the
+	%s 4 - A regular expression surrounded by | characters (ex,
+	    |([0-9]*) -|): If the regular expression does not match the value,
+	    nothing If the regular expression matches and has a capture group,
+	    the captured group If the regular expression matches and does not
+	have a capture group, the entire match The | was used because it would otherwise be stripped from the final
+	result anyway.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-06-02  Mike Rylander <mrylander at gmail.com>
+
+	* : Merge of transit_abort_perms from
+	git.evergreen-ils.org:evergreen/equinox.git into master Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-06-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit d4c52cd68ca0cd5562a99fd83f8a89c0e39fc19f Merge: fa1ef0c
+	80c12c4 Author: Mike Rylander <mrylander at gmail.com> Date:   Thu Jun
+	2 10:33:44 2011 -0400
+
+2011-06-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Reporter.pm: 
+	Whitespace cleanup in aisle 3 (O:A:Reporter) Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-01  Michael Peters <mrpeters at library.in.gov>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Reporter.pm: 
+	LP#740466 add order by name method to Reporter.pm to sort report
+	folders by name Signed-off-by: Michael Peters
+	<mrpeters at library.in.gov> Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-06-01  Bill Erickson <berick at esilibrary.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/mon
+	ey.pm, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0544.data.patron_no_collections.sql,
+	Open-ILS/web/js/ui/default/actor/user/register.js: Collections
+	exemption user setting Adds a new user setting "circ.collections.exempt" which, when set to
+	true for a user, means the user will not be considered for
+	collections.  It does this by ignoring the user when calculating the
+	list of users of interest in the
+	"open-ils.collections.users_of_interest.retrieve" API call.  Signed-off-by: Bill Erickson <berick at esilibrary.com>
+
+2011-06-01  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Serial.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Serial.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0543.data.reformat_generated_coverage.s
+	ql: Serial holdings display consistency fix When holdings are sourced from both MFHD and the DB, display may be
+	inconsistent due to a hard-coded ', ' in Serial.pm.  This patch
+	works around the problem by storing generated_coverage as a JSON
+	array instead of a string, leaving display formatting to the OPAC.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-06-01  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Missing db upgrade
+	number bump Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-06-01  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: Remove
+	specific admin perms, reorganize seed file The various administrators already have 'EVERYTHING' at their
+	respective levels, so no need to assign new perms there.  The seed
+	file is now more consistently organized.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-06-01  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: 
+	Change a few permission levels and assignments In an attempt to be consistent with existing perms, a few were moved
+	to levels lower than 'Consortium', and ADMIN_SERIAL_ITEM is only in
+	the 'Serial' group.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Jason
+	Etheridge <jason at esilibrary.com>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Push the grp perm
+	mappings into the seed data Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: 
+	wrong group ids for system admin and global admin Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: put
+	CREATE_PURCHASE_REQUEST into Users, not Staff Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: map
+	these perms to stock perm groups Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: added
+	other permissions missing in rel_2_1 Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0542.data.perm-list.misc-cat.sql: some
+	recent cataloging permissions, but I'm unsure about the new upgrade/
+	script regime Signed-off-by: Jason Etheridge <jason at esilibrary.com> Signed-off-by:
+	Dan Wells <dbw2 at calvin.edu>
+
+2011-06-01  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 1aea64df0480c23cf895d637c1846d2974da5f97 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Tue May 31 17:30:31 2011 -0400
+
+2011-05-31  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0526.schema.upgrade-dep-tracking.sql: 
+	Make patch-checking function able to raise a notice There's probably a more elegant way to do this, but basic testing
+	with the following at least didn't throw an error: SELECT evergreen.upgrade_deps_block_check('XXXX', NULL); Also note that the CREATE OR REPLACE function calls will fail on an
+	existing database due to the changed return type of the functions -
+	so if this gets moved into its own upgrade script, DROP FUNCTION
+	calls will be required.  Signed-off-by: Dan Scott <dscott at laurentian.ca> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com>
+
+2011-05-31  Dan Scott <dan at coffeecode.net>
+
+	* : commit 501f26fe7f0da1d4a5d6962b2c3a820eec3ccc4d Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Tue May 31 12:16:16 2011
+	-0400
+
+2011-05-31  Dan Scott <dan at coffeecode.net>
+
+	* : commit 3fe31b6081ef449ed774a007c80a8441e919c18d Author: Michael
+	Peters <mrpeters at library.in.gov> Date:   Tue May 31 08:44:49 2011
+	-0400
+
+2011-05-28  Bill Erickson <berick at esilibrary.com>
+
+	* : commit b2d7b3a89814c3acb1fd23e98f1ce566bc450a2c Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Sat May 28 10:01:43 2011
+	-0400
+
+2011-05-27  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 3bd7c7e41404585b925915afbd2abd67bf4300bf Author: Dan
+	Scott <dan at coffeecode.net> Date:   Fri May 27 13:51:59 2011 -0400
+
+2011-05-27  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd: indicate what date format
+	to use for offline patron registration Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-27  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/server/circ/checkin.xul: Fix Hold
+	Capture checkin mode oils_persist was trumping hardcoded values.  Also, change how
+	checked is set/unset for reliability.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-05-26  Mike Rylander <mrylander at gmail.com>
+
+	* : commit bbc874ddb42ac05130ccfad92fc55ccebd6af882 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Thu May 26 16:03:39 2011
+	-0400
+
+2011-05-26  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ac80f3b7c3e6e3104ad81ce8a424814155ee728d Author: Dan
+	Wells <dbw2 at calvin.edu> Date:   Thu May 26 11:19:40 2011 -0400
+
+2011-05-26  Dan Wells <dbw2 at calvin.edu>
+
+	* : commit a4909125e618daa4b2dc7038f3eaf354fd712067 Merge: 530b5a3
+	623aeb0 Author: Mike Rylander <mrylander at gmail.com> Date:   Thu May
+	26 10:56:55 2011 -0400
+
+2011-05-26  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/xul/staff_client/server/serial/manage_dists.js,
+	Open-ILS/xul/staff_client/server/serial/manage_subs.js: Checking for
+	'twisty' leads to false negatives in Serial Control Since a tree can be opened with a double-click, we can't rely on
+	'twisty' being set to load the child data.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/util.js: Don't rely on call
+	number column being rendered before prefix/suffix/class columns.
+	Also, remove prefix/suffix/class from the check-in interface, since
+	those column definitions can make extra network calls and we want
+	that interface to be as fast as possible.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-26  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: wrong
+	target for parts holds in
+	open-ils.circ.holds.retrieve_all_from_title Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/browser.js: 
+	browser.js debugging / robustification.  Replace some magic numbers
+	with proper constants.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/skin/custom.js.example: debugging
+	aid, take the "thread trace" for a given page and make it stand out
+	more Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/external/dump_splitter.sh: debugging
+	aid.  split dump output produced by replacement dump function in
+	custom.js.example Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-25  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 8a26888af4c658849d4089ace91c91ecc005985d Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Wed May 25 16:56:24 2011
+	-0400
+
+2011-05-25  Mike Rylander <mrylander at gmail.com>
+
+	* : commit e62e2f75b0d6cb9100811f8db90abac93dcca118 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Wed May 25 11:38:11 2011 -0400
+
+2011-05-25  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 8bb24e67e89c016dfc7d3d0c0c717da3e46fdbad Merge: 044f1f1
+	b67ebdb Author: Dan Scott <dan at coffeecode.net> Date:   Tue May 24
+	22:49:44 2011 -0400
+
+2011-05-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/Makefile.am: When auto-versioning, use
+	last piece of branch Specifically, last / delimited piece.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Dan Scott <dan at coffeecode.net>
+
+2011-05-24  Dan Scott <dan at coffeecode.net>
+
+	* : commit c58587837f40948650c71823818b60c5239ef5d9 Author: Galen
+	Charlton <gmc at esilibrary.com> Date:   Tue May 24 22:29:39 2011 -0400
+
+2011-05-24  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/make-db-patch.pl: Add --nonum to make-db-patch Makes XXXX.* files.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-05-24  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0541.schema.call_number_honor_default_c
+	lass.sql: Trivial line-wrapping patch for call number class defaults Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-24  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0541.schema.call_number_honor_default_c
+	lass.sql: Make label_class on any new call numbers default to
+	org_unit setting Evergreen 2.0 added a label_class column to the call number table
+	with one major purpose being the generation of correct sort keys.
+	You can also specify a default label class as an org unit setting.
+	However: 1) There are no interface elements for setting the label class of an
+	individual call number.  2) The default setting from the actor.org_unit_setting
+	'cat.default_classification_scheme' value, if set, is not consulted
+	(that is, not set in the call number table) when new call numbers
+	are created.  These two facts together greatly reduce the utility of this very
+	valuable feature, as all new call numbers end up in the 'Generic'
+	class.  While #1 has been addressed in 2.1+, there is still work to be done
+	in setting this class on import. Also, which interface parts (if
+	any) make it back to 2.0 is subject to debate.  This commit addresses #2.  See lp #787150.  Signed-off-by: Dan Wells <dbw2 at calvin.edu> Signed-off-by: Dan Scott
+	<dan at coffeecode.net>
+
+2011-05-24  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/210.schema.serials.sql,
+	Open-ILS/src/sql/Pg/901.audit-tables.sql,
+	Open-ILS/src/sql/Pg/upgrade/0540.schema.missing_serial_unit_trigger
+	s.sql: Bring serial.unit in line with asset.copy Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-24  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: remove
+	restriction on resetting pw to random number when Use Phone Password
+	setting is active.  uEditMakeRandomPw will still get called for new
+	users, but should get overwritten once a phone number is entered Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-23  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/copy_status.js: wrong
+	identifier and lingering copy/paste-o in code for Item Status -> Add
+	Items Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-23  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 598d111851cbf03c73e6bef7633c1ca13bd72276 Merge: 9a7fab0
+	25ac4d4 Author: Mike Rylander <mrylander at gmail.com> Date:   Mon May
+	23 11:14:41 2011 -0400
+
+2011-05-23  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm: Revert "Wrap proximity refreshing in a transaction to avoid
+	timespans where there is no such information" This reverts commit fbfb74639cc2628fb90e56f7dbd0d364e0b7e386.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-23  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/examples/apache/eg.conf: Apply Apache file expiration to
+	the current official Javascript content type At least on Ubuntu 10.04, Javascript files are generally delivered
+	with a Content-Type header of 'application/javascript', not
+	'application/x-javascript'.  This change applies the much shorter 18
+	hour expiration to the affected files, rather than allowing them to
+	default to 1 month.  Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-21  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5f132d5f98d719c38a01070cfa75c31ba6227252 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Fri May 20 15:47:04
+	2011 -0400
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.xul: Restore the
+	Replace Barcode option in Holdings Maintenance, as the Edit Item
+	menu will only serve the same duty if the unified volume/copy editor
+	is activated via org setting (otherwise, it's just the Item
+	Attribute Editor).  klussier++ for the catch Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-20  Dan Wells <dbw2 at calvin.edu>
+
+	* : commit 1bf92156dffe56db4287d619ef5b3b777f09fbe7 Author: Dan
+	Wells <dbw2 at calvin.edu> Date:   Fri May 20 11:27:53 2011 -0400
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul,
+	Open-ILS/xul/staff_client/server/skin/cat.css: align the batch edit
+	menus in the vol creator.  mostly aesthetic, but can save horizontal
+	real estate, so usability as well for horizontal vol/copy editor.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor.xul,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor_horiz.xul: 
+	usability tweak for controlling screen real estate, in unified
+	vol/copy editor don't embed the the Record Summary in the vol
+	editor, but in the main wrapping UI.  Also move CN batch edit bar
+	into groupbox Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor_horiz.xul: 
+	usability tweak, pull the Create button out of the embedded
+	interfaces and into the wrapping UI for the horizontal variant of
+	the unified vol/copy editor Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul,
+	Open-ILS/xul/staff_client/server/cat/volume_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_editor.xul,
+	Open-ILS/xul/staff_client/server/skin/cat.css: css hooks so we can
+	hide class, affix, and part columns in volume creator/editor.  can
+	help with screen real estate with the horizontal vol/copy editor Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_editor_horiz.xul: 
+	usability tweak, spread the template bar across the top of both
+	panes for the horizontal unified vol/copy creator/editor Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ea20f3920b2ef71e12ef40afdeb40a6f5f361186 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Fri May 20 10:17:05
+	2011 -0400
+
+2011-05-20  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/holds.js,
+	Open-ILS/web/opac/skin/default/xml/common/holds.xml: Revert "When
+	placing holds on a bib with monographic part, require selection of a
+	specific part" This reverts commit 3e63a898c53f6100d678f263e5dde5b9f678692d.  We must not force P-type holds as not all copies may not use parts.
+	Imagine a situation where only one library breaks up a season of
+	Seinfeld by using a part per DVD, and all others leave them bound
+	and therefore need no part designations.  Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-20  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/holds.js,
+	Open-ILS/web/opac/skin/default/xml/common/holds.xml: When placing
+	holds on a bib with monographic part, require selection of a
+	specific part Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-19  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm: 
+	order any monograph parts by sort key when placing holds Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-19  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js: CN prefix/suffix
+	columns in xul-based hold interfaces Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-19  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: label
+	consistency in vol/item creator Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-19  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql: add missing upgrade
+	step to create staging schema Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-19  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ed4c017b6b950a16ba09fa7bef5f8fd8a1eb4178 Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Thu May 19 12:56:57 2011
+	-0400
+
+2011-05-19  Lebbeous Fogle-Weekley <lebbeous at esilibrary.com>
+
+	* : commit 3232fbd8864ae988fb16fdce1fcbd46a32a158ae Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Thu May 19 08:51:47 2011 -0400
+
+2011-05-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js,
+	Open-ILS/xul/staff_client/server/circ/util.js: Add Shelf Expire Time
+	to hold slip, date formatter Date formatter would work like so: %DATE_FORMAT(date,format)% For example: %DATE_FORMAT(%shelf_expire_time%,%m/%d)% Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com>
+
+2011-05-19  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ec45ea05739ec350ed688fcf8e28781e696819f4 Author: Lebbeous
+	Fogle-Weekley <lebbeous at esilibrary.com> Date:   Wed May 18 17:26:58
+	2011 -0400
+
+2011-05-18  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/edi_translator/README: trival whitespace changes Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 76791e23e15e00e1055ed0f2e72369db50407479 Author: Galen
+	Charlton <gmc at esilibrary.com> Date:   Wed May 18 14:05:51 2011 -0400
+
+2011-05-18  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/perlmods/Makefile.am: Make Perl 'make check' work
+	without 'make all' Factor the build of Build from Build.PL into its own make target and
+	then make that target a prereq for the other make targets so that we
+	make Build from Build.PL when we build Makefile from Makefile.am and
+	run 'make check' Clear? Signed-off-by: Dan Scott <dscott at laurentian.ca>
+
+2011-05-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 4abc3d760e90fcfad5676e8564bca3375736198b Author: Mike
+	Rylander <mrylander at gmail.com> Date:   Wed May 18 12:39:31 2011
+	-0400
+
+2011-05-18  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Record the current
+	upgrade version number in the baseline schema Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-18  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0537.schema.upgrade-dep-tracking-fix.sq
+	l: Fix the definition of some of the tracking functions Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-18  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	avoid error when generating fines on checkin Prevents "No active transaction to commit" error when checking in
+	overdue loans.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Bill Erickson <berick at esilibrary.com>
+
+2011-05-18  senator <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/src/sql/Pg/upgrade/0536.schema.lazy_circ-barcode_lookup.sq
+	l: Let's have this upgrade script not use that
+	upgrade_deps_block_check()...  ...function quite yet
+
+2011-05-18  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/make-db-patch.pl: use correct name of upgrade
+	check function Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-18  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/src/sql/Pg/make-db-patch.pl: More make-db-patch goodness:
+	wrap existing --wrap option will take an existing file and wrap it properly.  When
+	--wrap is specified --from is ignored.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Galen Charlton <gmc at esilibrary.com>
+
+2011-05-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit bf83c01e4f232e050ec320969b9bb6c6a8c1eeb1 Author: Jason
+	Etheridge <jason at esilibrary.com> Date:   Wed May 18 02:14:52 2011
+	-0400
+
+2011-05-18  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/web/opac/extras/circ/alt_holds_print.html,
+	Open-ILS/web/opac/extras/circ/alt_holds_print.js: Include call
+	number prefix/suffix in display and sorting of holds for Print Full
+	Pull List (Alternate strategy).  Also fix things so that we're
+	sorting on the label_sortkey for call number, and not the label.
+	So, for this interface, the hard-wired sort order is Copy Location
+	Order (as defined by Admin -> Local Administration -> Copy Location
+	Order), Call Number Prefix, Call Number Label, Call Number Suffix,
+	and Hold Request time.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-17  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/spine_labels.js: have the
+	call number checkbox for pocket labels include prefix/suffix.  A
+	%call_number% macro is still available for the bare call number
+	label without affixes Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-17  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js: 
+	Can't use encodeURI and decodeURI for everything with persist_helper
+	(in particular, something like "%macro1% %macro2%" as a custom entry
+	in the label interface), so try/catch them and fall back to the
+	original behavior.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-17  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: only use the label
+	to initialize call number browse Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-17  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/make-db-patch.pl: add a bit of context to
+	upgrade SQL hints Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-17  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 015a697755ee7159c210b123e2060cef9d0b3fbc Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Tue May 17 13:50:44 2011 -0400
+
+2011-05-17  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 608aa3241afeff95c613df8ec306a0637155d9c9 Merge: b1b2d91
+	007195f Author: Mike Rylander <mrylander at gmail.com> Date:   Tue May
+	17 14:11:04 2011 -0400
+
+2011-05-17  Mike Rylander <mrylander at gmail.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0536.schema.lazy_circ-barcode_lookup.sq
+	l, Open-ILS/src/sql/Pg/upgrade/XXXX.lazy_circ.sql: Convert/move SQL
+	script for Lazy Circ Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-13  Thomas Berezansky <tsbere at mvlc.org>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/020.schema.functions.sql,
+	Open-ILS/src/sql/Pg/800.fkeys.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.lazy_circ.sql,
+	Open-ILS/web/js/ui/default/conify/global/config/barcode_completion.
+	js, Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/opac/skin/default/js/holds.js,
+	Open-ILS/web/templates/default/conify/global/config/barcode_complet
+	ion.tt2, Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties,
+	Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/checkout.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/patron/barcode_entry.xul,
+	Open-ILS/xul/staff_client/server/patron/display.js: Lazy Circ (AKA
+	partial barcode lookup) Database tables/access functions for prefix/suffix info     Table: config.barcode_completion     Function: evergreen.get_barcodes         Takes org unit, context, and input barcode         Context is a string and can contain:             asset - asset.copy barcodes             serial - serial.unit barcodes             actor - actor.usr (via actor.card) barcodes             booking - booking.resource barcodes         Special case: asset and serial both in context             Returns non-serial asset entries as asset             Returns serial entries as serial     Type for function return: evergreen.barcode_set     With editing interface: Admin->Local Admin->Barcode Completion     OpenSRF Call: open-ils.actor.get_barcodes         Basically a passthrough to the database function         Checks for permissions:             STAFF_LOGIN - To do anything             VIEW_USER - At home_ou of the user owning the returned                         barcode when
  in actor context Add get_barcode to menu.js and to xulG in a number of places     Takes a window handle, a context, and an input barcode     Passes the current OU, the context, and the input barcode to the
+	    db If multiple results come back it pops up a dialog     Returns boolean false on no results     Returns "user_false" on dialog cancel     Returns an object with type, id, barcode on success     If dialog was brought up, returns data used to populate button Add option for looking up actors at checkout     Org unit setting: Load patron from Checkout. Default: Don't.  Call sites for get_barcode:     Lookup Patron By Barcode (actor only)     OPAC's Staff Client Place Hold (actor only)     Checkout (asset only by default, with actor if above option set)     Checkin (asset only)     Item Status (asset only) Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com>
+
+2011-05-17  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_refund_policy.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/main_refund_policy
+	.tt2: cleanup: 1) fix broken INCLUDE statements in circ and hold histories 2) move an opac "part" to the parts directory
+
+2011-05-17  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/main_base.tt2: 
+	empty cases for fines
+
+2011-05-17  senator <lebbeous at esilibrary.com>
+
+	* : commit e22e11aeb8e9e3afe8a6bda72d68544c4475997a Author: senator
+	<lebbeous at esilibrary.com> Date:   Tue May 17 11:31:08 2011 -0400
+
+2011-05-17  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 6b47f0a3204ed395be9a2e93105741430d4d6835 Merge: 0169867
+	d6f8124 Author: Mike Rylander <mrylander at gmail.com> Date:   Tue May
+	17 10:19:09 2011 -0400
+
+2011-05-17  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/upgrade/0535.schema.authority_indexes.sql: 
+	LP#783486: Improve authority lookup performance Testing showed that the two indexes added herein improve authority
+	lookup performance radically; on a 16 GB RAM database server with
+	1.1M records, lookup times decreased from 5500 ms to 0.223 ms.
+	Recommended, would EXPLAIN ANALYZE again.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-17  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/2.0-2.1-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/upgrade/0534.schema.fix_hold_permit_test.sql: 
+	stop hold permit check from crashing if age protection in effect Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-16  senator <lebbeous at esilibrary.com>
+
+	* : commit b6e7ed5d89ba5abf3898bc157e4d28cb7f0c1952 Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon May 16 18:39:32 2011 -0400
+
+2011-05-16  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 81b398c0b2168967e89c4dbacae4c1c890acb37a Merge: d616e2e
+	e56a342 Author: Mike Rylander <mrylander at gmail.com> Date:   Mon May
+	16 18:26:40 2011 -0400
+
+2011-05-16  Mike Rylander <mrylander at gmail.com>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/aut
+	hority.pm: Ignore "deleted" authority records when using the
+	tag-validation method Signed-off-by: Mike Rylander <mrylander at gmail.com>
+
+2011-05-16  senator <lebbeous at esilibrary.com>
+
+	* : commit 5d672af3ab051bfa47aea7b0638d99079d6bd379 Merge: 8dd8381
+	f40b83b Author: senator <lebbeous at esilibrary.com> Date:   Mon May 16
+	16:22:58 2011 -0400
+
+2011-05-16  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 444dc606406b5ba4b38a27d7e9334ccc906240c6 Merge: f4cd158
+	f40b83b Author: Mike Rylander <mrylander at gmail.com> Date:   Mon May
+	16 16:20:43 2011 -0400
+
+2011-05-16  Dan Wells <dbw2 at calvin.edu>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/Date.pm: Borrow
+	on_or_after() from MFHD/Caption.pm in MFHD/Date.pm Signed-off-by: Dan Wells <dbw2 at calvin.edu>
+
+2011-05-16  senator <lebbeous at esilibrary.com>
+
+	* : commit 5e35339e8dec5603ff5a8b69141b7e894c81f2fa Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon May 16 14:14:57 2011 -0400
+
+2011-05-16  Galen Charlton <gmc at esilibrary.com>
+
+	* : commit 764d28f56f988c7c1a6d3d866bf9b4226a8ad2d3 Author: Galen
+	Charlton <gmc at esilibrary.com> Date:   Mon May 16 13:29:10 2011 -0400
+
+2011-05-16  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	persist partial changes to new copies in vol/copy editor has new
+	copies are gathered.  In other words, you can do something like enter 5 in the "# of
+	Copies" field, enter the first barcode (say b1), edit an attribute
+	(say, set Circulate = No), and then enter a second barcode (b2).
+	Previously, the changes made to b1 would be lost as b2 was entered
+	(or as other movement around the barcode entry textboxes happened)
+	and both copies would get a Circulate = Yes, but now in this
+	scenario, you would see 1 copy set to No and 1 copy set to Yes for
+	the Circulate attribute.  Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-16  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd: simpler language, and the
+	behavior of this action is configurable Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-16  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/src/sql/Pg/2.0-2.1.sql: first pass at 2.0 to 2.1 upgrade
+	script Tested so far on an upgrade from 2.0.1; goes up to DB patch 0533.  Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-16  Mike Rylander <mrylander at gmail.com>
+
+	* : commit e8bb8477c41585afced154483f8a1ffa2d2b8111 Merge: 4cce969
+	e72fba2 Author: Mike Rylander <mrylander at gmail.com> Date:   Sun May
+	15 17:52:04 2011 -0400
+
+2011-05-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/skin/cat.css: usability tweak Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	default the label class according to library setting during vol
+	creation Signed-off-by: Jason Etheridge <jason at esilibrary.com>
+
+2011-05-15  Jason Etheridge <jason at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/server/skin/global.css: remove this
+	comment, testing the repo & email
+
+2011-05-15  Mike Rylander <mrylander at gmail.com>
+
+	* : commit cce32dd86098980d1fc87523141f0adf958f9ce5 Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Sat May 14 18:22:01 2011 -0400
+
+2011-05-14  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 7cb08207f963d8c26adb4e8fa86a82d8442b6fbe Author: Thomas
+	Berezansky <tsbere at mvlc.org> Date:   Sat May 14 15:57:27 2011 -0400
+
+2011-05-14  Galen Charlton <gmc at esilibrary.com>
+
+	* Open-ILS/xul/staff_client/external/prune_dirs.sh, README,
+	build/tools/update.sh, build/tools/update_git_svn.sh: remove
+	references to SVN now that we're using Git Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-14  Galen Charlton <gmc at esilibrary.com>
+
+	* README: Trivial whitespace change Signed-off-by: Galen Charlton <gmc at esilibrary.com>
+
+2011-05-14  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ec28db76588c79d7d9176fe7eeb4e6537a277301 Author: gmc
+	<gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri May 13
+	20:57:59 2011 +0000
+
+2011-05-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 75c58c9f948521a8ac78300bf8f45ae16205f74b Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri May 13
+	17:30:47 2011 +0000
+
+2011-05-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 0bdfc37cda17f3cad2f9e23341a5f6cd25881524 Author: dbwells
+	<dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri May 13
+	16:01:04 2011 +0000
+
+2011-05-13  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0532.schema.fix_copy_count_funcs.sql: 
+	fix query in various copy count functions Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20468
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 3341913654605eff25ec1360fe15bff6a6a6f172 Author: gmc
+	<gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri May 13
+	13:25:27 2011 +0000
+
+2011-05-13  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0531.schema.auditor_affixes.sql: add
+	affix columns to acn auditor table Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20464
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-12  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: begin
+	a sub to process payment
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f99ae92307315a58351cae192d42add42815bdb5 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu May 12
+	19:50:55 2011 +0000
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* : commit fbfb74639cc2628fb90e56f7dbd0d364e0b7e386 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu May 12
+	19:22:42 2011 +0000
+
+2011-05-12  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm: Address
+	LP#779975; Status of Available (0) not honored because 0==false --
+	use ternary op with defined() instead git-svn-id: svn://svn.open-ils.org/ILS/trunk@20452
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-12  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 7deb3ef94b0fa94c218f7ec2e14818ecba2f9a37 Merge: e99e1ba
+	baf52ae Author: Mike Rylander <mrylander at gmail.com> Date:   Thu May
+	12 10:30:01 2011 -0400
+
+2011-05-12  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Serial.pm: Add
+	missing permission checks to Serial.pm git-svn-id: svn://svn.open-ils.org/ILS/trunk@20449
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-12  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2: 
+	doh, it's history not location.history
+
+2011-05-12  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/web/templates/default/opac/parts/footer.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/main_base.tt2: 
+	remove in-template fine-totaling: mod_perl code was already doing
+	the same also:     make that fine-totaling not use floating point math.      don't provide payment form for <= 0 totals (we're not issuing
+	    refunds) last copyright date in footer always current year, not
+	hardcoded
+
+2011-05-11  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2: 
+	support paying all fines at once
+
+2011-05-11  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_pay.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payment_form.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/main_base.tt2: 
+	Payment for mostly done. Still needs: 1) to be able to handle the upper "Pay Fines" button that will mean
+	"all my fines" 2) to use fixed point fine totaling math and bail on total <= 0 3) ... anything else?
+
+2011-05-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_pay.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/main_base.tt2: 
+	start on cc payments
+
+2011-05-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/record.tt2: Fix an ugly grey bar
+	in the record detail page I have no idea what caused this or why this css adjustments fixes
+	the problem
+
+2011-05-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/place_hold.tt2: Better
+	redirect from place_hold Before this, if you click place hold on something while not logged
+	in, you are redirected to the login page, which is good, and
+	redirected thence to the place hold page, which is good. But after
+	actually placing the hold you got redirected to the login page
+	again, which is not good.  Now you get sent back to the home page.  This may not be the ideal choice.  myopac/main may make more sense.
+	Also, there is still not any clear visual feedback for the user that
+	their hold placement succeeded.  That'll need to be addressed too.
+
+2011-05-09  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 22da181312106f8a20be7377ac9f1f6080e86864 Merge: 8859e73
+	f0ab78f Author: Mike Rylander <mrylander at gmail.com> Date:   Mon May
+	9 15:21:52 2011 -0400
+
+2011-05-09  senator <lebbeous at esilibrary.com>
+
+	* : commit 35db902ccd97696d360772c43c37d4add035aff6 Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon May 9 15:01:41 2011 -0400
+
+2011-05-09  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/css/skin/default/acq.css,
+	Open-ILS/web/js/dojo/openils/acq/Lineitem.js,
+	Open-ILS/web/js/ui/default/acq/invoice/view.js,
+	Open-ILS/web/templates/default/acq/invoice/view.tt2: Invoice from LI
+	seeds invoice data     * When creating a new invoice from a lineitem, seed the invoice
+	        with provider data from the lineitem.      * Make money textbox's a little larger to accommodate larger
+	        sums without scrolling     * Truncate long titles in lineitem summary view git-svn-id: svn://svn.open-ils.org/ILS/trunk@20448
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-07  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f480ee0994287eb9b22dd11f32045c4d7dc469f6 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri May 6
+	19:41:00 2011 +0000
+
+2011-05-06  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5cea2d6e23d5ddbd0c361a1bc5e4f3f7dc3e97d4 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri May 6
+	03:17:08 2011 +0000
+
+2011-05-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b58f8022f0445a607a1dd9829e6a0eba182e7b6e Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu May 5
+	18:38:36 2011 +0000
+
+2011-05-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 407d24bc05fee95b15879fe9c443adf525637564 Author: senator
+	<senator at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu May 5
+	17:24:47 2011 +0000
+
+2011-05-05  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/upgrade/0530.schema.actor-usr-index-phone-field
+	s-more.sql: Patch from Niles Ingalls to make patron phone number
+	searching more matchy.  With assistance from Mike Rylander on
+	pointing out the needed indexes to keep search fast, and from Mike
+	Peters on arranging a last minute DCO :-) Type numbers into a patron phone number field and get a match
+	regardless of the punctuation actually used in the database.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20429
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-05  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/display.js,
+	Open-ILS/xul/staff_client/server/patron/summary_overlay.xul,
+	Open-ILS/xul/staff_client/server/patron/summary_overlay_horiz.xul: 
+	Patch from Thomas Berezansky to do the following:     Add more "click to copy" fields     User's Name     All three phone numbers     Also fix issue where tooltip didn't clear when re-opening search
+	    form     Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20427
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-05  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js,
+	Open-ILS/xul/staff_client/server/OpenILS/symbol_overlay.js,
+	Open-ILS/xul/staff_client/server/OpenILS/symbol_overlay.xul,
+	Open-ILS/xul/staff_client/server/cat/marcedit.xul,
+	Open-ILS/xul/staff_client/server/skin/global.css: Add a feature
+	authored by Joscha Filius for the International Institue of Social
+	History: a diacritical palette for the MARC editor! Afelonne Doek of IISH wants the community to benefit from this code.
+	To try it out, press control S in the marc editor (reguarly
+	non-flat-text view).  You can insert the characters you see, and you can right click on
+	entries in your palette to customize.  Customizations /should/
+	persist through staff client restart (untested by me so far).  This should make cataloging in multiple (Western-ish) languages at
+	once easier.  Below I copy and paste some of Joscha's message to the list where he
+	introduced this code: > *Bugs:* > A known bug is that is you switch marc edit styles back
+	and forth the > listener trigger won't work anymore. Also for a far
+	as I know there is at > least another bug concerning layout which is
+	as far as I know not the result > of my doing.  > > *Here comes a
+	possibly nasty part*, to ensure that the diacriticals remain >
+	intact throughout the persist I've changed global_util.js to URL
+	encode and > URL decode all stored values. This might cause
+	backwards incompatibility > with values that are already stored for
+	other purposes without encoding.  > This needs to be checked.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20425
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5c7d442d3dabb4d0e165645ab149f70c5d9f44ef Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu May 5
+	04:39:44 2011 +0000
+
+2011-05-04  Mike Rylander <mrylander at gmail.com>
+
+	* : commit a3695253c7ae356f05dd395fc4ad88aafbd5a79d Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed May 4
+	18:00:49 2011 +0000
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/reporter/clark-kent.pl: Patch from Jason Boyer
+	swapping the order of report and template name in emailed notices;
+	LP#777273 git-svn-id: svn://svn.open-ils.org/ILS/trunk@20417
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 61fde21a9a371a25f02c570a93b17883c5ab39a5 Merge: 6ddaccc
+	dc971e2 Author: Mike Rylander <mrylander at gmail.com> Date:   Wed May
+	4 11:53:59 2011 -0400
+
+2011-05-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_chrom
+	e.xul,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/util_overlay_offli
+	ne.xul, Open-ILS/xul/staff_client/server/OpenILS/util_overlay.xul,
+	Open-ILS/xul/staff_client/server/skin/custom.js.example: debugging
+	aid git-svn-id: svn://svn.open-ils.org/ILS/trunk@20414
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/OpenILS/util_overlay.xul: include
+	these so we can get proper line numbers when debugging git-svn-id: svn://svn.open-ils.org/ILS/trunk@20413
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/serial/sbsum_editor.js,
+	Open-ILS/xul/staff_client/server/serial/scap_editor.js,
+	Open-ILS/xul/staff_client/server/serial/siss_editor.js,
+	Open-ILS/xul/staff_client/server/serial/sisum_editor.js,
+	Open-ILS/xul/staff_client/server/serial/sssum_editor.js: Fix some
+	Serial Control text boxes which were too small to use effectively.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20412
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates_kcls/default/opac/parts/record/summary.tt2: 
+	removed unnecessary kcls record summary template file override
+
+2011-05-04  berick <berick at esilibrary.com>
+
+	* : Merge remote branch 'dbs-git/dbs/tt-htmlcleanup' into
+	template-toolkit-opac
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/rdetail.js: Only pass the label
+	to the CN browse search API, that is all we care about for the key git-svn-id: svn://svn.open-ils.org/ILS/trunk@20410
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/0529.data.merge_user-ou_settings.sql: 
+	Collaboration patch from Joseph Lewis and Michael Peters addressing
+	LP#758007, missing patron merge OU settings.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20407
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql: Collaboration patch
+	from Joseph Lewis and Michael Peters addressing LP#758007, missing
+	patron merge OU settings.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20406
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql: Addressing LP#732681
+	at upgrade time -- make authority records useful for controlling
+	bibs git-svn-id: svn://svn.open-ils.org/ILS/trunk@20405
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/circ/pre_cat_fields.xul: Initial
+	fix from Michael Peters addressing small-screen UI issues: LP#767507 git-svn-id: svn://svn.open-ils.org/ILS/trunk@20400
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/apachemods/mod_idlchunk.c: Change an ERROR to a DEBUG
+	log message in mod_idlchunk Reported by James Fournie at Sitka, this message was logged as an
+	error when it is simply a debug message; we drop the level
+	accordingly so that it will not appear in the Apache logs during the
+	normal course of operations.  Signed-off-by: Dan Scott <dan at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20397
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Patch
+	from Michael Peters to protect cut-in-line holds from staff without
+	the appropriate permission git-svn-id: svn://svn.open-ils.org/ILS/trunk@20394
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/simple_auth.xul: 
+	Patch from Ben Ostrowsky addressing button order: LP#754660 git-svn-id: svn://svn.open-ils.org/ILS/trunk@20392
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-04  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Prevent
+	uninitialized var warnings in OpenILS::WWW::SuperCat::unapi Given a tag URI like tag:localhost,2011:biblio-record_entry/1 with
+	no format, Evergreen was throwing uninitialized variable warnings
+	and attempting to invoke "open-ils.supercat..formats" due to the
+	unitialized $type variable, which resulted in an Apache error.  On the TT OPAC, this enables Zotero to successfully offer import of
+	all entries on the search results page. On the AjaxPAC, it seems
+	that Zotero parses the page before the unAPI hrefs have been
+	supplied by JavaScript.  Signed-off-by: Dan Scott <dan at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20390
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-03  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payments.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/authors.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/subjects.tt2: Clean
+	up the rest of the non-entity ampersands in URLs Continue the global change to entity ampersands in URLs in the TT
+	OPAC. This should be the last of it.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-03  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/org_selector.tt2: Avoid
+	empty ID attribute in SELECT element The current code appears to always generate an empty id=""
+	attribute, as the "id" variable never gets populated. For now,
+	protect against the empty ID attribute.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-03  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2: HTML
+	compliance in result table Convert & to &amp; in URLs, and change a SPAN element to a DIV
+	(because SPAN elements are not allowed to contain block-level
+	elements like DIV and TABLE).  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-03  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ccbb9eef0e2d10aa46cf09a077bae904de8a39db Author: Dan
+	Scott <dan at coffeecode.net> Date:   Tue May 3 17:08:59 2011 -0400
+
+2011-05-03  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: Ensure
+	ampersands in URLs are &amp; per HTML spec The propagator variable defined in parts/header.tt2 holds the value
+	of the CGI query string - which, as it comes off the wire, is a
+	simple "&". The problem with this is perhaps best explained at
+	http://www.htmlhelp.com/tools/validator/problems.html#amp (and it
+	explains why "&copy_..." gets converted into a copyright symbol).  By passing the incoming query string through the TT url filter and
+	then replacing "&" with "&amp;" we avoid this problem at the source.
+	From there, we have to address the other locations in the code in
+	which we are manually appending GET variables.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-03  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/footer.tt2: Fix unclosed
+	quoted attribute in TT OPAC footer Forgot to place the closing attribute quote on the footer image.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-03  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml: Fix typo in fm_IDL.xml "oils_persist" namespace was missing an "s" in one instance,
+	preventing autogen.sh from running.  Bug reported by Thomas Berezansky.  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20388
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-03  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/020.schema.functions.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/0528.schema.functions_assume_unicode.sq
+	l, Open-ILS/src/support-scripts/authority_control_fields.pl.in: 
+	Avoid data loss by setting MARC::Charset->assume_unicode(1) When using MARC::File::XML, MARC::Charset is used to perform
+	character conversions; however, MARC::File::XML does not tell
+	MARC::Charset that it is handling Unicode data. If we do not tell
+	MARC::Charset that it is handling Unicode data, it can return an
+	error which results in the loss of data (typically a subfield
+	containing one or more characters which MARC::Charset does not have
+	an equivalent mapping outside of Unicode).  This problem could be reproduced in authority_control_fields.pl with
+	a subfield like "von Hans-Christian Müơller" - when this subfield
+	was encountered without assume_unicode(1), a null string was
+	returned for that subfield, and if the record was written back to
+	the database due to an authority match being found in a different
+	field, the only recourse was to restore the record from
+	auditor.biblio_record_entry_history. The same sort of problems could
+	occur for any other script or function that modifies the data being
+	handed to it using MARC::File::XML and BinaryEncoding => UTF8.  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20385
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-03  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 9ef41931a372282900834ec07ad3bfdb9daeb0d3 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue May 3
+	15:03:59 2011 +0000
+
+2011-05-03  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/099.matrix_weights.sql,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0527.schema.matrix-bib_level.sql,
+	Open-ILS/web/opac/skin/default/xml/common/js_common.xml,
+	Open-ILS/web/templates/default/conify/global/config/circ_matrix_mat
+	chpoint.tt2,
+	Open-ILS/web/templates/default/conify/global/config/hold_matrix_mat
+	chpoint.tt2: Patch from Jason Stephenson ( LP#770261,
+	https://bugs.launchpad.net/evergreen/+bug/770261 ) adding support
+	for bibliographic level inspection in the hold and circ matrix
+	matchpoint tests.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20380
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-03  Mike Rylander <mrylander at gmail.com>
+
+	* : commit ee8f8eb82b0506323c3e5a02b972d693e10f8cf8 Author: dbwells
+	<dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon May 2
+	20:57:01 2011 +0000
+
+2011-05-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f6401d9565587e73c3c0a16965d345b5dda54c19 Author: erickson
+	<erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon May 2
+	15:50:59 2011 +0000
+
+2011-05-02  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm: flesh
+	stat_cat_entries in the call number tree method used by Holdings
+	Maintenance, since those copies get shoved into the copy editor and
+	we want stat cat entries to show up there git-svn-id: svn://svn.open-ils.org/ILS/trunk@20374
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-02  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/admin/stat_cat_editor.js: Fix bug
+	and typo in stat cat editor Specifically, disabling the ability to select a stat cat type on no
+	permissions on current type.  If you don't have permissions on ASSET you could never get to ACTOR.  If you picked ACTOR without rights you couldn't get back to ASSET.  Also, re-enable the library selector and new buttons when you do
+	change to one you can add for.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20371
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-02  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js: fix "undefined is
+	in transit" https://bugs.launchpad.net/evergreen/+bug/773528 --- Fix bug squashing of params in checkin_via_barcode2 in circ/util.js.  Author: Jason Stephenson <jstephenson at mvlc.org> Signed-off-by: Jason
+	Stephenson <jstephenson at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20368
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/myopac/prefs_settings.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/prefs_hints.tt2,
+	Open-ILS/web/templates_kcls/default/opac/myopac/prefs_settings.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/myopac/prefs_hints.t
+	t2: Debrand the KCLS-specific hint about Library Elf in prefs
+	settings Even though prefs settings are not yet exposed, we can turn the
+	KCLS-specific comment into a brandable "hints" section in prefs
+	settings.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_refund_policy.tt2,
+	Open-ILS/web/templates_kcls/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates_kcls/default/opac/myopac/main_refund_policy.
+	tt2: Make refund policy for lost items a branding option Different sites will have different policies for refunds on lost
+	items (and might not even provide refunds for lost items, for that
+	matter), so break out that policy description into its own template
+	and provide a KCLS-specific version of it.  Signed-off-by: Dan Scott <dbs at coffeecode.net>
+
+2011-05-02  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits_purchase.t
+	t2,
+	Open-ILS/web/templates_kcls/default/opac/parts/result/lowhits_purch
+	ase.tt2: Debrand lowhits purchase request reference to KCLS While we break this out to a separate template, perhaps we could
+	pull the library name from context instead of having it hardcoded.
+	It will probably depend on each instance, ergo hardcoding the
+	generic "your library" for now should be fine.  Signed-off-by: Dan Scott <dbs at coffeecode.net>
+
+2011-05-02  Dan Scott <dan at coffeecode.net>
+
+	* : commit c4da3fe71817a2a8d02dfbd9b8f192d5fab2aa14 Merge: c8a24da
+	c0005a6 Author: Mike Rylander <mrylander at gmail.com> Date:   Sun May
+	1 23:40:04 2011 -0400
+
+2011-05-01  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 1184851a7cd793a242a6f94851735117d6153c29 Author: Dan
+	Scott <dan at coffeecode.net> Date:   Sun May 1 22:06:50 2011 -0400
+
+2011-05-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/help.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/password_hint.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/login/help.tt2: 
+	Debrand the login form Breaking the password hint and login help sections out into separate
+	templates enables sites to adjust the hint and login help links
+	without touching the rest of the interface.  Signed-off-by: Dan Scott <dbs at coffeecode.net>
+
+2011-05-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/footer.tt2,
+	Open-ILS/web/templates/default/opac/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav_links.tt2: Debrand
+	the OPAC footer, home page, and topnav links Restore the copyright message and Powered by Evergreen logo in the
+	footer, and provide obvious example links instead of the
+	KCLS-specific links.  Also, replace the KCLS home page with the main Evergreen logo.  Signed-off-by: Dan Scott <dan at coffeecode.net>
+
+2011-05-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/printnav.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav_links.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav_logo.tt2,
+	Open-ILS/web/templates_kcls/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates_kcls/default/opac/myopac/prefs_settings.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/footer.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/homesearch.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/printnav.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/topnav_links.tt2,
+	Open-ILS/web/templates_kcls/default/opac/parts/topnav_logo.tt2: 
+	Create a templates_kcls to hold KCLS branding of TT OPAC The debranding of the TT OPAC begins with the top navigation.    * Replace the KCLS logo with the Evergreen logo (even though     white background on black doesn't look great, it's something)   * Replace the KCLS specific top links with example links.    * Split the logo and the links sections out into separate     templates so that we can maximize commonality of the     topnav.tt2 template.  For now, all files containing the string 'kcls' have been copied
+	into the templates_kcls directory. As we move through the templates,
+	we may refactor them in similar to how we just refactored
+	topnav.tt2.  Signed-off-by: Dan Scott <dbs at coffeecode.net>
+
+2011-05-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/subjects.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: 
+	Internationalize more of the TT OPAC (records and results) There are a number of hardcoded strings remaining in the TT OPAC.
+	This is just some of the lowhanging fruit; more work needs to be
+	done on the more complex cases involving HTML and placeholders.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: berick
+	<berick at esilibrary.com>
+
+2011-05-01  Dan Scott <dan at coffeecode.net>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: Enable
+	unAPI support in TT OPAC We have enough information available from the context and date
+	plugin to construct valid unAPI IDs - so let's do it and take one
+	more XXX off the table. (This is good for Zotero support!) Sadly, Zotero doesn't seem to recognize more than one unAPI ID on
+	the search results page; in theory it should give the user the
+	ability to add all of the search results at once, but in practice it
+	doesn't display anything.  At the same time, we can remove the duplicate unAPI placeholders and
+	remove unnecessary <span> elements.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: berick
+	<berick at esilibrary.com>
+
+2011-05-01  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/ContentCafe.pm: 
+	ContentCafe summary of avaible item content Added "available_json" support for Content Cafe.  Returns and array
+	of available content for a given item, where the content type is
+	mapped to one of the Evergreen standard added content types, e.g.
+	"summary", "anotes", "reviews", ...  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20367
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/ContentCafe.pm: 
+	ContentCafe summary of avaible item content Added "available_json" support for Content Cafe.  Returns and array
+	of available content for a given item, where the content type is
+	mapped to one of the Evergreen standard added content types, e.g.
+	"summary", "anotes", "reviews", ...  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20367
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  berick <berick at esilibrary.com>
+
+	* : commit 04a9a2aaf7d17ce84a78ddf132fdb20486aa4218 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Sun May 1
+	13:52:48 2011 +0000
+
+2011-05-01  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/adv_global.js: After
+	investigation by Dan Scott, Michael Peters and Mike Rylander (a
+	little), apos removal in advanced search normalization is considered
+	harmful.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20364
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_summary.xul,
+	Open-ILS/xul/staff_client/server/patron/bill_details.js: Patch from
+	Michael Peters, Jason Boyer and Jason Etheridge addressing
+	LP#744244: bill_details.xul "Checkout or Renew Library" column is
+	blank git-svn-id: svn://svn.open-ils.org/ILS/trunk@20361
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_summary.xul,
+	Open-ILS/xul/staff_client/server/patron/bill_details.js: Patch from
+	Michael Peters, Jason Boyer and Jason Etheridge addressing
+	LP#744244: bill_details.xul "Checkout or Renew Library" column is
+	blank git-svn-id: svn://svn.open-ils.org/ILS/trunk@20361
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl,
+	Open-ILS/src/support-scripts/authority_control_fields.pl.in,
+	configure.ac: Remove hard-coded default bootstrap location from
+	authority_control_fields.pl Let autoconf do its magic and we get away from one more hard-coded
+	default.  Signed-off-by: Dan Scott <dan at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20359
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl,
+	Open-ILS/src/support-scripts/authority_control_fields.pl.in,
+	configure.ac: Remove hard-coded default bootstrap location from
+	authority_control_fields.pl Let autoconf do its magic and we get away from one more hard-coded
+	default.  Signed-off-by: Dan Scott <dan at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20359
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Slight
+	optimization for authority_control_fields.pl Instead of creating two CStoreEditors per bib record, reuse the
+	global CStoreEditor for read operations; this way we only have to
+	create a new CStoreEditor if a record has fields to authorize.  Signed-off-by: Dan Scott <dan at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20356
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Slight
+	optimization for authority_control_fields.pl Instead of creating two CStoreEditors per bib record, reuse the
+	global CStoreEditor for read operations; this way we only have to
+	create a new CStoreEditor if a record has fields to authorize.  Signed-off-by: Dan Scott <dan at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20356
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-30  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: use
+	medium-sized jacket image on record details page
+
+2011-05-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Add excerpt AC and avoid rate-limiting for OpenLibrary content OpenLibrary added rate-limiting (100 cover requests per 5 minutes)
+	for cover images requested by ISBN; using the OpenLibrary book API
+	to pull the list of direct cover URLs avoids the rate limit.  Also, add excerpt added content calls for OpenLibrary.  Signed-off-by: Dan Scott <gitorious at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20354
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-05-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Add excerpt AC and avoid rate-limiting for OpenLibrary content OpenLibrary added rate-limiting (100 cover requests per 5 minutes)
+	for cover images requested by ISBN; using the OpenLibrary book API
+	to pull the list of direct cover URLs avoids the rate limit.  Also, add excerpt added content calls for OpenLibrary.  Signed-off-by: Dan Scott <dbs at coffeecode.net> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20354
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-30  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install, README: Update
+	Makefile.install and README for PostgreSQL 9.0 Along with cleaning out references to Debian Etch, Debian Lenny,
+	Ubuntu Hardy, add the Debian Squeeze, Ubuntu Lucid, and Fedora 14
+	PostgreSQL 9.0 repo locations, and convert the README to Asciidoc
+	syntax.  Remove references to Fedora 13 and genericize it for Fedora 14 (with
+	the thought that Fedora 15 will probably be coming out soon). Also
+	add PostgreSQL 9.0 packages as a target for the database server in
+	Makefile.install.  Signed-off-by: Dan Scott <dan at coffeecode.net> Signed-off-by: Bill
+	Erickson <berick at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20352
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-30  berick <berick at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/opac/parts/coded_value_selector.tt2: 
+	force empty value for the default 'Any' option to avoid using the
+	option text as a valid value
+
+2011-04-27  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/build-db.sh,
+	Open-ILS/src/sql/Pg/upgrade/0526.schema.upgrade-dep-tracking.sql: 
+	fix the new deps stuff git-svn-id: svn://svn.open-ils.org/ILS/trunk@20351
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/audience_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/coded_value_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/language_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2: generic
+	filters in advanced search using SVF incidentally, this reveals that my database has some *weird*
+	languages represented in it
+
+2011-04-27  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/copy_details.js: Change barcode
+	to link to item status For copy details change the barcode to a link to the item status.
+	This only applies to the staff client itself due to an isXUL check
+	first.  This allows for a staff member to get more details on the copy with
+	a single click, rather than copy/paste of the barcode.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20349
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/marc_stream_importer.pl: Patch from
+	Mike Rylander to support load-from-file as an alternative to
+	load-from-network git-svn-id: svn://svn.open-ils.org/ILS/trunk@20347
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 8e32f97cc885c03f92d2335af43f302d136d9721 Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Apr 27
+	16:18:54 2011 +0000
+
+2011-04-27  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0526.schema.upgrade-dep-tracking.sql: 
+	Bad miker ... correcting exclusion constraint definition git-svn-id: svn://svn.open-ils.org/ILS/trunk@20345
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm: 
+	Teach OpenLibrary.pm how to extract ebook links from OpenLibrary
+	results If the Internet Archive has an available ebook, then OpenLibrary
+	will provide links to it in various formats. For now, we return the
+	results as a plain set of <div> elements with class attributes
+	denoting what kind of ebook was returned; i18n will have to take
+	care of providing an actual label. Oh, and I guess we want to turn
+	these into actual <a> links...  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20344
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: stock schema version of
+	0526 git-svn-id: svn://svn.open-ils.org/ILS/trunk@20343
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/make-db-patch.pl: Utility to create a template
+	for a DB patch file Besides creating the script, also does some basic sanity checks on
+	the patch number and the number(s) of any deprecated or supsersed
+	patches.  usage: ./make-db-patch.pl --num <patch_num> --name <patch_name>
+	[--deprecates <num1>] [--supersedes <num2>] Make template for a DB patch SQL file.      --num          DB patch number     --name         descriptive part of patch filename     --deprecates   patch(es) deprecated by this update     --supersedes   patch(es) superseded by this update Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20342
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0526.schema.upgrade-dep-tracking.sql: 
+	support for depracate/supersede tracking of upgrade scripts, and
+	automatic rejection of conflicting scripts git-svn-id: svn://svn.open-ils.org/ILS/trunk@20341
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: One more
+	strictly integer check for fleshing feeds in SuperCat Missed this one in r20336. Argh.  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20340
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Consolidate on
+	checking for integers for -full / -uris The check for an integer when $flesh eq 'uris' was throwing errors
+	and breaking authority browsing; rather than complicating matters
+	further, use an explicit integer for the return value when the
+	format ends with "-uris" so that we can simply test for an integer
+	value greater than 0.  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20335
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-27  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Prevent
+	a MARC::File::XML error from killing authority_control_fields.pl
+	batch Continuing to make this script bullet-proof, MARC::File::XML cares
+	deeply about things like whether datafields have indicators and
+	throws exceptions that, if not caught, kill a processing script -
+	like this one.  Borrowing the approach from marc_export, wrap the new_from_xml()
+	call in a try / otherwise block and roll on.  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20332
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 02282d1558ac2b90647ec911d35bae24d50910c7 Merge: 33104ab
+	d5ac9f7 Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Apr
+	26 21:15:36 2011 -0400
+
+2011-04-26  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/circ/checkin_overlay.xul,
+	Open-ILS/xul/staff_client/server/circ/util.js: Hold, Transit, and
+	Hold/Transit Slips used to suppress the printer dialog, but we lost
+	that when we moved to templated slips.  This adds a sticky Printer
+	Prompt checkbox to Check In for controlling that behavior.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20327
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js,
+	Open-ILS/xul/staff_client/server/admin/printer_settings.js: Setting
+	print.always_print_silent to false is a bad thing, since it trumps
+	gPrintSettings.printSilent, and will cause a print dialog regardless
+	of Printer Prompt or Auto-Print checkboxes.  Let's clear it instead
+	when toggling it off, and if we find it lingering as false from past
+	code, let's clear it then too.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20326
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Protect
+	against errors returned by open-ils.search If open-ils.search returns an error rather than a result, prevent
+	authority_control_fields.pl from bombing out completely; instead,
+	flag the problem in STDERR and move on to the next record.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20323
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/myopac.js: set the cancel cause
+	field when patrons cancel holds.  There's a holdsCancel function
+	that also does this, but it never gets called by anything git-svn-id: svn://svn.open-ils.org/ILS/trunk@20320
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/circ/checkin.js: fix disappearing
+	cursor/caret for Check In git-svn-id: svn://svn.open-ils.org/ILS/trunk@20314
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Make
+	authority_control_fields.pl resistant to database timeouts LP 771237 describes how on an underpowered system, the work that
+	authority_control_fields.pl tries to do on a per-record basis may
+	hit the CStore default timeout of 6 seconds for a transaction and
+	automatically end the transaction, resulting in no work being
+	committed once the script tries to update the bibliographic record.
+	Searching each controlled field for a matching authority record can
+	be costly in a database with millions of authority records.  To enable the script to accomplish its work on underpowered test
+	systems, use a regular read-only CStoreEditor session to accomplish
+	the lookups and create a separate CStoreEditor session to issue the
+	update in a transaction if required.  Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20311
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-26  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0525.schema.phys-char-regression.sql: 
+	LP#771187: fix syntax error in stored procedure def Author: Jason Stephenson <jstephenson at mvlc.org> Signed-off-by: Galen
+	Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20309
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-25  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2: one more
+	minor thing when showing fines on reservations if there's not a record associated with the xact (like in the case
+	of a reservation against a non-cataloged resource), don't try to
+	show a link
+
+2011-04-25  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2: fines on
+	reservations no longer break myopac/main (my account)
+
+2011-04-25  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/0525.schema.phys-char-regression.sql: 
+	Regression in pulling physical characteristics from a record in an
+	SVF world, spotted by Jason Stephenson git-svn-id: svn://svn.open-ils.org/ILS/trunk@20307
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-25  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql: Regression in pulling
+	physical characteristics from a record in an SVF world, spotted by
+	Jason Stephenson git-svn-id: svn://svn.open-ils.org/ILS/trunk@20306
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-25  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/OpenLibrary.pm,
+	Open-ILS/web/opac/skin/default/css/layout.css: Use layout.css to
+	control table of contents from OpenLibrary added content Rather than forcing people to edit OpenLibrary.pm to modify the
+	inline CSS, use a class and rely on CSS from layout.css to make it
+	easier to skin.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20303
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-23  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 19bde8a44fbff9dc4b5e8cdec6cbcef335049d4b Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Sat Apr 23
+	05:34:37 2011 +0000
+
+2011-04-23  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/openils/actor/nls/register.js,
+	Open-ILS/web/js/ui/default/actor/user/register.js,
+	Open-ILS/web/templates/default/actor/user/register_table.tt2,
+	build/i18n/po/register.js/register.js.pot: Add i18n support to the
+	User Editor / registration interface Per LP # 754898, the Register Patron interface currently contains
+	many hardcoded strings. Given that the previous patron registration
+	interface supported translation, this is a regression in 2.0.  Accordingly, we extend the use of Dojo i18n support to provide the
+	strings for buttons and a number of labels on the Register Patron
+	interface. The bulk of the remaining text is provided by the
+	fieldmapper definitions, which should in theory be translated
+	automatically for us.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20298
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: address the empty-query case git-svn-id: svn://svn.open-ils.org/ILS/trunk@20295
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/holds.js: Disable Save
+	Columns in xul holds interface when Hold Details is being viewed.
+	https://bugs.launchpad.net/evergreen/+bug/691599   Not the best fix,
+	but the quickest fix git-svn-id: svn://svn.open-ils.org/ILS/trunk@20292
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: Address LP#730743, errant parens cause pain Specifically, we prune subplans that contain no nodes (empty
+	parens), and avoid dropping out of the top level query context when
+	we encounter a close-paren.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20289
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0524.data.toggle_unified_volume_copy_ed
+	itor.sql, Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js: org unit
+	setting for making unified Volume/Item interface optional.  fix the
+	volume interface in its standalone incarnation, and tweak the label
+	for editing items in holdings maintenance git-svn-id: svn://svn.open-ils.org/ILS/trunk@20287
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f520b839cec0685797c33fe150388873022b3198 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Apr 22
+	15:56:37 2011 +0000
+
+2011-04-22  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 8d9101979ef3011a07a43411b59c0e4b1a67efbd Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Apr 22
+	14:28:29 2011 +0000
+
+2011-04-22  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml: Add missing serial.distribution
+	field to IDL git-svn-id: svn://svn.open-ils.org/ILS/trunk@20278
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js: Patch from
+	James Fournie to sort statcats in their comboboxes git-svn-id: svn://svn.open-ils.org/ILS/trunk@20275
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-22  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/bib
+	lio.pm, Open-ILS/web/opac/skin/default/js/copy_details.js,
+	Open-ILS/web/opac/skin/default/js/rdetail.js: Better call number
+	prefix/support in opac.  The copy count status/location summary
+	methods now group by prefix, label, suffix instead of just label.
+	Still need to update
+	rdetailShowCNBrowse/open-ils.search.callnumber.browse, which is
+	being fed an array, [ prefix label, label, suffix label ] git-svn-id: svn://svn.open-ils.org/ILS/trunk@20273
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-21  Mike Rylander <mrylander at gmail.com>
+
+	* : commit e8e30bb6ada22c019dde28d3e9f1ed980898e64e Merge: 83fdd35
+	2a529e2 Author: Mike Rylander <mrylander at gmail.com> Date:   Thu Apr
+	21 10:49:49 2011 -0400
+
+2011-04-21  berick <berick at esilibrary.com>
+
+	* : commit 677b916ba8cdfcaab2ad96d9e94b93d7648cf53b Author: berick
+	<berick at esilibrary.com> Date:   Thu Apr 21 10:03:55 2011 -0400
+
+2011-04-21  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/cn_browse.js: Display prefix and
+	suffix in CN browse of main OPAC git-svn-id: svn://svn.open-ils.org/ILS/trunk@20271
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-21  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: check user
+	'active' field in SIP charge_ok (and dependent) calls git-svn-id: svn://svn.open-ils.org/ILS/trunk@20268
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f69e07fea68f2ad33e43c92c92991b4653b0e0b7 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu Apr 21
+	00:09:55 2011 +0000
+
+2011-04-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 6c67b45f9e6c78ccf3872017d93d119d12d75464 Merge: 889edcb
+	25cd82a Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	20 19:44:37 2011 -0400
+
+2011-04-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/subjects.tt2: 
+	show No Subjects when, well, there are no subjects; cleanup
+
+2011-04-20  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0523.data.default-copy-status.sql,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: Add org
+	unit settings for default status of newly added copies These two new org unit settings enable sites to control the default
+	status of newly added copies. The defaults match the behaviour of
+	the "Add Volumes" ("In Process") and "Fast Add" ("Available")
+	interfaces as of Evergreen 1.6.1, but sites can choose to have the
+	copies go directly to "Reshelving", "Available", or any other status
+	defined in config.copy_status.  The org unit settings are:   * cat.default_copy_status_fast (for "Fast Add")   * cat.default_copy_status_normal (for "Add Volumes") Signed-off-by: Dan Scott <dscott at laurentian.ca> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20263
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm: flesh parts
+	in Items Out git-svn-id: svn://svn.open-ils.org/ILS/trunk@20259
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/xul/staff_client/server/circ/checkin.js,
+	Open-ILS/xul/staff_client/server/circ/checkout.js,
+	Open-ILS/xul/staff_client/server/circ/renew.js,
+	Open-ILS/xul/staff_client/server/circ/util.js: send the volume along
+	in the payload for circ functions.  Render CN prefixes/suffixes
+	correctly in xul lists if they're not fleshed git-svn-id: svn://svn.open-ils.org/ILS/trunk@20258
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/locale/en-US/circ.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties: 
+	label tweaks to disambiguate prefix and suffix columns in checkin
+	interface git-svn-id: svn://svn.open-ils.org/ILS/trunk@20257
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  berick <berick at esilibrary.com>
+
+	* : commit 56537cd1aabf35e472d303b3856224a38b70f923 Author: berick
+	<berick at esilibrary.com> Date:   Wed Apr 20 14:52:00 2011 -0400
+
+2011-04-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 919bb3c5a0dd04de1d4c07d3e0f0f442ab02b429 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Apr 20
+	18:50:44 2011 +0000
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am: New targets for staff
+	client Makefile rigrelease: Sets up branding/xulrunner-stub for release builds
+	Includes a change to windowssetup.nsi to swap out image set rigbeta: Sets up branding/xulrunner-stub for beta builds Includes a
+	change to windowssetup.nsi to swap out image set rebuild: Shortcut for re-using the same version/stamp as the last
+	build Updated stamp target to add files for rebuild.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20253
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 9ae796818d8ed8db2ca479854adc8951796b0cf9 Merge: 4b46eb6
+	70baa43 Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	20 12:17:29 2011 -0400
+
+2011-04-20  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/direct_ingest.pl,
+	Open-ILS/src/extras/import/direct_loader.pl,
+	Open-ILS/src/extras/import/marcFilterDump.pl,
+	Open-ILS/src/extras/import/marc_add_ids,
+	Open-ILS/src/extras/marc2html,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Order.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Acq/Picklist.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Z3950.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/ass
+	et.pm, Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Exporter.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/TemplateBatchBibUpdate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Vandelay.pm,
+	Open-ILS/src/support-scripts/marc_export.in,
+	Open-ILS/src/support-scripts/marc_stream_importer.pl: Always use
+	BinaryEncodeing => "UTF-8" with MARC::File::XML git-svn-id: svn://svn.open-ils.org/ILS/trunk@20250
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/offline-blocked-list.pl: Patch from
+	Jeff Davis addressing parameter usage issues git-svn-id: svn://svn.open-ils.org/ILS/trunk@20244
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2: 
+	format selector gets formats from CCVM fields, starting with
+	'mattype', falling back to item_type
+
+2011-04-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: added
+	simple field/value filter to the RO fetch/cache code;  useful for
+	limiting larger sets of config data like ccvm objects
+
+2011-04-20  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.functions.general.sql,
+	Open-ILS/src/sql/Pg/002.functions.aggregate.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql: Reorder some functions to
+	avoid creation failure on an empty db; remove unused (and
+	installation-killing) tsvector aggregate git-svn-id: svn://svn.open-ils.org/ILS/trunk@20238
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  Mike Rylander <mrylander at gmail.com>
+
+	* : commit bc33154ed4b47c6aa53e5d6428e056f05b283852 Merge: 2ee25ad
+	1b1839b Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	20 10:34:39 2011 -0400
+
+2011-04-20  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: use
+	the more explicit get_foo instead of find_foo for pub/cache object
+	lookup
+
+2011-04-20  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/Makefile.am,
+	Open-ILS/src/support-scripts/marc_export,
+	Open-ILS/src/support-scripts/marc_export.in, configure.ac: add
+	marc_export to list of scripts installed in /openils/bin Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20237
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm: 
+	flesh parts on items for circ functions.  Hrmm, but this only works
+	because unflesh_copy doesn't know about parts.  Do we need
+	unflesh_copy on checkout/checkin/renew result payloads? git-svn-id: svn://svn.open-ils.org/ILS/trunk@20233
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_editor.js: remove the
+	infinite loop that batch volume template application was causing git-svn-id: svn://svn.open-ils.org/ILS/trunk@20232
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_editor.js: fix
+	export templates, copy/paste-o git-svn-id: svn://svn.open-ils.org/ILS/trunk@20231
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/menu.js: More hotkey
+	fixes - Invalidate keyset cache Thanks to
+	http://forums.mozillazine.org/viewtopic.php?f=19&t=2048501, Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20228
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-20  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/util/network.js: Hotkey
+	Fixes Attempt to be more robust/forceful on clearing hint text Reset hotkeys less often (such as *not* on operator change) Re-enable keyset properly Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20227
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/po/opac.js/opac.js.pot: Typo: Propeties/Properties Should have merged this with the source file fix. Ah well.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20224
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/openils/opac/nls/opac.js: Typo:
+	Propeties/Properties git-svn-id: svn://svn.open-ils.org/ILS/trunk@20223
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Use
+	top level join instead of subquery in hold queue position query This is more readily optimized by the Postgres planer.  Note also, for very large data sets (lots of holds, on the order of
+	100k+ active), the following is also advised:  ALTER TABLE action.hold_copy_map alter column target_copy SET
+	 statistics 500, alter column hold set statistics 500; ANALYZE
+	action.hold_copy_map; This gives the planner better data about the hold-copy-map
+	n-distinct.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20221
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/list.js: Fix
+	dump-style printing by ensuring 'params' is defined before accessing
+	it git-svn-id: svn://svn.open-ils.org/ILS/trunk@20216
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 28283b6fea32c44658a515816943b577281de3af Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Apr 19
+	16:36:14 2011 +0000
+
+2011-04-19  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/Makefile.am, Open-ILS/src/extras/cache-generator.sh: 
+	Add a wrapper for autogen.sh which generates a date+content hash for
+	use in (browser) cache killing git-svn-id: svn://svn.open-ils.org/ILS/trunk@20213
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* : mark these as binary git-svn-id: svn://svn.open-ils.org/ILS/trunk@20211
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.client_menus.sql,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/auth/controller.js,
+	Open-ILS/xul/staff_client/chrome/content/main/main.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_overlay.xu
+	l, Open-ILS/xul/staff_client/chrome/content/util/file.js,
+	Open-ILS/xul/staff_client/chrome/content/util/network.js,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties,
+	Open-ILS/xul/staff_client/chrome/skin/global.css,
+	Open-ILS/xul/staff_client/chrome/skin/hotkeys/Default.keyset,
+	Open-ILS/xul/staff_client/chrome/skin/hotkeys/Minimal.keyset,
+	Open-ILS/xul/staff_client/chrome/skin/hotkeys/None.keyset,
+	Open-ILS/xul/staff_client/chrome/skin/hotkeys/README,
+	Open-ILS/xul/staff_client/chrome/skin/media/images/licenses.txt,
+	Open-ILS/xul/staff_client/defaults/preferences/prefs.js: Menu
+	Hotkeys and Toolbars Dynamic Hotkey sets New cataloging toolbar New updates to circ toolbar New menu items and updates to menus in admin menu area Toolbar/hotkey settings can be saved to workstation prefs from admin
+	-> workstation administration Update org unit setting for button_bar to be a string, circ or cat
+	by default to pick those two toolbars Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20207
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/autogen.sh: Print the path to files written by
+	autogen in support of a cache-killing hash git-svn-id: svn://svn.open-ils.org/ILS/trunk@20205
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* : mark these as binary git-svn-id: svn://svn.open-ils.org/ILS/trunk@20203
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/custom_images/DCO,
+	Open-ILS/xul/staff_client/custom_images/README,
+	Open-ILS/xul/staff_client/windowssetup.nsi: More Installer Fun Define an Install Tag, defaulting to the product tag.  This will be
+	used in the install location and registry setting for where we
+	installed to.  Different install tags will mean different installs, so Trunk won't
+	(by default) install over 2.1 (for example) Plus, include riggings for Mike Peter's new install images.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20199
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/po/db.seed/db.seed.pot: Update for corrected cmc.name
+	-> cmc.label marking in seed data git-svn-id: svn://svn.open-ils.org/ILS/trunk@20195
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Mark cmc.label for
+	translation, not cmc.name, in seed data git-svn-id: svn://svn.open-ils.org/ILS/trunk@20192
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml: Mark cmf and cmc labels as
+	translatable We went to the effort of extracting the translatable text from
+	950.data.seed-values.sql, but had not marked the fields as
+	translatable in the IDL. Now at least the out-of-the-box fields and
+	classes will easily be able to have translations.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20189
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/po/AutoFieldWidget.js/AutoFieldWidget.js.pot,
+	build/i18n/po/Searcher.js/Searcher.js.pot,
+	build/i18n/po/TranslatorPopup.js/TranslatorPopup.js.pot,
+	build/i18n/po/User.js/User.js.pot,
+	build/i18n/po/XULTermLoader.js/XULTermLoader.js.pot,
+	build/i18n/po/acq.js/acq.js.pot,
+	build/i18n/po/admin.properties/admin.properties.pot,
+	build/i18n/po/auth.properties/auth.properties.pot,
+	build/i18n/po/authority.js/authority.js.pot,
+	build/i18n/po/capture.js/capture.js.pot,
+	build/i18n/po/cat.properties/cat.properties.pot,
+	build/i18n/po/circ.properties/circ.properties.pot,
+	build/i18n/po/common.properties/common.properties.pot,
+	build/i18n/po/conify.dtd/conify.dtd.pot,
+	build/i18n/po/conify.js/conify.js.pot,
+	build/i18n/po/db.seed/db.seed.pot,
+	build/i18n/po/fm_IDL.dtd/fm_IDL.dtd.pot,
+	build/i18n/po/ils_events.xml/ils_events.xml.pot,
+	build/i18n/po/lang.dtd/lang.dtd.pot,
+	build/i18n/po/multiclass_search_help.html/multiclass_search_help.ht
+	ml.pot, build/i18n/po/offline.properties/offline.properties.pot,
+	build/i18n/po/opac.dtd/opac.dtd.pot,
+	build/i18n/po/opac.js/opac.js.pot,
+	build/i18n/po/patron.properties/patron.properties.pot,
+	build/i18n/po/pickup_and_return.js/pickup_and_return.js.pot,
+	build/i18n/po/pull_list.js/pull_list.js.pot,
+	build/i18n/po/register.js/register.js.pot,
+	build/i18n/po/reports.dtd/reports.dtd.pot,
+	build/i18n/po/reports.js/reports.js.pot,
+	build/i18n/po/reservation.js/reservation.js.pot,
+	build/i18n/po/selfcheck.js/selfcheck.js.pot,
+	build/i18n/po/serial.properties/serial.properties.pot,
+	build/i18n/po/vandelay.dtd/vandelay.dtd.pot: Check in the POT files
+	so that translation interface can be satisfied git-svn-id: svn://svn.open-ils.org/ILS/trunk@20188
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/Makefile: Add openils.widget.Searcher Dojo NLS to the
+	i18n build Necessary for the "advanced" searchbar on the Evergreen AjaxPAC.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20185
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Correct
+	encoding issue with authority_control_fields.pl Is there ever a time when MARC::File::XML would be invoked with
+	anything other than BinaryEncoding => 'utf-8'? Not here, at least.
+	Addresses LP# 764582.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20182
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 307a43715f7a4657336cc2d8a09e88e2efbf0977 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 18
+	19:57:01 2011 +0000
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/holds.js: one more fix,
+	for Show in Catalog on issuance holds git-svn-id: svn://svn.open-ils.org/ILS/trunk@20178
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties: 
+	display issuance label, not subscription label git-svn-id: svn://svn.open-ils.org/ILS/trunk@20176
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/patron/holds.js: add Part Holds to
+	Actions for this Record -> View Holds.  Also add xul support for
+	displaying issuance holds (needs testing) git-svn-id: svn://svn.open-ils.org/ILS/trunk@20174
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/patron/holds.js: support Part Holds
+	in xul lists git-svn-id: svn://svn.open-ils.org/ILS/trunk@20171
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: no
+	need to flesh the record here git-svn-id: svn://svn.open-ils.org/ILS/trunk@20170
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: typo git-svn-id: svn://svn.open-ils.org/ILS/trunk@20168
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b9750bf6b74bc0b9e4a75d099301c7c645bfe749 Author: gmc
+	<gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 18
+	15:41:20 2011 +0000
+
+2011-04-18  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/build-db.sh,
+	Open-ILS/src/sql/Pg/grab-db-comments.pl,
+	Open-ILS/src/sql/Pg/sql_file_manifest,
+	Open-ILS/src/sql/Pg/update-db-comments.sh: script to update DB
+	object comments New script, update-db-comments.sh, to be run as part of upgrades to
+	refresh comments on database schema objects.  Usage is:   update-db-comments.sh db-host db-port db-name db-user db-pass The helper script grab-db-comment.pl is what actually parses out the
+	comment statements.  To avoid repetition, the list of default SQL scripts to use when
+	initializing an Evergreen database has been moved to a new file
+	called sql_file_manifest.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20161
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/008.schema.query.sql,
+	Open-ILS/src/sql/Pg/020.schema.functions.sql,
+	Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/200.schema.acq.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql: minor improvements to
+	database object comments * remove copyright, license verbiage, and C-style comment marking   from the comments; these can live in the SQL scripts * updated several copyright headers * minor improvements to documentation of a couple tables Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20160
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/util.js: fixes Edit Volumes
+	action by flattening the volume objects before updating them git-svn-id: svn://svn.open-ils.org/ILS/trunk@20158
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 995e8d99dac1ae055dc2b88dfbf19bd4233600e6 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 18
+	05:27:15 2011 +0000
+
+2011-04-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/tests/check_entities.py,
+	build/i18n/tests/check_properties.py: Enable relative paths in i18n
+	testing scripts We were 98% of the way there; now we no longer need to cd into the
+	same directory as the i18n testing scripts to run them with
+	meaningful output. Should be useful for adding these to the CI
+	server.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20148
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/tests/check_entities.py: Don't check .js files for
+	entities Must have asked this script to check JS files for valid entities for
+	a reason at some point in the dark past, but it couldn't have been a
+	very good reason; we're getting a false positive that needs to be
+	hushed now. Better to just stop looking for XML entities in
+	JavaScript.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20145
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Empty strings in
+	oils_i18n_gettext() throw i18n errors When you run 'make newpot', if you have an empty string in an
+	oils_i18n_gettext() function, you'll see errors like: Error in line 1712 of SQL source file: 'NoneType' object has no
+	attribute 'group' This satisfies the i18n build process and also serves as a more
+	evident placeholder for expanded descriptions if someone feels so
+	inclined in the future.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20139
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-17  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/print.js: Add new
+	macros for print templates.  %-TRIM% Trims whitespace before the macro %TRIM-% Trims whitespace after the macro %SUBSTR(#)%...%SUBSTR_END% Take substring starting at position # to
+	end of string.  If # is negative count backwards from end of string.  %SUBSTR(#,#)%...%SUBSTR_END% Same as previous, but limit to second
+	provided number characters after start point.  If second number is
+	negative, count backwards instead of forwards.  TRIM macros inside of SUBSTR will be replaced first, then SUBSTR,
+	then TRIM outside of SUBSTR.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20137
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-17  Mike Rylander <mrylander at gmail.com>
+
+	* : commit d8627efd4136a265b2cd7bc18a17082ecd9e829d Merge: 4f59a8e
+	ab70fb8 Author: Mike Rylander <mrylander at gmail.com> Date:   Sun Apr
+	17 09:13:00 2011 -0400
+
+2011-04-16  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js: fix Add Items
+	off of volumes by changing the label key in copy_shortcut to
+	callnumber composite key git-svn-id: svn://svn.open-ils.org/ILS/trunk@20136
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: trace
+	statements.  need to change how copy_shortcut is constructed in
+	parent interfaces git-svn-id: svn://svn.open-ils.org/ILS/trunk@20135
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: trace
+	statements git-svn-id: svn://svn.open-ils.org/ILS/trunk@20134
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: trace
+	statements git-svn-id: svn://svn.open-ils.org/ILS/trunk@20133
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: 
+	comment tweak git-svn-id: svn://svn.open-ils.org/ILS/trunk@20132
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0521.schema.u-no-uri-use.sql: Allow NULL
+	"use restriction" fields for located URIs The asset.uri.use_restriction field, which is really a sort of
+	public notes field for 856 fields, was grabbing the $u subfield
+	(URL) as a sort of last-gasp effort to give it some data. However,
+	the effect was rather odd and led to workarounds like Conifer's skin
+	to avoid displaying the use restriction field if its value was
+	identical to the URL, etc.  Instead, stop grabbing $u and handle the case where use_restriction
+	column is NULL gracefully, just like the schema intended.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20123
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml: Do
+	not clear auri links in default skin The dojo orphan() call which attempted to wipe any non-located 856s
+	was actually wiping the located 856s in the record detail display.  Removing the extra call makes this work in Firefox and Chromium, at
+	least.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20120
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-16  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0520.schema.clear-old-asset-uris.sql: 
+	Delete ##URI## call numbers and uri_call_number_map entries on bib
+	reingest This approach will lead to some acn/auricnm ID inflation, but it
+	works.  Addresses LP# 761130 (immortal ##URI## entries in asset.call_number)
+	reported by Ben Shum and LP# 761085 (cannot delete bib with ##URI##
+	volumes) reported by Jason Etheridge.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20117
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-15  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/build-oils-db.sh: prune unused script;
+	purpose now served by eg_db_config.pl Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20115
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-15  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Protect dumb
+	JavaScript engines from having to deal with actual Unicode The holdings_xml format did not include an XML declaration, but
+	adding that as we do here still does not make the Firefox and
+	Chromium JS engines capable of consuming XML that contains Unicode
+	content outside of the base ASCII range.  So, we invoke entityize() to convert anything outside of the realm
+	of ASCII to XML entities. An alternative would be to invoke
+	entityize() in OpenILS::Application::SuperCat::unAPI::acn but it's
+	not clear if that would interfere with any other uses.  With this change, library names / copy location names with Unicode
+	content can be displayed correctly on the search results page.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20112
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-15  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/advanced.tt2,
+	Open-ILS/web/templates/default/opac/home.tt2,
+	Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/mylist.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/printnav.tt2,
+	Open-ILS/web/templates/default/opac/parts/utils.tt2,
+	Open-ILS/web/templates/default/opac/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: move utils.tt2 to
+	printnav.tt2 just to give it a more explicit name; i18n and cleanup
+
+2011-04-15  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: use org
+	unit shortname for site param; capture site/depth in search builder
+	to pass on to unapi retrieval, though there's still some template
+	work to do w/ displaying the correct data there (for copy counts)
+
+2011-04-15  Mike Rylander <mrylander at gmail.com>
+
+	* : commit caed63544e6e167d04bea40d0050b71bd6e991af Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Apr 15
+	16:27:46 2011 +0000
+
+2011-04-15  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 34f5bcde3cfbbe6bbd66fe19cad6eb49a459a4ae Merge: a64a412
+	a07592f Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Apr
+	15 12:14:04 2011 -0400
+
+2011-04-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0518.schema.extract_fixed_fields_from_l
+	eader.sql: Properly support extracting MARC21 fixed fields from the
+	leader, not just the 00x controlfields git-svn-id: svn://svn.open-ils.org/ILS/trunk@20104
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0517.schema.multiple-9s-in-856.sql: 
+	thinko in for-in-array loop, uncovered by error testing from Ben
+	Shum git-svn-id: svn://svn.open-ils.org/ILS/trunk@20101
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-15  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 348c0f6061bf536d5cc7c37ed995b6ec8c48f021 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Apr 15
+	14:49:34 2011 +0000
+
+2011-04-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/c-apps/oils_sql.c: Protect pcrud-ish retrieve from an
+	empty result set git-svn-id: svn://svn.open-ils.org/ILS/trunk@20094
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-15  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5f176d5ad2eaf6c04392f96eac95b81ae14ee8f4 Merge: 84be617
+	73c6e8d Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Apr
+	15 09:21:40 2011 -0400
+
+2011-04-14  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm,
+	Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml: 
+	Restore URIs in marcxml-uris unAPI format At some point (r16750) we started doing a numeric comparison of
+	$flesh instead of just checking to see if $flesh was defined; this
+	returned false when $flesh == 'uris', preventing URIs from being
+	included in the marcxml-uris unAPI format.  This restores URIs to marcxml-uris and so we can revert the extra
+	BibTemplate call in rdetail_summary.xml.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20091
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-14  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml: 
+	Specify the holdings_xml unAPI format for URI calls The unAPI marcxml-uris format is not returning URIs at the moment.
+	While we're getting that fixed, use the holdings_xml format to get
+	the URI job done; requires an extra JS call, but that's better than
+	not working at all.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20088
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-14  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	fetch bookbags inside xact to avoid replication delays, which can
+	occur directly after bookbag-update actions
+
+2011-04-14  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm: Escape rather than filter SIMILAR TO metacharacters in patron
+	crazy search The filtering I introduced in r19983 was overly aggressive, and
+	included characters that weren't actually SIMILAR TO metacharacters.
+	Instead, escape each character, carefully going through the list of
+	metacharacters listed at
+
+	http://www.postgresql.org/docs/8.4/interactive/functions-matching.htmlWorks for email addresses like "foo.bar+baz at example.com".  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20085
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-14  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/extras/circ/alt_holds_print.js,
+	Open-ILS/xul/staff_client/server/patron/holds.js: Address LP
+	#754880, where printing happens before the progress dialog can be
+	cleared in the alternate holds pull list print interface Additionally, provide the usual "print page" button so that the list
+	can be reprinted at will git-svn-id: svn://svn.open-ils.org/ILS/trunk@20082
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-14  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0516.schema.acq-marc-extract.sql: 
+	upgrade script for consistency w/ schema change in r20073 git-svn-id: svn://svn.open-ils.org/ILS/trunk@20079
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-14  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/quick_metarecord_map.sql: tweaks to
+	quick_metarecord_map.sql * used version from wiki, which provides same results as the   previous version but performs better on large databases * now works without editing (a vacuum cannot run inside of a
+	transaction) * don't do vacuum full, just a regular vacuum analyze [1]
+
+	http://evergreen-ils.org/dokuwiki/doku.php?id=scratchpad:random_magic_spells#how_to_generate_metarecords_for_a_newly_loaded_bib_batchSigned-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20075
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-14  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/200.schema.acq.sql: rely on search_path to
+	locate the extract_marc_field() function which is now installed in
+	the 'evergreen' schema by default git-svn-id: svn://svn.open-ils.org/ILS/trunk@20073
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-13  berick <berick at esilibrary.com>
+
+	* : commit 12ec58a976c75ba0b3894bcac1e88b7218d267be Author: berick
+	<berick at esilibrary.com> Date:   Wed Apr 13 14:25:58 2011 -0400
+
+2011-04-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b72c5e8957c5058ff4c2c27b094030886d16d5a0 Merge: 94e9521
+	c06bd3f Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	13 14:14:31 2011 -0400
+
+2011-04-13  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/0515.schema.copy-vis-cache.sql: Thinko
+	in the delete query for copy visibility caching git-svn-id: svn://svn.open-ils.org/ILS/trunk@20070
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-13  berick <berick at esilibrary.com>
+
+	* : commit cb41edb32f40ebc1dc3413cb265b02403353e334 Author: berick
+	<berick at esilibrary.com> Date:   Wed Apr 13 13:53:14 2011 -0400
+
+2011-04-13  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: Protect search against all-deleted bibs by pinning the
+	estimation ratios in that case git-svn-id: svn://svn.open-ils.org/ILS/trunk@20069
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit cd6711edc2ff5dfee5d8898d9aceacb17d9f6ec3 Merge: adca6a0
+	b462579 Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	13 11:53:52 2011 -0400
+
+2011-04-13  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0514.schema.unapi2-strip-whitespace.sql: 
+	strip useless whitespace from XML output for transfer size reduction git-svn-id: svn://svn.open-ils.org/ILS/trunk@20065
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-13  berick <berick at esilibrary.com>
+
+	* : commit 57130f944500b02f3b3da7e5ae0305ae51b68686 Author: berick
+	<berick at esilibrary.com> Date:   Wed Apr 13 11:24:07 2011 -0400
+
+2011-04-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit fb3577b307f12d68e5ee7b94b927be77b0818ca5 Merge: 75d0e68
+	6d7c451 Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	13 11:16:01 2011 -0400
+
+2011-04-13  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0513.schema.svf-in-unapi2.sql: add SVF
+	data to in-db unAPI git-svn-id: svn://svn.open-ils.org/ILS/trunk@20063
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-13  berick <berick at esilibrary.com>
+
+	* : commit 1489e830de16ffb5c9b7a683a5c1762e019af300 Author: berick
+	<berick at esilibrary.com> Date:   Wed Apr 13 10:46:32 2011 -0400
+
+2011-04-13  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 53e086ea91f862ce6c35c2b7ec6830a974032c6a Merge: 348356b
+	22b9755 Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	13 09:56:02 2011 -0400
+
+2011-04-12  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/0510.schema.search_path.sql: repaired
+	SQL upgrade syntax error git-svn-id: svn://svn.open-ils.org/ILS/trunk@20060
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-12  berick <berick at esilibrary.com>
+
+	* : commit e2fee3428ccaeb39080e2fdbb99e6dd18118c6b7 Author: berick
+	<berick at esilibrary.com> Date:   Tue Apr 12 17:31:26 2011 -0400
+
+2011-04-12  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: moving
+	toward svf for mattype extraction; much media/material-type icon
+	cleanup; icons are now accessed directly via code instead of
+	inconsistent and map-requiring human names
+
+2011-04-12  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/biblio.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/dbi
+	.pm, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/010.schema.biblio.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/300.schema.staged_search.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/999.functions.global.sql,
+	Open-ILS/src/sql/Pg/upgrade/0512.schema.multi-home-items.sql,
+	Open-ILS/web/opac/common/js/config.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/advanced.js,
+	Open-ILS/web/opac/skin/default/js/copy_details.js,
+	Open-ILS/web/opac/skin/default/js/rdetail.js,
+	Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml,
+	Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_extras.xml,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.xul,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/util/exec.js,
+	Open-ILS/xul/staff_client/chrome/content/util/widget_prompt.js,
+	Open-ILS/xul/staff_client/chrome/content/util/widget_prompt.xul,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.xul,
+	Open-ILS/xul/staff_client/server/cat/manage_multi_home_items.js,
+	Open-ILS/xul/staff_client/server/cat/manage_multi_home_items.xul,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties: Add
+	support for Multi-Homed Items (aka Foreign Bibs, aka Linked Items) Evergreen needs to support the ability to attach a barcoded item to
+	  more than one bibliographic record.  Use cases include: 1. Barcoded E-Readers with preloaded content     * Readers would all be items attached to a single "master" bib
+	    record in the traditional way, through call numbers that define
+	    their ownership * Each reader, as a barcoded item, can be attached through
+	    Multi-homed Items to records describing the list of preloaded
+	    content * These attached Multi-homed Items can be added and removed as
+	  content is swapped out on each reader 2. Dual-language items     * Cataloger decides which of several alternate languages is the
+	    primary, and attaches the barcoded item to that record in the
+	    traditional way * Alternate language records are attached to this item through
+	  Multi-homed Items 3. "Back-to-back" books -- two books printed upside down relative to
+	    one another, with two "front" covers * Cataloger decides which of the two titles is the primary, and
+	    attaches the barcoded item to that record in the traditional way * Alternate title record is attached to this item through
+	  Multi-homed Items 4. Bound Volumes -- Sets of individual works collected into a single
+	    barcoded package * Cataloger decides which of the titles is the primary (or creates a
+	    record for the collection as a whole), and attaches the barcoded
+	    item to that record in the traditional way * Remaining title records for the collected peices are attached to
+	this item through Multi-homed Items Functionality funded by Natural Resources Canada --
+	http://www.nrcan-rncan.gc.ca/com/ Please see
+
+	http://git.esilibrary.com/?p=evergreen-equinox.git;a=shortlog;h=refs/heads/multi_home for the full commit history.git-svn-id: svn://svn.open-ils.org/ILS/trunk@20056
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-12  Mike Rylander <mrylander at gmail.com>
+
+	* : commit d429c2d3bcd1ab3152de1091a4e7699a4af7114a Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Apr 12
+	18:16:07 2011 +0000
+
+2011-04-12  Mike Rylander <mrylander at gmail.com>
+
+	* : commit d45d2a903090953951879a7154e08c584dbcdafd Merge: c4795b5
+	f22daee Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Apr
+	12 13:29:54 2011 -0400
+
+2011-04-12  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.functions.general.sql,
+	Open-ILS/src/sql/Pg/010.schema.biblio.sql,
+	Open-ILS/src/sql/Pg/011.schema.authority.sql,
+	Open-ILS/src/sql/Pg/210.schema.serials.sql: Final cleanup for the
+	base schema, re search_path ... I hope git-svn-id: svn://svn.open-ils.org/ILS/trunk@20052
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-12  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/010.schema.biblio.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0510.schema.search_path.sql: Fix
+	functions stranded in the evergreen schema without a search path
+	reference (ugly but mechanical) git-svn-id: svn://svn.open-ils.org/ILS/trunk@20047
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-12  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/0509.schema.better_maintain_901.sql: 
+	add missing upgrade script Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20044
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-11  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 0762a085ee9eaaeb2c3d2ef873e624f912971e29 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 11
+	16:55:56 2011 +0000
+
+2011-04-11  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* configure.ac: fix my overzealous editing of configure.ac Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20039
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-10  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 22f159aba7223e54242b58ef3684093134951359 Merge: 28d56b3
+	f867ceb Author: Mike Rylander <mrylander at gmail.com> Date:   Sun Apr
+	10 20:55:57 2011 -0400
+
+2011-04-10  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/bill_wizard.js,
+	Open-ILS/xul/staff_client/server/patron/bill_wizard.xul: patch from
+	jamesrf for lp#756880 for Grocery Billing Location in Bill Patron
+	wizard git-svn-id: svn://svn.open-ils.org/ILS/trunk@20036
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-10  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js: for lp
+	bug#756838, consistent copy status for new items.  jamesrf++ git-svn-id: svn://svn.open-ils.org/ILS/trunk@20033
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-08  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main_payments.tt2: added
+	paging to payment history; added paging arrows to
+	circ/holds/payments history links
+
+2011-04-08  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2: make public
+	bookbag name's links to the public view of the bookbag; minor
+	tidying
+
+2011-04-08  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/ui/default/acq/common/li_table.js: repaired bug in
+	prepayment_required check.  property -> method git-svn-id: svn://svn.open-ils.org/ILS/trunk@20030
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-08  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 4161606758dc918354b4e9f84f08395c59568a96 Merge: 5fcfd77
+	34a2998 Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Apr
+	8 14:53:46 2011 -0400
+
+2011-04-08  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js: For
+	transit_slip template, %item_title%, %item_barcode%, etc. need to be
+	in the Header, not the Line Item git-svn-id: svn://svn.open-ils.org/ILS/trunk@20027
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-08  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install: Add Net::IP dependency for
+	Fedora per r20023 Required for the new ability of the Apache redirect module to
+	optionally read redirect skin and domain from the library IP's
+	configuration file git-svn-id: svn://svn.open-ils.org/ILS/trunk@20025
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-08  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Redirect.pm: patch from Ben
+	Ostrowsky (w/ input) to add support to the Apache redirect module to
+	also optionally read redirect skin and domain from the library IP's
+	configuration file.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20023
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/hold_history.tt2: 
+	improved holds history paging
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/circ_history.tt2: 
+	repaired circ history paging
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_password.tt2: 
+	Support for password update
+
+2011-04-07  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/myopac.js: test for pre-cat
+	slightly off in OPAC My Account, spotted by Steve Callender git-svn-id: svn://svn.open-ils.org/ILS/trunk@20017
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: after
+	clearing out a stale ses cookie, return user to originally requested
+	resource instead directing home.  this prevents the case where going
+	to 'my account' in presence of expired ses cookie redirects the user
+	home
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2: tie in
+	select-all option in lists interfaces
+
+2011-04-07  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.functions.general.sql,
+	Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql: further fixes to
+	maintain_901 Now correctly handles &, <, or > appearing in the tcn_value or
+	tcn_source.  Also introduces a trivial utility stored function,
+	evergreen.xml_escape(): evergreen.xml_escape(TEXT) returns TEXT: converts '&', '<', and '>'
+	to XML entities Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20014
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: removed
+	debug log line
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: consistent
+	w/ previous opac, default to barcode login and jump to username only
+	if there is a barcode regex (and regex does not match)
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/update_username.tt2: 
+	oops, forgot to git-add w/ last commit
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2: 
+	implemented username update
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: speed up
+	and clean up the user holds out/available count summary call
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/myopac/prefs_base.tt2: 
+	oops, missed a wrapper decl. fix; repaired
+
+2011-04-07  berick <berick at esilibrary.com>
+
+	* : commit 5fcfd7769aa745b3bb2adcbe7944b70eb602311e Merge: 34e3fa8
+	ab820d4 Author: Mike Rylander <mrylander at gmail.com> Date:   Thu Apr
+	7 10:16:26 2011 -0400
+
+2011-04-07  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 212d6aad09b7a2fc35d7e908910de59f3f25e38c Author: berick
+	<berick at esilibrary.com> Date:   Thu Apr 7 10:15:42 2011 -0400
+
+2011-04-07  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/marc2sre.pl.in: Enable marc2sre.pl to
+	run reasonably fast with a large set of bibs Our previous iteration of marc2sre.pl used an ILIKE stanza beginning
+	with a wildcard to match system control numbers without having to
+	specify the institution's MARC code.  This worked, but was painfully
+	slow in large bib sets as the database needed to use a bitmap index
+	scan to find matches.  By adding a --prefix flag, the user can specify the institutional
+	MARC code for the set of records and we can use an exact match
+	against metabib.full_rec.value, which is immeasurably faster.  This
+	is, of course, a problem if there are multiple institutional MARC
+	codes in use for a given set of bibliographic records.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20012
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/Makefile.am, Open-ILS/src/extras/import/marc2are.pl,
+	Open-ILS/src/extras/import/marc2are.pl.in,
+	Open-ILS/src/extras/import/marc2bre.pl,
+	Open-ILS/src/extras/import/marc2bre.pl.in,
+	Open-ILS/src/extras/import/marc2sre.pl,
+	Open-ILS/src/extras/import/marc2sre.pl.in,
+	Open-ILS/src/extras/import/parallel_pg_loader.pl,
+	Open-ILS/src/extras/import/parallel_pg_loader.pl.in, configure.ac: 
+	install command-line MARC import tools in @prefix@/bin (corrected version after dealing with apparent git stash breakage) No longer need to keep the source tree around to use marc2are.pl,
+	marc2sre.pl, marc2bre.pl, and parallel_pg_loader.pl.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20010
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/Makefile.am, Open-ILS/src/extras/import/marc2are.pl,
+	Open-ILS/src/extras/import/marc2are.pl.in,
+	Open-ILS/src/extras/import/marc2bre.pl,
+	Open-ILS/src/extras/import/marc2bre.pl.in,
+	Open-ILS/src/extras/import/marc2sre.pl.in,
+	Open-ILS/src/extras/import/parallel_pg_loader.pl,
+	Open-ILS/src/extras/import/parallel_pg_loader.pl.in, configure.ac: 
+	Revert "install command-line MARC import tools in @prefix@/bin" This reverts commit 7125758576667feeff054ceb4b79d7d1510bbc6f.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@20009
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: circ
+	history sorting newest to oldest, got paging working, but could use
+	some work..
+
+2011-04-06  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/Makefile.am, Open-ILS/src/extras/import/marc2are.pl,
+	Open-ILS/src/extras/import/marc2are.pl.in,
+	Open-ILS/src/extras/import/marc2bre.pl,
+	Open-ILS/src/extras/import/marc2bre.pl.in,
+	Open-ILS/src/extras/import/marc2sre.pl.in,
+	Open-ILS/src/extras/import/parallel_pg_loader.pl,
+	Open-ILS/src/extras/import/parallel_pg_loader.pl.in, configure.ac: 
+	install command-line MARC import tools in @prefix@/bin No longer need to keep the source tree around to use marc2are.pl,
+	marc2sre.pl, marc2bre.pl, and parallel_pg_loader.pl.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20008
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/marc2sre.pl: Improve error handling in
+	marc2sre.pl when bib ID is not found If we can't find a bibliographic record ID to use in our load, then
+	skip that MFHD record and move on to the next one. Using the counter
+	gives sites a chance to identify which record caused the problem.  Aside: bitmap index scans for leading '%' LIKE searches make the
+	--bibfield / --bibsubfield extremely slow in large datasets. If at
+	all possible, avoid this path! git-svn-id: svn://svn.open-ils.org/ILS/trunk@20006
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0508.schema.maintain_901_amp_fix.sql: 
+	fix crash when importing/saving bib with '&' in TCN value Also fix similar glitch if ampersand is present in the TCN source.  Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@20003
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version git-svn-id: svn://svn.open-ils.org/ILS/trunk@20001
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2: minor cleanup
+
+2011-04-06  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/prefs/notify.tt2: added
+	support for updating opt-in settings preferences
+
+2011-04-06  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: Patch from Thomas
+	Berezansky to support patron priv expiration information in SIP2 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19998
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  berick <berick at esilibrary.com>
+
+	* : commit facb1136a49e424d6cd4034044119680073f88f1 Author: berick
+	<berick at esilibrary.com> Date:   Wed Apr 6 12:17:01 2011 -0400
+
+2011-04-06  Mike Rylander <mrylander at gmail.com>
+
+	* : commit e9b90c69c7c984a224685fc162391781181f2b54 Merge: fde9a0d
+	35ce3ab Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Apr
+	6 11:40:51 2011 -0400
+
+2011-04-06  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/items.js,
+	Open-ILS/xul/staff_client/server/patron/items_overlay.xul: add Item
+	Attribute Editor to patron Items Out git-svn-id: svn://svn.open-ils.org/ILS/trunk@19996
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  berick <berick at esilibrary.com>
+
+	* : commit 39523da50e6478a56b7c13292c647f32797c9563 Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Apr 6
+	03:58:36 2011 +0000
+
+2011-04-06  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/marc2sre.pl: Whitespace git-svn-id: svn://svn.open-ils.org/ILS/trunk@19991
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-06  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/import/marc2sre.pl: Overhaul the marc2sre.pl
+	script for importing MFHD records Add --bibfield / --bibsubfield options to support retrieving the bib
+	record ID by searching the specified field/subfield for the
+	identifier, instead of assuming that the identifier =
+	biblio.record_entry.id. Avoiding the lookup will be much faster, but
+	some sites want to start clean with their bibliographic record IDs,
+	so this supports them.  Remove the need for passing in the owning user's password and simply
+	do a lookup by username in the actor.usr table. This is a bit more
+	secure as the password isn't exposed on the command line and you can
+	easily set someone else as the owner of the records without having
+	to know their password.  Add significant internal help via Pod::Usage.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19989
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5349a858315df2c16c0516dea647ce68735391cb Author: berick
+	<berick at esilibrary.com> Date:   Tue Apr 5 17:14:25 2011 -0400
+
+2011-04-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f6f578d465ca188b0e3d89bf6ff917eb6ccf069f Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Apr 5
+	20:11:57 2011 +0000
+
+2011-04-05  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/openils/PermaCrud.js: More PermaCrud error
+	handling cleanup git-svn-id: svn://svn.open-ils.org/ILS/trunk@19987
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-05  Mike Rylander <mrylander at gmail.com>
+
+	* : commit bd8c1cc5c80e45a475a8ff5c132ae7c6be241668 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Apr 5
+	17:06:09 2011 +0000
+
+2011-04-05  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm: Prevent patron search from returning horrible errors on
+	regexian input Add a utility method, _clean_regex_chars(), to filter common regex
+	characters out of input values.  When these characters are passed to
+	database SIMILAR searches, strange things (generally ugly errors)
+	can happen - so filter them out.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19983
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  Mike Rylander <mrylander at gmail.com>
+
+	* : commit cce75ff48f4ca21677816106519f703f89649098 Author: dbwells
+	<dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 4
+	19:45:56 2011 +0000
+
+2011-04-04  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/serial/editor_base.js: Fix edit
+	highlighting in Serial Control View git-svn-id: svn://svn.open-ils.org/ILS/trunk@19975
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/xul/staff_client/server/patron/search_form_horiz_overlay.x
+	ul: reorder tabindex for horizontal patron search.  non-flex the
+	search button.  thanks to sylvar and others for poking git-svn-id: svn://svn.open-ils.org/ILS/trunk@19968
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/result_common.js: tweak to
+	default suggestion for low-hits search Rather than show a suggestion for every word in the original search
+	phrase, only display suggestions for words not found in the
+	dictionary.  For example, rather than having a search for "Amesh
+	paradise" return a suggestion of "Amish paraders", return "Amish
+	paradise" as the suggestion (assuming the default dictionaries are
+	used).  Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19964
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 2c24c04ed3efc94ffd7bc0e5ab588b7def4a4dea Author: gmc
+	<gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 4
+	17:05:23 2011 +0000
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/menu.js: re-fix
+	senator's fixes that I mangled git-svn-id: svn://svn.open-ils.org/ILS/trunk@19954
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/auth/controller.js,
+	Open-ILS/xul/staff_client/chrome/content/main/main.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/util/network.js: Client
+	Permission Overhaul Menu/Toolbar commands can have a perm= attribute added, containing a
+	space-seperated list of permissions.  Without it they stay enabled
+	at all times (or disabled if they are manually disabled in the
+	file).  With it they disable unless the user has at least one
+	permission listed.  In addition, made *all* new or active windows get UI updates when
+	changing operators, including updated menu enable/disable.  Will need a check on the permissions from previous commit, and
+	probably a pile more from those who understand what needs what.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19953
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Add some permissions for testing Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19952
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Move labels/accesskeys back onto menuitem nodes Apparently command labels override everything else, rather than the
+	other way around.  Set at location failitates easier labels by context (different
+	menus, shorter labels on toolbar, etc).  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19951
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Move most label/accesskeys to command nodes The following entries had multiple menu items with differing labels.
+	I picked one for each to be the "default" on the command node.  The
+	others were left on the menuitems.  cmd_edit_copy_buckets (edit/cat) cmd_edit_volume_buckets (edit/cat,
+	commented out) cmd_edit_record_buckets (edit/cat) cmd_circ_checkout
+	(circ/circ/search) cmd_copy_status (circ/cat/search) cmd_search_opac
+	(circ/cat/search) cmd_search_tcn (cat/search) cmd_search_bib_id
+	(cat/search) Side note: cmd_replace_barcode exists on edit, circ, and cat, but
+	used one label for all three.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19950
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	Remove key attribute from command nodes They don't appear to do anything, unlike label/accesskey settings.  Menus don't read them for display, keys in the keyset refer in the
+	opposite direction.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19949
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/menu.js: Rig
+	command_tab on *everything* Will make attempts to customize the toolbar a lot easier.  Also
+	makes things more consistent.  Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19948
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/ui/default/booking/capture.js,
+	Open-ILS/web/js/ui/default/booking/pull_list.js,
+	Open-ILS/web/js/ui/default/booking/reservation.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/server/patron/display.js: Booking: This
+	should a) make booking interfaces behave better when a staff login
+	session times out and is replaced by use of a re-auth dialog, and b)
+	wrap booking interfaces in a <browser> element with the attendant
+	back/forward/reload buttons that most similar interfaces already
+	had.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19942
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-04  Mike Rylander <mrylander at gmail.com>
+
+	* : commit fc58b4fd8871590d60d51b93a8bc4b80d87c19c5 Author: erickson
+	<erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Apr 4
+	15:50:01 2011 +0000
+
+2011-04-04  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/extras/circ/alt_holds_print.html: Ben Ostrowsky
+	pointed out that the alt holds (pull list) printing interface was
+	trying to include AutoIDL.js from an incorrect path.  I don't believe that file should be included at all, so now I've
+	removed the broken line.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19937
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-03  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 26fdc6f166e53589a62535694e8c9547ef6b6ce4 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Sun Apr 3
+	15:24:24 2011 +0000
+
+2011-04-03  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/990.schema.unapi.sql: Teach in-db unAPI to
+	avoid redundant xmlns declarations, including those already embedded
+	in MARCXML git-svn-id: svn://svn.open-ils.org/ILS/trunk@19934
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 762ecaae2c3f244d3002e28b2704b3c01b6c5636 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Sat Apr 2
+	17:06:41 2011 +0000
+
+2011-04-02  Mike Rylander <mrylander at gmail.com>
+
+	* : commit fa0c3e2472429be9e1d7434bdb0123cd6512a991 Merge: 4bfc1ba
+	d3f30c6 Author: Mike Rylander <mrylander at gmail.com> Date:   Sat Apr
+	2 12:39:34 2011 -0400
+
+2011-04-02  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: make
+	next/prev search links not-visible instead of removing entirely to
+	keep page position of links consistent
+
+2011-04-02  berick <berick at esilibrary.com>
+
+	* : commit 04e64995d7cef5c175d22bf69c776e1e9236cb50 Author: berick
+	<berick at esilibrary.com> Date:   Sat Apr 2 09:06:11 2011 -0400
+
+2011-04-01  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: move to
+	unapi.bre for bib/copy-count/slim-holdings retrieval on record
+	results page
+
+2011-04-01  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/record/authors.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2: more
+	rdetail extras cleanup; added support for authors display
+
+2011-04-01  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Patch from Thomas Berezansky to address unneccessary fine
+	generation and avoid unchecked division by zero; details and DCO at
+	https://bugs.launchpad.net/evergreen/+bug/747533 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19927
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-01  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm: 
+	consistent w/ seed skin (and to avoid total vertical domination),
+	default to showing 10 copies-per-page on detail page
+
+2011-04-01  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: 
+	fixed odd bug w/ href attrs rendering the copyright symbol for
+	&copy_limit=
+
+2011-04-01  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b4b8a2fc9e9f52f23f5549e2ae7322e4899a8c34 Merge: 9515bb7
+	df424b2 Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Apr
+	1 13:41:21 2011 -0400
+
+2011-04-01  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/subjects.tt2: More
+	work on record details 'extras' When an extra is chosen, anchor the page on the selected extra for
+	focus Lots of cleanup to create a consistent system for selecting
+	and displaying extras
+
+2011-04-01  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m: Better search normalization de-duping when 'params' are used This patch addresses search normalization deduping at two levels.
+	We now verify that both the function and the params are the same
+	before excluding a normalization, both when the normalization is
+	first added to the set and when the SQL is being built (since
+	currently multiple sets may be involved).  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19924
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-04-01  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/test-scripts/unapi_bench.pl: update
+	flesh depth
+
+2011-03-31  berick <berick at esilibrary.com>
+
+	* : commit 4acc27155bcb2f4a4fce70d4ff58ccb01aee3bac Author: berick
+	<berick at esilibrary.com> Date:   Thu Mar 31 17:48:47 2011 -0400
+
+2011-03-31  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/test-scripts/unapi_bench.pl: added
+	fully-parallized (send 10 reqs simultaneously) versions of unapi.bre
+	and direc
+
+2011-03-31  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: Use identifer indexes for older ISxN API methods (LP Bug
+	#728671) There are three logic layers involved in the older ISxN 'quick
+	searches': the OPAC, the search API, and the storage API.  The
+	approach of this patch is to update the search API (which in turn
+	fixes the OPAC), and ignore/deprecate the storage API for these
+	identifiers.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19920
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-31  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/test-scripts/unapi_bench.pl: do some
+	basic parallelizing optimization
+
+2011-03-31  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/test-scripts/unapi_bench.pl: more
+	test options Now fleshing copy parts, uris, and copy stat cats in 'direct'
+	version Added a full-feed version Added an unapi.bre version
+
+2011-03-31  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/util/timestamp.js,
+	Open-ILS/xul/staff_client/server/circ/checkout.js,
+	Open-ILS/xul/staff_client/server/circ/renew.js: Logic error trying
+	to merge the date component of one date object with the time
+	component of another.  We were trying to use the time object and
+	update it piecemeal, which resulted in non-sensical dates that were
+	forced to wrap.  For example, if the date object was to set to March
+	31, 2011, and we tried .setMonth(3) on it to change it to April,
+	that would result in an April 31st, which doesn't exist, and the
+	date thus moves forward a certain number of days into May.  This affects Check Out, dedicated Renew interface, and the various
+	date picking functions in Items Out and Holds interfaces.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19917
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-30  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/holds/edit.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/base.tt2: 
+	essentially functioning hold editor Still needs a way to report failures to the user
+
+2011-03-30  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2: link to
+	editor from myopac/holds
+
+2011-03-30  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 38e76948586600c578af5a274ac8f70f2dbbb4e0 Merge: 4ac152c
+	1944b2c Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Mar
+	30 16:12:35 2011 -0400
+
+2011-03-30  senator <lebbeous at esilibrary.com>
+
+	* : commit 953fd15e9f2a0bfb01a26d2501646c410c21aaca Author: berick
+	<berick at esilibrary.com> Date:   Wed Mar 30 13:35:25 2011 -0400
+
+2011-03-30  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/support-scripts/test-scripts/unapi_bench.pl: flesh
+	copy loc. for closer match to unapi
+
+2011-03-30  berick <berick at esilibrary.com>
+
+	* : commit ccf193c0666c30ac3b0716e1b68430322d3d1d6f Author: berick
+	<berick at esilibrary.com> Date:   Wed Mar 30 13:26:29 2011 -0400
+
+2011-03-30  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/templates/default/actor/user/register_table.tt2: 
+	Patch from Thomas Berezansky; see
+	https://bugs.launchpad.net/bugs/745123 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19915
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-30  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 4f3cbf4b0d1befec82aad8c4fbd283045b6c3525 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Mar 30
+	02:21:56 2011 +0000
+
+2011-03-30  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/templates/default/actor/user/register_table.tt2: 
+	Change label to "Reset Password" and get button out of tab ordering In a keyboard-intensive patron input workflow, pressing tab should
+	not place focus on the "Reset Password" button; the password is
+	automatically generated at dialog creation time. Setting tabIndex to
+	-1 disables tab focus for the button.  Also, the button has been relabeled to "Reset Password" to be
+	consistent with the previous button.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19907
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-30  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/ui/default/actor/user/register.js,
+	Open-ILS/web/templates/default/actor/user/register_table.tt2: 
+	Restore the Reset Password button on patron editor Per LP 488243, the Reset Password button that existed on the old XUL
+	patron editor was lost in the transition to the new Dojo patron
+	editor. Jason Stephenson stepped up and offered a patch to restore
+	the functionality.  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 wi
 th 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: Jason Stephenson <jstephenson at mvlc.org> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19906
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-30  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0505.schema.force_facets_to_NFC.sql: fix
+	typo in facet_force_nfc definition Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19903
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/upgrade/0505.schema.force_facets_to_NFC.sql: 
+	Force facet values to Unicode NFC to reduce spurious non-matches git-svn-id: svn://svn.open-ils.org/ILS/trunk@19899
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/SIP/Patron.pm: Inspired by a 1.6
+	patch from Brandon Uhlman to collect the set of holds not ready for
+	pickup, 2.0+ style git-svn-id: svn://svn.open-ils.org/ILS/trunk@19894
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/main/menu.js: repair
+	coded_value_map staff client menu entry.  was somehow lost in a
+	merge, perhaps git-svn-id: svn://svn.open-ils.org/ILS/trunk@19890
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/offline/offline.pl: in the case of multiple xact
+	event error responses, capture the first for staff client reporting git-svn-id: svn://svn.open-ils.org/ILS/trunk@19889
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/0504.schema.parts_and_cnaffix.sql: 
+	Missed function in upgrade script git-svn-id: svn://svn.open-ils.org/ILS/trunk@19887
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/search_form.js: fix error
+	with profile filter and horizontal patron search interface git-svn-id: svn://svn.open-ils.org/ILS/trunk@19885
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Serial.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/asset.pm
+	,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/biblio.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/dbi
+	.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/bib
+	lio.pm, Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Const.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/010.schema.biblio.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/upgrade/0504.schema.parts_and_cnaffix.sql,
+	Open-ILS/web/js/ui/default/acq/common/li_table.js,
+	Open-ILS/web/js/ui/default/conify/global/config/acn_prefix.js,
+	Open-ILS/web/js/ui/default/conify/global/config/acn_suffix.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/opac/locale/en-US/opac.dtd,
+	Open-ILS/web/opac/skin/default/js/copy_details.js,
+	Open-ILS/web/opac/skin/default/js/holds.js,
+	Open-ILS/web/opac/skin/default/js/myopac.js,
+	Open-ILS/web/opac/skin/default/js/rresult.js,
+	Open-ILS/web/opac/skin/default/xml/common/holds.xml,
+	Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml,
+	Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml,
+	Open-ILS/web/templates/default/conify/global/biblio/monograph_part.
+	tt2,
+	Open-ILS/web/templates/default/conify/global/config/acn_prefix.tt2,
+	Open-ILS/web/templates/default/conify/global/config/acn_suffix.tt2,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/OpenILS/global_util.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.js,
+	Open-ILS/xul/staff_client/chrome/content/cat/opac.xul,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul,
+	Open-ILS/xul/staff_client/chrome/content/util/browser.js,
+	Open-ILS/xul/staff_client/chrome/content/util/list.js,
+	Open-ILS/xul/staff_client/chrome/content/util/widgets.js,
+	Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties,
+	Open-ILS/xul/staff_client/server/cat/bib_brief.js,
+	Open-ILS/xul/staff_client/server/cat/bib_brief.xul,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.js,
+	Open-ILS/xul/staff_client/server/cat/copy_browser.xul,
+	Open-ILS/xul/staff_client/server/cat/copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/copy_editor.xul,
+	Open-ILS/xul/staff_client/server/cat/spine_labels.js,
+	Open-ILS/xul/staff_client/server/cat/util.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor.xul,
+	Open-ILS/xul/staff_client/server/cat/volume_copy_editor_horiz.xul,
+	Open-ILS/xul/staff_client/server/cat/volume_editor.js,
+	Open-ILS/xul/staff_client/server/cat/volume_editor.xul,
+	Open-ILS/xul/staff_client/server/circ/copy_status.js,
+	Open-ILS/xul/staff_client/server/circ/util.js,
+	Open-ILS/xul/staff_client/server/locale/en-US/cat.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/circ.properties,
+	Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/patron/util.js: Monograph Parts;
+	Unified vol/copy wizard; Call Number affixes; Instant Detail  * Monograph Bibliographic Parts - One MARC record should be able to
+	   support all volumes associated with the title, subdivide records in
+	   multiple ways, and the ability to support holds on individual Parts.   * Unified Volume/Copy Wizard - The ability to enter call number,
+	   barcode number, and all copy information on the same screen.  Also,
+	   the ability to include some information associated with the call
+	   number, such as classification scheme, prefix and suffix, in the
+	   item template feature of the Unified Volume/Copy Wizard.   * Call Number Affixes - Delimiting the call number so that the
+	   prefix and suffix reside in separate fields.  This prefix and
+	   suffix should display in the OPAC as part of the call number and
+	   should also be available for use in spine labels.   * Instant Detail for One Record Hit List - When searching for
+	   records in the staff client, the ability to immediately land on the
+	   bibliographic record instead of the search results screen when there
+	   is only on matching search result in the system.  This enhancement
+	   does not change the way search results are returned in the public
+	catalog.  These features were sponsored by the Massachusetts Library Network
+	Cooperative.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19883
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-29  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 9454a2da7ea7e74217a7e61c26891db4c996a2ba Author: berick
+	<berick at esilibrary.com> Date:   Tue Mar 29 10:29:27 2011 -0400
+
+2011-03-29  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5405d36625ac5358821900e0cab9a42871249e6f Merge: 270ac10
+	b35bd6b Author: Mike Rylander <mrylander at gmail.com> Date:   Tue Mar
+	29 10:29:15 2011 -0400
+
+2011-03-29  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: bug 744687: fix multi-field MARC expert search Fixes bug where a bib that has multiple subfields meeting one
+	condition of a 2+ field MARC expert search could end up in the
+	results list even if it didn't meet the other conditions (currently
+	multi-field MARC expert searches use implicit 'AND').  Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19880
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-28  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: Fix
+	call-number sorting for non-generic sort keys (LP Bug #737819) Selecting on 'label' but sorting on 'label_sortkey' did not work
+	properly.  Instead, we will now find the single best call number we
+	can based on the label given, then both select and sort based on
+	that call number's sort key.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19877
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-28  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/myopac/circ_history.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2: added
+	circulation history backend and template; use |-style regex
+	containers to reduce escapes in path checking
+
+2011-03-28  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 1ea8298be8c0fb7ac9bef43a5bd920b573674d9e Author: dbwells
+	<dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Mar 28
+	18:32:46 2011 +0000
+
+2011-03-28  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/po/offline.properties/en-CA.po: Address LP 744393:
+	Arabic text in en-CA offline.properties A translator appears to have mistakenly added Arabic text to the
+	en-CA offline.properties file in Launchpad. This commit corrects
+	those translations and completes the translation of the file for
+	2.0.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19872
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-28  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/bill2.js,
+	Open-ILS/xul/staff_client/server/patron/bill2.xul: fix up receipt
+	options persistence in billing interface; implement # of receipts
+	option (not perfect if using print dialogs; non-blocking and not
+	necessarily queued up) git-svn-id: svn://svn.open-ils.org/ILS/trunk@19867
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-28  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/admin/printer_settings.js: clear
+	print.always_print_silent instead of setting it to false in the
+	Printer Settings Editor git-svn-id: svn://svn.open-ils.org/ILS/trunk@19866
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-28  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/admin/adminlib.js: fixes things
+	like the stat cat editor, since that extra param now changes the
+	return signature of the method Signed-off-by: Jason Etheridge <jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19865
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-25  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b83a77ad253e473b3129059ed29b3ec825a48d1a Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Mar 25
+	17:30:54 2011 +0000
+
+2011-03-25  senator <lebbeous at esilibrary.com>
+
+	* : commit 1422488dd8ba28c2d0ae7b7273f28d4dcd88f02d Merge: 171f3ca
+	ee225ee Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Mar
+	25 11:07:05 2011 -0400
+
+2011-03-25  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/apache/eg.conf: Avoid Apache warnings resulting
+	from duplicate NameVirtualHost directives Benjamin Shum reported that the Apache warnings that have been a
+	part of Evergreen's default configuration on Apache start for ages
+	could be avoided by commenting out the "NameVirtualHost: *80" line
+	in eg.conf. Testing confirmed that the directive was not necessary
+	on Ubuntu, Debian, or Fedora. As this warning has been the cause for
+	unnecessary concern on the part of many new adopters of Evergreen,
+	getting rid of it appears to be a nice usability win.  Thanks Ben! git-svn-id: svn://svn.open-ils.org/ILS/trunk@19857
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-24  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/mylist.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds/edit.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2,
+	Open-ILS/web/templates/default/opac/parts/marc_misc.tt2,
+	Open-ILS/web/templates/default/opac/parts/misc_util.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/body.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: towards
+	an opac hold editor
+
+2011-03-24  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: KCLS
+	doesn't show an abstract high on the record detail page.  This is just a little juggling to reflect that
+
+2011-03-24  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/windowssetup.nsi: Shortcuts for all
+	users, not just current user.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19855
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-24  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 4ea25cce411e9df166bbef255fed6086994b7f69 Author: senator
+	<lebbeous at esilibrary.com> Date:   Wed Mar 23 16:57:37 2011 -0400
+
+2011-03-23  senator <lebbeous at esilibrary.com>
+
+	* : commit 48805c1e437c9f8cc2198e2d4dac60fdd8ccc2b8 Merge: 58c7e68
+	f9c5ccd Author: Mike Rylander <mrylander at gmail.com> Date:   Wed Mar
+	23 10:10:25 2011 -0400
+
+2011-03-23  Mike Rylander <mrylander at gmail.com>
+
+	* : commit f9c5ccdc2d5c2c60d9cd0f632eb34de0671bf601 Author: senator
+	<lebbeous at esilibrary.com> Date:   Tue Mar 22 18:00:11 2011 -0400
+
+2011-03-22  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/common/js/opac_utils.js: have checkILSEvent
+	handle events that aren't in ils_events.xml Signed-off-by: Jason Etheridge <jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19852
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-22  Mike Rylander <mrylander at gmail.com>
+
+	* : commit eb78a8dab9f84956800f4a272eb0f9213945b78d Author: dbwells
+	<dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Mar 22
+	14:39:56 2011 +0000
+
+2011-03-22  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install: Build libjs from source for
+	now until the Perl threading problem can be reliably tested The previous commit changed JavaScript::SpiderMonkey to be built
+	without thread safety, but on Fedora we had been installing the
+	js-devel package (which was threaded). As you can't build a
+	non-threaded JavaScript::SpiderMonkey on top of a threaded libjs,
+	for now we'll make Fedora build a non-threaded libjs from source
+	just like the other distros.  Note that the problem with threaded JavaScript::SpiderMonkey
+	surfaced on Debian Lenny when targeting holds. Lenny has
+	libthreads-perl 1.71, but a number of fixes have been committed to
+	subsequent versions
+	(http://cpansearch.perl.org/src/JDHEDDEN/threads-1.82/Changes) - so
+	threading support might be reliable on more current distros. Once we
+	have a reliable test, we might be able to go back to the packaged
+	version of libjs.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19846
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-22  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/tools/update_db.sh: Another layer of escaping for the
+	escapes in the DB update script Apologies for the previous patch that led to breakage; I "tested" in
+	a script in which I had already hardcoded the answer I wanted after
+	running into problems with the previous version of the script. Not
+	good testing practice.  Thanks to Bill Erickson for suggesting the extra escapes. Tested in
+	a clean environment this time, and it works.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19843
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-21  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install: Remove thready building --
+	we do not use threads anyway, and it breaks JS::SM git-svn-id: svn://svn.open-ils.org/ILS/trunk@19840
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-21  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/tools/update_db.sh: Enable update_db.sh to handle upgrading
+	databases with release version When '0475' is mixed with '1.6.0.4', the latter wins as far as a
+	plain MAX() operator goes. Ensuring that the version is all digits
+	should help avoid the release version numbers in the
+	config.upgrade_log table.  Thanks to Thomas Berezansky for suggesting a SIMILAR TO operator
+	variation that led to this approach.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19837
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-21  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/crontab.example: correcting bad timespecs in the
+	example crontab git-svn-id: svn://svn.open-ils.org/ILS/trunk@19833
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-21  Mike Rylander <mrylander at gmail.com>
+
+	* : commit e66e834467bfe6ef016b4bc819207939845417d1 Author: phasefx
+	<phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Mar 21
+	16:47:26 2011 +0000
+
+2011-03-21  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/holds.js: this "count"
+	method gets the same parameters as the list version git-svn-id: svn://svn.open-ils.org/ILS/trunk@19827
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-21  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/apache/eg.conf: Use the human-friendly interval
+	syntax for Apache caching Apache mod_expires has supported a human-readable syntax for
+	defining cache expiry directives for a long time. In this commit we
+	simply convert the existing defaults from the "Anumber_of_seconds"
+	syntax to the equivalent English syntax documented at
+	http://httpd.apache.org/docs/2.0/mod/mod_expires.html Whether CSS _should_ have a cache lifetime of 50 minutes by default
+	is left to the subject of future commits :) git-svn-id: svn://svn.open-ils.org/ILS/trunk@19825
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/action.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0503.schema.grace_periods.sql,
+	Open-ILS/src/support-scripts/fine_generator.pl,
+	Open-ILS/web/js/ui/default/conify/global/config/circ_matrix_matchpo
+	int.js,
+	Open-ILS/web/templates/default/conify/global/config/circ_matrix_mat
+	chpoint.tt2,
+	Open-ILS/web/templates/default/conify/global/config/rule_recurring_
+	fine.tt2: In-database Grace intervals s it stands the grace period for a transaction is only specified on
+	the fine generator script, but fines can be generated on checkin as
+	well without one. As a result any checkin results in grace periods
+	being negated.  The attached patch adds in-db grace periods for all non-booking
+	transactions, removing the grace period from the fine generator cron
+	job script and placing it on the circulation. Grace periods are set
+	on the recurring fine rule with an override available on the circ
+	matchpoint, identical to how renewal count can be overridden from
+	the duration rule already. These grace periods are respected on
+	checkin fine generation as well as on the fine generator cron job
+	script.  The upgrade script will assume, by default, a grace period of 1, but
+	has a \set line to change this. It will also update all circulations
+	without a checkin by default, but another \set will allow disabling
+	of that.  [ NOTE: for the history of the patch, see:
+	https://bugs.launchpad.net/evergreen/+bug/732679 ] Signed-off-by: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by:
+	Mike Rylander <mrylander at gmail.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19823
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 8489b8ef0ee27998e626fd697030e8dd3db948f0 Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Sat Mar 19
+	05:48:01 2011 +0000
+
+2011-03-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/python/oils/system.py: Sort out a mix of tabs and
+	spaces in system.py Also restructure the docstrings slightly while we're there.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19821
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/python/oils/utils/utils.py: Import osrf.log and
+	reference it when we attempt to log This bare call to log_info was just hanging out, waiting for someone
+	to stumble across it.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19820
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/python/oils/utils/utils.py: Provide a top-level
+	docstring for oils/utils/utils.py Also, standardize on triple-double-quoted docstrings, per PEP257.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19819
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/python/oils/utils/csedit.py: Remove unused imports,
+	correct some references, and clean up csedit.py Mostly minor cleanups, some additional docstrings, but a few changes
+	of concern here (OSRF_APP_CONNECTED_STATUS didn't have the
+	appropriate osrf.const import, for example).  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19818
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/python/oils/utils/utils.py: Don't stomp "type"
+	built-in and don't import that which is not used Also provide a little more docstring action.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19817
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-19  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/python/oils/utils/idl.py: Parse the field_safe
+	parameter in Python's IDL parser Also set the correct namespace for the tablename attribute.  The rest of the changes are for PEP8 compliance. We retain the
+	IDLParser set_IDL() and parse_IDL() methods because things like
+	constrictor call them directly, but note in the docstrings that they
+	are deprecated names.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19816
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit a0537b400481d99866172108221e0d64b8ae448d Merge: 091c8f4
+	e6335c2 Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Mar
+	18 16:13:07 2011 -0400
+
+2011-03-18  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml: 
+	Make sure "ol" propagates through BibTemplate subject search links
+	for OPAC range hiding git-svn-id: svn://svn.open-ils.org/ILS/trunk@19812
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm: updated
+	code comments
+
+2011-03-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm: in bib
+	attr (mra) fetcher, get the display label from the ccvm where
+	appropriate and add to response object
+
+2011-03-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit b6e0083d4f6bee54c65af34d25fe6c5a20f96cfa Merge: 0e098c9
+	a14e797 Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Mar
+	18 14:11:18 2011 -0400
+
+2011-03-18  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am,
+	Open-ILS/xul/staff_client/windowssetup.nsi: Switch to AccessControl
+	plugin, more reliable.  Only fetches it when needed.  Also make NSIS Less...verbose. Warnings/errors only.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19810
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install: Test for an installed
+	libdbi0 package and bail on Ubuntu and Debian This isn't a problem on Fedora, where we use the packaged version of
+	libdbi, but the older version of libdbi0 and possibly the compile
+	options on Ubuntu Lucid has been demonstrated to be a barrier to
+	successfully installing Evergreen.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19809
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-18  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/Fieldmapper.pm: added
+	field_safe attr to ccs, aout, and crahp classes;  capture field_safe
+	attr during IDL parsing git-svn-id: svn://svn.open-ils.org/ILS/trunk@19807
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-18  berick <berick at esilibrary.com>
+
+	* : commit 2e26706f639964f7c9471b90c79f05b1f941867b Author: berick
+	<berick at esilibrary.com> Date:   Fri Mar 18 12:08:20 2011 -0400
+
+2011-03-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: make
+	all field_safe classes accessible via fetch/cache by default.
+	reduce page churn by creating then caching the fetch/cache and
+	org-tree generator funcs and simply inserting them into the page
+	context on each page load.  IOW, no need to redefine the funcs on
+	each page load
+
+2011-03-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Utils/Fieldmapper.pm: added
+	field_safe attr to ccs, aout, and crahp classes;  capture field_safe
+	attr during IDL parsing
+
+2011-03-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 254a9fffe1b50ff8ba8fcf5ba1a39a1a560b295d Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Mar 18
+	15:53:04 2011 +0000
+
+2011-03-18  Mike Rylander <mrylander at gmail.com>
+
+	* : commit 5cf869492d4a0d651314873bb6cfcd0726d40519 Merge: e46f316
+	79eec7c Author: Mike Rylander <mrylander at gmail.com> Date:   Fri Mar
+	18 11:20:38 2011 -0400
+
+2011-03-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/AppUtils.pm: added
+	utility func for fetching extracted bre svf attributes (mra's)
+
+2011-03-18  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/c-apps/oils_sql.c: Allow the "result_field" to be
+	used as the default alias in the output column of a row or set
+	returning transform git-svn-id: svn://svn.open-ils.org/ILS/trunk@19799
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-17  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2: as was
+	recently done w/ existing kcls skin; hide the open transaction
+	summary info in my-account, citing confusion and unnecessary
+	additional information.  note, you can still see total balance owed
+
+2011-03-17  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: avoid
+	adding site() to query if loc param is empty string
+
+2011-03-17  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* : Pre-modified xulrunner-stub files + icons Icons courtesy of Mike Peters, or so my note alongside them says.  The pre-modified stubs are built on the 1.9.2.15 build of xulrunner.
+	They should continue to work on future 1.9.2 builds.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19795
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-17  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am: Copy is not valid. How I
+	missed that before I don't know.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19794
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-17  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/windowssetup.nsi: Default to no license
+	page (for the staff client installer) Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19793
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-17  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2: if there,
+	show shelf expire date for available holds; minor var cleanup
+
+2011-03-17  berick <berick at esilibrary.com>
+
+	* : pile of updated icons
+
+2011-03-17  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/lists.tt2: implemented
+	bookbag rss link
+
+2011-03-17  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/advanced.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: make
+	presentation better by hiding as-yet-unready features, etc also, made links out of the dashboard counts, but oddly the first
+	one ("checked out") only works in IE, not Chrome or Firefox.  I
+	suspect that the complications of all the "position: absolute"-this
+	and "position: relative"-that make for fluky layout.
+
+2011-03-17  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0502.data.defacto_OCLC_local_cn_fields.
+	sql: Treat call number fields 090 and 092 as local LC and Dewey
+	(respectively) based on de facto standards.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19790
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  senator <lebbeous at esilibrary.com>
+
+	* : commit cf7fabd64e8ccd98012a80a8e9b7a84b5d17e966 Author: miker
+	<miker at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Mar 16
+	19:16:43 2011 +0000
+
+2011-03-16  senator <lebbeous at esilibrary.com>
+
+	* : commit 6abbb515957102518457e0d07784b3219f20c15b Author: senator
+	<lebbeous at esilibrary.com> Date:   Wed Mar 16 14:48:52 2011 -0400
+
+2011-03-16  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm: make
+	payment receipt print/email run inside a transaction.  instead of
+	using authoritative, force the xact for reasons mentioned in the
+	comments git-svn-id: svn://svn.open-ils.org/ILS/trunk@19782
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/holds.js: Addresses LP bug
+	#736167, correctly populate hold format list for Advanced Options git-svn-id: svn://svn.open-ils.org/ILS/trunk@19778
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0500.schema.search_path_mangling.sql: 
+	upgrade script matching r19759-r19761 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19772
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/circ/renew.js: dedicated renewal
+	interface should use receipt printer git-svn-id: svn://svn.open-ils.org/ILS/trunk@19769
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/2.0.3-2.0.4-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/upgrade/0499.schema.generic_CN_normalizer.sql: 
+	Patch from Steve Callendar addressing CN sort order on page 0 (and
+	before) of CN browse git-svn-id: svn://svn.open-ils.org/ILS/trunk@19768
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Patch from Steve Callendar addressing holdability tests for
+	copies git-svn-id: svn://svn.open-ils.org/ILS/trunk@19763
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.functions.general.sql,
+	Open-ILS/src/sql/Pg/002.functions.general.sql,
+	Open-ILS/src/sql/Pg/build-db.sh: Set default db schema search path
+	to public,pg_catalog With the addition of the 'evergreen' schema, we discovered that all
+	of the unqualified database objects were being created in the
+	'evergreen' schema if the database user name was 'evergreen' (as the
+	default search path is "$user",public we started matching "$user").  Thomas Berezansky proposed a variation of the function provided here
+	for changing database settings. By creating the function in the
+	first schema file, the subsequent connections pick up the new
+	default search path and all works blissfully as it once did.  Long term, we should probably move towards explicitly qualified
+	database objects.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19759
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-16  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.aggregate.sql: Make DROP
+	statement match new basetype for agg_tsvector When the CREATE AGGREGATE function was changed to have a basetype of
+	pg_catalog.agg_tsvector, the corresponding DROP statement was not
+	changed in a similar fashion; ergo, on creating the schema a
+	subsequent time, the CREATE statement would fail because the
+	aggregate function already existed and the transaction would be
+	rolled back.  Also - do we need to differentiate between PostgreSQL 8.4 and 9.0
+	here? git-svn-id: svn://svn.open-ils.org/ILS/trunk@19758
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: smarter search term
+	propagation, should avoid ARRAY(0xdeadbeef) type ...  ... stuff in search boxes
+
+2011-03-15  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.aggregate.sql: With some hints
+	from eeevil, tweaked 002.functions.aggregate.sql to work after some
+	search_path mangling.  Haven't smoketested yet, just got past the
+	eg_db_config --create-schema bit with this.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19756
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: bib
+	record subject search terms: painstaking translation of BibTemplate
+	to TT the reference implementation I used is in
+	Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml
+	starting at line 93 as of this commit.  Only now that I've imitated the default skin's behavior exactly, I
+	note that the subject search links produced don't actually work on
+	my test server.  Seems to be a local configuration issue though;
+	will investigate.
+
+2011-03-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: Improve search term
+	propagation from page to page Also, for things like the author link on the record detail page,
+	build a link with 'qtype=author&query=JK Rowling' instead of
+	'query=au:JK Rowling' The latter works, but causes the search form to look stupid.  Query
+	type dropdown will be set to keyword by default, and the term will
+	be "au:JK Rowling", which will be a head scratcher for 99% of real
+	users.
+
+2011-03-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/cat/marcedit.js: revert
+	accidental commit of dojo-to-for(;;;) test git-svn-id: svn://svn.open-ils.org/ILS/trunk@19754
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/reingest-1.6-2.0.pl,
+	Open-ILS/xul/staff_client/server/cat/marcedit.js: teach the 1.6-2.0
+	reingest generator about "tnf"-tag rows for title sorting git-svn-id: svn://svn.open-ils.org/ILS/trunk@19752
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am,
+	Open-ILS/xul/staff_client/external/aa_per_machine.js,
+	Open-ILS/xul/staff_client/external/make_updates.sh,
+	Open-ILS/xul/staff_client/extras.example.nsi,
+	Open-ILS/xul/staff_client/windowssetup.nsi: Misc. changes to
+	installer including: 1 - Fix profile manager links 2 - Add tag at top (currently "Trunk")
+	for easy changing 3 - Add optional extras.nsi for easy additions of
+	extra install/uninstall lines 4 - Run uninstaller if installing to a
+	directory with one (old style OR new style) 5 - Allow license
+	    override and only show license page if one defined Ex. With
+	    NSIS_EXTRAOPTS set to "-DPRODUCT_LICENSE=some/path" Or to disable
+	use "-DPRODUCT_LICENSE" 6 - Similar to devbuild, allow for
+	    registration per-machine by default This includes needing to not
+	wipe out the folder this is stored in 7 - Make "Everyone" able to
+	    write to the install folder when: Autoupdate is an option     Per-machine registration is an option 8 - Make silent uninstall
+	function Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19750
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.english.pg90.fts-config.sql: make sure
+	search path is set up properly for FTS in 9.0 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19749
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/main/ws_info.xul: Default
+	workstation name to something sensible.  Like the computer's hostname. But not localhost.  Author: Thomas Berezansky <tsbere at mvlc.org> Signed-off-by: Thomas
+	Berezansky <tsbere at mvlc.org> Signed-off-by: Jason Etheridge
+	<jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19747
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-15  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/reports/oils_rpt_folders.js: Prevent creation of
+	report folders with empty folder names Addresses LP # 720755. Clicking the "Create Folder" button when no
+	folder name has been supplied is now a no-op.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19741
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-14  senator <lebbeous at esilibrary.com>
+
+	* : commit e576b2e34fb9f0dbeeb72b1ee93ea2955bd7cf9e Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon Mar 14 17:48:25 2011 -0400
+
+2011-03-14  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2: 
+	integrated update-email address action into account prefs
+
+2011-03-14  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/CGIUTF8.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb/CGIUTF8.pm,
+	Open-ILS/web/templates/default/opac/parts/header.tt2: CGIUTF8 was a
+	horrible, subtle, dark failure and I don't want to talk about it. Also, 'use CGI qw/-utf8/'
+	suddenly works.  Maybe it always did.
+
+2011-03-14  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/parts/header.tt2: i18n and
+	repaired holds estimated wait calculation.
+
+2011-03-14  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/fieldmapper/OrgUtils.js: until futher
+	investigation, roll back the changes of == to ===, since it was
+	causing unexpected changes in behavior.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19736
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-14  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml: class cxt has no field named
+	'field_class', removing from IDL git-svn-id: svn://svn.open-ils.org/ILS/trunk@19735
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-14  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/web/templates/default/conify/global/config/record_attr_def
+	inition.tt2, Open-ILS/xul/staff_client/chrome/content/main/menu.js,
+	Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul: 
+	More menu work for record attr/coded map config  UIs menu entry for config.coded_value_maps, updated menu label and page
+	title for config.record_attr_definition page; in some cases (that
+	probabl need investigating), widget.validate function is not
+	defined.  in those cases, don't attempt to call the function git-svn-id: svn://svn.open-ils.org/ILS/trunk@19734
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-14  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/parts/header.tt2: hide edit link
+	in myopac/holds. show basic user info in myopac/prefs
+
+2011-03-14  senator <lebbeous at esilibrary.com>
+
+	* : commit 6ad459f66ec0f263349fafa221e77e226d8580bf Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Mon Mar 14
+	04:46:28 2011 +0000
+
+2011-03-14  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js,
+	Open-ILS/web/js/dojo/fieldmapper/IDL.js,
+	Open-ILS/web/js/dojo/fieldmapper/OrgUtils.js,
+	Open-ILS/web/js/dojo/fieldmapper/dojoData.js,
+	Open-ILS/web/js/dojo/fieldmapper/hash.js: Apply jshint suggestions
+	for cleanup to dojo.fieldmapper Mostly consisting of missing semicolons and avoiding the
+	redeclaration of variables (generally for iterators) within the same
+	function scope.  Some tightening of null and '' checks to avoid
+	implicit type-casting.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19730
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-13  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/search_form.js,
+	Open-ILS/xul/staff_client/server/patron/search_form_overlay.xul: 
+	Normalize patron profile search function in "Search for Patrons" UI Use util.widgets.make_menulist for a more consistent approach to
+	generating the menulist and use a row/label/hbox layout to normalize
+	the appearance of the patron profile filter in the search menu.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19727
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-13  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/patron/search_form.js,
+	Open-ILS/xul/staff_client/server/patron/search_form_overlay.xul,
+	Open-ILS/xul/staff_client/server/patron/search_result.js: Apply
+	patch to add a patron profile filter to the "Search for Patrons" UI Thanks to Michael Peters <mrpeters at library.in.gov> and Thomas
+	Berezansky <tsbere at mvlc.org> for their work on this additional
+	functionality to the patron search UI, supplied as a patch in LP#
+	715837.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19726
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-13  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.english.pg81.fts-config.sql,
+	Open-ILS/src/sql/Pg/000.english.pg82.fts-config.sql,
+	Open-ILS/src/sql/Pg/000.english.pg83.fts-config.sql,
+	Open-ILS/src/sql/Pg/000.english.pg84.fts-config.sql: Remove
+	unsupported versions of PostgreSQL FTS configs We don't support anything below PostgreSQL 9.0, so let's get this
+	deadwood out of the way lest anyone get confused.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19724
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-12  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.english.pg84.fts-config.sql,
+	Open-ILS/src/sql/Pg/000.english.pg90.fts-config.sql,
+	Open-ILS/src/sql/Pg/002.functions.aggregate.sql,
+	Open-ILS/src/sql/Pg/002.functions.general.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/build-db.sh: Clean up build errors when
+	creating/recreating database schema Dropping the evergreen schema cascaded and wiped out some previously
+	defined functions, so move it ahead of the other functions. (And
+	maybe we can start moving those public functions into the evergreen
+	schema?) DROP AGGREGATE IF EXISTS exists on any version of PostgreSQL that we
+	care about for Evergreen 2.0, so we can use it to avoid false errors
+	during schema creation.  FTS config was complaining about public.english_nostop in the ALTER
+	statement, so remove the schema qualification. This seems to have
+	been there for a long time? Use IF EXISTS when dropping the unapi schema to avoid an error.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19723
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-12  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/upgrade/0498.lowercase_via_perl.sql: Use valid
+	DDL for forgotten index on actor.card git-svn-id: svn://svn.open-ils.org/ILS/trunk@19718
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-12  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm, Open-ILS/src/perlmods/lib/OpenILS/Application/Vandelay.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Reporter/SQLBuilder.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Reporter/transforms.pm,
+	Open-ILS/src/sql/Pg/002.functions.general.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/005.schema.actors.sql,
+	Open-ILS/src/sql/Pg/012.schema.vandelay.sql,
+	Open-ILS/src/sql/Pg/build-db.sh,
+	Open-ILS/src/sql/Pg/upgrade/0498.lowercase_via_perl.sql: Resolve
+	inconsistent results when invoking LOWER() in C vs. UTF8 locale
+	databases As reported by the Fundamental Science Library of Armenia, patron
+	searches were not retrieving patrons who were known to be part of
+	the patron database.  While the initial approach to solve this problem used an
+	encode_utf8() call to encode the data before passing it on to the
+	database, this turned out to break the patron search function in
+	other environments.  Testing by Dan Wells confirmed that the LOWER() function returned
+	different results when invoked against text in a database created
+	with LC_CTYPE=C vs a database created with LC_CTYPE=*.UTF-8. As the
+	patron search function used a Perl lc() function call to convert the
+	incoming data to lowercase, the success of the call depended on the
+	LC_CTYPE value of the database.  To avoid this problem in the future, we define our own
+	evergreen.lowercase() function that can reliably produce lowercase
+	text for characters outside the Latin1 range, and we convert our
+	indexes and function calls to use that function consistently.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19715
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-11  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/templates/default/opac/mylist.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2: Support for
+	most of the actions on lists and bookbags Show authors too. And other little stuff.
+
+2011-03-11  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CreditCard.pm: 
+	only append street2 to CC payment address if no address is provided
+	by the caller git-svn-id: svn://svn.open-ils.org/ILS/trunk@19714
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-11  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/ui/default/acq/financial/claim_eligible.js: Acq:
+	The "Claim-Ready Items" interface did not render correctly for > 1
+	item The problem was racy async rendering logic. Now we look at our whole
+	result set and build our table accordingly at the end.  This interface should probably learn about paging one day in order
+	to handle large result sets.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19709
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-11  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* README: Update the README to include explict LC_CTYPE/LC_COLLATE
+	db settings git-svn-id: svn://svn.open-ils.org/ILS/trunk@19706
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-11  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install: LANG=C results in SQL_ASCII
+	encoding by default for PostgreSQL, which isn't cool We want LC_CTYPE=C and LC_COLLATE=C, and SERVER_ENCODING=UTF8.  The
+	docs have been adjusted as 8.4 and up now offer database-level
+	--lc-ctype / --lc-collate options for createdb command.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19703
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-11  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: use the
+	existing util method for mvr-izing, since it handles some additional
+	important steps (e.g. capturing doc_id) git-svn-id: svn://svn.open-ils.org/ILS/trunk@19700
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-11  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	or.pm: Ensure incoming query values to patron search are
+	UTF8-encoded Addresses the problem reported with searching for patrons with
+	Armenian names, where Unicode query params were getting corrupted on
+	its way to the database.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19697
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/mylist.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/parts/anon_list.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: Foundational work
+	for temporary/anon lists and per-user lists (bookbags) There were already some features in EGCatLoader for adding and
+	deleting items from lists, but there's more to do, as that code only
+	dealt with numeric IDs, and we need records avaiable. Also, to avoid
+	search bots creating temporary/anon lists all the time, and just
+	because the following is good practice, our "add to my list" links
+	need to be forms that POST, not links that GET.  Etc., etc.; more to come.
+
+2011-03-10  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CreditCard.pm: 
+	add patron barcode to CC transaction description for payment record
+	keeping/tracking git-svn-id: svn://svn.open-ils.org/ILS/trunk@19695
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-10  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version git-svn-id: svn://svn.open-ils.org/ILS/trunk@19694
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-10  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/locale/en-US/common.properties,
+	Open-ILS/xul/staff_client/server/main/ws_info.xul: Complain when
+	trying to register an empty Workstation ID Client-side only, no server side validation.  Signed-off-by: Jason Etheridge <jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19692
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-10  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/web/js/dojo/openils/booking/nls/pickup_and_return.js,
+	Open-ILS/web/js/ui/default/booking/populator.js: Booking: don't bail
+	out completely on COPY_ALERT_MESSAGE when returning items Provide overridability.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19682
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-10  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.js,
+	Open-ILS/xul/staff_client/server/admin/org_unit_settings.xhtml: as
+	an alternate/addition to applying per-setting permissions, use the
+	existing VIEW_ORG_SETTINGS permission as a general gateway into the
+	org settings UI git-svn-id: svn://svn.open-ils.org/ILS/trunk@19677
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-09  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/Makefile: 'newpo' in install_all_locales was wiping out
+	all fr-CA translations Long story short, we would rather have install_all_locales fail
+	loudly than silently wipe out fr-CA.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19668
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-09  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0497.patron_registration.sql,
+	Open-ILS/web/css/skin/default/register.css,
+	Open-ILS/web/js/dojo/openils/actor/nls/register.js,
+	Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js,
+	Open-ILS/web/js/ui/default/actor/user/register.js,
+	Open-ILS/web/templates/default/actor/user/register.tt2,
+	Open-ILS/web/templates/default/actor/user/register_table.tt2: Patch
+	from Thomas Berezansky: The attached patch adds a collection of settings for patron
+	registration, as well as a new display mode.  The new display mode is "Suggested" compared to "Required" or "All".
+	It shows everything "Required" does, but also shows fields flagged
+	as "Suggested", stat cats, and surveys.  To control this and other things are the settings. They come in a
+	few general categories, named ui.patron.edit.<fmclass>.<fmfield>.?
+	where ? is one of the following: require - Flag the field as required when it otherwise wouldn't be.
+	show - Show the field like required fields, but don't actually
+	require it.  suggest - Show the field with required/shown fields in
+	"show suggested fields" mode example - An example string for a field
+	regex - A regular expression for validating a field Not all fields have all of the above options by default, although
+	the initial list is the main limiter compared to the code side.  Also included are the following settings:
+	ui.patron.edit.au.dob.calendar - If true, shows the calendar widget
+	for the date of birth field ui.patron.edit.phone.example - Example
+	for all phone fields without their own ui.patron.edit.phone.regex -
+	Regex validator for all phone fields without their own
+	ui.patron.edit.default_suggested - Default to showing suggested
+	fields instead of all fields git-svn-id: svn://svn.open-ils.org/ILS/trunk@19663
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-09  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/js/myopac.js: Draw pre-cataloged
+	items (author and title) in My Account checkedout screen Two problems: FETCH_MODS_FROM_COPY returns an object, so we weren't
+	getting to the point of fetching the raw copy itself, and there was
+	some confusion about pre-cataloged vs. non-cataloged items that is
+	hopefully straightened out now.  Addresses LP # 723895 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19659
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-09  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/patron/bill2.js: Fix LP bug
+	#727432, "overpaying with patron credit can generate a double
+	credit" git-svn-id: svn://svn.open-ils.org/ILS/trunk@19649
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-08  berick <berick at esilibrary.com>
+
+	* : commit 2c7dda31c1fae60a1635ea6c2656c3547e067232 Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Mar 8
+	21:58:00 2011 +0000
+
+2011-03-08  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/ResolverResolver.pm: 
+	Be more defensive when parsing SFX target results SFX in the wild has been observed returning targets for getFullTxt
+	requests that have no target URLs, which makes it rather impossible
+	to provide a link to the full text resource. Skip such targets (and
+	for good measure, skip them if they don't have a name either).  Also, change from the SID "conifer" to the more generic and accurate
+	"evergreen".  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19645
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-08  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0496.data.search_indexes.sql: Add
+	missing ampersand to ind1 attribute in identifier index xpaths This addresses LP # 731564. Thanks to Dan Wells for identifying
+	(hah) the identifier xpath problem! git-svn-id: svn://svn.open-ils.org/ILS/trunk@19642
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-08  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm: 
+	Address LP bug #724583, "Paying Bills with Patron Credit does not
+	always decrease patron Credit" git-svn-id: svn://svn.open-ils.org/ILS/trunk@19639
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: More data ordering
+	issues git-svn-id: svn://svn.open-ils.org/ILS/trunk@19637
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Insert order
+	matters, moving down git-svn-id: svn://svn.open-ils.org/ILS/trunk@19635
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/100.circ_matrix.sql: 
+	config.videorecording_format_map moved to SVF git-svn-id: svn://svn.open-ils.org/ILS/trunk@19633
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: Accidentally removed
+	during SVF merge, put it back git-svn-id: svn://svn.open-ils.org/ILS/trunk@19631
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* README: We now require PG 9.0+, say as much in the README ...
+	everywhere git-svn-id: svn://svn.open-ils.org/ILS/trunk@19628
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* README: We now require PG 9.0+, say as much in the README git-svn-id: svn://svn.open-ils.org/ILS/trunk@19627
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/marc_export: Create a 001 field if it
+	doesn't exist in marc_export Real data has a way of surprising you sometimes, like by not having
+	001 fields.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19626
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/CGIUTF8.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb/CGIUTF8.pm,
+	Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2: Subclass
+	CGI (and create TT plugin wrapper for the subclass) to get utf8
+	params The CGI module configuration option -utf8 just doesn't seem to do
+	the trick.  I could have missed something, but this works and isn't
+	too awful.
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/0495.schema.svf-phase-one.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: moving
+	the upgrade script into place git-svn-id: svn://svn.open-ils.org/ILS/trunk@19624
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: giving
+	version numbers to the svf upgrade script git-svn-id: svn://svn.open-ils.org/ILS/trunk@19623
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/web/opac/skin/craftsman/xml/advanced/advanced_global.xml,
+	Open-ILS/web/opac/skin/craftsman/xml/result/filtersort.xml,
+	Open-ILS/web/opac/skin/default/xml/advanced/advanced_global.xml,
+	Open-ILS/web/opac/skin/default/xml/result/filtersort.xml: update the
+	old school sort axis names to match the SVF versions git-svn-id: svn://svn.open-ils.org/ILS/trunk@19622
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: add a
+	description field to config.record_attr_definition git-svn-id: svn://svn.open-ils.org/ILS/trunk@19621
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: These are now magic filters.  Thanks, SVF! git-svn-id: svn://svn.open-ils.org/ILS/trunk@19620
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js: repaired
+	fielder retrieval api syntax git-svn-id: svn://svn.open-ils.org/ILS/trunk@19619
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js,
+	Open-ILS/xul/staff_client/chrome/content/main/constants.js,
+	Open-ILS/xul/staff_client/server/cat/copy_editor.js: use ccvm's in
+	staff client instead of citm git-svn-id: svn://svn.open-ils.org/ILS/trunk@19618
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/web/opac/common/js/config.js,
+	Open-ILS/web/opac/skin/default/js/adv_global.js: fetch ccvm's
+	directly for item_form/type/lit_form/bib_level/audience via fielder
+	in opac; leave api constants around for other skins that may be
+	using them.  ML code now fetches ccvms, but returns data in original
+	config.*_map objects for backwards compat + deprecation warning log git-svn-id: svn://svn.open-ils.org/ILS/trunk@19617
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: register the "I only need a query string" search method git-svn-id: svn://svn.open-ils.org/ILS/trunk@19616
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: more SVF
+	value normalizers, and application thereof git-svn-id: svn://svn.open-ils.org/ILS/trunk@19615
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql: index normalizers for
+	SVF and faceting git-svn-id: svn://svn.open-ils.org/ILS/trunk@19614
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/locale/en-US/conify.dtd,
+	Open-ILS/web/opac/locale/en-US/lang.dtd,
+	Open-ILS/xul/staff_client/chrome/content/main/menu.js: replace "MARC
+	Codes" UI with "Coded Value Maps", aka SVF Values git-svn-id: svn://svn.open-ils.org/ILS/trunk@19613
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml: added IDL bits for mra =>
+	metabib.record_attr git-svn-id: svn://svn.open-ils.org/ILS/trunk@19612
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/web/templates/default/conify/global/config/coded_value_map
+	.tt2: default to empty ccvm grid; added crad selector attr and
+	crad/ccvm required attrs to IDL git-svn-id: svn://svn.open-ils.org/ILS/trunk@19611
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/web/templates/default/conify/global/config/record_attr_def
+	inition.tt2: added crad config UI git-svn-id: svn://svn.open-ils.org/ILS/trunk@19610
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml: crad uses 'name' as its pkey git-svn-id: svn://svn.open-ils.org/ILS/trunk@19609
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/web/templates/default/conify/global/config/coded_value_map
+	.tt2: code value map admin page, filtered by record attr def git-svn-id: svn://svn.open-ils.org/ILS/trunk@19608
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: update
+	any existing I18N values for maps moved to ccvm git-svn-id: svn://svn.open-ils.org/ILS/trunk@19607
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: Only generate ORed filters if there are some to use git-svn-id: svn://svn.open-ils.org/ILS/trunk@19606
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: upgrade
+	script version of the trigger fixes git-svn-id: svn://svn.open-ils.org/ILS/trunk@19605
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/030.schema.metabib.sql: some update trigger
+	issues from SVF generalization git-svn-id: svn://svn.open-ils.org/ILS/trunk@19604
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: more SVF filter cleanup git-svn-id: svn://svn.open-ils.org/ILS/trunk@19603
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm: General testing-based cleanup of the new SVF
+	QueryParser code.  More to come.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19602
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: name is the pkey, not id git-svn-id: svn://svn.open-ils.org/ILS/trunk@19601
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: update 950 seed data
+	for use with the core SVF table ... that was painful git-svn-id: svn://svn.open-ils.org/ILS/trunk@19600
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: commit
+	at the end ... and I'd like to reserve a db version number, but not
+	until it's in trunk git-svn-id: svn://svn.open-ils.org/ILS/trunk@19599
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: arg, typo git-svn-id: svn://svn.open-ils.org/ILS/trunk@19598
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/met
+	abib.pm: Teach storage to initialize the new bits of QueryParser git-svn-id: svn://svn.open-ils.org/ILS/trunk@19597
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Driver/Pg/Que
+	ryParser.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/QueryParser.p
+	m, Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/030.schema.metabib.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/090.schema.action.sql,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/800.fkeys.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/XXXX.schema.svf-phase-one.sql: Working
+	towards SVF. This is most of phase 1, which is basic DB and QP
+	support.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19596
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/openils/widget/AutoGrid.js: Fix cloning of
+	AutoField widgets: LP #728055 Cloning Action/Trigger event definitions was not working properly,
+	as all values were being copied from the original object using their
+	display strings rather than the underlying values.  Bill Erickson suggested a fix in IRC that works, so full credit to
+	him for this change! git-svn-id: svn://svn.open-ils.org/ILS/trunk@19590
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-07  berick <berick at esilibrary.com>
+
+	* : commit da4f18561b2e036dc2394634abf496ef91ced2b3 Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Sat Mar 5
+	03:14:47 2011 +0000
+
+2011-03-04  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/marc_export: Teach marc_export how to
+	export bibs for specified libraries Useful shortcut for getting the bibs for libraries based on the
+	non-deleted callnumbers they have attached to non-deleted bibs.
+	Doesn't guarantee that they also have either a visible copy or
+	localized URI attached but whaddya want, magic? :) Usage: marc_export --library BR1 --library BR2 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19586
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-04  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Respect a
+	setting of depth=0.  In particular, this fixes holdings requests for
+	branch-level searches with an 'Everything' scope.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19583
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-04  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2: added bookbag
+	CRUD+ interface which supports
+	create/delete/rename/show/hide/add_rec/del_item actions; some I18N
+	and cleanup of lists.tt2; added generic redirect sub to replace the
+	bare REDIRECTs spread throughout w/ a more consistent mechanism for
+	finding where to redirect
+
+2011-03-04  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/marc_export: Teac marc_export how to
+	replace the 001 field value with the record ID This is option is probably more useful prior to 2.0 where we
+	introduced the automated "munge control numbers" option, but new
+	features go here, right? A site that wants to export their
+	bibliographic records to send to a large library consortium for
+	control number matching may find this a useful way to send out
+	records with a local 001 record ID and get standard identifier
+	control numbers back that they can add as a 035, per MARC standards.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19582
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-04  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: SRU: Restructure
+	the hash returned from open-ils.supercat.biblio.search_aliases By returning explicit index and title elements from the method, we
+	can backport cleanly to 2.0 and set the stage for pulling the title
+	element directly from the database in 2.1 and beyond.  In addition, the enriched object enables us to get rid of the
+	hardcoded nested qualifier map for bibs, and also enables us to fix
+	the explain document for SRU for authority records.  Finally, we also fix the mappings of SRU qualifiers to Evergreen
+	search aliases (in many cases we had been quietly falling back to
+	plain kw searches, which was not cool).  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19573
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-03  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Add complete set
+	of Evergreen search aliases and attributes to SRU explain Original "pull from database" code had limited the search aliases to
+	those that were qualified; now we pull all of them, and if they are
+	not qualified, we qualify them as "eg".  In addition, for some of the non-index attributes (sort, direction,
+	site, available), restore the descriptive title that was previously
+	available.  Slightly longer term we will add a "description" column
+	to config.metabib_search_alias to store this information.  Also, we had always been using the global %qualifier_map in
+	return_sru_explain(), even though the intention was to enable the
+	authority explain index to pass in an overriding set of values. This
+	commit breaks the authority SRU explain, but as it had been
+	incorrectly dumping the bib explain, this brings us a step closer to
+	proper explain support for authorities.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19572
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-03  berick <berick at esilibrary.com>
+
+	* : commit ab854adf4957f810ec30d5d24ca327f49249c94d Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Thu Mar 3
+	05:44:33 2011 +0000
+
+2011-03-03  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Whitespace
+	consistency for O:WWW:SuperCat.pm git-svn-id: svn://svn.open-ils.org/ILS/trunk@19563
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-02  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm: Call
+	number sorting "before" the context needs to be segregated based on
+	directly on the label, "here-and-after" on the bytea version.
+	Testing bears this out, but more eyes would be appreciated.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19560
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-02  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0493.data.interval-descriptions.sql: Add
+	example intervals to some library setting descriptions Based on a patch provided by Michael Peters
+	<mrpeters at library.in.gov> in Launchpad bug 717308, provide examples
+	of intervals in several descriptions that lacked them.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19558
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: Prevent an
+	unitialized variable warning when loading OpenILS::WWW::EgWeb git-svn-id: svn://svn.open-ils.org/ILS/trunk@19555
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-01  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/MANIFEST,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Method.pm.in,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/Web.pm.in,
+	Open-ILS/src/perlmods/t/15-OpenILS-WWW.t, configure.ac: Remove dead
+	code: OpenILS::WWW::Web and OpenILS::WWW::Method modules git-svn-id: svn://svn.open-ils.org/ILS/trunk@19554
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-01  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: update
+	cached user after email/password update; repaired
+	recently-introduced typo on user transaction retrieval method git-svn-id: svn://svn.open-ils.org/ILS/trunk@19552
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-01  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/c-apps/oils_auth.c: when using the force-reload
+	option to reset timeout, propagate the ws_ou and wsid values from
+	the cached user object into the reloaded user object git-svn-id: svn://svn.open-ils.org/ILS/trunk@19551
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-03-01  berick <berick at esilibrary.com>
+
+	* : commit 1cce1437447393ae2a520248a4361a2d3ffacee5 Author: erickson
+	<erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Mar 1
+	16:20:52 2011 +0000
+
+2011-03-01  berick <berick at esilibrary.com>
+
+	* : commit 76ca4532ee6c8d1ff35d45899aec0ae2ec996b4e Author: dbs
+	<dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Tue Mar 1
+	04:16:07 2011 +0000
+
+2011-02-28  berick <berick at esilibrary.com>
+
+	* : commit 65ae458330c095ad2d5dc48a78fa88a8d78a691d Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon Feb 28 08:36:43 2011 -0500
+
+2011-02-25  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/admin/org_unit_settings.js: 
+	Updated org selector code in org setting UI Removed some ad-hoc org-unit tree widget code and replaced with the
+	a standard solution from the openils dojo user lib.  Pass the auth on org value retrieval to pick up perm-protected
+	settings.  Use STAFF_LOGIN for context selector perm, since each setting has
+	its own perm that is checked before fetching.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19543
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-25  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql,
+	Open-ILS/src/sql/Pg/upgrade/0492.data.update_cn_label_sortkey.sql: 
+	make sure asset.call_number.label_sortkey is up to date git-svn-id: svn://svn.open-ils.org/ILS/trunk@19540
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-25  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2: 
+	provide three rows of search input by default this better accommodates users with no JS
+
+2011-02-25  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm: 
+	remove debugging cruft
+
+2011-02-25  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/qtype_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/parts/stypes_selector.tt2: 
+	refining advanced search now preserves qtype/contains/query combos.
+	also, also, show something better for empty search results
+
+2011-02-24  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/audience_options.tt2,
+	Open-ILS/web/templates/default/opac/parts/audience_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/item_lang_options.tt2,
+	Open-ILS/web/templates/default/opac/parts/language_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/parts/stypes_selector.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: lot of things,
+	including: - crib subjects support from regular opac poc - get rid of adv search form inclusion on results page, but keep the
+	    link to it. Show a special version of just the "compiled" QP query - better and more generic handling of search terms (compiling CGI
+	    params to QP string) - make limit to avail and sort work from basic search results page - genericize search cgi params -> qp. filter:foo, s/class/qtype/,
+	etc - more!
+
+2011-02-24  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/templates/default/acq/picklist/brief_record.tt2: typo
+	fix "Pat, I'd like to buy a vowel" Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19537
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-24  dbwells <dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0491.function.maintain_901_fix_regex.sq
+	l: Fix regex in maintain 901c The previous regex would delete any 901 fields *and* any fields
+	which followed.  Since the 901 is typically the last field, this
+	problem didn't surface during testing.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19534
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-24  gmc <gmc at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/action.p
+	m,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/actor.pm: 
+	added missing columns to CDBI table definitions Signed-off-by: Galen Charlton <gmc at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19531
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-24  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql: Per Robert
+	Soulliere, it can be necessary in some cases to clean out bad data
+	from action.reservation_transit_copy before applying the missing
+	fkeys to said table.  https://bugs.launchpad.net/evergreen/+bug/721450 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19528
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: clear
+	out the hold_copy_map entries for holds cancelled via the
+	clear-shelf processes git-svn-id: svn://svn.open-ils.org/ILS/trunk@19525
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0490.schema.staff-client-copy-counts.sq
+	l: include copy/call_number deletedness in staff-version copy counts git-svn-id: svn://svn.open-ils.org/ILS/trunk@19522
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/audience_options.tt2,
+	Open-ILS/web/templates/default/opac/parts/filtersort.tt2,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/item_lang_options.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/filtersort.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: advanced search
+	results now show an advanced search form...  for refining your search terms.  The query-type/contains/term rows
+	don't yet populate, but the rest of the form does. There probably
+	also needs to be more stylistic consideration.  Still need to
+	improve the translation of CGI parameters into QP syntax. Still need
+	to do all kinds of things.
+
+2011-02-23  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Add 830
+	as a controllable bibliographic field in authority linking script Per http://www.loc.gov/marc/bibliographic/bd830.html, bibliographic
+	830 should be controlled by authority 130. The "common cataloging
+	practice" in 830 of omitting non-filing characters may cause some
+	entries to not be linked that otherwise would be.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19518
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql: missing semicolon git-svn-id: svn://svn.open-ils.org/ILS/trunk@19517
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql: typo git-svn-id: svn://svn.open-ils.org/ILS/trunk@19516
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/SuperCat.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/SuperCat.pm: Working SRU
+	search for various authority records We now have search indexes for:   * ID   * name   * subject   * title   * topic O:WWW:SuperCat::sru_search has been refactored somewhat to reduce
+	code duplication between the authority SRU and the bibliographic
+	SRU.  This SRU interface lives, by default, at
+	http://hostname/opac/extras/sru_auth Explain output is still a bit wonky in the configInfo section.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19514
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* build/i18n/Makefile: Correct the install location for Dojo i18n
+	bundles We had been converting xx-YY into xx/yy for a directory structure,
+	but current evidence shows that it should be xx-yy. Hard to believe
+	we've overlooked this for so long. Also, with the exception of the
+	en-ca/en-gb/en-us locales, we should probably trim the locale to
+	just xx - but that's a different problem, and let's just focus on
+	getting this working to begin with.  Addresses Launchpad # 723489 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19507
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-23  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/TagURI.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/990.schema.unapi.sql,
+	Open-ILS/src/sql/Pg/build-db.sh,
+	Open-ILS/src/sql/Pg/upgrade/0489.schema.unapi2.sql: Merging in unAPI
+	v2, the bono edition  * Add unapi schema, functions and initial transform setup  * General purpose tag URI parser  * upgrade script and build-db.pl integration git-svn-id: svn://svn.open-ils.org/ILS/trunk@19506
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-22  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/templates/base.tt2: dojo.js has to be loaded from the
+	same domain as the page, unless it's a cross-domain build git-svn-id: svn://svn.open-ils.org/ILS/trunk@19503
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-22  berick <berick at esilibrary.com>
+
+	* : commit 0b1ce40d1122accbf6d605c87de36eb7defee7b2 Author: berick
+	<berick at esilibrary.com> Date:   Tue Feb 22 15:35:55 2011 -0500
+
+2011-02-22  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/base.tt2: oops, forgot
+	to do this reflecting js move
+
+2011-02-22  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/js/opac/simple.js,
+	Open-ILS/web/js/ui/default/opac/simple.js: move js to its proper
+	places in the filesystem
+
+2011-02-22  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/footer.tt2: move js to end
+	of body; no need to have footer in its own file
+
+2011-02-21  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2: empty case
+	for myopac/circs
+
+2011-02-21  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: empty
+	case for myopac/holds. use of quant for plural word in i18n.
+
+2011-02-21  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2: show
+	summarized copy availability on results page
+
+2011-02-21  berick <berick at esilibrary.com>
+
+	* : commit 9e3341696fb944ea80adb0ebac23727ec5521919 Author: berick
+	<berick at esilibrary.com> Date:   Mon Feb 21 15:32:07 2011 -0500
+
+2011-02-21  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/table.tt2: berick
+	spotted it. double escaping.
+
+2011-02-21  senator <lebbeous at esilibrary.com>
+
+	* : commit 684a218db75389d169abf50cc882fb7cb4ab9370 Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon Feb 21 14:42:38 2011 -0500
+
+2011-02-21  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Make sure we continue looping in situations where there is
+	only one copy git-svn-id: svn://svn.open-ils.org/ILS/trunk@19499
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-21  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/000.english.pg90.fts-config.sql: Add support
+	for 9.0 in initial db creation scripts git-svn-id: svn://svn.open-ils.org/ILS/trunk@19495
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-21  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql: Addressing LP bug:
+	https://bugs.launchpad.net/evergreen/+bug/721450 If a series-class index definition has been removed, the data
+	remains in the field entry table.  This is because there was no fkey
+	previously.  We need to clean that data out so that the fkey can be
+	validated during upgrade.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19494
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: immediate cache expiration
+	for html is too aggressive, leading to re-fetches on current page w/
+	chrome;  give the browser a few seconds to breathe
+
+2011-02-18  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql: A function for
+	normalizing numeric strings git-svn-id: svn://svn.open-ils.org/ILS/trunk@19491
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: initial
+	cut of anonymoust cache record lists (aka My List) management; minor
+	cleanup
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* : adding the fines/payments tab images
+
+2011-02-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/xml/result/result_table.xml: 
+	Whitespace - convert mix of tabs/spaces to pure spaces git-svn-id: svn://svn.open-ils.org/ILS/trunk@19486
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/xml/result/result_table.xml: Switch
+	to BT.textContent() for Opera compatibility The BT.textContent() method abstracts away some of the browser
+	differences for us. Most importantly, it makes Opera happy.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19485
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: if no login
+	redirect is set, redirect to account instead of home page
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2: hide all refs
+	to fines payment until its implemented to reduce confusion; minor
+	cleanup
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/record/summary.tt2: i18n
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cn_details.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/copyinfo.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: round of
+	CSS cleanup;  removing unused rules and replacing inline style with
+	css classes
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: mild code
+	realignment
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm: ensure all login
+	requests are over SSL; warn of any non-SSL logout requests; add log
+	line prefixes for simpler grepping
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/result/filtersort.tt2: 
+	i18n and cleanup
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* : commit 935bc041d3f1d9c569b30fd1cda31088155f7afe Author: erickson
+	<erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Fri Feb 18
+	14:35:06 2011 +0000
+
+2011-02-18  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm: allow
+	users to see their own payments w/o perm git-svn-id: svn://svn.open-ils.org/ILS/trunk@19479
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: retain
+	ability for a user to see his/her own payments and open transactions git-svn-id: svn://svn.open-ils.org/ILS/trunk@19478
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm: More user
+	transaction retrieval API cleanup Use consistent xact fleshing mechanism for circulations both for
+	less/cleaner code and to consistently take advantage of CSToreEditor
+	for authoritative support.  Added .flesh option to transaction history api calls, consistent
+	with non-history version.  Added a have_payments history call so we can limit retrieval to
+	xacts that had at least 1 payment When making sub-req calls to payment API calls, call .authoritative
+	as appropriate git-svn-id: svn://svn.open-ils.org/ILS/trunk@19477
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: while we're at it,
+	condense the js/css/images deflat and cache control into 1 block
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: under /eg/opac, expire
+	html immediately to pick up dynamic data;  set public cache-control
+	on general images/css/js content
+
+2011-02-18  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/parts/base.tt2: after auth
+	expire time, redirect to logout page (which ultimately redirects
+	home) to force removal of the stale auth cookie
+
+2011-02-18  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/extras/Makefile.install,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger/Reactor/SendE
+	mail.pm: Bolster SendEmail Reactor's handling of UTF-8 content Use the Encode module and encode_utf8() instead of utf8 and
+	utf8::encode.  The utf8 module is meant for enabling UTF-8 content
+	in source code.  Also, add the MIME-Version / Content-type / charset headers that
+	some mail user agents need to know that they're dealing with Unicode
+	mail.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19476
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-17  senator <senator at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	*
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/act
+	ion.pm: Booking: fix the targeter in the
+	I'm-reserving-this-exact-resource-with-this- exact-barcode case.  It should have always worked like this. This should better mirror
+	the behavior in the holds targeter when placing a copy-level hold.
+	Basically don't fail to target a resource for a reservation later
+	just because it's not in an available status right at this moment.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19470
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-17  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/stypes_selector.tt2: basic
+	search classes work (except cn) Not sure what would happen on a KCLS environment. Need to test.
+	bibcn nor cn do what I mean in my dev environment.
+
+2011-02-17  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/skin/default/xml/body.xml,
+	Open-ILS/web/opac/skin/default/xml/home/index_body.xml: Avoid
+	mixed-content warnings due to HTTP link for Google Chrome Frame We're hardcoding this to HTTPS for now to avoid the mixed-content
+	warnings that occur when content location is https:// and the linked
+	script is at http:// but a config-aware patch probably wouldn't be a
+	bad idea.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19466
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-17  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/opac/common/js/opac_utils.js: vestigial 2nd param to
+	session.retrieve from opac now actually changes the behavior (see
+	r19447) in an unexpected way, remove git-svn-id: svn://svn.open-ils.org/ILS/trunk@19464
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-17  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2: force
+	new layout changes into advanced search page The advanced search page doesn't yet work, but should soon.
+
+2011-02-17  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/result/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: make the zero-hits
+	case work for search results
+
+2011-02-17  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/ui/default/circ/selfcheck/selfcheck.js: CSS hook
+	for check-in failures with selfcheck git-svn-id: svn://svn.open-ils.org/ILS/trunk@19461
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-17  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.functions.config.sql,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/upgrade/0488.function.maintain_901_tcn.sql: 
+	Teach maintain_901 trigger to respect the "Use record ID for TCN"
+	global flag Rather than relying on the Perl layer to set the correct TCN on the
+	way in, do it as part of the in-database indexing to ensure that we
+	have consistent results no matter how the record gets into the
+	database.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19458
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-16  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: crummy
+	paging in the record pages' copy listing
+
+2011-02-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/web/js/dojo/openils/BibTemplate.js: Patch based on work
+	by Dan Wells to improve Opera BibTemplate support git-svn-id: svn://svn.open-ils.org/ILS/trunk@19455
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-16  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/record/cn_details.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2: copy
+	details in the right place in the layout; some hide_me's sprinkled
+	around for now
+
+2011-02-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/950.data.seed-values.sql,
+	Open-ILS/src/sql/Pg/upgrade/0487.circ_matrix_fallthrough.sql,
+	Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js,
+	Open-ILS/web/js/dojo/openils/widget/AutoGrid.js,
+	Open-ILS/web/js/dojo/openils/widget/EditPane.js,
+	Open-ILS/web/js/dojo/openils/widget/nls/AutoFieldWidget.js,
+	Open-ILS/web/js/ui/default/conify/global/config/circ_matrix_matchpo
+	int.js,
+	Open-ILS/web/templates/default/conify/global/config/circ_matrix_mat
+	chpoint.tt2: Patch from Thomas Berezansky to implement circulation
+	matchpoint value fallthrough, whereby specific rules can inherit
+	values from generic rules.  Background, taken from
+	https://bugs.launchpad.net/evergreen/+bug/635463: Theory: Make the things returned (circulate, duration_rule,
+	recurring_fine_rule, max_fine_rule, hard_due_date,
+	total_copy_hold_ratio, available_copy_hold_ratio and renewals) "fall
+	through" when set to NULL.  The circ matrix edit screen has had some changes too, partially for
+	showing "Inherited" in some places where appropriate, partially for
+	field ordering and editing display and consistency. The fields that
+	show up earlier contribute to tests that will be applied to the
+	circulation attempt, while the "results" that do not change what
+	rows are considered are grouped at the end.  Pros: You can override a subset of those fields with a specific rule while
+	allowing broader rules to fill in the holes.  This may result in
+	less duplication of information across rules, making things easier
+	to maintain.  Thus, this may result in less rules in general, and
+	thus less processing time on sorting them overall.  Cons: Manually figuring out the specifics of what will happen will take
+	more time/effort.  Changing a single rule may have a greater
+	unintended effect on other rules.  Staff would need training for
+	when to have a rule fall through and when to set it specifically.
+	More time to return from the DB for any rule that is "falling
+	through" to broader rules.  Examples for the following org tree: CONS -SYSA --LIBC --LIBD -SYSB --LIBE --LIBF Implementing the following "business" rules: At the CONS level: By default, everything circulates, uses DFLT_DUR
+	duration, DFLT_RFINE recurring fine, and DFLT_MFINE max fine.  Circ
+	Modifier "book" uses the duration BOOK_DUR Reference flagged
+	materials don't circulate At the SYSA level there are no special rules.  At the SYSB level the max fine should be SYSB_MFINE.  At the LIBC level the recurring fine is LIBC_RFINE At the LIBD level circ modifier "book" uses the DFLT_DUR duration
+	instead of "BOOK_DUR" At the LIBE level reference flagged materials circulate.  At the LIBF level there are no special rules.  The current method would require the following circ rules to
+	implement those business rules: CIRC_LIB CIRC_MOD REFERENCE CIRC? DURATION_RULE RECURRING_FINE
+	MAX_FINE CONS NULL NULL TRUE DFLT_DUR DFLT_RFINE DFLT_MFINE CONS
+	NULL TRUE FALSE DFLT_DUR DFLT_RFINE DFLT_MFINE CONS book NULL TRUE
+	BOOK_DUR DFLT_RFINE DFLT_MFINE CONS book TRUE FALSE BOOK_DUR
+	DFLT_RFINE DFLT_MFINE SYSB NULL NULL TRUE DFLT_DUR DFLT_RFINE
+	SYSB_MFINE SYSB NULL TRUE FALSE DFLT_DUR DFLT_RFINE SYSB_MFINE SYSB
+	book NULL TRUE BOOK_DUR DFLT_RFINE SYSB_MFINE SYSB book TRUE FALSE
+	BOOK_DUR DFLT_RFINE SYSB_MFINE LIBC NULL NULL TRUE DFLT_DUR
+	LIBC_RFINE DFLT_MFINE LIBC NULL TRUE FALSE DFLT_DUR LIBC_RFINE
+	DFLT_MFINE LIBC book NULL TRUE BOOK_DUR LIBC_RFINE DFLT_MFINE LIBC
+	book TRUE FALSE BOOK_DUR LIBC_RFINE DFLT_MFINE LIBD book NULL TRUE
+	DFLT_DUR DFLT_RFINE DFLT_MFINE LIBD book TRUE FALSE DFLT_DUR
+	DFLT_RFINE DFLT_MFINE LIBE NULL NULL TRUE DFLT_DUR DFLT_RFINE
+	SYSB_MFINE LIBE book NULL TRUE BOOK_DUR DFLT_RFINE SYSB_MFINE 16 circ rules total.  The new method would require the following circ rules to implement
+	those business rules: CIRC_LIB CIRC_MOD REFERENCE CIRC? DURATION_RULE RECURRING_FINE
+	MAX_FINE CONS NULL NULL TRUE DFLT_DUR DFLT_RFINE DFLT_MFINE CONS
+	book NULL NULL BOOK_DUR NULL NULL CONS NULL TRUE FALSE NULL NULL
+	NULL SYSB NULL NULL NULL NULL NULL SYSB_MFINE LIBC NULL NULL NULL
+	NULL LIBC_RFINE NULL LIBD book NULL NULL DFLT_DUR NULL NULL LIBE
+	NULL TRUE TRUE NULL NULL NULL 7 circ rules total.  Starting with the above, lets assume that SYSA wants to change their
+	recurring fine to SYSA_RFINE.  LIBC's recurring fine is to be
+	unchanged.  The current method requires the following changes: ADD the following entries: CIRC_LIB CIRC_MOD REFERENCE CIRC?
+	DURATION_RULE RECURRING_FINE MAX_FINE SYSA NULL NULL TRUE DFLT_DUR
+	SYSA_RFINE DFLT_MFINE SYSA NULL TRUE FALSE DFLT_DUR SYSA_RFINE
+	DFLT_MFINE SYSA book NULL TRUE BOOK_DUR SYSA_RFINE DFLT_MFINE SYSA
+	book TRUE FALSE BOOK_DUR SYSA_RFINE DFLT_MFINE UPDATE the LIBD entries: CIRC_LIB CIRC_MOD REFERENCE CIRC?
+	DURATION_RULE RECURRING_FINE MAX_FINE LIBD book NULL TRUE DFLT_DUR
+	SYSA_RFINE DFLT_MFINE LIBD book TRUE FALSE DFLT_DUR SYSA_RFINE
+	DFLT_MFINE 4 rules added, 2 changed, total is now 20 rules.  The new method would require the following changes: ADD the following entry: CIRC_LIB CIRC_MOD REFERENCE CIRC?
+	DURATION_RULE RECURRING_FINE MAX_FINE SYSA NULL NULL NULL NULL
+	SYSA_RFINE NULL 1 rule added, 0 changed, total is now 8 rules.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19453
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: Patch from Thomas
+	Berezansky to make many older OU setting types i18n friendly git-svn-id: svn://svn.open-ils.org/ILS/trunk@19451
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-16  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/950.data.seed-values.sql: realign trunk
+	permission numbering with 2.0 git-svn-id: svn://svn.open-ils.org/ILS/trunk@19449
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-16  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/parts/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2: more i18n,
+	minor cleanup
+
+2011-02-16  berick <berick at esilibrary.com>
+
+	* : commit a268006a3201654e77b4fa51ec5205cb17459c48 Author: erickson
+	<erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Feb 16
+	15:07:04 2011 +0000
+
+2011-02-15  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: Add a
+	note for future work for full hold count coverage git-svn-id: svn://svn.open-ils.org/ILS/trunk@19446
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-15  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/external/developers.js: who needs this
+	much noise in the javascript console? javascript.options.strict =
+	false git-svn-id: svn://svn.open-ils.org/ILS/trunk@19445
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-14  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/examples/fm_IDL.xml,
+	Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/080.schema.money.sql,
+	Open-ILS/src/sql/Pg/upgrade/0486.schema.mccp-order-number.sql: 
+	capture credit card order_number Uunique payment transaction ID for online payments git-svn-id: svn://svn.open-ils.org/ILS/trunk@19443
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/advanced.tt2,
+	Open-ILS/web/templates/default/opac/home.tt2,
+	Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: more i18n goodness
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm: 
+	avoid undef warnings
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/parts/base.tt2: when
+	authenticated, force the page to redirect the home page after the
+	auth time has expired to protect patron data and  prevent
+	potentially confusing post-search-submit redirects
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* : commit 51b9bd01c435babf0eda0e6ee351da80df7d73b7 Author: Bill
+	Erickson <erickson at esilibrary.com> Date:   Mon Feb 14 13:03:24 2011
+	-0500
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/c-apps/oils_auth.c: added option to
+	open-ils.auth.session.retrieve to return the full cached object,
+	which includes the auth time (cache timeout) of the cached user
+	object
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm: added
+	sub to collect the HTML version of a record for display
+
+2011-02-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2: hold actions
+	work
+
+2011-02-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2: Renewals
+	working, with feedback displayed
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2: make date
+	format localize-able
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/parts/record/cn_details.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2: pulling in more copy
+	fields for display; added sample code
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* : commit 8d12ceb700e21f31a38264519544a113fcbaaa13 Author: senator
+	<lebbeous at esilibrary.com> Date:   Tue Feb 15 13:37:47 2011 -0500
+
+2011-02-15  senator <lebbeous at esilibrary.com>
+
+	* : commit b36ac359587491cb166cd02ca0c22afaa404598a Author: senator
+	<lebbeous at esilibrary.com> Date:   Tue Feb 15 12:19:11 2011 -0500
+
+2011-02-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/main.tt2: Judgment
+	call. I think this just looks better.
+
+2011-02-15  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/header.tt2: make money
+	string localizable
+
+2011-02-15  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/parts/header.tt2: show grocery
+	fines; define date format in a single location
+
+2011-02-15  berick <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/topnav.tt2: heh, rolling
+	bcak unintended addition of test code
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/web/templates/default/opac/record.tt2: added support for
+	copy paging/sorting
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: when a secure
+	page is requested insecurely, direct to login page, then redirect to
+	the originally requested page after successful login.  This removes
+	the need for explicit redirect_to and https:// in secure links
+
+2011-02-14  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: fixed holds
+	sorting; my-account link redirects to my-account; i18n cleanup
+
+2011-02-14  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: work on myopac
+	fines, displayed in account summary (myopac/main)
+
+2011-02-14  senator <lebbeous at esilibrary.com>
+
+	* : commit b74e0c6c8598cc3ccfb12db90bb4ddd987c3b32b Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon Feb 14 13:33:40 2011 -0500
+
+2011-02-14  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/advanced.tt2,
+	Open-ILS/web/templates/default/opac/home.tt2,
+	Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/parts/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/web/templates/default/opac/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: Move USE * from
+	topnav.tt2 to new header.tt2; also some myopac work Minor progress in myopac/main and myopac/circs
+
+2011-02-14  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Utils/MFHD/test/mfhd.t: Enable
+	MFHD tests to find their testdata When the MFHD tests wrapped in mfhd.t are invoked from outside of
+	the directory, they tests failed to find the mfhddata.txt file.
+	Judicious use of the __FILE__ special literal and
+	File::Basename::dirname() avoids that problem. Now we just need to
+	munge @INC to ensure that testlib.pm can be resolved (and hope that
+	no conflicts ever turn up).  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19442
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-13  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/place_hold.tt2: 
+	localization fixed for plac hold UI
+
+2011-02-13  Bill Erickson <erickson at esilibrary.com>
+
+	* : commit 978935141ae5d4a9c791c4d03adf7b7d4f1b7803 Author: Bill
+	Erickson <erickson at esilibrary.com> Date:   Sun Feb 13 18:34:02 2011
+	-0500
+
+2011-02-13  Bill Erickson <erickson at esilibrary.com>
+
+	* : repiared merge conflict
+
+2011-02-13  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Search.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm: moved
+	some code out of the main catloader module into function-specific
+	sub-modules.  Note, sub-modules still retain the
+	OpenILS::WWW::EGCatLoader package name to ease subclassing of the
+	top-level loader object
+
+2011-02-13  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/support-scripts/authority_control_fields.pl: Teach
+	authority_control_fields.pl about record ranges Passing --record 10,000 times at the command line sucks, and --all
+	is not particularly realistic for large databases. Adding --start_id
+	and --end_id makes this script more usable.  Also provide reasonably full POD documentation, and rely on
+	Pod::Usage to provide help based on it when help is requested or
+	passed in options don't make sense.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19439
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-11  dbs <dbs at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Biblio.pm,
+	Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/reporter-schema.sql,
+	Open-ILS/src/sql/Pg/upgrade/0485.schema.reporter_strip_isbns.sql: 
+	Normalize ISBNs by stripping hyphens in search methods and in
+	reporter.materialized_simple_record We weren't normalizing ISBNs in search or in
+	reporter.materialized_simple_record which required users to exactly
+	match the form of the ISBN as entered in the MARC record to get a
+	successful search result - pretty hit or miss.  The longer term fix in 2.0 and above is to make the ISBN search
+	search against the identifier|isbn index, which also gets
+	ISBN10/ISBN13 equivalence goodness.  But this patch will be
+	relatively easy to backport through to 1.6.1 and plugs some of the
+	holes in our exposed APIs and search points in the short term.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19432
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-11  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/marc_misc.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/body.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2: A start
+	with record detail page
+
+2011-02-11  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/Makefile.am: bump xulrunner version git-svn-id: svn://svn.open-ils.org/ILS/trunk@19430
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-11  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/040.schema.asset.sql,
+	Open-ILS/src/sql/Pg/upgrade/0484.sql.pg-90-compat.sql: Postgres 9.0
+	is more strict about variable names in functions. We will probably
+	hit more of these, but these in particular break the OPAC.  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19427
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: advanced
+	page doesn't need login first
+
+2011-02-10  berick <berick at esilibrary.com>
+
+	* : repaired topnav merge conflict
+
+2011-02-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: the user
+	account "dashboard"/mini-myopac works on every page now
+
+2011-02-10  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: whitespace and
+	minor stuff
+
+2011-02-10  senator <lebbeous at esilibrary.com>
+
+	* : commit 9f49869b4c1823394a66317bb802972ce618cc2f Author: senator
+	<lebbeous at esilibrary.com> Date:   Thu Feb 10 13:15:19 2011 -0500
+
+2011-02-10  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/login/form.tt2: login
+	form cleanup and implementation of login-failure handling; more to
+	come
+
+2011-02-10  berick <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb.pm,
+	Open-ILS/src/perlmods/lib/OpenILS/WWW/EGWeb/I18NFilter.pm,
+	Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2: added i18n
+	filter support for translating text blocks via filters; more login
+	form cleanup; moved some global USE's into topnav
+
+2011-02-10  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm: added
+	support for login via barcode and persistent logins; capturing login
+	failures; use cache infrastructure for fetching/caching cmf objects
+
+2011-02-10  miker <miker at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/sql/Pg/002.schema.config.sql,
+	Open-ILS/src/sql/Pg/100.circ_matrix.sql,
+	Open-ILS/src/sql/Pg/110.hold_matrix.sql,
+	Open-ILS/src/sql/Pg/upgrade/0483.dynamic_weights_fix.sql: Patch from
+	Thomas Berezansky addressing his recent dynamic circ/hold field
+	weighting patch.  Due to an oversight of auto-casting on my part dynamic weighting may
+	incorrectly order similar rows that differ only in org unit or
+	permission group.  Bad me for not testing for that case before now.  The attached patch should fix this. All it does is replace two
+	functions, and in them replaces one INT variable with a NUMERIC(6,2)
+	and a pile of integer constants with numeric constants (by virtue of
+	adding .0 to them).  git-svn-id: svn://svn.open-ils.org/ILS/trunk@19422
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-09  senator <lebbeous at esilibrary.com>
+
+	* : commit ac357a7cf4b4a787c25b62afd43eb10410fa1459 Merge: 4971896
+	91ed777 Author: senator <lebbeous at esilibrary.com> Date:   Wed Feb 9
+	17:15:09 2011 -0500
+
+2011-02-09  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/marc_misc.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/filtersort.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: misc work on the
+	results page, including: hold placement link, result prev/next page links on top and bottom,
+	edition and physical description, add in previously missing
+	filtersort template
+
+2011-02-09  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 91ed77750301c2a952464feec36d161e31348d60 Author: dbwells
+	<dbwells at dcc99617-32d9-48b4-a31d-7c20da2025e4> Date:   Wed Feb 9
+	18:57:50 2011 +0000
+
+2011-02-09  erickson <erickson at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ.pm: allow item
+	status update if either status-specific perm is allowed or
+	UPDATE_COPY is allowed.  fire off related A/T events after the
+	initial transaction has been committed git-svn-id: svn://svn.open-ils.org/ILS/trunk@19414
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-09  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm: 
+	remove duplicate variable def
+
+2011-02-09  berick <berick at esilibrary.com>
+
+	* : commit 2883a774560b8ec6929708cdcf80408306e413cd Author: berick
+	<berick at esilibrary.com> Date:   Wed Feb 9 12:29:26 2011 -0500
+
+2011-02-08  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/templates/default/opac/parts/libselect.tt2,
+	Open-ILS/web/templates/default/opac/parts/marc_misc.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: hey, maybe I should
+	commit sometime today results page partly working. woof.
+
+2011-02-08  phasefx <phasefx at dcc99617-32d9-48b4-a31d-7c20da2025e4>
+
+	* Open-ILS/xul/staff_client/server/skin/global.css: tweak selector
+	used for font_helper() CSS classes Makes the flat-text MARC editor respect the global font settings,
+	resolving bug https://bugs.launchpad.net/evergreen/+bug/678078 Signed-off-by: Galen Charlton <gmc at esilibrary.com> Signed-off-by:
+	Jason Etheridge <jason at esilibrary.com> git-svn-id: svn://svn.open-ils.org/ILS/trunk@19411
+	dcc99617-32d9-48b4-a31d-7c20da2025e4
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* : commit 1289e7ff7822adf27c08728f0e86fd8badb3a075 Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon Feb 7 17:44:46 2011 -0500
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/libselect.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2: basic
+	search "works" inasmuch as it leads to a GET request against the
+	results page as it should. not that the results page itself works
+	yet.
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/parts/login/form.tt2: login
+	page working (just for login, not the extras like "remember me")
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/web/templates/default/opac/parts/utils.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: ctx.media_prefix
+	for all images and css
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/cn_browse.tt2,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/libselect.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/body.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cn_details.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/copyinfo.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/parts/stypes_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/tips.tt2: Render entities
+	as calls to l(). Goodbye DTD
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/form.tt2: preparing
+	a could of docs for entitization (fix wrong ent references)
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/circs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/holds.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/lists.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/global_row.
+	tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/cn_browse.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/footer.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/item_lang_options.tt
+	2, Open-ILS/web/templates/default/kcls-wire/parts/libselect.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login/form.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/myopac/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/body.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/cn_details.tt
+	2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/copyinfo.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/header.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/table.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/stypes_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/tips.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2,
+	Open-ILS/web/templates/default/kcls-wire/place_hold.tt2,
+	Open-ILS/web/templates/default/kcls-wire/record.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2,
+	Open-ILS/web/templates/default/opac-poc/base.tt2,
+	Open-ILS/web/templates/default/opac-poc/common.tt2,
+	Open-ILS/web/templates/default/opac-poc/home.tt2,
+	Open-ILS/web/templates/default/opac-poc/login.tt2,
+	Open-ILS/web/templates/default/opac-poc/marc_attrs.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/_links.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/bookbags.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/fines.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac-poc/myopac/update_email.tt2,
+	Open-ILS/web/templates/default/opac-poc/place_hold.tt2,
+	Open-ILS/web/templates/default/opac-poc/record.tt2,
+	Open-ILS/web/templates/default/opac-poc/results.tt2,
+	Open-ILS/web/templates/default/opac/advanced.tt2,
+	Open-ILS/web/templates/default/opac/base.tt2,
+	Open-ILS/web/templates/default/opac/common.tt2,
+	Open-ILS/web/templates/default/opac/home.tt2,
+	Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/marc_attrs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/_links.tt2,
+	Open-ILS/web/templates/default/opac/myopac/bookbags.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/fines.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/lists.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/global_row.tt2,
+	Open-ILS/web/templates/default/opac/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/opac/parts/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/cn_browse.tt2,
+	Open-ILS/web/templates/default/opac/parts/footer.tt2,
+	Open-ILS/web/templates/default/opac/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/opac/parts/item_lang_options.tt2,
+	Open-ILS/web/templates/default/opac/parts/libselect.tt2,
+	Open-ILS/web/templates/default/opac/parts/login/form.tt2,
+	Open-ILS/web/templates/default/opac/parts/myopac/base.tt2,
+	Open-ILS/web/templates/default/opac/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/body.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/cn_details.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/copyinfo.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/opac/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/header.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/opac/parts/result/table.tt2,
+	Open-ILS/web/templates/default/opac/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/opac/parts/stypes_selector.tt2,
+	Open-ILS/web/templates/default/opac/parts/tips.tt2,
+	Open-ILS/web/templates/default/opac/parts/topnav.tt2,
+	Open-ILS/web/templates/default/opac/parts/utils.tt2,
+	Open-ILS/web/templates/default/opac/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: Shove the POC out
+	of the way, move the KCLS-derived stuff in
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/css/skin/default/opac/contentslider.css,
+	Open-ILS/web/css/skin/default/opac/semiauto.css,
+	Open-ILS/web/css/skin/default/opac/style.css,
+	Open-ILS/web/opac/skin/kcls-wire/css/contentslider.css,
+	Open-ILS/web/opac/skin/kcls-wire/css/semiauto.css,
+	Open-ILS/web/opac/skin/kcls-wire/css/style.css,
+	Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/myopac/circs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/holds.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/lists.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/libselect.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login/form.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/table.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2: Big move of
+	css, images, js
+
+2011-02-07  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/circs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/holds.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/lists.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/global_row.
+	tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login/form.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/body.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/cn_details.tt
+	2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2: Remove a ton
+	of javascript. A little more to come
+
+2011-02-04  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/parts/place_hold.tt2,
+	Open-ILS/web/templates/default/kcls-wire/place_hold.tt2: Never got
+	the place_hold page in until just now parts/place_hold.tt2 needs css/js attention already seen by other
+	templates in parts/
+
+2011-02-04  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/css/semiauto.css,
+	Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/cn_browse.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/libselect.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/tips.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2: kill a
+	lot of inline styling, add some more js stubs, fix a bug in
+	advanced.tt2
+
+2011-02-04  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/myopac/lists.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/myopac/base.tt2: 
+	correct some style= that should be class=
+
+2011-02-04  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/css/semiauto.css,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2: utils
+	changes
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/css/semiauto.css,
+	Open-ILS/web/opac/skin/kcls-wire/css/style.css,
+	Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/circs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/holds.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/lists.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login/form.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/myopac/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/body.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/record.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2: started moving
+	some inline styles into css classes Here's the deal so far: all the inline styles are covered by one
+	class in semiauto.css, but those were created programatically and
+	reflect no understanding of the relationship between the purpose of
+	any given element that's styled and what its style is.  These
+	auto-generated styles also are kind of redundant, since with many of
+	them, instead of using the style with a long definition, you could
+	use a combination of smaller styles.  The existing markup uses many slightly different style attributes,
+	so there's plenty of stuff like "width: 12", "width: 13", "width:
+	14", etc, so there's no way to map a lot of this to semantically
+	meaningful names.  some of these classes are just going to end up
+	with names like "wide-fourteen" that are no better than inline
+	styles.  But others, as we find them manually, can be grouped and renamed
+	into something meaningful, and sometimes style can be put into
+	prexisting id and class definitions. Should be a couple more hours
+	work.  semiauto.css reflects progress with the generated classes.  changes to style.css reflect early places where style could be moved
+	into pre-existing classes.
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/common.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: move temporary
+	kcls format-icon table from mod_perl to template land
+
+2011-02-03  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 977c8d2978e962ea1a010818d251ca37cb818d8d Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Feb 3 16:47:59 2011
+	-0500
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* : commit b3d54338e9dfe25ded139d60d2943b188f14d060 Author: senator
+	<lebbeous at esilibrary.com> Date:   Thu Feb 3 15:40:34 2011 -0500
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/body.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/cn_details.tt
+	2, Open-ILS/web/templates/default/kcls-wire/record.tt2: JS stubbed
+	out, mostly. See longer commit msg.  Here's the deal with JS so far.  A few instances of onfocus, onblur, onmouseout, and onmouseover have
+	been left alone, as they're doing simple cosmetic things.  A lot of instances of onclick remain, and a couple onchange, but
+	these now either a) just do cosmetic things (hide/unhide) or b) call
+	stubbed out functions prepared in misc.js That doesn't mean we won't still totally rip out lots of this JS,
+	but it leaves us a hint as to what is supposed to happen where.  I
+	can easily see us losing track of that later.  So anyway, many of
+	the stubbed functions will probably be replaced with purely server
+	side functionality later, but until then, they can serve as a kind
+	of documentation.
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/global_row.
+	tt2: while the enter-key capturing is around, do it right at least
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/myopac/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2: deal with
+	some onclick handlers, also with broken relative links from myopac/*
+	templates
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2: addressed
+	existing onchange handlers
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/summary.tt2: 
+	get rid of some onkeydown events handlers, as well as onload and
+	onerror events that aren't for real DOM events, but for dojo-related
+	stuff
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2: Keep the
+	swapTabs() function around only for the advanced search page Other use cases will be replaced with links to actual pages, or
+	otherwise dealt with.
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced/search.tt2: 
+	remove __setsortsel() - I think this can be handled in templates
+	later
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/myopac/holds.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2: well,
+	almost all references to dojo were already gone For now i'm leaving alone a lot of instances of jsId attributes;
+	they might serve to remind us later of what some elements are for.
+
+2011-02-03  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/myopac/holds.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/lists.tt2,
+	Open-ILS/web/templates/default/kcls-wire/myopac/prefs.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/myopac/base.tt2: all
+	five main parts of their myopac page now it's on to the serious js scrubbing (dojo parts are already
+	gone). this is going to take more than simply removing js in many
+	cases, though, since so much layout is accomplished by means of JS
+	in the kcls skin, especially in regards to subinterfaces and nested
+	tabbiness
+
+2011-02-02  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/myopac/circs.tt2: myopac
+	circs page
+
+2011-02-02  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/css/style.css,
+	Open-ILS/web/templates/default/kcls-wire/myopac/main.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/myopac/base.tt2: a
+	start to myopac
+
+2011-02-01  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2: more
+	whitespace fixing; may seem trivial, but will save a lot of time
+	later in trying to understand what's what
+
+2011-02-01  senator <lebbeous at esilibrary.com>
+
+	* : commit fc9a040ce994f41d4383667018d923e8bc8b27db Author: senator
+	<lebbeous at esilibrary.com> Date:   Tue Feb 1 15:38:14 2011 -0500
+
+2011-02-01  senator <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/kcls-wire/parts/record/cn_details.tt
+	2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/kcls-wire/record.tt2: whitespace,
+	syntax, and title fixes
+
+2011-02-01  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/record.tt2: forgot this
+	for record
+
+2011-02-01  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/parts/cn_browse.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/cn_details.tt
+	2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/copyinfo.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/extras.tt2: 
+	record more complete
+
+2011-02-01  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login/form.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login_form.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/body.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/extras.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/record/summary.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/header.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/lowhits.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result/table.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result_header.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result_lowhits.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result_table.tt2,
+	Open-ILS/web/templates/default/kcls-wire/record.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2: Add record
+	page; cleanup and reorg
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* : commit 803486a30904a1d5b665cfdf1924a7a88c52fd29 Author: senator
+	<lebbeous at esilibrary.com> Date:   Mon Jan 31 17:44:41 2011 -0500
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result_header.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/result_table.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/results_body.tt2,
+	Open-ILS/web/templates/default/kcls-wire/results.tt2: progress on
+	the results page
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2: a little
+	consolidation, a little linking of new pages to each other
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/login.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/login_form.tt2: 
+	myopac login form
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	*
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced_search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/item_lang_options.tt
+	2: minor missing parts from adv search
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/css/contentslider.css,
+	Open-ILS/web/opac/skin/kcls-wire/css/style.css,
+	Open-ILS/web/opac/skin/kcls-wire/js/misc.js,
+	Open-ILS/web/templates/default/kcls-wire/advanced.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/adv_global_row.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/advanced_search.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2: advanced
+	page getting there
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/opac/skin/kcls-wire/js/misc.js: enough super-lite js
+	to make the advanced page with its tabbiness work
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-wire/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/footer.tt2,
+	Open-ILS/web/templates/default/kcls-wire/format_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/libselect.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/footer.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/format_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/libselect.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/stypes_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/tips.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/parts/utils.tt2,
+	Open-ILS/web/templates/default/kcls-wire/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/stypes_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/tips.tt2,
+	Open-ILS/web/templates/default/kcls-wire/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/utils.tt2: cleanup and
+	reorg parts so far
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-new/base.tt2,
+	Open-ILS/web/templates/default/kcls-new/footer.tt2,
+	Open-ILS/web/templates/default/kcls-new/home.tt2,
+	Open-ILS/web/templates/default/kcls-new/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-new/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-new/utils.tt2,
+	Open-ILS/web/templates/default/kcls-wire/base.tt2,
+	Open-ILS/web/templates/default/kcls-wire/footer.tt2,
+	Open-ILS/web/templates/default/kcls-wire/format_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/home.tt2,
+	Open-ILS/web/templates/default/kcls-wire/homesearch.tt2,
+	Open-ILS/web/templates/default/kcls-wire/libselect.tt2,
+	Open-ILS/web/templates/default/kcls-wire/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-wire/stypes_selector.tt2,
+	Open-ILS/web/templates/default/kcls-wire/tips.tt2,
+	Open-ILS/web/templates/default/kcls-wire/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-wire/utils.tt2: kind of have the
+	home page working, minus entity renderin
+
+2011-01-31  senator <lebbeous at esilibrary.com>
+
+	* : commit 4ae10ddb44191e726917447f54e7fbf5c5e4b6fd Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Mon Jan 31 09:59:52 2011
+	-0500
+
+2011-01-31  Bill Erickson <erickson at esilibrary.com>
+
+	* : commit 54fad5d3dce2a39ab2eb6708ccb3dd63688195e5 Author: Bill
+	Erickson <erickson at esilibrary.com> Date:   Sun Jan 30 20:16:54 2011
+	-0500
+
+2011-01-30  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/results.tt2: minor terminology
+	change
+
+2011-01-30  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: report when 0
+	items to list in circs/holds page
+
+2011-01-30  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/myopac/update_email.tt2: added
+	sample update-email operation; cleaned out some debug code
+
+2011-01-30  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/common.tt2,
+	Open-ILS/web/templates/default/opac/home.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: added org selector
+	to search form; added 'loc' param to search next/prev links
+
+2011-01-30  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: fixed some cache
+	bugs; added org location/depth search params; added org settings
+	handler
+
+2011-01-30  Bill Erickson <erickson at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGWeb.pm: protect against undef
+	string warnings
+
+2011-01-29  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2: make
+	title/author links on holds page
+
+2011-01-29  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 0418e38ef5a703a54709081fa7c964f9225d62d7 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Sat Jan 29 10:25:45 2011
+	-0500
+
+2011-01-28  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/kcls-new/base.tt2,
+	Open-ILS/web/templates/default/kcls-new/footer.tt2,
+	Open-ILS/web/templates/default/kcls-new/home.tt2,
+	Open-ILS/web/templates/default/kcls-new/searchbar.tt2,
+	Open-ILS/web/templates/default/kcls-new/topnav.tt2,
+	Open-ILS/web/templates/default/kcls-new/utils.tt2: beginning of
+	boiling down the home page of the kcls skin
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: holds retrieval
+	is a hefty process, created a parallelizer for testing; shows good
+	speed improvemetn on larger batches of holds
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2: Show hold
+	statuses
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* : commit b875dead389ce6794ac2f9c7d776b1b30b479b6b Merge: 3f19fda
+	aba35b4 Author: Bill Erickson <berick at esilibrary.com> Date:   Thu
+	Jan 27 16:00:25 2011 -0500
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/login.tt2,
+	Open-ILS/web/templates/default/opac/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2: more holds
+	placement work; use http referer as default redirect_to option for
+	login page and post-holds-placement page; when a secure resource is
+	requested, redirect to login page
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: show
+	kcls-style mat-type images for holds
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* : commit a259cba9d14f6492c3485752360b3726d70598d6 Author: senator
+	<lebbeous at esilibrary.com> Date:   Thu Jan 27 15:04:07 2011 -0500
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/place_hold.tt2,
+	Open-ILS/web/templates/default/opac/records.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2,
+	Open-ILS/web/templates/default/opac/welcome.tt2: more holds work;
+	added item form/type/lang maps to list of public access classes;
+	removed some unused test tempates
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/holds.tt2: Holds
+	editing is totally giraffes for the moment
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* : commit 1d0a2eabeb628e5b9fda75c28316ee269193175a Author: senator
+	<lebbeous at esilibrary.com> Date:   Thu Jan 27 12:36:52 2011 -0500
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 880ac99a32751a044e3204eaac6a6a9540e3ce1f Merge: 9f15347
+	07d571a Author: Bill Erickson <berick at esilibrary.com> Date:   Thu
+	Jan 27 12:10:56 2011 -0500
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: added perl
+	bits for hold cancel/suspend/activate all/selected w/ sample tempate
+	components
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/_links.tt2: This isn't
+	the time/place for finesse, but these tweaks make development easier
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: ctx.responses
+	was for debugging; don't need it
+
+2011-01-27  senator <lebbeous at esilibrary.com>
+
+	* : commit d93d488fcccbf329c241a950adca62c5f24e4e35 Author: senator
+	<lebbeous at esilibrary.com> Date:   Thu Jan 27 11:45:55 2011 -0500
+
+2011-01-27  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 02d28e8491ac3546afd008e180f305a46bbec6ba Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Jan 27 09:56:26 2011
+	-0500
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* : commit ed0c64332e953ec40c024a0e6889ee47bee9058b Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Jan 26 17:14:40 2011
+	-0500
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: fix perl sort
+	comparator
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 6f273f01ba8fa51d2a3614587546345afd894d51 Merge: e7527d5
+	b13145b Author: Bill Erickson <berick at esilibrary.com> Date:   Wed
+	Jan 26 15:14:26 2011 -0500
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: initial fines
+	list handler
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: don't attempt to
+	load account pages without valid ses and SSL
+
+2011-01-26  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2: show some
+	holds
+
+2011-01-26  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/circs.tt2: show some
+	circs in myopac -> items out
+
+2011-01-26  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac/_links.tt2,
+	Open-ILS/web/templates/default/opac/myopac/circs.tt2,
+	Open-ILS/web/templates/default/opac/myopac/holds.tt2,
+	Open-ILS/web/templates/default/opac/myopac/items_held.tt2,
+	Open-ILS/web/templates/default/opac/myopac/items_out.tt2: Make
+	myopac subpages' names match what bill had in mind
+
+2011-01-26  senator <lebbeous at esilibrary.com>
+
+	* : commit 92b79385fb5eb1c6be1270345f731f250880f138 Author: senator
+	<lebbeous at esilibrary.com> Date:   Wed Jan 26 10:23:00 2011 -0500
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 303ac85c01907b11dbd441b0982a79109b78f5f8 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Jan 26 09:59:51 2011
+	-0500
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 776a03e0bd48eaa72b308793e44f87b9273eaf4b Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Jan 26 08:39:22 2011
+	-0500
+
+2011-01-26  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/Application/Circ/Holds.pm: added
+	call args to open-ils.circ.hold.details.*.retrieve to allow the
+	caller to scale back the returned data set
+
+2011-01-25  senator <lebbeous at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/myopac.tt2,
+	Open-ILS/web/templates/default/opac/myopac/_links.tt2,
+	Open-ILS/web/templates/default/opac/myopac/main.tt2,
+	Open-ILS/web/templates/default/opac/results.tt2,
+	Open-ILS/web/templates/default/opac/welcome.tt2: starts
+
+2011-01-25  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm,
+	Open-ILS/web/templates/default/opac/common.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2: added generic public
+	object fetch-and-cache routine; added stub holds retrieval, but more
+	to come on that
+
+2011-01-25  Bill Erickson <berick at esilibrary.com>
+
+	* : commit fa94b05ce67bffad80308d77044dc98794a15fd5 Merge: 7feabe7
+	2f897a0 Author: Bill Erickson <berick at esilibrary.com> Date:   Tue
+	Jan 25 14:43:38 2011 -0500
+
+2011-01-24  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 06c277edbeb641c89ac431fe927992499df3bf7d Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Fri Jan 21 17:27:26 2011
+	-0500
+
+2011-01-21  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/rdetail.tt2,
+	Open-ILS/web/templates/default/opac/record.tt2: path based record
+	display, primitive facet links
+
+2011-01-21  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/web/templates/default/opac/rdetail.tt2: repaired subject
+	rending on detail page
+
+2011-01-21  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 6c76986dc79f368b971a0bb49263c3ee62c8c7e4 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Fri Jan 21 16:09:07 2011
+	-0500
+
+2011-01-21  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGWeb.pm: move template finder
+	in front of context loader, so that context loader has access to
+	path-based page arguments
+
+2011-01-21  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGWeb.pm: don't muck w/
+	media_prefix if it's unset
+
+2011-01-21  Bill Erickson <berick at esilibrary.com>
+
+	* : commit a922f30b30e6b53ab7733b288f206743ce9f1d13 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Thu Jan 20 17:05:28 2011
+	-0500
+
+2011-01-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: use a single
+	cache var instead of polluting with a series of global cache
+	variables; protect against search calls that return an exception
+
+2011-01-20  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/src/perlmods/OpenILS/WWW/EGCatLoader.pm: protect against
+	empty search results
+
+2011-01-20  Bill Erickson <berick at esilibrary.com>
+
+	* : commit baae15cec012420847b7120c16141280773760c9 Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Wed Jan 19 13:17:48 2011
+	-0500
+
+2011-01-19  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 4c91024f33197ec6f343d2b8a475148fafa72752 Merge: a826a07
+	8df6989 Author: Bill Erickson <berick at esilibrary.com> Date:   Tue
+	Jan 18 15:01:27 2011 -0500
+
+2011-01-18  Bill Erickson <berick at esilibrary.com>
+
+	* : commit 7af1d3762dd42cb75e891d6dfc96ec0f12f4d1ba Author: Bill
+	Erickson <berick at esilibrary.com> Date:   Tue Jan 18 11:48:11 2011
+	-0500
+
+2011-01-18  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf: added sample cache-killer
+	for tt opac for development purposes
+
+2011-01-18  Bill Erickson <berick at esilibrary.com>
+
+	* Open-ILS/examples/apache/eg_vhost.conf,
+	Open-ILS/examples/oils_web.xml.example: added the default config
+	options for running the tt opac.  only the eg_vhost change is needed
+
+2011-01-18  Bill Erickson <berick at esilibrary.com>
+
+	* Proof of concept Template-Toolkit OPAC
+
diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
index cd4dbbf..607cda2 100644
--- a/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
+++ b/Open-ILS/src/perlmods/lib/OpenILS/Application.pm
@@ -6,7 +6,7 @@ use base qw/OpenSRF::Application/;
 sub ils_version {
     # version format is "x-y-z", for example "2-0-0" for Evergreen 2.0.0
     # For branches, format is "x-y"
-    return "HEAD";
+    return "2-2-alpha2";
 }
 
 __PACKAGE__->register_method(
diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 3eba010..c37a46d 100644
--- a/Open-ILS/src/sql/Pg/002.schema.config.sql
+++ b/Open-ILS/src/sql/Pg/002.schema.config.sql
@@ -87,6 +87,7 @@ CREATE TRIGGER no_overlapping_deps
     FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates');
 
 INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0678', :eg_version); -- berick/miker
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.2-alpha2', :eg_version);
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql b/Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql
index d1b5ba3..b2af71f 100644
--- a/Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql
+++ b/Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql
@@ -1,5 +1,4 @@
---Upgrade Script for 2.1 to 2.2-alpha1
-
+--Upgrade Script for 2.1 to 2.2-alpha2
 -- DROP objects that might have existed from a prior run of 0526
 -- Yes this is ironic.
 DROP TABLE IF EXISTS config.db_patch_dependencies;
@@ -8,7 +7,7 @@ DROP FUNCTION evergreen.upgrade_list_applied_deprecates(TEXT);
 DROP FUNCTION evergreen.upgrade_list_applied_supersedes(TEXT);
 
 BEGIN;
-INSERT INTO config.upgrade_log (version) VALUES ('2.2-alpha1');
+INSERT INTO config.upgrade_log (version) VALUES ('2.2-alpha2');
 
 INSERT INTO config.upgrade_log (version) VALUES ('0526'); --miker
 
@@ -561,18 +560,7 @@ ALTER TABLE config.circ_matrix_matchpoint
 ALTER TABLE config.hold_matrix_matchpoint
     ADD COLUMN item_age INTERVAL;
 
-CREATE OR REPLACE FUNCTION asset.acp_status_changed()
-RETURNS TRIGGER AS $$
-BEGIN
-    IF NEW.status <> OLD.status THEN
-        NEW.status_changed_time := now();
-        IF NEW.active_date IS NULL AND NEW.status IN (SELECT id FROM config.copy_status WHERE copy_active = true) THEN
-            NEW.active_date := now();
-        END IF;
-    END IF;
-    RETURN NEW;
-END;
-$$ LANGUAGE plpgsql;
+--Removed dupe asset.acp_status_changed
 
 CREATE OR REPLACE FUNCTION asset.acp_created()
 RETURNS TRIGGER AS $$
@@ -595,195 +583,7 @@ CREATE TRIGGER sunit_created_trig
     BEFORE INSERT ON serial.unit
     FOR EACH ROW EXECUTE PROCEDURE asset.acp_created();
 
-CREATE OR REPLACE FUNCTION action.hold_request_permit_test( pickup_ou INT, request_ou INT, match_item BIGINT, match_user INT, match_requestor INT, retargetting BOOL ) RETURNS SETOF action.matrix_test_result AS $func$
-DECLARE
-    matchpoint_id        INT;
-    user_object        actor.usr%ROWTYPE;
-    age_protect_object    config.rule_age_hold_protect%ROWTYPE;
-    standing_penalty    config.standing_penalty%ROWTYPE;
-    transit_range_ou_type    actor.org_unit_type%ROWTYPE;
-    transit_source        actor.org_unit%ROWTYPE;
-    item_object        asset.copy%ROWTYPE;
-    item_cn_object     asset.call_number%ROWTYPE;
-    ou_skip              actor.org_unit_setting%ROWTYPE;
-    result            action.matrix_test_result;
-    hold_test        config.hold_matrix_matchpoint%ROWTYPE;
-    use_active_date   TEXT;
-    age_protect_date  TIMESTAMP WITH TIME ZONE;
-    hold_count        INT;
-    hold_transit_prox    INT;
-    frozen_hold_count    INT;
-    context_org_list    INT[];
-    done            BOOL := FALSE;
-BEGIN
-    SELECT INTO user_object * FROM actor.usr WHERE id = match_user;
-    SELECT INTO context_org_list ARRAY_ACCUM(id) FROM actor.org_unit_full_path( pickup_ou );
-
-    result.success := TRUE;
-
-    -- Fail if we couldn't find a user
-    IF user_object.id IS NULL THEN
-        result.fail_part := 'no_user';
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-        RETURN;
-    END IF;
-
-    SELECT INTO item_object * FROM asset.copy WHERE id = match_item;
-
-    -- Fail if we couldn't find a copy
-    IF item_object.id IS NULL THEN
-        result.fail_part := 'no_item';
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-        RETURN;
-    END IF;
-
-    SELECT INTO matchpoint_id action.find_hold_matrix_matchpoint(pickup_ou, request_ou, match_item, match_user, match_requestor);
-    result.matchpoint := matchpoint_id;
-
-    SELECT INTO ou_skip * FROM actor.org_unit_setting WHERE name = 'circ.holds.target_skip_me' AND org_unit = item_object.circ_lib;
-
-    -- Fail if the circ_lib for the item has circ.holds.target_skip_me set to true
-    IF ou_skip.id IS NOT NULL AND ou_skip.value = 'true' THEN
-        result.fail_part := 'circ.holds.target_skip_me';
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-        RETURN;
-    END IF;
-
-    -- Fail if user is barred
-    IF user_object.barred IS TRUE THEN
-        result.fail_part := 'actor.usr.barred';
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-        RETURN;
-    END IF;
-
-    -- Fail if we couldn't find any matchpoint (requires a default)
-    IF matchpoint_id IS NULL THEN
-        result.fail_part := 'no_matchpoint';
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-        RETURN;
-    END IF;
-
-    SELECT INTO hold_test * FROM config.hold_matrix_matchpoint WHERE id = matchpoint_id;
-
-    IF hold_test.holdable IS FALSE THEN
-        result.fail_part := 'config.hold_matrix_test.holdable';
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-    END IF;
-
-    IF hold_test.transit_range IS NOT NULL THEN
-        SELECT INTO transit_range_ou_type * FROM actor.org_unit_type WHERE id = hold_test.transit_range;
-        IF hold_test.distance_is_from_owner THEN
-            SELECT INTO transit_source ou.* FROM actor.org_unit ou JOIN asset.call_number cn ON (cn.owning_lib = ou.id) WHERE cn.id = item_object.call_number;
-        ELSE
-            SELECT INTO transit_source * FROM actor.org_unit WHERE id = item_object.circ_lib;
-        END IF;
-
-        PERFORM * FROM actor.org_unit_descendants( transit_source.id, transit_range_ou_type.depth ) WHERE id = pickup_ou;
-
-        IF NOT FOUND THEN
-            result.fail_part := 'transit_range';
-            result.success := FALSE;
-            done := TRUE;
-            RETURN NEXT result;
-        END IF;
-    END IF;
- 
-    FOR standing_penalty IN
-        SELECT  DISTINCT csp.*
-          FROM  actor.usr_standing_penalty usp
-                JOIN config.standing_penalty csp ON (csp.id = usp.standing_penalty)
-          WHERE usr = match_user
-                AND usp.org_unit IN ( SELECT * FROM explode_array(context_org_list) )
-                AND (usp.stop_date IS NULL or usp.stop_date > NOW())
-                AND csp.block_list LIKE '%HOLD%' LOOP
-
-        result.fail_part := standing_penalty.name;
-        result.success := FALSE;
-        done := TRUE;
-        RETURN NEXT result;
-    END LOOP;
-
-    IF hold_test.stop_blocked_user IS TRUE THEN
-        FOR standing_penalty IN
-            SELECT  DISTINCT csp.*
-              FROM  actor.usr_standing_penalty usp
-                    JOIN config.standing_penalty csp ON (csp.id = usp.standing_penalty)
-              WHERE usr = match_user
-                    AND usp.org_unit IN ( SELECT * FROM explode_array(context_org_list) )
-                    AND (usp.stop_date IS NULL or usp.stop_date > NOW())
-                    AND csp.block_list LIKE '%CIRC%' LOOP
-    
-            result.fail_part := standing_penalty.name;
-            result.success := FALSE;
-            done := TRUE;
-            RETURN NEXT result;
-        END LOOP;
-    END IF;
-
-    IF hold_test.max_holds IS NOT NULL AND NOT retargetting THEN
-        SELECT    INTO hold_count COUNT(*)
-          FROM    action.hold_request
-          WHERE    usr = match_user
-            AND fulfillment_time IS NULL
-            AND cancel_time IS NULL
-            AND CASE WHEN hold_test.include_frozen_holds THEN TRUE ELSE frozen IS FALSE END;
-
-        IF hold_count >= hold_test.max_holds THEN
-            result.fail_part := 'config.hold_matrix_test.max_holds';
-            result.success := FALSE;
-            done := TRUE;
-            RETURN NEXT result;
-        END IF;
-    END IF;
-
-    IF item_object.age_protect IS NOT NULL THEN
-        SELECT INTO age_protect_object * FROM config.rule_age_hold_protect WHERE id = item_object.age_protect;
-        IF hold_test.distance_is_from_owner THEN
-            SELECT INTO use_active_date value FROM actor.org_unit_ancestor_setting('circ.holds.age_protect.active_date', item_cn_object.owning_lib);
-        ELSE
-            SELECT INTO use_active_date value FROM actor.org_unit_ancestor_setting('circ.holds.age_protect.active_date', item_object.circ_lib);
-        END IF;
-        IF use_active_date = 'true' THEN
-            age_protect_date := COALESCE(item_object.active_date, NOW());
-        ELSE
-            age_protect_date := item_object.create_date;
-        END IF;
-        IF age_protect_date + age_protect_object.age > NOW() THEN
-            IF hold_test.distance_is_from_owner THEN
-                SELECT INTO item_cn_object * FROM asset.call_number WHERE id = item_object.call_number;
-                SELECT INTO hold_transit_prox prox FROM actor.org_unit_proximity WHERE from_org = item_cn_object.owning_lib AND to_org = pickup_ou;
-            ELSE
-                SELECT INTO hold_transit_prox prox FROM actor.org_unit_proximity WHERE from_org = item_object.circ_lib AND to_org = pickup_ou;
-            END IF;
-
-            IF hold_transit_prox > age_protect_object.prox THEN
-                result.fail_part := 'config.rule_age_hold_protect.prox';
-                result.success := FALSE;
-                done := TRUE;
-                RETURN NEXT result;
-            END IF;
-        END IF;
-    END IF;
-
-    IF NOT done THEN
-        RETURN NEXT result;
-    END IF;
-
-    RETURN;
-END;
-$func$ LANGUAGE plpgsql;
+--Removed dupe action.hold_request_permit_test
 
 CREATE OR REPLACE FUNCTION action.find_circ_matrix_matchpoint( context_ou INT, item_object asset.copy, user_object actor.usr, renewal BOOL ) RETURNS action.found_circ_matrix_matchpoint AS $func$
 DECLARE
@@ -2912,6 +2712,7 @@ CREATE TABLE authority.control_set_authority_field (
     main_entry  INT     REFERENCES authority.control_set_authority_field (id) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
     control_set INT     NOT NULL REFERENCES authority.control_set (id) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
     tag         CHAR(3) NOT NULL,
+    nfi CHAR(1),
     sf_list     TEXT    NOT NULL,
     name        TEXT    NOT NULL, -- i18n
     description TEXT              -- i18n
@@ -3356,40 +3157,7 @@ BEGIN
  END;
  $func$ LANGUAGE PLPGSQL;
 
-CREATE OR REPLACE FUNCTION authority.indexing_ingest_or_delete () RETURNS TRIGGER AS $func$
-BEGIN
-
-    IF NEW.deleted IS TRUE THEN -- If this authority is deleted
-        DELETE FROM authority.bib_linking WHERE authority = NEW.id; -- Avoid updating fields in bibs that are no longer visible
-        DELETE FROM authority.full_rec WHERE record = NEW.id; -- Avoid validating fields against deleted authority records
-          -- Should remove matching $0 from controlled fields at the same time?
-        RETURN NEW; -- and we're done
-    END IF;
-
-    IF TG_OP = 'UPDATE' THEN -- re-ingest?
-        PERFORM * FROM config.internal_flag WHERE name = 'ingest.reingest.force_on_same_marc' AND enabled;
-
-        IF NOT FOUND AND OLD.marc = NEW.marc THEN -- don't do anything if the MARC didn't change
-            RETURN NEW;
-        END IF;
-        -- Propagate these updates to any linked bib records
-        PERFORM authority.propagate_changes(NEW.id) FROM authority.record_entry WHERE id = NEW.id;
-    END IF;
-
-    -- Flatten and insert the afr data
-    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_authority_full_rec' AND enabled;
-    IF NOT FOUND THEN
-        PERFORM authority.reingest_authority_full_rec(NEW.id);
-        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_authority_rec_descriptor' AND enabled;
-        IF NOT FOUND THEN
-            PERFORM authority.reingest_authority_rec_descriptor(NEW.id);
-        END IF;
-    END IF;
-
-    RETURN NEW;
-END;
-$func$ LANGUAGE PLPGSQL;
-
+--Removed dupe authority.indexing_ingest_or_delete
 
 -- Evergreen DB patch 0577.schema.vandelay-item-import-copy-loc-ancestors.sql
 --
@@ -5619,8 +5387,6 @@ BEGIN
 END;
 $func$ LANGUAGE PLPGSQL;
 
-ALTER TABLE authority.control_set_authority_field ADD COLUMN nfi CHAR(1);
-
 -- Entries that need to respect an NFI
 UPDATE authority.control_set_authority_field SET nfi = '2'
     WHERE id IN (4,24,44,64);
@@ -6122,7 +5888,7 @@ $$ LANGUAGE SQL ROWS 10;
 -- check whether patch can be applied
 SELECT evergreen.upgrade_deps_block_check('0641', :eg_version);
 
-ALTER TABLE actor.org_unit_setting ADD CONSTRAINT aous_must_be_json CHECK ( is_json(value) );
+ALTER TABLE actor.org_unit_setting ADD CONSTRAINT aous_must_be_json CHECK ( evergreen.is_json(value) );
 
 -- Evergreen DB patch 0642.data.acq-worksheet-hold-count.sql
 
@@ -6281,18 +6047,2051 @@ UPDATE action_trigger.event_definition
 -- check whether patch can be applied
 SELECT evergreen.upgrade_deps_block_check('0651', :eg_version);
 
-CREATE OR REPLACE FUNCTION action.hold_request_permit_test( pickup_ou INT, request_ou INT, match_item BIGINT, match_user INT, match_requestor INT, retargetting BOOL ) RETURNS SETOF action.matrix_test_result AS $func$
+--Removed dupe action.hold_request_permit_test
+
+-- Evergreen DB patch XXXX.data.vandelay-queue-bib-bucket-type.sql
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0652', :eg_version);
+
+INSERT INTO container.biblio_record_entry_bucket_type (code, label) VALUES (
+    'vandelay_queue',
+    oils_i18n_gettext('vandelay_queue', 'Vandelay Queue', 'cbrebt', 'label')
+);
+
+-- Evergreen DB patch XXXX.schema.unapi-indb-optional-org.sql
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0653', :eg_version);
+
+CREATE OR REPLACE FUNCTION evergreen.org_top() RETURNS SETOF actor.org_unit AS $$ SELECT * FROM actor.org_unit WHERE parent_ou IS NULL LIMIT 1; $$ LANGUAGE SQL ROWS 1;
+
+CREATE OR REPLACE FUNCTION unapi.biblio_record_entry_feed ( id_list BIGINT[], format TEXT, includes TEXT[], org TEXT DEFAULT '-', depth INT DEFAULT NULL, slimit INT DEFAULT NULL, soffset INT DEFAULT NULL, include_xmlns BOOL DEFAULT TRUE, title TEXT DEFAULT NULL, description TEXT DEFAULT NULL, creator TEXT DEFAULT NULL, update_ts TEXT DEFAULT NULL, unapi_url TEXT DEFAULT NULL, header_xml XML DEFAULT NULL ) RETURNS XML AS $F$
 DECLARE
-    matchpoint_id        INT;
-    user_object        actor.usr%ROWTYPE;
-    age_protect_object    config.rule_age_hold_protect%ROWTYPE;
-    standing_penalty    config.standing_penalty%ROWTYPE;
-    transit_range_ou_type    actor.org_unit_type%ROWTYPE;
-    transit_source        actor.org_unit%ROWTYPE;
-    item_object        asset.copy%ROWTYPE;
-    item_cn_object     asset.call_number%ROWTYPE;
-    ou_skip              actor.org_unit_setting%ROWTYPE;
-    result            action.matrix_test_result;
+    layout          unapi.bre_output_layout%ROWTYPE;
+    transform       config.xml_transform%ROWTYPE;
+    item_format     TEXT;
+    tmp_xml         TEXT;
+    xmlns_uri       TEXT := 'http://open-ils.org/spec/feed-xml/v1';
+    ouid            INT;
+    element_list    TEXT[];
+BEGIN
+
+    IF org = '-' OR org IS NULL THEN
+        SELECT shortname INTO org FROM evergreen.org_top();
+    END IF;
+
+    SELECT id INTO ouid FROM actor.org_unit WHERE shortname = org;
+    SELECT * INTO layout FROM unapi.bre_output_layout WHERE name = format;
+
+    IF layout.name IS NULL THEN
+        RETURN NULL::XML;
+    END IF;
+
+    SELECT * INTO transform FROM config.xml_transform WHERE name = layout.transform;
+    xmlns_uri := COALESCE(transform.namespace_uri,xmlns_uri);
+
+    -- Gather the bib xml
+    SELECT XMLAGG( unapi.bre(i, format, '', includes, org, depth, slimit, soffset, include_xmlns)) INTO tmp_xml FROM UNNEST( id_list ) i;
+
+    IF layout.title_element IS NOT NULL THEN
+        EXECUTE 'SELECT XMLCONCAT( XMLELEMENT( name '|| layout.title_element ||', CASE WHEN $4 THEN XMLATTRIBUTES( $1 AS xmlns) ELSE NULL END, $3), $2)' INTO tmp_xml USING xmlns_uri, tmp_xml::XML, title, include_xmlns;
+    END IF;
+
+    IF layout.description_element IS NOT NULL THEN
+        EXECUTE 'SELECT XMLCONCAT( XMLELEMENT( name '|| layout.description_element ||', CASE WHEN $4 THEN XMLATTRIBUTES( $1 AS xmlns) ELSE NULL END, $3), $2)' INTO tmp_xml USING xmlns_uri, tmp_xml::XML, description, include_xmlns;
+    END IF;
+
+    IF layout.creator_element IS NOT NULL THEN
+        EXECUTE 'SELECT XMLCONCAT( XMLELEMENT( name '|| layout.creator_element ||', CASE WHEN $4 THEN XMLATTRIBUTES( $1 AS xmlns) ELSE NULL END, $3), $2)' INTO tmp_xml USING xmlns_uri, tmp_xml::XML, creator, include_xmlns;
+    END IF;
+
+    IF layout.update_ts_element IS NOT NULL THEN
+        EXECUTE 'SELECT XMLCONCAT( XMLELEMENT( name '|| layout.update_ts_element ||', CASE WHEN $4 THEN XMLATTRIBUTES( $1 AS xmlns) ELSE NULL END, $3), $2)' INTO tmp_xml USING xmlns_uri, tmp_xml::XML, update_ts, include_xmlns;
+    END IF;
+
+    IF unapi_url IS NOT NULL THEN
+        EXECUTE $$SELECT XMLCONCAT( XMLELEMENT( name link, XMLATTRIBUTES( 'http://www.w3.org/1999/xhtml' AS xmlns, 'unapi-server' AS rel, $1 AS href, 'unapi' AS title)), $2)$$ INTO tmp_xml USING unapi_url, tmp_xml::XML;
+    END IF;
+
+    IF header_xml IS NOT NULL THEN tmp_xml := XMLCONCAT(header_xml,tmp_xml::XML); END IF;
+
+    element_list := regexp_split_to_array(layout.feed_top,E'\\.');
+    FOR i IN REVERSE ARRAY_UPPER(element_list, 1) .. 1 LOOP
+        EXECUTE 'SELECT XMLELEMENT( name '|| quote_ident(element_list[i]) ||', CASE WHEN $4 THEN XMLATTRIBUTES( $1 AS xmlns) ELSE NULL END, $2)' INTO tmp_xml USING xmlns_uri, tmp_xml::XML, include_xmlns;
+    END LOOP;
+
+    RETURN tmp_xml::XML;
+END;
+$F$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION unapi.bre ( obj_id BIGINT, format TEXT,  ename TEXT, includes TEXT[], org TEXT DEFAULT '-', depth INT DEFAULT NULL, slimit INT DEFAULT NULL, soffset INT DEFAULT NULL, include_xmlns BOOL DEFAULT TRUE ) RETURNS XML AS $F$
+DECLARE
+    me      biblio.record_entry%ROWTYPE;
+    layout  unapi.bre_output_layout%ROWTYPE;
+    xfrm    config.xml_transform%ROWTYPE;
+    ouid    INT;
+    tmp_xml TEXT;
+    top_el  TEXT;
+    output  XML;
+    hxml    XML;
+    axml    XML;
+BEGIN
+
+    IF org = '-' OR org IS NULL THEN
+        SELECT shortname INTO org FROM evergreen.org_top();
+    END IF;
+
+    SELECT id INTO ouid FROM actor.org_unit WHERE shortname = org;
+
+    IF ouid IS NULL THEN
+        RETURN NULL::XML;
+    END IF;
+
+    IF format = 'holdings_xml' THEN -- the special case
+        output := unapi.holdings_xml( obj_id, ouid, org, depth, includes, slimit, soffset, include_xmlns);
+        RETURN output;
+    END IF;
+
+    SELECT * INTO layout FROM unapi.bre_output_layout WHERE name = format;
+
+    IF layout.name IS NULL THEN
+        RETURN NULL::XML;
+    END IF;
+
+    SELECT * INTO xfrm FROM config.xml_transform WHERE name = layout.transform;
+
+    SELECT * INTO me FROM biblio.record_entry WHERE id = obj_id;
+
+    -- grab SVF if we need them
+    IF ('mra' = ANY (includes)) THEN 
+        axml := unapi.mra(obj_id,NULL,NULL,NULL,NULL);
+    ELSE
+        axml := NULL::XML;
+    END IF;
+
+    -- grab hodlings if we need them
+    IF ('holdings_xml' = ANY (includes)) THEN 
+        hxml := unapi.holdings_xml(obj_id, ouid, org, depth, evergreen.array_remove_item_by_value(includes,'holdings_xml'), slimit, soffset, include_xmlns);
+    ELSE
+        hxml := NULL::XML;
+    END IF;
+
+
+    -- generate our item node
+
+
+    IF format = 'marcxml' THEN
+        tmp_xml := me.marc;
+        IF tmp_xml !~ E'<marc:' THEN -- If we're not using the prefixed namespace in this record, then remove all declarations of it
+           tmp_xml := REGEXP_REPLACE(tmp_xml, ' xmlns:marc="http://www.loc.gov/MARC21/slim"', '', 'g');
+        END IF; 
+    ELSE
+        tmp_xml := oils_xslt_process(me.marc, xfrm.xslt)::XML;
+    END IF;
+
+    top_el := REGEXP_REPLACE(tmp_xml, E'^.*?<((?:\\S+:)?' || layout.holdings_element || ').*$', E'\\1');
+
+    IF axml IS NOT NULL THEN 
+        tmp_xml := REGEXP_REPLACE(tmp_xml, '</' || top_el || '>(.*?)$', axml || '</' || top_el || E'>\\1');
+    END IF;
+
+    IF hxml IS NOT NULL THEN -- XXX how do we configure the holdings position?
+        tmp_xml := REGEXP_REPLACE(tmp_xml, '</' || top_el || '>(.*?)$', hxml || '</' || top_el || E'>\\1');
+    END IF;
+
+    IF ('bre.unapi' = ANY (includes)) THEN 
+        output := REGEXP_REPLACE(
+            tmp_xml,
+            '</' || top_el || '>(.*?)',
+            XMLELEMENT(
+                name abbr,
+                XMLATTRIBUTES(
+                    'http://www.w3.org/1999/xhtml' AS xmlns,
+                    'unapi-id' AS class,
+                    'tag:open-ils.org:U2 at bre/' || obj_id || '/' || org AS title
+                )
+            )::TEXT || '</' || top_el || E'>\\1'
+        );
+    ELSE
+        output := tmp_xml;
+    END IF;
+
+    output := REGEXP_REPLACE(output::TEXT,E'>\\s+<','><','gs')::XML;
+    RETURN output;
+END;
+$F$ LANGUAGE PLPGSQL;
+
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0654', :eg_version);
+
+INSERT INTO permission.perm_list ( id, code, description ) VALUES
+ ( 514, 'UPDATE_PATRON_ACTIVE_CARD', oils_i18n_gettext( 514,
+    'Allows a user to manually adjust a patron''s active cards', 'ppl', 'description')),
+ ( 515, 'UPDATE_PATRON_PRIMARY_CARD', oils_i18n_gettext( 515,
+    'Allows a user to manually adjust a patron''s primary card', 'ppl', 'description'));
+
+-- Evergreen DB patch 0655.config.bib_source.can_have_copies.sql
+--
+-- This column introduces the ability to prevent bib records associated
+-- with specific bib sources from being able to have volumes or MFHD
+-- records attached to them.
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0655', :eg_version);
+
+ALTER TABLE config.bib_source
+ADD COLUMN can_have_copies BOOL NOT NULL DEFAULT TRUE;
+
+-- Evergreen DB patch XXXX.LP893315_schema.function.filter_deleted_acns_from_unapi.holdings_xml.sql
+--
+-- Prevent deleted call numbers from hiding active call numbers / copies / URIs
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0656', :eg_version);
+
+CREATE OR REPLACE FUNCTION unapi.holdings_xml (bid BIGINT, ouid INT, org TEXT, depth INT DEFAULT NULL, includes TEXT[] DEFAULT NULL::TEXT[], slimit INT DEFAULT NULL, soffset INT DEFAULT NULL, include_xmlns BOOL DEFAULT TRUE) RETURNS XML AS $F$
+     SELECT  XMLELEMENT(
+                 name holdings,
+                 XMLATTRIBUTES(
+                    CASE WHEN $8 THEN 'http://open-ils.org/spec/holdings/v1' ELSE NULL END AS xmlns,
+                    CASE WHEN ('bre' = ANY ($5)) THEN 'tag:open-ils.org:U2 at bre/' || $1 || '/' || $3 ELSE NULL END AS id
+                 ),
+                 XMLELEMENT(
+                     name counts,
+                     (SELECT  XMLAGG(XMLELEMENT::XML) FROM (
+                         SELECT  XMLELEMENT(
+                                     name count,
+                                     XMLATTRIBUTES('public' as type, depth, org_unit, coalesce(transcendant,0) as transcendant, available, visible as count, unshadow)
+                                 )::text
+                           FROM  asset.opac_ou_record_copy_count($2,  $1)
+                                     UNION
+                         SELECT  XMLELEMENT(
+                                     name count,
+                                     XMLATTRIBUTES('staff' as type, depth, org_unit, coalesce(transcendant,0) as transcendant, available, visible as count, unshadow)
+                                 )::text
+                           FROM  asset.staff_ou_record_copy_count($2, $1)
+                                     ORDER BY 1
+                     )x)
+                 ),
+                 CASE 
+                     WHEN ('bmp' = ANY ($5)) THEN
+                        XMLELEMENT(
+                            name monograph_parts,
+                            (SELECT XMLAGG(bmp) FROM (
+                                SELECT  unapi.bmp( id, 'xml', 'monograph_part', evergreen.array_remove_item_by_value( evergreen.array_remove_item_by_value($5,'bre'), 'holdings_xml'), $3, $4, $6, $7, FALSE)
+                                  FROM  biblio.monograph_part
+                                  WHERE record = $1
+                            )x)
+                        )
+                     ELSE NULL
+                 END,
+                 XMLELEMENT(
+                     name volumes,
+                     (SELECT XMLAGG(acn) FROM (
+                        SELECT  unapi.acn(acn.id,'xml','volume',array_remove_item_by_value( evergreen.array_remove_item_by_value($5,'holdings_xml'),'bre'), $3, $4, $6, $7, FALSE)
+                          FROM  asset.call_number acn
+                          WHERE acn.record = $1
+                                AND acn.deleted IS FALSE
+                                AND EXISTS (
+                                    SELECT  1
+                                      FROM  asset.copy acp
+                                            JOIN actor.org_unit_descendants(
+                                                $2,
+                                                (COALESCE(
+                                                    $4,
+                                                    (SELECT aout.depth
+                                                      FROM  actor.org_unit_type aout
+                                                            JOIN actor.org_unit aou ON (aou.ou_type = aout.id AND aou.id = $2)
+                                                    )
+                                                ))
+                                            ) aoud ON (acp.circ_lib = aoud.id)
+                                      LIMIT 1
+                               )
+                          ORDER BY label_sortkey
+                          LIMIT $6
+                          OFFSET $7
+                     )x)
+                 ),
+                 CASE WHEN ('ssub' = ANY ($5)) THEN 
+                     XMLELEMENT(
+                         name subscriptions,
+                         (SELECT XMLAGG(ssub) FROM (
+                            SELECT  unapi.ssub(id,'xml','subscription','{}'::TEXT[], $3, $4, $6, $7, FALSE)
+                              FROM  serial.subscription
+                              WHERE record_entry = $1
+                        )x)
+                     )
+                 ELSE NULL END,
+                 CASE WHEN ('acp' = ANY ($5)) THEN 
+                     XMLELEMENT(
+                         name foreign_copies,
+                         (SELECT XMLAGG(acp) FROM (
+                            SELECT  unapi.acp(p.target_copy,'xml','copy','{}'::TEXT[], $3, $4, $6, $7, FALSE)
+                              FROM  biblio.peer_bib_copy_map p
+                                    JOIN asset.copy c ON (p.target_copy = c.id)
+                              WHERE NOT c.deleted AND peer_record = $1
+                        )x)
+                     )
+                 ELSE NULL END
+             );
+$F$ LANGUAGE SQL;
+
+-- Evergreen DB patch 0657.schema.address-alert.sql
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0657', :eg_version);
+
+CREATE TABLE actor.address_alert (
+    id              SERIAL  PRIMARY KEY,
+    owner           INT     NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED,
+    active          BOOL    NOT NULL DEFAULT TRUE,
+    match_all       BOOL    NOT NULL DEFAULT TRUE,
+    alert_message   TEXT    NOT NULL,
+    street1         TEXT,
+    street2         TEXT,
+    city            TEXT,
+    county          TEXT,
+    state           TEXT,
+    country         TEXT,
+    post_code       TEXT,
+    mailing_address BOOL    NOT NULL DEFAULT FALSE,
+    billing_address BOOL    NOT NULL DEFAULT FALSE
+);
+
+CREATE OR REPLACE FUNCTION actor.address_alert_matches (
+        org_unit INT, 
+        street1 TEXT, 
+        street2 TEXT, 
+        city TEXT, 
+        county TEXT, 
+        state TEXT, 
+        country TEXT, 
+        post_code TEXT,
+        mailing_address BOOL DEFAULT FALSE,
+        billing_address BOOL DEFAULT FALSE
+    ) RETURNS SETOF actor.address_alert AS $$
+
+SELECT *
+FROM actor.address_alert
+WHERE
+    active
+    AND owner IN (SELECT id FROM actor.org_unit_ancestors($1)) 
+    AND (
+        (NOT mailing_address AND NOT billing_address)
+        OR (mailing_address AND $9)
+        OR (billing_address AND $10)
+    )
+    AND (
+            (
+                match_all
+                AND COALESCE($2, '') ~* COALESCE(street1,   '.*')
+                AND COALESCE($3, '') ~* COALESCE(street2,   '.*')
+                AND COALESCE($4, '') ~* COALESCE(city,      '.*')
+                AND COALESCE($5, '') ~* COALESCE(county,    '.*')
+                AND COALESCE($6, '') ~* COALESCE(state,     '.*')
+                AND COALESCE($7, '') ~* COALESCE(country,   '.*')
+                AND COALESCE($8, '') ~* COALESCE(post_code, '.*')
+            ) OR (
+                NOT match_all 
+                AND (  
+                       $2 ~* street1
+                    OR $3 ~* street2
+                    OR $4 ~* city
+                    OR $5 ~* county
+                    OR $6 ~* state
+                    OR $7 ~* country
+                    OR $8 ~* post_code
+                )
+            )
+        )
+    ORDER BY actor.org_unit_proximity(owner, $1)
+$$ LANGUAGE SQL;
+
+
+/* UNDO
+DROP FUNCTION actor.address_alert_matches(INT, TEXT, TEXT, TEXT, TEXT, TEXT, TEXT, TEXT, BOOL, BOOL);
+DROP TABLE actor.address_alert;
+*/
+-- Evergreen DB patch 0659.add_create_report_perms.sql
+--
+-- Add a permission to control the ability to create report templates
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0659', :eg_version);
+
+-- FIXME: add/check SQL statements to perform the upgrade
+INSERT INTO permission.perm_list ( id, code, description ) VALUES
+ ( 516, 'CREATE_REPORT_TEMPLATE', oils_i18n_gettext( 516,
+    'Allows a user to create report templates', 'ppl', 'description' ));
+
+INSERT INTO permission.grp_perm_map (grp, perm, depth, grantable)
+    SELECT grp, 516, depth, grantable
+        FROM permission.grp_perm_map
+        WHERE perm = (
+            SELECT id
+                FROM permission.perm_list
+                WHERE code = 'RUN_REPORTS'
+        );
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0660', :eg_version);
+
+UPDATE action_trigger.event_definition SET template = $$
+[%-
+# target is the bookbag itself. The 'items' variable does not need to be in
+# the environment because a special reactor will take care of filling it in.
+
+FOR item IN items;
+    bibxml = helpers.unapi_bre(item.target_biblio_record_entry, {flesh => '{mra}'});
+    title = "";
+    FOR part IN bibxml.findnodes('//*[@tag="245"]/*[@code="a" or @code="b"]');
+        title = title _ part.textContent;
+    END;
+    author = bibxml.findnodes('//*[@tag="100"]/*[@code="a"]').textContent;
+    item_type = bibxml.findnodes('//*[local-name()="attributes"]/*[local-name()="field"][@name="item_type"]').getAttribute('coded-value');
+
+    helpers.csv_datum(title) %],[% helpers.csv_datum(author) %],[% helpers.csv_datum(item_type) %],[% FOR note IN item.notes; helpers.csv_datum(note.note); ","; END; "\n";
+END -%]
+$$
+WHERE reactor = 'ContainerCSV';
+
+-- Evergreen DB patch 0661.data.yaous-opac-tag-circed-items.sql
+--
+-- Add org unit setting that enables users who have opted in to
+-- tracking their circulation history to see which items they
+-- have previously checked out in search results.
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0661', :eg_version);
+
+INSERT into config.org_unit_setting_type 
+    (name, grp, label, description, datatype) 
+    VALUES ( 
+        'opac.search.tag_circulated_items', 
+        'opac',
+        oils_i18n_gettext(
+            'opac.search.tag_circulated_items',
+            'Tag Circulated Items in Results',
+            'coust', 
+            'label'
+        ),
+        oils_i18n_gettext(
+            'opac.search.tag_circulated_items',
+            'When a user is both logged in and has opted in to circulation history tracking, turning on this setting will cause previous (or currently) circulated items to be highlighted in search results',
+            'coust', 
+            'description'
+        ),
+        'bool'
+    );
+
+
+-- Evergreen DB patch 0662.schema.coded-value-map-index-normalizer.sql
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0662', :eg_version);
+
+-- create the normalizer
+CREATE OR REPLACE FUNCTION evergreen.coded_value_map_normalizer( input TEXT, ctype TEXT ) 
+    RETURNS TEXT AS $F$
+        SELECT COALESCE(value,$1) 
+            FROM config.coded_value_map 
+            WHERE ctype = $2 AND code = $1;
+$F$ LANGUAGE SQL;
+
+-- register the normalizer
+INSERT INTO config.index_normalizer (name, description, func, param_count) VALUES (
+    'Coded Value Map Normalizer', 
+    'Applies coded_value_map mapping of values',
+    'coded_value_map_normalizer', 
+    1
+);
+
+-- Evergreen DB patch 0663.schema.archive_circ_stat_cats.sql
+--
+-- Enables users to set copy and patron stat cats to be archivable
+-- for the purposes of statistics even after the circs are aged.
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0663', :eg_version);
+
+-- New tables
+
+CREATE TABLE action.archive_actor_stat_cat (
+    id          BIGSERIAL   PRIMARY KEY,
+    xact        BIGINT      NOT NULL,
+    stat_cat    INT         NOT NULL,
+    value       TEXT        NOT NULL
+);
+
+CREATE TABLE action.archive_asset_stat_cat (
+    id          BIGSERIAL   PRIMARY KEY,
+    xact        BIGINT      NOT NULL,
+    stat_cat    INT         NOT NULL,
+    value       TEXT        NOT NULL
+);
+
+-- Add columns to existing tables
+
+-- Archive Flag Columns
+ALTER TABLE actor.stat_cat
+    ADD COLUMN checkout_archive BOOL NOT NULL DEFAULT FALSE;
+ALTER TABLE asset.stat_cat
+    ADD COLUMN checkout_archive BOOL NOT NULL DEFAULT FALSE;
+
+-- Circulation copy column
+ALTER TABLE action.circulation
+    ADD COLUMN copy_location INT NULL REFERENCES asset.copy_location(id) DEFERRABLE INITIALLY DEFERRED;
+
+-- Create trigger function to auto-fill the copy_location field
+CREATE OR REPLACE FUNCTION action.fill_circ_copy_location () RETURNS TRIGGER AS $$
+BEGIN
+    SELECT INTO NEW.copy_location location FROM asset.copy WHERE id = NEW.target_copy;
+    RETURN NEW;
+END;
+$$ LANGUAGE PLPGSQL;
+
+-- Create trigger function to auto-archive stat cat entries
+CREATE OR REPLACE FUNCTION action.archive_stat_cats () RETURNS TRIGGER AS $$
+BEGIN
+    INSERT INTO action.archive_actor_stat_cat(xact, stat_cat, value)
+        SELECT NEW.id, asceum.stat_cat, asceum.stat_cat_entry
+        FROM actor.stat_cat_entry_usr_map asceum
+             JOIN actor.stat_cat sc ON asceum.stat_cat = sc.id
+        WHERE NEW.usr = asceum.target_usr AND sc.checkout_archive;
+    INSERT INTO action.archive_asset_stat_cat(xact, stat_cat, value)
+        SELECT NEW.id, ascecm.stat_cat, asce.value
+        FROM asset.stat_cat_entry_copy_map ascecm
+             JOIN asset.stat_cat sc ON ascecm.stat_cat = sc.id
+             JOIN asset.stat_cat_entry asce ON ascecm.stat_cat_entry = asce.id
+        WHERE NEW.target_copy = ascecm.owning_copy AND sc.checkout_archive;
+    RETURN NULL;
+END;
+$$ LANGUAGE PLPGSQL;
+
+-- Apply triggers
+CREATE TRIGGER fill_circ_copy_location_tgr BEFORE INSERT ON action.circulation FOR EACH ROW EXECUTE PROCEDURE action.fill_circ_copy_location();
+CREATE TRIGGER archive_stat_cats_tgr AFTER INSERT ON action.circulation FOR EACH ROW EXECUTE PROCEDURE action.archive_stat_cats();
+
+-- Ensure all triggers are disabled for speedy updates!
+ALTER TABLE action.circulation DISABLE TRIGGER ALL;
+
+-- Update view to use circ's copy_location field instead of the copy's current copy_location field
+CREATE OR REPLACE VIEW action.all_circulation AS
+    SELECT  id,usr_post_code, usr_home_ou, usr_profile, usr_birth_year, copy_call_number, copy_location,
+        copy_owning_lib, copy_circ_lib, copy_bib_record, xact_start, xact_finish, target_copy,
+        circ_lib, circ_staff, checkin_staff, checkin_lib, renewal_remaining, grace_period, due_date,
+        stop_fines_time, checkin_time, create_time, duration, fine_interval, recurring_fine,
+        max_fine, phone_renewal, desk_renewal, opac_renewal, duration_rule, recurring_fine_rule,
+        max_fine_rule, stop_fines, workstation, checkin_workstation, checkin_scan_time, parent_circ
+      FROM  action.aged_circulation
+            UNION ALL
+    SELECT  DISTINCT circ.id,COALESCE(a.post_code,b.post_code) AS usr_post_code, p.home_ou AS usr_home_ou, p.profile AS usr_profile, EXTRACT(YEAR FROM p.dob)::INT AS usr_birth_year,
+        cp.call_number AS copy_call_number, circ.copy_location, cn.owning_lib AS copy_owning_lib, cp.circ_lib AS copy_circ_lib,
+        cn.record AS copy_bib_record, circ.xact_start, circ.xact_finish, circ.target_copy, circ.circ_lib, circ.circ_staff, circ.checkin_staff,
+        circ.checkin_lib, circ.renewal_remaining, circ.grace_period, circ.due_date, circ.stop_fines_time, circ.checkin_time, circ.create_time, circ.duration,
+        circ.fine_interval, circ.recurring_fine, circ.max_fine, circ.phone_renewal, circ.desk_renewal, circ.opac_renewal, circ.duration_rule,
+        circ.recurring_fine_rule, circ.max_fine_rule, circ.stop_fines, circ.workstation, circ.checkin_workstation, circ.checkin_scan_time,
+        circ.parent_circ
+      FROM  action.circulation circ
+        JOIN asset.copy cp ON (circ.target_copy = cp.id)
+        JOIN asset.call_number cn ON (cp.call_number = cn.id)
+        JOIN actor.usr p ON (circ.usr = p.id)
+        LEFT JOIN actor.usr_address a ON (p.mailing_address = a.id)
+        LEFT JOIN actor.usr_address b ON (p.billing_address = b.id);
+
+-- Update action.circulation with real copy_location numbers instead of all NULL
+DO $$BEGIN RAISE WARNING 'We are about to do an update on every row in action.circulation. This may take a while. %', timeofday(); END;$$;
+UPDATE action.circulation circ SET copy_location = ac.location FROM asset.copy ac WHERE ac.id = circ.target_copy;
+
+-- Set not null/default on new column, re-enable triggers
+ALTER TABLE action.circulation
+    ALTER COLUMN copy_location SET NOT NULL,
+    ALTER COLUMN copy_location SET DEFAULT 1,
+    ENABLE TRIGGER ALL;
+
+-- Evergreen DB patch 0664.schema.hold-current-shelf-lib.sql
+--
+--
+
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0664', :eg_version);
+
+-- add the new column
+ALTER TABLE action.hold_request ADD COLUMN current_shelf_lib 
+    INT REFERENCES actor.org_unit DEFERRABLE INITIALLY DEFERRED;
+
+-- Add some others before the UPDATE we are about to do breaks our ability to add columns
+-- But we need this table first.
+CREATE TABLE config.sms_carrier (
+    id              SERIAL PRIMARY KEY,
+    region          TEXT,
+    name            TEXT,
+    email_gateway   TEXT,
+    active          BOOLEAN DEFAULT TRUE
+);
+
+ALTER TABLE action.hold_request ADD COLUMN sms_notify TEXT;
+ALTER TABLE action.hold_request ADD COLUMN sms_carrier INT REFERENCES config.sms_carrier (id);
+ALTER TABLE action.hold_request ADD CONSTRAINT sms_check CHECK (
+    sms_notify IS NULL
+    OR sms_carrier IS NOT NULL -- and implied sms_notify IS NOT NULL
+);
+
+
+
+-- set the value for current_shelf_lib on existing shelved holds
+UPDATE action.hold_request
+    SET current_shelf_lib = pickup_lib
+    FROM asset.copy
+    WHERE 
+            action.hold_request.shelf_time IS NOT NULL 
+        AND action.hold_request.capture_time IS NOT NULL
+        AND action.hold_request.current_copy IS NOT NULL
+        AND action.hold_request.fulfillment_time IS NULL
+        AND action.hold_request.cancel_time IS NULL
+        AND asset.copy.id = action.hold_request.current_copy
+        AND asset.copy.status = 8; -- on holds shelf
+
+
+SELECT evergreen.upgrade_deps_block_check('0666', :eg_version);
+
+-- 950.data.seed-values.sql
+INSERT INTO config.settings_group (name, label) VALUES
+    (
+        'sms',
+        oils_i18n_gettext(
+            'sms',
+            'SMS Text Messages',
+            'csg',
+            'label'
+        )
+    )
+;
+
+INSERT INTO config.org_unit_setting_type (name, grp, label, description, datatype) VALUES
+    (
+        'sms.enable',
+        'sms',
+        oils_i18n_gettext(
+            'sms.enable',
+            'Enable features that send SMS text messages.',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'sms.enable',
+            'Current features that use SMS include hold-ready-for-pickup notifications and a "Send Text" action for call numbers in the OPAC. If this setting is not enabled, the SMS options will not be offered to the user.  Unless you are carefully silo-ing patrons and their use of the OPAC, the context org for this setting should be the top org in the org hierarchy, otherwise patrons can trample their user settings when jumping between orgs.',
+            'coust',
+            'description'
+        ),
+        'bool'
+    )
+    ,(
+        'sms.disable_authentication_requirement.callnumbers',
+        'sms',
+        oils_i18n_gettext(
+            'sms.disable_authentication_requirement.callnumbers',
+            'Disable auth requirement for texting call numbers.',
+            'coust',
+            'label'
+        ),
+        oils_i18n_gettext(
+            'sms.disable_authentication_requirement.callnumbers',
+            'Disable authentication requirement for sending call number information via SMS from the OPAC.',
+            'coust',
+            'description'
+        ),
+        'bool'
+    )
+;
+
+-- 090.schema.action.sql
+-- 950.data.seed-values.sql
+INSERT INTO config.usr_setting_type (name,grp,opac_visible,label,description,datatype,fm_class) VALUES (
+    'opac.default_sms_carrier',
+    'sms',
+    TRUE,
+    oils_i18n_gettext(
+        'opac.default_sms_carrier',
+        'Default SMS/Text Carrier',
+        'cust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'opac.default_sms_carrier',
+        'Default SMS/Text Carrier',
+        'cust',
+        'description'
+    ),
+    'link',
+    'csc'
+);
+
+INSERT INTO config.usr_setting_type (name,grp,opac_visible,label,description,datatype) VALUES (
+    'opac.default_sms_notify',
+    'sms',
+    TRUE,
+    oils_i18n_gettext(
+        'opac.default_sms_notify',
+        'Default SMS/Text Number',
+        'cust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'opac.default_sms_notify',
+        'Default SMS/Text Number',
+        'cust',
+        'description'
+    ),
+    'string'
+);
+
+INSERT INTO config.usr_setting_type (name,grp,opac_visible,label,description,datatype) VALUES (
+    'opac.default_phone',
+    'opac',
+    TRUE,
+    oils_i18n_gettext(
+        'opac.default_phone',
+        'Default Phone Number',
+        'cust',
+        'label'
+    ),
+    oils_i18n_gettext(
+        'opac.default_phone',
+        'Default Phone Number',
+        'cust',
+        'description'
+    ),
+    'string'
+);
+
+SELECT setval( 'config.sms_carrier_id_seq', 1000 );
+INSERT INTO config.sms_carrier VALUES
+
+    -- Testing
+    (
+        1,
+        oils_i18n_gettext(
+            1,
+            'Local',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            1,
+            'Test Carrier',
+            'csc',
+            'name'
+        ),
+        'opensrf+$number at localhost',
+        FALSE
+    ),
+
+    -- Canada & USA
+    (
+        2,
+        oils_i18n_gettext(
+            2,
+            'Canada & USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            2,
+            'Rogers Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at pcs.rogers.com',
+        TRUE
+    ),
+    (
+        3,
+        oils_i18n_gettext(
+            3,
+            'Canada & USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            3,
+            'Rogers Wireless (Alternate)',
+            'csc',
+            'name'
+        ),
+        '1$number at mms.rogers.com',
+        TRUE
+    ),
+    (
+        4,
+        oils_i18n_gettext(
+            4,
+            'Canada & USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            4,
+            'Telus Mobility',
+            'csc',
+            'name'
+        ),
+        '$number at msg.telus.com',
+        TRUE
+    ),
+
+    -- Canada
+    (
+        5,
+        oils_i18n_gettext(
+            5,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            5,
+            'Koodo Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at msg.telus.com',
+        TRUE
+    ),
+    (
+        6,
+        oils_i18n_gettext(
+            6,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            6,
+            'Fido',
+            'csc',
+            'name'
+        ),
+        '$number at fido.ca',
+        TRUE
+    ),
+    (
+        7,
+        oils_i18n_gettext(
+            7,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            7,
+            'Bell Mobility & Solo Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at txt.bell.ca',
+        TRUE
+    ),
+    (
+        8,
+        oils_i18n_gettext(
+            8,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            8,
+            'Bell Mobility & Solo Mobile (Alternate)',
+            'csc',
+            'name'
+        ),
+        '$number at txt.bellmobility.ca',
+        TRUE
+    ),
+    (
+        9,
+        oils_i18n_gettext(
+            9,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            9,
+            'Aliant',
+            'csc',
+            'name'
+        ),
+        '$number at sms.wirefree.informe.ca',
+        TRUE
+    ),
+    (
+        10,
+        oils_i18n_gettext(
+            10,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            10,
+            'PC Telecom',
+            'csc',
+            'name'
+        ),
+        '$number at mobiletxt.ca',
+        TRUE
+    ),
+    (
+        11,
+        oils_i18n_gettext(
+            11,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            11,
+            'SaskTel',
+            'csc',
+            'name'
+        ),
+        '$number at sms.sasktel.com',
+        TRUE
+    ),
+    (
+        12,
+        oils_i18n_gettext(
+            12,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            12,
+            'MTS Mobility',
+            'csc',
+            'name'
+        ),
+        '$number at text.mtsmobility.com',
+        TRUE
+    ),
+    (
+        13,
+        oils_i18n_gettext(
+            13,
+            'Canada',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            13,
+            'Virgin Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at vmobile.ca',
+        TRUE
+    ),
+
+    -- International
+    (
+        14,
+        oils_i18n_gettext(
+            14,
+            'International',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            14,
+            'Iridium',
+            'csc',
+            'name'
+        ),
+        '$number at msg.iridium.com',
+        TRUE
+    ),
+    (
+        15,
+        oils_i18n_gettext(
+            15,
+            'International',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            15,
+            'Globalstar',
+            'csc',
+            'name'
+        ),
+        '$number at msg.globalstarusa.com',
+        TRUE
+    ),
+    (
+        16,
+        oils_i18n_gettext(
+            16,
+            'International',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            16,
+            'Bulletin.net',
+            'csc',
+            'name'
+        ),
+        '$number at bulletinmessenger.net', -- International Formatted number
+        TRUE
+    ),
+    (
+        17,
+        oils_i18n_gettext(
+            17,
+            'International',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            17,
+            'Panacea Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at api.panaceamobile.com',
+        TRUE
+    ),
+
+    -- USA
+    (
+        18,
+        oils_i18n_gettext(
+            18,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            18,
+            'C Beyond',
+            'csc',
+            'name'
+        ),
+        '$number at cbeyond.sprintpcs.com',
+        TRUE
+    ),
+    (
+        19,
+        oils_i18n_gettext(
+            19,
+            'Alaska, USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            19,
+            'General Communications, Inc.',
+            'csc',
+            'name'
+        ),
+        '$number at mobile.gci.net',
+        TRUE
+    ),
+    (
+        20,
+        oils_i18n_gettext(
+            20,
+            'California, USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            20,
+            'Golden State Cellular',
+            'csc',
+            'name'
+        ),
+        '$number at gscsms.com',
+        TRUE
+    ),
+    (
+        21,
+        oils_i18n_gettext(
+            21,
+            'Cincinnati, Ohio, USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            21,
+            'Cincinnati Bell',
+            'csc',
+            'name'
+        ),
+        '$number at gocbw.com',
+        TRUE
+    ),
+    (
+        22,
+        oils_i18n_gettext(
+            22,
+            'Hawaii, USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            22,
+            'Hawaiian Telcom Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at hawaii.sprintpcs.com',
+        TRUE
+    ),
+    (
+        23,
+        oils_i18n_gettext(
+            23,
+            'Midwest, USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            23,
+            'i wireless (T-Mobile)',
+            'csc',
+            'name'
+        ),
+        '$number.iws at iwspcs.net',
+        TRUE
+    ),
+    (
+        24,
+        oils_i18n_gettext(
+            24,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            24,
+            'i-wireless (Sprint PCS)',
+            'csc',
+            'name'
+        ),
+        '$number at iwirelesshometext.com',
+        TRUE
+    ),
+    (
+        25,
+        oils_i18n_gettext(
+            25,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            25,
+            'MetroPCS',
+            'csc',
+            'name'
+        ),
+        '$number at mymetropcs.com',
+        TRUE
+    ),
+    (
+        26,
+        oils_i18n_gettext(
+            26,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            26,
+            'Kajeet',
+            'csc',
+            'name'
+        ),
+        '$number at mobile.kajeet.net',
+        TRUE
+    ),
+    (
+        27,
+        oils_i18n_gettext(
+            27,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            27,
+            'Element Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at SMS.elementmobile.net',
+        TRUE
+    ),
+    (
+        28,
+        oils_i18n_gettext(
+            28,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            28,
+            'Esendex',
+            'csc',
+            'name'
+        ),
+        '$number at echoemail.net',
+        TRUE
+    ),
+    (
+        29,
+        oils_i18n_gettext(
+            29,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            29,
+            'Boost Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at myboostmobile.com',
+        TRUE
+    ),
+    (
+        30,
+        oils_i18n_gettext(
+            30,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            30,
+            'BellSouth',
+            'csc',
+            'name'
+        ),
+        '$number at bellsouth.com',
+        TRUE
+    ),
+    (
+        31,
+        oils_i18n_gettext(
+            31,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            31,
+            'Bluegrass Cellular',
+            'csc',
+            'name'
+        ),
+        '$number at sms.bluecell.com',
+        TRUE
+    ),
+    (
+        32,
+        oils_i18n_gettext(
+            32,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            32,
+            'AT&T Enterprise Paging',
+            'csc',
+            'name'
+        ),
+        '$number at page.att.net',
+        TRUE
+    ),
+    (
+        33,
+        oils_i18n_gettext(
+            33,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            33,
+            'AT&T Mobility/Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at txt.att.net',
+        TRUE
+    ),
+    (
+        34,
+        oils_i18n_gettext(
+            34,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            34,
+            'AT&T Global Smart Messaging Suite',
+            'csc',
+            'name'
+        ),
+        '$number at sms.smartmessagingsuite.com',
+        TRUE
+    ),
+    (
+        35,
+        oils_i18n_gettext(
+            35,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            35,
+            'Alltel (Allied Wireless)',
+            'csc',
+            'name'
+        ),
+        '$number at sms.alltelwireless.com',
+        TRUE
+    ),
+    (
+        36,
+        oils_i18n_gettext(
+            36,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            36,
+            'Alaska Communications',
+            'csc',
+            'name'
+        ),
+        '$number at msg.acsalaska.com',
+        TRUE
+    ),
+    (
+        37,
+        oils_i18n_gettext(
+            37,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            37,
+            'Ameritech',
+            'csc',
+            'name'
+        ),
+        '$number at paging.acswireless.com',
+        TRUE
+    ),
+    (
+        38,
+        oils_i18n_gettext(
+            38,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            38,
+            'Cingular (GoPhone prepaid)',
+            'csc',
+            'name'
+        ),
+        '$number at cingulartext.com',
+        TRUE
+    ),
+    (
+        39,
+        oils_i18n_gettext(
+            39,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            39,
+            'Cingular (Postpaid)',
+            'csc',
+            'name'
+        ),
+        '$number at cingular.com',
+        TRUE
+    ),
+    (
+        40,
+        oils_i18n_gettext(
+            40,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            40,
+            'Cellular One (Dobson) / O2 / Orange',
+            'csc',
+            'name'
+        ),
+        '$number at mobile.celloneusa.com',
+        TRUE
+    ),
+    (
+        41,
+        oils_i18n_gettext(
+            41,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            41,
+            'Cellular South',
+            'csc',
+            'name'
+        ),
+        '$number at csouth1.com',
+        TRUE
+    ),
+    (
+        42,
+        oils_i18n_gettext(
+            42,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            42,
+            'Cellcom',
+            'csc',
+            'name'
+        ),
+        '$number at cellcom.quiktxt.com',
+        TRUE
+    ),
+    (
+        43,
+        oils_i18n_gettext(
+            43,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            43,
+            'Chariton Valley Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at sms.cvalley.net',
+        TRUE
+    ),
+    (
+        44,
+        oils_i18n_gettext(
+            44,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            44,
+            'Cricket',
+            'csc',
+            'name'
+        ),
+        '$number at sms.mycricket.com',
+        TRUE
+    ),
+    (
+        45,
+        oils_i18n_gettext(
+            45,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            45,
+            'Cleartalk Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at sms.cleartalk.us',
+        TRUE
+    ),
+    (
+        46,
+        oils_i18n_gettext(
+            46,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            46,
+            'Edge Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at sms.edgewireless.com',
+        TRUE
+    ),
+    (
+        47,
+        oils_i18n_gettext(
+            47,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            47,
+            'Syringa Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at rinasms.com',
+        TRUE
+    ),
+    (
+        48,
+        oils_i18n_gettext(
+            48,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            48,
+            'T-Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at tmomail.net',
+        TRUE
+    ),
+    (
+        49,
+        oils_i18n_gettext(
+            49,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            49,
+            'Straight Talk / PagePlus Cellular',
+            'csc',
+            'name'
+        ),
+        '$number at vtext.com',
+        TRUE
+    ),
+    (
+        50,
+        oils_i18n_gettext(
+            50,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            50,
+            'South Central Communications',
+            'csc',
+            'name'
+        ),
+        '$number at rinasms.com',
+        TRUE
+    ),
+    (
+        51,
+        oils_i18n_gettext(
+            51,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            51,
+            'Simple Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at smtext.com',
+        TRUE
+    ),
+    (
+        52,
+        oils_i18n_gettext(
+            52,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            52,
+            'Sprint (PCS)',
+            'csc',
+            'name'
+        ),
+        '$number at messaging.sprintpcs.com',
+        TRUE
+    ),
+    (
+        53,
+        oils_i18n_gettext(
+            53,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            53,
+            'Nextel',
+            'csc',
+            'name'
+        ),
+        '$number at messaging.nextel.com',
+        TRUE
+    ),
+    (
+        54,
+        oils_i18n_gettext(
+            54,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            54,
+            'Pioneer Cellular',
+            'csc',
+            'name'
+        ),
+        '$number at zsend.com', -- nine digit number
+        TRUE
+    ),
+    (
+        55,
+        oils_i18n_gettext(
+            55,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            55,
+            'Qwest Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at qwestmp.com',
+        TRUE
+    ),
+    (
+        56,
+        oils_i18n_gettext(
+            56,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            56,
+            'US Cellular',
+            'csc',
+            'name'
+        ),
+        '$number at email.uscc.net',
+        TRUE
+    ),
+    (
+        57,
+        oils_i18n_gettext(
+            57,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            57,
+            'Unicel',
+            'csc',
+            'name'
+        ),
+        '$number at utext.com',
+        TRUE
+    ),
+    (
+        58,
+        oils_i18n_gettext(
+            58,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            58,
+            'Teleflip',
+            'csc',
+            'name'
+        ),
+        '$number at teleflip.com',
+        TRUE
+    ),
+    (
+        59,
+        oils_i18n_gettext(
+            59,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            59,
+            'Virgin Mobile',
+            'csc',
+            'name'
+        ),
+        '$number at vmobl.com',
+        TRUE
+    ),
+    (
+        60,
+        oils_i18n_gettext(
+            60,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            60,
+            'Verizon Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at vtext.com',
+        TRUE
+    ),
+    (
+        61,
+        oils_i18n_gettext(
+            61,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            61,
+            'USA Mobility',
+            'csc',
+            'name'
+        ),
+        '$number at usamobility.net',
+        TRUE
+    ),
+    (
+        62,
+        oils_i18n_gettext(
+            62,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            62,
+            'Viaero',
+            'csc',
+            'name'
+        ),
+        '$number at viaerosms.com',
+        TRUE
+    ),
+    (
+        63,
+        oils_i18n_gettext(
+            63,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            63,
+            'TracFone',
+            'csc',
+            'name'
+        ),
+        '$number at mmst5.tracfone.com',
+        TRUE
+    ),
+    (
+        64,
+        oils_i18n_gettext(
+            64,
+            'USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            64,
+            'Centennial Wireless',
+            'csc',
+            'name'
+        ),
+        '$number at cwemail.com',
+        TRUE
+    ),
+
+    -- South Korea and USA
+    (
+        65,
+        oils_i18n_gettext(
+            65,
+            'South Korea and USA',
+            'csc',
+            'region'
+        ),
+        oils_i18n_gettext(
+            65,
+            'Helio',
+            'csc',
+            'name'
+        ),
+        '$number at myhelio.com',
+        TRUE
+    )
+;
+
+INSERT INTO permission.perm_list ( id, code, description ) VALUES
+    (
+        519,
+        'ADMIN_SMS_CARRIER',
+        oils_i18n_gettext(
+            519,
+            'Allows a user to add/create/delete SMS Carrier entries.',
+            'ppl',
+            'description'
+        )
+    )
+;
+
+INSERT INTO permission.grp_perm_map (grp, perm, depth, grantable)
+    SELECT
+        pgt.id, perm.id, aout.depth, TRUE
+    FROM
+        permission.grp_tree pgt,
+        permission.perm_list perm,
+        actor.org_unit_type aout
+    WHERE
+        pgt.name = 'Global Administrator' AND
+        aout.name = 'Consortium' AND
+        perm.code = 'ADMIN_SMS_CARRIER';
+
+INSERT INTO action_trigger.reactor (
+    module,
+    description
+) VALUES (
+    'SendSMS',
+    'Send an SMS text message based on a user-defined template'
+);
+
+INSERT INTO action_trigger.event_definition (
+    active,
+    owner,
+    name,
+    hook,
+    validator,
+    reactor,
+    cleanup_success,
+    delay,
+    delay_field,
+    group_field,
+    template
+) VALUES (
+    true,
+    1, -- admin
+    'Hold Ready for Pickup SMS Notification',
+    'hold.available',
+    'HoldIsAvailable',
+    'SendSMS',
+    'CreateHoldNotification',
+    '00:30:00',
+    'shelf_time',
+    'sms_notify',
+    '[%- USE date -%]
+[%- user = target.0.usr -%]
+From: [%- params.sender_email || default_sender %]
+To: [%- params.recipient_email || helpers.get_sms_gateway_email(target.0.sms_carrier,target.0.sms_notify) %]
+Subject: [% target.size %] hold(s) ready
+
+[% FOR hold IN target %][%-
+  bibxml = helpers.xml_doc( hold.current_copy.call_number.record.marc );
+  title = "";
+  FOR part IN bibxml.findnodes(''//*[@tag="245"]/*[@code="a"]'');
+    title = title _ part.textContent;
+  END;
+  author = bibxml.findnodes(''//*[@tag="100"]/*[@code="a"]'').textContent;
+%][% hold.usr.first_given_name %]:[% title %] @ [% hold.pickup_lib.name %]
+[% END %]
+'
+);
+
+INSERT INTO action_trigger.environment (
+    event_def,
+    path
+) VALUES (
+    currval('action_trigger.event_definition_id_seq'),
+    'current_copy.call_number.record.simple_record'
+), (
+    currval('action_trigger.event_definition_id_seq'),
+    'usr'
+), (
+    currval('action_trigger.event_definition_id_seq'),
+    'pickup_lib.billing_address'
+);
+
+INSERT INTO action_trigger.hook(
+    key,
+    core_type,
+    description,
+    passive
+) VALUES (
+    'acn.format.sms_text',
+    'acn',
+    oils_i18n_gettext(
+        'acn.format.sms_text',
+        'A text message has been requested for a call number.',
+        'ath',
+        'description'
+    ),
+    FALSE
+);
+
+INSERT INTO action_trigger.event_definition (
+    active,
+    owner,
+    name,
+    hook,
+    validator,
+    reactor,
+    template
+) VALUES (
+    true,
+    1, -- admin
+    'SMS Call Number',
+    'acn.format.sms_text',
+    'NOOP_True',
+    'SendSMS',
+    '[%- USE date -%]
+From: [%- params.sender_email || default_sender %]
+To: [%- params.recipient_email || helpers.get_sms_gateway_email(user_data.sms_carrier,user_data.sms_notify) %]
+Subject: Call Number
+
+[%-
+  bibxml = helpers.xml_doc( target.record.marc );
+  title = "";
+  FOR part IN bibxml.findnodes(''//*[@tag="245"]/*[@code="a" or @code="b"]'');
+    title = title _ part.textContent;
+  END;
+  author = bibxml.findnodes(''//*[@tag="100"]/*[@code="a"]'').textContent;
+%]
+Call Number: [% target.label %]
+Location: [% helpers.get_most_populous_location( target.id ).name %]
+Library: [% target.owning_lib.name %]
+[%- IF title %]
+Title: [% title %]
+[%- END %]
+[%- IF author %]
+Author: [% author %]
+[%- END %]
+'
+);
+
+INSERT INTO action_trigger.environment (
+    event_def,
+    path
+) VALUES (
+    currval('action_trigger.event_definition_id_seq'),
+    'record.simple_record'
+), (
+    currval('action_trigger.event_definition_id_seq'),
+    'owning_lib.billing_address'
+);
+
+
+-- DELETE FROM actor.usr_setting WHERE name = 'opac.default_phone' OR name in ( SELECT name FROM config.usr_setting_type WHERE grp = 'sms' ); DELETE FROM config.usr_setting_type WHERE name = 'opac.default_phone' OR grp = 'sms'; DELETE FROM actor.org_unit_setting WHERE name in ( SELECT name FROM config.org_unit_setting_type WHERE grp = 'sms' ); DELETE FROM config.org_unit_setting_type_log WHERE field_name in ( SELECT name FROM config.org_unit_setting_type WHERE grp = 'sms' ); DELETE FROM config.org_unit_setting_type WHERE grp = 'sms'; DELETE FROM config.settings_group WHERE name = 'sms'; DELETE FROM permission.grp_perm_map WHERE perm = 519; DELETE FROM permission.perm_list WHERE id = 519; ALTER TABLE action.hold_request DROP CONSTRAINT sms_check; ALTER TABLE action.hold_request DROP COLUMN sms_notify; ALTER TABLE action.hold_request DROP COLUMN sms_carrier; DROP TABLE config.sms_carrier; DELETE FROM action_trigger.event WHERE event_def = ( SELECT id FROM action_trigger.event_
 definition WHERE name = 'Hold Ready for Pickup SMS Notification' ); DELETE FROM action_trigger.environment WHERE event_def = ( SELECT id FROM action_trigger.event_definition WHERE name = 'Hold Ready for Pickup SMS Notification' ); DELETE FROM action_trigger.event_definition WHERE name = 'Hold Ready for Pickup SMS Notification'; DELETE FROM action_trigger.event WHERE event_def IN ( SELECT id FROM action_trigger.event_definition WHERE hook = 'acn.format.sms_text' ); DELETE FROM action_trigger.environment WHERE event_def IN ( SELECT id FROM action_trigger.event_definition WHERE hook = 'acn.format.sms_text' ); DELETE FROM action_trigger.event_definition WHERE hook = 'acn.format.sms_text'; DELETE FROM action_trigger.hook WHERE key = 'acn.format.sms_text'; DELETE FROM action_trigger.reactor WHERE module = 'SendSMS'; DELETE FROM config.upgrade_log WHERE version = 'XXXX';
+
+
+SELECT evergreen.upgrade_deps_block_check('0667', :eg_version);
+
+ALTER TABLE config.standing_penalty ADD staff_alert BOOL NOT NULL DEFAULT FALSE;
+
+-- 20 is ALERT_NOTE
+-- for backwards compat, set all blocking penalties to alerts
+UPDATE config.standing_penalty SET staff_alert = TRUE 
+    WHERE id = 20 OR block_list IS NOT NULL;
+
+-- Evergreen DB patch 0668.schema.fix_indb_hold_permit.sql
+--
+-- FIXME: insert description of change, if needed
+--
+
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0668', :eg_version);
+
+-- FIXME: add/check SQL statements to perform the upgrade
+CREATE OR REPLACE FUNCTION action.hold_request_permit_test( pickup_ou INT, request_ou INT, match_item BIGINT, match_user INT, match_requestor INT, retargetting BOOL ) RETURNS SETOF action.matrix_test_result AS $func$
+DECLARE
+    matchpoint_id        INT;
+    user_object        actor.usr%ROWTYPE;
+    age_protect_object    config.rule_age_hold_protect%ROWTYPE;
+    standing_penalty    config.standing_penalty%ROWTYPE;
+    transit_range_ou_type    actor.org_unit_type%ROWTYPE;
+    transit_source        actor.org_unit%ROWTYPE;
+    item_object        asset.copy%ROWTYPE;
+    item_cn_object     asset.call_number%ROWTYPE;
+    item_status_object  config.copy_status%ROWTYPE;
+    item_location_object    asset.copy_location%ROWTYPE;
+    ou_skip              actor.org_unit_setting%ROWTYPE;
+    result            action.matrix_test_result;
     hold_test        config.hold_matrix_matchpoint%ROWTYPE;
     use_active_date   TEXT;
     age_protect_date  TIMESTAMP WITH TIME ZONE;
@@ -6302,12 +8101,4380 @@ DECLARE
     context_org_list    INT[];
     done            BOOL := FALSE;
 BEGIN
-    SELECT INTO user_object * FROM actor.usr WHERE id = match_user;
-    SELECT INTO context_org_list ARRAY_ACCUM(id) FROM actor.org_unit_full_path( pickup_ou );
+    SELECT INTO user_object * FROM actor.usr WHERE id = match_user;
+    SELECT INTO context_org_list ARRAY_ACCUM(id) FROM actor.org_unit_full_path( pickup_ou );
+
+    result.success := TRUE;
+
+    -- Fail if we couldn't find a user
+    IF user_object.id IS NULL THEN
+        result.fail_part := 'no_user';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+        RETURN;
+    END IF;
+
+    SELECT INTO item_object * FROM asset.copy WHERE id = match_item;
+
+    -- Fail if we couldn't find a copy
+    IF item_object.id IS NULL THEN
+        result.fail_part := 'no_item';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+        RETURN;
+    END IF;
+
+    SELECT INTO matchpoint_id action.find_hold_matrix_matchpoint(pickup_ou, request_ou, match_item, match_user, match_requestor);
+    result.matchpoint := matchpoint_id;
+
+    SELECT INTO ou_skip * FROM actor.org_unit_setting WHERE name = 'circ.holds.target_skip_me' AND org_unit = item_object.circ_lib;
+
+    -- Fail if the circ_lib for the item has circ.holds.target_skip_me set to true
+    IF ou_skip.id IS NOT NULL AND ou_skip.value = 'true' THEN
+        result.fail_part := 'circ.holds.target_skip_me';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+        RETURN;
+    END IF;
+
+    -- Fail if user is barred
+    IF user_object.barred IS TRUE THEN
+        result.fail_part := 'actor.usr.barred';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+        RETURN;
+    END IF;
+
+    SELECT INTO item_cn_object * FROM asset.call_number WHERE id = item_object.call_number;
+    SELECT INTO item_status_object * FROM config.copy_status WHERE id = item_object.status;
+    SELECT INTO item_location_object * FROM asset.copy_location WHERE id = item_object.location;
+
+    -- Fail if we couldn't find any matchpoint (requires a default)
+    IF matchpoint_id IS NULL THEN
+        result.fail_part := 'no_matchpoint';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+        RETURN;
+    END IF;
+
+    SELECT INTO hold_test * FROM config.hold_matrix_matchpoint WHERE id = matchpoint_id;
+
+    IF hold_test.holdable IS FALSE THEN
+        result.fail_part := 'config.hold_matrix_test.holdable';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    END IF;
+
+    IF item_object.holdable IS FALSE THEN
+        result.fail_part := 'item.holdable';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    END IF;
+
+    IF item_status_object.holdable IS FALSE THEN
+        result.fail_part := 'status.holdable';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    END IF;
+
+    IF item_location_object.holdable IS FALSE THEN
+        result.fail_part := 'location.holdable';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    END IF;
+
+    IF hold_test.transit_range IS NOT NULL THEN
+        SELECT INTO transit_range_ou_type * FROM actor.org_unit_type WHERE id = hold_test.transit_range;
+        IF hold_test.distance_is_from_owner THEN
+            SELECT INTO transit_source ou.* FROM actor.org_unit ou JOIN asset.call_number cn ON (cn.owning_lib = ou.id) WHERE cn.id = item_object.call_number;
+        ELSE
+            SELECT INTO transit_source * FROM actor.org_unit WHERE id = item_object.circ_lib;
+        END IF;
+
+        PERFORM * FROM actor.org_unit_descendants( transit_source.id, transit_range_ou_type.depth ) WHERE id = pickup_ou;
+
+        IF NOT FOUND THEN
+            result.fail_part := 'transit_range';
+            result.success := FALSE;
+            done := TRUE;
+            RETURN NEXT result;
+        END IF;
+    END IF;
+ 
+    FOR standing_penalty IN
+        SELECT  DISTINCT csp.*
+          FROM  actor.usr_standing_penalty usp
+                JOIN config.standing_penalty csp ON (csp.id = usp.standing_penalty)
+          WHERE usr = match_user
+                AND usp.org_unit IN ( SELECT * FROM unnest(context_org_list) )
+                AND (usp.stop_date IS NULL or usp.stop_date > NOW())
+                AND csp.block_list LIKE '%HOLD%' LOOP
+
+        result.fail_part := standing_penalty.name;
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    END LOOP;
+
+    IF hold_test.stop_blocked_user IS TRUE THEN
+        FOR standing_penalty IN
+            SELECT  DISTINCT csp.*
+              FROM  actor.usr_standing_penalty usp
+                    JOIN config.standing_penalty csp ON (csp.id = usp.standing_penalty)
+              WHERE usr = match_user
+                    AND usp.org_unit IN ( SELECT * FROM unnest(context_org_list) )
+                    AND (usp.stop_date IS NULL or usp.stop_date > NOW())
+                    AND csp.block_list LIKE '%CIRC%' LOOP
+    
+            result.fail_part := standing_penalty.name;
+            result.success := FALSE;
+            done := TRUE;
+            RETURN NEXT result;
+        END LOOP;
+    END IF;
+
+    IF hold_test.max_holds IS NOT NULL AND NOT retargetting THEN
+        SELECT    INTO hold_count COUNT(*)
+          FROM    action.hold_request
+          WHERE    usr = match_user
+            AND fulfillment_time IS NULL
+            AND cancel_time IS NULL
+            AND CASE WHEN hold_test.include_frozen_holds THEN TRUE ELSE frozen IS FALSE END;
+
+        IF hold_count >= hold_test.max_holds THEN
+            result.fail_part := 'config.hold_matrix_test.max_holds';
+            result.success := FALSE;
+            done := TRUE;
+            RETURN NEXT result;
+        END IF;
+    END IF;
+
+    IF item_object.age_protect IS NOT NULL THEN
+        SELECT INTO age_protect_object * FROM config.rule_age_hold_protect WHERE id = item_object.age_protect;
+        IF hold_test.distance_is_from_owner THEN
+            SELECT INTO use_active_date value FROM actor.org_unit_ancestor_setting('circ.holds.age_protect.active_date', item_cn_object.owning_lib);
+        ELSE
+            SELECT INTO use_active_date value FROM actor.org_unit_ancestor_setting('circ.holds.age_protect.active_date', item_object.circ_lib);
+        END IF;
+        IF use_active_date = 'true' THEN
+            age_protect_date := COALESCE(item_object.active_date, NOW());
+        ELSE
+            age_protect_date := item_object.create_date;
+        END IF;
+        IF age_protect_date + age_protect_object.age > NOW() THEN
+            IF hold_test.distance_is_from_owner THEN
+                SELECT INTO item_cn_object * FROM asset.call_number WHERE id = item_object.call_number;
+                SELECT INTO hold_transit_prox prox FROM actor.org_unit_proximity WHERE from_org = item_cn_object.owning_lib AND to_org = pickup_ou;
+            ELSE
+                SELECT INTO hold_transit_prox prox FROM actor.org_unit_proximity WHERE from_org = item_object.circ_lib AND to_org = pickup_ou;
+            END IF;
+
+            IF hold_transit_prox > age_protect_object.prox THEN
+                result.fail_part := 'config.rule_age_hold_protect.prox';
+                result.success := FALSE;
+                done := TRUE;
+                RETURN NEXT result;
+            END IF;
+        END IF;
+    END IF;
+
+    IF NOT done THEN
+        RETURN NEXT result;
+    END IF;
+
+    RETURN;
+END;
+$func$ LANGUAGE plpgsql;
+
+
+-- Evergreen DB patch 0669.data.recall_and_force_holds.sql
+--
+-- FIXME: insert description of change, if needed
+--
+
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0669', :eg_version);
+
+-- FIXME: add/check SQL statements to perform the upgrade
+INSERT INTO permission.perm_list ( id, code, description ) VALUES
+ ( 517, 'COPY_HOLDS_FORCE', oils_i18n_gettext( 517, 
+    'Allow a user to place a force hold on a specific copy', 'ppl', 'description' )),
+ ( 518, 'COPY_HOLDS_RECALL', oils_i18n_gettext( 518, 
+    'Allow a user to place a cataloging recall on a specific copy', 'ppl', 'description' ));
+
+
+-- Evergreen DB patch 0670.data.mark-email-and-phone-invalid.sql
+--
+-- Add org unit settings and standing penalty types to support
+-- the mark email/phone invalid features.
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0670', :eg_version);
+
+
+INSERT INTO config.standing_penalty (id, name, label, staff_alert, org_depth) VALUES
+    (
+        31,
+        'INVALID_PATRON_EMAIL_ADDRESS',
+        oils_i18n_gettext(
+            31,
+            'Patron had an invalid email address',
+            'csp',
+            'label'
+        ),
+        TRUE,
+        0
+    ),
+    (
+        32,
+        'INVALID_PATRON_DAY_PHONE',
+        oils_i18n_gettext(
+            32,
+            'Patron had an invalid daytime phone number',
+            'csp',
+            'label'
+        ),
+        TRUE,
+        0
+    ),
+    (
+        33,
+        'INVALID_PATRON_EVENING_PHONE',
+        oils_i18n_gettext(
+            33,
+            'Patron had an invalid evening phone number',
+            'csp',
+            'label'
+        ),
+        TRUE,
+        0
+    ),
+    (
+        34,
+        'INVALID_PATRON_OTHER_PHONE',
+        oils_i18n_gettext(
+            34,
+            'Patron had an invalid other phone number',
+            'csp',
+            'label'
+        ),
+        TRUE,
+        0
+    );
+
+
+
+SELECT evergreen.upgrade_deps_block_check('0671', :eg_version);
+
+ALTER TABLE asset.copy_location
+    ADD COLUMN checkin_alert BOOL NOT NULL DEFAULT FALSE;
+
+-- Evergreen DB patch 0672.fix-nonfiling-titles.sql
+--
+-- Titles that begin with non-filing articles using apostrophes
+-- (for example, "L'armée") get spaces injected between the article
+-- and the subsequent text, which then breaks searching for titles
+-- beginning with those articles.
+--
+-- This patch adds a nonfiling title element to MODS32 that can then
+-- be used to retrieve the title proper without affecting the spaces
+-- in the title. It's what we want, what we really really want, for
+-- title searches.
+--
+
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0672', :eg_version);
+
+-- Update the XPath definition before the titleNonfiling element exists;
+-- but are you really going to read through the whole XSL below before
+-- seeing this important bit?
+UPDATE config.metabib_field
+    SET xpath = $$//mods32:mods/mods32:titleNonfiling[mods32:title and not (@type)]$$,
+        format = 'mods32'
+    WHERE field_class = 'title' AND name = 'proper';
+
+UPDATE config.xml_transform SET xslt=$$<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns="http://www.loc.gov/mods/v3" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="xlink marc" version="1.0">
+	<xsl:output encoding="UTF-8" indent="yes" method="xml"/>
+<!--
+Revision 1.14 - Fixed template isValid and fields 010, 020, 022, 024, 028, and 037 to output additional identifier elements 
+  with corresponding @type and @invalid eq 'yes' when subfields z or y (in the case of 022) exist in the MARCXML ::: 2007/01/04 17:35:20 cred
+
+Revision 1.13 - Changed order of output under cartographics to reflect schema  2006/11/28 tmee
+	
+Revision 1.12 - Updated to reflect MODS 3.2 Mapping  2006/10/11 tmee
+		
+Revision 1.11 - The attribute objectPart moved from <languageTerm> to <language>
+      2006/04/08  jrad
+
+Revision 1.10 MODS 3.1 revisions to language and classification elements  
+				(plus ability to find marc:collection embedded in wrapper elements such as SRU zs: wrappers)
+				2006/02/06  ggar
+
+Revision 1.9 subfield $y was added to field 242 2004/09/02 10:57 jrad
+
+Revision 1.8 Subject chopPunctuation expanded and attribute fixes 2004/08/12 jrad
+
+Revision 1.7 2004/03/25 08:29 jrad
+
+Revision 1.6 various validation fixes 2004/02/20 ntra
+
+Revision 1.5  2003/10/02 16:18:58  ntra
+MODS2 to MODS3 updates, language unstacking and 
+de-duping, chopPunctuation expanded
+
+Revision 1.3  2003/04/03 00:07:19  ntra
+Revision 1.3 Additional Changes not related to MODS Version 2.0 by ntra
+
+Revision 1.2  2003/03/24 19:37:42  ckeith
+Added Log Comment
+
+-->
+	<xsl:template match="/">
+		<xsl:choose>
+			<xsl:when test="//marc:collection">
+				<modsCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-2.xsd">
+					<xsl:for-each select="//marc:collection/marc:record">
+						<mods version="3.2">
+							<xsl:call-template name="marcRecord"/>
+						</mods>
+					</xsl:for-each>
+				</modsCollection>
+			</xsl:when>
+			<xsl:otherwise>
+				<mods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.2" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-2.xsd">
+					<xsl:for-each select="//marc:record">
+						<xsl:call-template name="marcRecord"/>
+					</xsl:for-each>
+				</mods>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+	<xsl:template name="marcRecord">
+		<xsl:variable name="leader" select="marc:leader"/>
+		<xsl:variable name="leader6" select="substring($leader,7,1)"/>
+		<xsl:variable name="leader7" select="substring($leader,8,1)"/>
+		<xsl:variable name="controlField008" select="marc:controlfield[@tag='008']"/>
+		<xsl:variable name="typeOf008">
+			<xsl:choose>
+				<xsl:when test="$leader6='a'">
+					<xsl:choose>
+						<xsl:when test="$leader7='a' or $leader7='c' or $leader7='d' or $leader7='m'">BK</xsl:when>
+						<xsl:when test="$leader7='b' or $leader7='i' or $leader7='s'">SE</xsl:when>
+					</xsl:choose>
+				</xsl:when>
+				<xsl:when test="$leader6='t'">BK</xsl:when>
+				<xsl:when test="$leader6='p'">MM</xsl:when>
+				<xsl:when test="$leader6='m'">CF</xsl:when>
+				<xsl:when test="$leader6='e' or $leader6='f'">MP</xsl:when>
+				<xsl:when test="$leader6='g' or $leader6='k' or $leader6='o' or $leader6='r'">VM</xsl:when>
+				<xsl:when test="$leader6='c' or $leader6='d' or $leader6='i' or $leader6='j'">MU</xsl:when>
+			</xsl:choose>
+		</xsl:variable>
+		<xsl:for-each select="marc:datafield[@tag='245']">
+			<titleInfo>
+				<xsl:variable name="title">
+					<xsl:choose>
+						<xsl:when test="marc:subfield[@code='b']">
+							<xsl:call-template name="specialSubfieldSelect">
+								<xsl:with-param name="axis">b</xsl:with-param>
+								<xsl:with-param name="beforeCodes">afgk</xsl:with-param>
+							</xsl:call-template>
+						</xsl:when>
+						<xsl:otherwise>
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">abfgk</xsl:with-param>
+							</xsl:call-template>
+						</xsl:otherwise>
+					</xsl:choose>
+				</xsl:variable>
+				<xsl:variable name="titleChop">
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="$title"/>
+						</xsl:with-param>
+					</xsl:call-template>
+				</xsl:variable>
+				<xsl:choose>
+					<xsl:when test="@ind2>0">
+						<nonSort>
+							<xsl:value-of select="substring($titleChop,1, at ind2)"/>
+						</nonSort>
+						<title>
+							<xsl:value-of select="substring($titleChop, at ind2+1)"/>
+						</title>
+					</xsl:when>
+					<xsl:otherwise>
+						<title>
+							<xsl:value-of select="$titleChop"/>
+						</title>
+					</xsl:otherwise>
+				</xsl:choose>
+				<xsl:if test="marc:subfield[@code='b']">
+					<subTitle>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="axis">b</xsl:with-param>
+									<xsl:with-param name="anyCodes">b</xsl:with-param>
+									<xsl:with-param name="afterCodes">afgk</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</subTitle>
+				</xsl:if>
+				<xsl:call-template name="part"></xsl:call-template>
+			</titleInfo>
+			<!-- A form of title that ignores non-filing characters; useful
+				 for not converting "L'Oreal" into "L' Oreal" at index time -->
+			<titleNonfiling>
+				<xsl:variable name="title">
+					<xsl:choose>
+						<xsl:when test="marc:subfield[@code='b']">
+							<xsl:call-template name="specialSubfieldSelect">
+								<xsl:with-param name="axis">b</xsl:with-param>
+								<xsl:with-param name="beforeCodes">afgk</xsl:with-param>
+							</xsl:call-template>
+						</xsl:when>
+						<xsl:otherwise>
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">abfgk</xsl:with-param>
+							</xsl:call-template>
+						</xsl:otherwise>
+					</xsl:choose>
+				</xsl:variable>
+				<title>
+					<xsl:value-of select="$title"/>
+				</title>
+				<xsl:if test="marc:subfield[@code='b']">
+					<subTitle>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="axis">b</xsl:with-param>
+									<xsl:with-param name="anyCodes">b</xsl:with-param>
+									<xsl:with-param name="afterCodes">afgk</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</subTitle>
+				</xsl:if>
+				<xsl:call-template name="part"></xsl:call-template>
+			</titleNonfiling>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='210']">
+			<titleInfo type="abbreviated">
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">a</xsl:with-param>
+							</xsl:call-template>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:call-template name="subtitle"/>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='242']">
+			<titleInfo type="translated">
+				<!--09/01/04 Added subfield $y-->
+				<xsl:for-each select="marc:subfield[@code='y']">
+					<xsl:attribute name="lang">
+						<xsl:value-of select="text()"/>
+					</xsl:attribute>
+				</xsl:for-each>
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:call-template name="subfieldSelect">
+								<!-- 1/04 removed $h, b -->
+								<xsl:with-param name="codes">a</xsl:with-param>
+							</xsl:call-template>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<!-- 1/04 fix -->
+				<xsl:call-template name="subtitle"/>
+				<xsl:call-template name="part"/>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='246']">
+			<titleInfo type="alternative">
+				<xsl:for-each select="marc:subfield[@code='i']">
+					<xsl:attribute name="displayLabel">
+						<xsl:value-of select="text()"/>
+					</xsl:attribute>
+				</xsl:for-each>
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:call-template name="subfieldSelect">
+								<!-- 1/04 removed $h, $b -->
+								<xsl:with-param name="codes">af</xsl:with-param>
+							</xsl:call-template>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:call-template name="subtitle"/>
+				<xsl:call-template name="part"/>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='130']|marc:datafield[@tag='240']|marc:datafield[@tag='730'][@ind2!='2']">
+			<titleInfo type="uniform">
+				<title>
+					<xsl:variable name="str">
+						<xsl:for-each select="marc:subfield">
+							<xsl:if test="(contains('adfklmor', at code) and (not(../marc:subfield[@code='n' or @code='p']) or (following-sibling::marc:subfield[@code='n' or @code='p'])))">
+								<xsl:value-of select="text()"/>
+								<xsl:text> </xsl:text>
+							</xsl:if>
+						</xsl:for-each>
+					</xsl:variable>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="substring($str,1,string-length($str)-1)"/>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:call-template name="part"/>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='740'][@ind2!='2']">
+			<titleInfo type="alternative">
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">ah</xsl:with-param>
+							</xsl:call-template>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:call-template name="part"/>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='100']">
+			<name type="personal">
+				<xsl:call-template name="nameABCDQ"/>
+				<xsl:call-template name="affiliation"/>
+				<role>
+					<roleTerm authority="marcrelator" type="text">creator</roleTerm>
+				</role>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='110']">
+			<name type="corporate">
+				<xsl:call-template name="nameABCDN"/>
+				<role>
+					<roleTerm authority="marcrelator" type="text">creator</roleTerm>
+				</role>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='111']">
+			<name type="conference">
+				<xsl:call-template name="nameACDEQ"/>
+				<role>
+					<roleTerm authority="marcrelator" type="text">creator</roleTerm>
+				</role>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='700'][not(marc:subfield[@code='t'])]">
+			<name type="personal">
+				<xsl:call-template name="nameABCDQ"/>
+				<xsl:call-template name="affiliation"/>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='710'][not(marc:subfield[@code='t'])]">
+			<name type="corporate">
+				<xsl:call-template name="nameABCDN"/>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='711'][not(marc:subfield[@code='t'])]">
+			<name type="conference">
+				<xsl:call-template name="nameACDEQ"/>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='720'][not(marc:subfield[@code='t'])]">
+			<name>
+				<xsl:if test="@ind1=1">
+					<xsl:attribute name="type">
+						<xsl:text>personal</xsl:text>
+					</xsl:attribute>
+				</xsl:if>
+				<namePart>
+					<xsl:value-of select="marc:subfield[@code='a']"/>
+				</namePart>
+				<xsl:call-template name="role"/>
+			</name>
+		</xsl:for-each>
+		<typeOfResource>
+			<xsl:if test="$leader7='c'">
+				<xsl:attribute name="collection">yes</xsl:attribute>
+			</xsl:if>
+			<xsl:if test="$leader6='d' or $leader6='f' or $leader6='p' or $leader6='t'">
+				<xsl:attribute name="manuscript">yes</xsl:attribute>
+			</xsl:if>
+			<xsl:choose>
+				<xsl:when test="$leader6='a' or $leader6='t'">text</xsl:when>
+				<xsl:when test="$leader6='e' or $leader6='f'">cartographic</xsl:when>
+				<xsl:when test="$leader6='c' or $leader6='d'">notated music</xsl:when>
+				<xsl:when test="$leader6='i'">sound recording-nonmusical</xsl:when>
+				<xsl:when test="$leader6='j'">sound recording-musical</xsl:when>
+				<xsl:when test="$leader6='k'">still image</xsl:when>
+				<xsl:when test="$leader6='g'">moving image</xsl:when>
+				<xsl:when test="$leader6='r'">three dimensional object</xsl:when>
+				<xsl:when test="$leader6='m'">software, multimedia</xsl:when>
+				<xsl:when test="$leader6='p'">mixed material</xsl:when>
+			</xsl:choose>
+		</typeOfResource>
+		<xsl:if test="substring($controlField008,26,1)='d'">
+			<genre authority="marc">globe</genre>
+		</xsl:if>
+		<xsl:if test="marc:controlfield[@tag='007'][substring(text(),1,1)='a'][substring(text(),2,1)='r']">
+			<genre authority="marc">remote sensing image</genre>
+		</xsl:if>
+		<xsl:if test="$typeOf008='MP'">
+			<xsl:variable name="controlField008-25" select="substring($controlField008,26,1)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="$controlField008-25='a' or $controlField008-25='b' or $controlField008-25='c' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='j']">
+					<genre authority="marc">map</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-25='e' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='d']">
+					<genre authority="marc">atlas</genre>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:if test="$typeOf008='SE'">
+			<xsl:variable name="controlField008-21" select="substring($controlField008,22,1)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="$controlField008-21='d'">
+					<genre authority="marc">database</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-21='l'">
+					<genre authority="marc">loose-leaf</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-21='m'">
+					<genre authority="marc">series</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-21='n'">
+					<genre authority="marc">newspaper</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-21='p'">
+					<genre authority="marc">periodical</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-21='w'">
+					<genre authority="marc">web site</genre>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:if test="$typeOf008='BK' or $typeOf008='SE'">
+			<xsl:variable name="controlField008-24" select="substring($controlField008,25,4)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="contains($controlField008-24,'a')">
+					<genre authority="marc">abstract or summary</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'b')">
+					<genre authority="marc">bibliography</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'c')">
+					<genre authority="marc">catalog</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'d')">
+					<genre authority="marc">dictionary</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'e')">
+					<genre authority="marc">encyclopedia</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'f')">
+					<genre authority="marc">handbook</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'g')">
+					<genre authority="marc">legal article</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'i')">
+					<genre authority="marc">index</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'k')">
+					<genre authority="marc">discography</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'l')">
+					<genre authority="marc">legislation</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'m')">
+					<genre authority="marc">theses</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'n')">
+					<genre authority="marc">survey of literature</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'o')">
+					<genre authority="marc">review</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'p')">
+					<genre authority="marc">programmed text</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'q')">
+					<genre authority="marc">filmography</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'r')">
+					<genre authority="marc">directory</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'s')">
+					<genre authority="marc">statistics</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'t')">
+					<genre authority="marc">technical report</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'v')">
+					<genre authority="marc">legal case and case notes</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'w')">
+					<genre authority="marc">law report or digest</genre>
+				</xsl:when>
+				<xsl:when test="contains($controlField008-24,'z')">
+					<genre authority="marc">treaty</genre>
+				</xsl:when>
+			</xsl:choose>
+			<xsl:variable name="controlField008-29" select="substring($controlField008,30,1)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="$controlField008-29='1'">
+					<genre authority="marc">conference publication</genre>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:if test="$typeOf008='CF'">
+			<xsl:variable name="controlField008-26" select="substring($controlField008,27,1)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="$controlField008-26='a'">
+					<genre authority="marc">numeric data</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-26='e'">
+					<genre authority="marc">database</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-26='f'">
+					<genre authority="marc">font</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-26='g'">
+					<genre authority="marc">game</genre>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:if test="$typeOf008='BK'">
+			<xsl:if test="substring($controlField008,25,1)='j'">
+				<genre authority="marc">patent</genre>
+			</xsl:if>
+			<xsl:if test="substring($controlField008,31,1)='1'">
+				<genre authority="marc">festschrift</genre>
+			</xsl:if>
+			<xsl:variable name="controlField008-34" select="substring($controlField008,35,1)"></xsl:variable>
+			<xsl:if test="$controlField008-34='a' or $controlField008-34='b' or $controlField008-34='c' or $controlField008-34='d'">
+				<genre authority="marc">biography</genre>
+			</xsl:if>
+			<xsl:variable name="controlField008-33" select="substring($controlField008,34,1)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="$controlField008-33='e'">
+					<genre authority="marc">essay</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='d'">
+					<genre authority="marc">drama</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='c'">
+					<genre authority="marc">comic strip</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='l'">
+					<genre authority="marc">fiction</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='h'">
+					<genre authority="marc">humor, satire</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='i'">
+					<genre authority="marc">letter</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='f'">
+					<genre authority="marc">novel</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='j'">
+					<genre authority="marc">short story</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='s'">
+					<genre authority="marc">speech</genre>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:if test="$typeOf008='MU'">
+			<xsl:variable name="controlField008-30-31" select="substring($controlField008,31,2)"></xsl:variable>
+			<xsl:if test="contains($controlField008-30-31,'b')">
+				<genre authority="marc">biography</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'c')">
+				<genre authority="marc">conference publication</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'d')">
+				<genre authority="marc">drama</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'e')">
+				<genre authority="marc">essay</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'f')">
+				<genre authority="marc">fiction</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'o')">
+				<genre authority="marc">folktale</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'h')">
+				<genre authority="marc">history</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'k')">
+				<genre authority="marc">humor, satire</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'m')">
+				<genre authority="marc">memoir</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'p')">
+				<genre authority="marc">poetry</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'r')">
+				<genre authority="marc">rehearsal</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'g')">
+				<genre authority="marc">reporting</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'s')">
+				<genre authority="marc">sound</genre>
+			</xsl:if>
+			<xsl:if test="contains($controlField008-30-31,'l')">
+				<genre authority="marc">speech</genre>
+			</xsl:if>
+		</xsl:if>
+		<xsl:if test="$typeOf008='VM'">
+			<xsl:variable name="controlField008-33" select="substring($controlField008,34,1)"></xsl:variable>
+			<xsl:choose>
+				<xsl:when test="$controlField008-33='a'">
+					<genre authority="marc">art original</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='b'">
+					<genre authority="marc">kit</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='c'">
+					<genre authority="marc">art reproduction</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='d'">
+					<genre authority="marc">diorama</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='f'">
+					<genre authority="marc">filmstrip</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='g'">
+					<genre authority="marc">legal article</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='i'">
+					<genre authority="marc">picture</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='k'">
+					<genre authority="marc">graphic</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='l'">
+					<genre authority="marc">technical drawing</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='m'">
+					<genre authority="marc">motion picture</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='n'">
+					<genre authority="marc">chart</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='o'">
+					<genre authority="marc">flash card</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='p'">
+					<genre authority="marc">microscope slide</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='q' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='q']">
+					<genre authority="marc">model</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='r'">
+					<genre authority="marc">realia</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='s'">
+					<genre authority="marc">slide</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='t'">
+					<genre authority="marc">transparency</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='v'">
+					<genre authority="marc">videorecording</genre>
+				</xsl:when>
+				<xsl:when test="$controlField008-33='w'">
+					<genre authority="marc">toy</genre>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:for-each select="marc:datafield[@tag=655]">
+			<genre authority="marc">
+				<xsl:attribute name="authority">
+					<xsl:value-of select="marc:subfield[@code='2']"/>
+				</xsl:attribute>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">abvxyz</xsl:with-param>
+					<xsl:with-param name="delimeter">-</xsl:with-param>
+				</xsl:call-template>
+			</genre>
+		</xsl:for-each>
+		<originInfo>
+			<xsl:variable name="MARCpublicationCode" select="normalize-space(substring($controlField008,16,3))"></xsl:variable>
+			<xsl:if test="translate($MARCpublicationCode,'|','')">
+				<place>
+					<placeTerm>
+						<xsl:attribute name="type">code</xsl:attribute>
+						<xsl:attribute name="authority">marccountry</xsl:attribute>
+						<xsl:value-of select="$MARCpublicationCode"/>
+					</placeTerm>
+				</place>
+			</xsl:if>
+			<xsl:for-each select="marc:datafield[@tag=044]/marc:subfield[@code='c']">
+				<place>
+					<placeTerm>
+						<xsl:attribute name="type">code</xsl:attribute>
+						<xsl:attribute name="authority">iso3166</xsl:attribute>
+						<xsl:value-of select="."/>
+					</placeTerm>
+				</place>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=260]/marc:subfield[@code='a']">
+				<place>
+					<placeTerm>
+						<xsl:attribute name="type">text</xsl:attribute>
+						<xsl:call-template name="chopPunctuationFront">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="chopPunctuation">
+									<xsl:with-param name="chopString" select="."/>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</placeTerm>
+				</place>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=046]/marc:subfield[@code='m']">
+				<dateValid point="start">
+					<xsl:value-of select="."/>
+				</dateValid>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=046]/marc:subfield[@code='n']">
+				<dateValid point="end">
+					<xsl:value-of select="."/>
+				</dateValid>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=046]/marc:subfield[@code='j']">
+				<dateModified>
+					<xsl:value-of select="."/>
+				</dateModified>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=260]/marc:subfield[@code='b' or @code='c' or @code='g']">
+				<xsl:choose>
+					<xsl:when test="@code='b'">
+						<publisher>
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString" select="."/>
+								<xsl:with-param name="punctuation">
+									<xsl:text>:,;/ </xsl:text>
+								</xsl:with-param>
+							</xsl:call-template>
+						</publisher>
+					</xsl:when>
+					<xsl:when test="@code='c'">
+						<dateIssued>
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString" select="."/>
+							</xsl:call-template>
+						</dateIssued>
+					</xsl:when>
+					<xsl:when test="@code='g'">
+						<dateCreated>
+							<xsl:value-of select="."/>
+						</dateCreated>
+					</xsl:when>
+				</xsl:choose>
+			</xsl:for-each>
+			<xsl:variable name="dataField260c">
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString" select="marc:datafield[@tag=260]/marc:subfield[@code='c']"></xsl:with-param>
+				</xsl:call-template>
+			</xsl:variable>
+			<xsl:variable name="controlField008-7-10" select="normalize-space(substring($controlField008, 8, 4))"></xsl:variable>
+			<xsl:variable name="controlField008-11-14" select="normalize-space(substring($controlField008, 12, 4))"></xsl:variable>
+			<xsl:variable name="controlField008-6" select="normalize-space(substring($controlField008, 7, 1))"></xsl:variable>
+			<xsl:if test="$controlField008-6='e' or $controlField008-6='p' or $controlField008-6='r' or $controlField008-6='t' or $controlField008-6='s'">
+				<xsl:if test="$controlField008-7-10 and ($controlField008-7-10 != $dataField260c)">
+					<dateIssued encoding="marc">
+						<xsl:value-of select="$controlField008-7-10"/>
+					</dateIssued>
+				</xsl:if>
+			</xsl:if>
+			<xsl:if test="$controlField008-6='c' or $controlField008-6='d' or $controlField008-6='i' or $controlField008-6='k' or $controlField008-6='m' or $controlField008-6='q' or $controlField008-6='u'">
+				<xsl:if test="$controlField008-7-10">
+					<dateIssued encoding="marc" point="start">
+						<xsl:value-of select="$controlField008-7-10"/>
+					</dateIssued>
+				</xsl:if>
+			</xsl:if>
+			<xsl:if test="$controlField008-6='c' or $controlField008-6='d' or $controlField008-6='i' or $controlField008-6='k' or $controlField008-6='m' or $controlField008-6='q' or $controlField008-6='u'">
+				<xsl:if test="$controlField008-11-14">
+					<dateIssued encoding="marc" point="end">
+						<xsl:value-of select="$controlField008-11-14"/>
+					</dateIssued>
+				</xsl:if>
+			</xsl:if>
+			<xsl:if test="$controlField008-6='q'">
+				<xsl:if test="$controlField008-7-10">
+					<dateIssued encoding="marc" point="start" qualifier="questionable">
+						<xsl:value-of select="$controlField008-7-10"/>
+					</dateIssued>
+				</xsl:if>
+			</xsl:if>
+			<xsl:if test="$controlField008-6='q'">
+				<xsl:if test="$controlField008-11-14">
+					<dateIssued encoding="marc" point="end" qualifier="questionable">
+						<xsl:value-of select="$controlField008-11-14"/>
+					</dateIssued>
+				</xsl:if>
+			</xsl:if>
+			<xsl:if test="$controlField008-6='t'">
+				<xsl:if test="$controlField008-11-14">
+					<copyrightDate encoding="marc">
+						<xsl:value-of select="$controlField008-11-14"/>
+					</copyrightDate>
+				</xsl:if>
+			</xsl:if>
+			<xsl:for-each select="marc:datafield[@tag=033][@ind1=0 or @ind1=1]/marc:subfield[@code='a']">
+				<dateCaptured encoding="iso8601">
+					<xsl:value-of select="."/>
+				</dateCaptured>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=033][@ind1=2]/marc:subfield[@code='a'][1]">
+				<dateCaptured encoding="iso8601" point="start">
+					<xsl:value-of select="."/>
+				</dateCaptured>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=033][@ind1=2]/marc:subfield[@code='a'][2]">
+				<dateCaptured encoding="iso8601" point="end">
+					<xsl:value-of select="."/>
+				</dateCaptured>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=250]/marc:subfield[@code='a']">
+				<edition>
+					<xsl:value-of select="."/>
+				</edition>
+			</xsl:for-each>
+			<xsl:for-each select="marc:leader">
+				<issuance>
+					<xsl:choose>
+						<xsl:when test="$leader7='a' or $leader7='c' or $leader7='d' or $leader7='m'">monographic</xsl:when>
+						<xsl:when test="$leader7='b' or $leader7='i' or $leader7='s'">continuing</xsl:when>
+					</xsl:choose>
+				</issuance>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=310]|marc:datafield[@tag=321]">
+				<frequency>
+					<xsl:call-template name="subfieldSelect">
+						<xsl:with-param name="codes">ab</xsl:with-param>
+					</xsl:call-template>
+				</frequency>
+			</xsl:for-each>
+		</originInfo>
+		<xsl:variable name="controlField008-35-37" select="normalize-space(translate(substring($controlField008,36,3),'|#',''))"></xsl:variable>
+		<xsl:if test="$controlField008-35-37">
+			<language>
+				<languageTerm authority="iso639-2b" type="code">
+					<xsl:value-of select="substring($controlField008,36,3)"/>
+				</languageTerm>
+			</language>
+		</xsl:if>
+		<xsl:for-each select="marc:datafield[@tag=041]">
+			<xsl:for-each select="marc:subfield[@code='a' or @code='b' or @code='d' or @code='e' or @code='f' or @code='g' or @code='h']">
+				<xsl:variable name="langCodes" select="."/>
+				<xsl:choose>
+					<xsl:when test="../marc:subfield[@code='2']='rfc3066'">
+						<!-- not stacked but could be repeated -->
+						<xsl:call-template name="rfcLanguages">
+							<xsl:with-param name="nodeNum">
+								<xsl:value-of select="1"/>
+							</xsl:with-param>
+							<xsl:with-param name="usedLanguages">
+								<xsl:text></xsl:text>
+							</xsl:with-param>
+							<xsl:with-param name="controlField008-35-37">
+								<xsl:value-of select="$controlField008-35-37"></xsl:value-of>
+							</xsl:with-param>
+						</xsl:call-template>
+					</xsl:when>
+					<xsl:otherwise>
+						<!-- iso -->
+						<xsl:variable name="allLanguages">
+							<xsl:copy-of select="$langCodes"></xsl:copy-of>
+						</xsl:variable>
+						<xsl:variable name="currentLanguage">
+							<xsl:value-of select="substring($allLanguages,1,3)"></xsl:value-of>
+						</xsl:variable>
+						<xsl:call-template name="isoLanguage">
+							<xsl:with-param name="currentLanguage">
+								<xsl:value-of select="substring($allLanguages,1,3)"></xsl:value-of>
+							</xsl:with-param>
+							<xsl:with-param name="remainingLanguages">
+								<xsl:value-of select="substring($allLanguages,4,string-length($allLanguages)-3)"></xsl:value-of>
+							</xsl:with-param>
+							<xsl:with-param name="usedLanguages">
+								<xsl:if test="$controlField008-35-37">
+									<xsl:value-of select="$controlField008-35-37"></xsl:value-of>
+								</xsl:if>
+							</xsl:with-param>
+						</xsl:call-template>
+					</xsl:otherwise>
+				</xsl:choose>
+			</xsl:for-each>
+		</xsl:for-each>
+		<xsl:variable name="physicalDescription">
+			<!--3.2 change tmee 007/11 -->
+			<xsl:if test="$typeOf008='CF' and marc:controlfield[@tag=007][substring(.,12,1)='a']">
+				<digitalOrigin>reformatted digital</digitalOrigin>
+			</xsl:if>
+			<xsl:if test="$typeOf008='CF' and marc:controlfield[@tag=007][substring(.,12,1)='b']">
+				<digitalOrigin>digitized microfilm</digitalOrigin>
+			</xsl:if>
+			<xsl:if test="$typeOf008='CF' and marc:controlfield[@tag=007][substring(.,12,1)='d']">
+				<digitalOrigin>digitized other analog</digitalOrigin>
+			</xsl:if>
+			<xsl:variable name="controlField008-23" select="substring($controlField008,24,1)"></xsl:variable>
+			<xsl:variable name="controlField008-29" select="substring($controlField008,30,1)"></xsl:variable>
+			<xsl:variable name="check008-23">
+				<xsl:if test="$typeOf008='BK' or $typeOf008='MU' or $typeOf008='SE' or $typeOf008='MM'">
+					<xsl:value-of select="true()"></xsl:value-of>
+				</xsl:if>
+			</xsl:variable>
+			<xsl:variable name="check008-29">
+				<xsl:if test="$typeOf008='MP' or $typeOf008='VM'">
+					<xsl:value-of select="true()"></xsl:value-of>
+				</xsl:if>
+			</xsl:variable>
+			<xsl:choose>
+				<xsl:when test="($check008-23 and $controlField008-23='f') or ($check008-29 and $controlField008-29='f')">
+					<form authority="marcform">braille</form>
+				</xsl:when>
+				<xsl:when test="($controlField008-23=' ' and ($leader6='c' or $leader6='d')) or (($typeOf008='BK' or $typeOf008='SE') and ($controlField008-23=' ' or $controlField008='r'))">
+					<form authority="marcform">print</form>
+				</xsl:when>
+				<xsl:when test="$leader6 = 'm' or ($check008-23 and $controlField008-23='s') or ($check008-29 and $controlField008-29='s')">
+					<form authority="marcform">electronic</form>
+				</xsl:when>
+				<xsl:when test="($check008-23 and $controlField008-23='b') or ($check008-29 and $controlField008-29='b')">
+					<form authority="marcform">microfiche</form>
+				</xsl:when>
+				<xsl:when test="($check008-23 and $controlField008-23='a') or ($check008-29 and $controlField008-29='a')">
+					<form authority="marcform">microfilm</form>
+				</xsl:when>
+			</xsl:choose>
+			<!-- 1/04 fix -->
+			<xsl:if test="marc:datafield[@tag=130]/marc:subfield[@code='h']">
+				<form authority="gmd">
+					<xsl:call-template name="chopBrackets">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="marc:datafield[@tag=130]/marc:subfield[@code='h']"></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</form>
+			</xsl:if>
+			<xsl:if test="marc:datafield[@tag=240]/marc:subfield[@code='h']">
+				<form authority="gmd">
+					<xsl:call-template name="chopBrackets">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="marc:datafield[@tag=240]/marc:subfield[@code='h']"></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</form>
+			</xsl:if>
+			<xsl:if test="marc:datafield[@tag=242]/marc:subfield[@code='h']">
+				<form authority="gmd">
+					<xsl:call-template name="chopBrackets">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="marc:datafield[@tag=242]/marc:subfield[@code='h']"></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</form>
+			</xsl:if>
+			<xsl:if test="marc:datafield[@tag=245]/marc:subfield[@code='h']">
+				<form authority="gmd">
+					<xsl:call-template name="chopBrackets">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="marc:datafield[@tag=245]/marc:subfield[@code='h']"></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</form>
+			</xsl:if>
+			<xsl:if test="marc:datafield[@tag=246]/marc:subfield[@code='h']">
+				<form authority="gmd">
+					<xsl:call-template name="chopBrackets">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="marc:datafield[@tag=246]/marc:subfield[@code='h']"></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</form>
+			</xsl:if>
+			<xsl:if test="marc:datafield[@tag=730]/marc:subfield[@code='h']">
+				<form authority="gmd">
+					<xsl:call-template name="chopBrackets">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="marc:datafield[@tag=730]/marc:subfield[@code='h']"></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</form>
+			</xsl:if>
+			<xsl:for-each select="marc:datafield[@tag=256]/marc:subfield[@code='a']">
+				<form>
+					<xsl:value-of select="."></xsl:value-of>
+				</form>
+			</xsl:for-each>
+			<xsl:for-each select="marc:controlfield[@tag=007][substring(text(),1,1)='c']">
+				<xsl:choose>
+					<xsl:when test="substring(text(),14,1)='a'">
+						<reformattingQuality>access</reformattingQuality>
+					</xsl:when>
+					<xsl:when test="substring(text(),14,1)='p'">
+						<reformattingQuality>preservation</reformattingQuality>
+					</xsl:when>
+					<xsl:when test="substring(text(),14,1)='r'">
+						<reformattingQuality>replacement</reformattingQuality>
+					</xsl:when>
+				</xsl:choose>
+			</xsl:for-each>
+			<!--3.2 change tmee 007/01 -->
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='b']">
+				<form authority="smd">chip cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='c']">
+				<form authority="smd">computer optical disc cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='j']">
+				<form authority="smd">magnetic disc</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='m']">
+				<form authority="smd">magneto-optical disc</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='o']">
+				<form authority="smd">optical disc</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='r']">
+				<form authority="smd">remote</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='a']">
+				<form authority="smd">tape cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='f']">
+				<form authority="smd">tape cassette</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='c'][substring(text(),2,1)='h']">
+				<form authority="smd">tape reel</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='d'][substring(text(),2,1)='a']">
+				<form authority="smd">celestial globe</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='d'][substring(text(),2,1)='e']">
+				<form authority="smd">earth moon globe</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='d'][substring(text(),2,1)='b']">
+				<form authority="smd">planetary or lunar globe</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='d'][substring(text(),2,1)='c']">
+				<form authority="smd">terrestrial globe</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='o'][substring(text(),2,1)='o']">
+				<form authority="smd">kit</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='d']">
+				<form authority="smd">atlas</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='g']">
+				<form authority="smd">diagram</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='j']">
+				<form authority="smd">map</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='q']">
+				<form authority="smd">model</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='k']">
+				<form authority="smd">profile</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='r']">
+				<form authority="smd">remote-sensing image</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='s']">
+				<form authority="smd">section</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='y']">
+				<form authority="smd">view</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='a']">
+				<form authority="smd">aperture card</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='e']">
+				<form authority="smd">microfiche</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='f']">
+				<form authority="smd">microfiche cassette</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='b']">
+				<form authority="smd">microfilm cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='c']">
+				<form authority="smd">microfilm cassette</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='d']">
+				<form authority="smd">microfilm reel</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='h'][substring(text(),2,1)='g']">
+				<form authority="smd">microopaque</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='m'][substring(text(),2,1)='c']">
+				<form authority="smd">film cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='m'][substring(text(),2,1)='f']">
+				<form authority="smd">film cassette</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='m'][substring(text(),2,1)='r']">
+				<form authority="smd">film reel</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='n']">
+				<form authority="smd">chart</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='c']">
+				<form authority="smd">collage</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='d']">
+				<form authority="smd">drawing</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='o']">
+				<form authority="smd">flash card</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='e']">
+				<form authority="smd">painting</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='f']">
+				<form authority="smd">photomechanical print</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='g']">
+				<form authority="smd">photonegative</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='h']">
+				<form authority="smd">photoprint</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='i']">
+				<form authority="smd">picture</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='j']">
+				<form authority="smd">print</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='k'][substring(text(),2,1)='l']">
+				<form authority="smd">technical drawing</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='q'][substring(text(),2,1)='q']">
+				<form authority="smd">notated music</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='g'][substring(text(),2,1)='d']">
+				<form authority="smd">filmslip</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='g'][substring(text(),2,1)='c']">
+				<form authority="smd">filmstrip cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='g'][substring(text(),2,1)='o']">
+				<form authority="smd">filmstrip roll</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='g'][substring(text(),2,1)='f']">
+				<form authority="smd">other filmstrip type</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='g'][substring(text(),2,1)='s']">
+				<form authority="smd">slide</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='g'][substring(text(),2,1)='t']">
+				<form authority="smd">transparency</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='r'][substring(text(),2,1)='r']">
+				<form authority="smd">remote-sensing image</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='e']">
+				<form authority="smd">cylinder</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='q']">
+				<form authority="smd">roll</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='g']">
+				<form authority="smd">sound cartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='s']">
+				<form authority="smd">sound cassette</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='d']">
+				<form authority="smd">sound disc</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='t']">
+				<form authority="smd">sound-tape reel</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='i']">
+				<form authority="smd">sound-track film</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='s'][substring(text(),2,1)='w']">
+				<form authority="smd">wire recording</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='f'][substring(text(),2,1)='c']">
+				<form authority="smd">braille</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='f'][substring(text(),2,1)='b']">
+				<form authority="smd">combination</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='f'][substring(text(),2,1)='a']">
+				<form authority="smd">moon</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='f'][substring(text(),2,1)='d']">
+				<form authority="smd">tactile, with no writing system</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='t'][substring(text(),2,1)='c']">
+				<form authority="smd">braille</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='t'][substring(text(),2,1)='b']">
+				<form authority="smd">large print</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='t'][substring(text(),2,1)='a']">
+				<form authority="smd">regular print</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='t'][substring(text(),2,1)='d']">
+				<form authority="smd">text in looseleaf binder</form>
+			</xsl:if>
+			
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='v'][substring(text(),2,1)='c']">
+				<form authority="smd">videocartridge</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='v'][substring(text(),2,1)='f']">
+				<form authority="smd">videocassette</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='v'][substring(text(),2,1)='d']">
+				<form authority="smd">videodisc</form>
+			</xsl:if>
+			<xsl:if test="marc:controlfield[@tag=007][substring(text(),1,1)='v'][substring(text(),2,1)='r']">
+				<form authority="smd">videoreel</form>
+			</xsl:if>
+			
+			<xsl:for-each select="marc:datafield[@tag=856]/marc:subfield[@code='q'][string-length(.)>1]">
+				<internetMediaType>
+					<xsl:value-of select="."></xsl:value-of>
+				</internetMediaType>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=300]">
+				<extent>
+					<xsl:call-template name="subfieldSelect">
+						<xsl:with-param name="codes">abce</xsl:with-param>
+					</xsl:call-template>
+				</extent>
+			</xsl:for-each>
+		</xsl:variable>
+		<xsl:if test="string-length(normalize-space($physicalDescription))">
+			<physicalDescription>
+				<xsl:copy-of select="$physicalDescription"></xsl:copy-of>
+			</physicalDescription>
+		</xsl:if>
+		<xsl:for-each select="marc:datafield[@tag=520]">
+			<abstract>
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</abstract>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=505]">
+			<tableOfContents>
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">agrt</xsl:with-param>
+				</xsl:call-template>
+			</tableOfContents>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=521]">
+			<targetAudience>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</targetAudience>
+		</xsl:for-each>
+		<xsl:if test="$typeOf008='BK' or $typeOf008='CF' or $typeOf008='MU' or $typeOf008='VM'">
+			<xsl:variable name="controlField008-22" select="substring($controlField008,23,1)"></xsl:variable>
+			<xsl:choose>
+				<!-- 01/04 fix -->
+				<xsl:when test="$controlField008-22='d'">
+					<targetAudience authority="marctarget">adolescent</targetAudience>
+				</xsl:when>
+				<xsl:when test="$controlField008-22='e'">
+					<targetAudience authority="marctarget">adult</targetAudience>
+				</xsl:when>
+				<xsl:when test="$controlField008-22='g'">
+					<targetAudience authority="marctarget">general</targetAudience>
+				</xsl:when>
+				<xsl:when test="$controlField008-22='b' or $controlField008-22='c' or $controlField008-22='j'">
+					<targetAudience authority="marctarget">juvenile</targetAudience>
+				</xsl:when>
+				<xsl:when test="$controlField008-22='a'">
+					<targetAudience authority="marctarget">preschool</targetAudience>
+				</xsl:when>
+				<xsl:when test="$controlField008-22='f'">
+					<targetAudience authority="marctarget">specialized</targetAudience>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:if>
+		<xsl:for-each select="marc:datafield[@tag=245]/marc:subfield[@code='c']">
+			<note type="statement of responsibility">
+				<xsl:value-of select="."></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=500]">
+			<note>
+				<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+				<xsl:call-template name="uri"></xsl:call-template>
+			</note>
+		</xsl:for-each>
+		
+		<!--3.2 change tmee additional note fields-->
+		
+		<xsl:for-each select="marc:datafield[@tag=506]">
+			<note type="restrictions">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+		<xsl:for-each select="marc:datafield[@tag=510]">
+			<note  type="citation/reference">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+			
+		<xsl:for-each select="marc:datafield[@tag=511]">
+			<note type="performers">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=518]">
+			<note type="venue">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+		<xsl:for-each select="marc:datafield[@tag=530]">
+			<note  type="additional physical form">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+		<xsl:for-each select="marc:datafield[@tag=533]">
+			<note  type="reproduction">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+		<xsl:for-each select="marc:datafield[@tag=534]">
+			<note  type="original version">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+		<xsl:for-each select="marc:datafield[@tag=538]">
+			<note  type="system details">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+		<xsl:for-each select="marc:datafield[@tag=583]">
+			<note type="action">
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		
+
+		
+		
+		
+		<xsl:for-each select="marc:datafield[@tag=501 or @tag=502 or @tag=504 or @tag=507 or @tag=508 or  @tag=513 or @tag=514 or @tag=515 or @tag=516 or @tag=522 or @tag=524 or @tag=525 or @tag=526 or @tag=535 or @tag=536 or @tag=540 or @tag=541 or @tag=544 or @tag=545 or @tag=546 or @tag=547 or @tag=550 or @tag=552 or @tag=555 or @tag=556 or @tag=561 or @tag=562 or @tag=565 or @tag=567 or @tag=580 or @tag=581 or @tag=584 or @tag=585 or @tag=586]">
+			<note>
+				<xsl:call-template name="uri"></xsl:call-template>
+				<xsl:variable name="str">
+					<xsl:for-each select="marc:subfield[@code!='6' or @code!='8']">
+						<xsl:value-of select="."></xsl:value-of>
+						<xsl:text> </xsl:text>
+					</xsl:for-each>
+				</xsl:variable>
+				<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+			</note>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=034][marc:subfield[@code='d' or @code='e' or @code='f' or @code='g']]">
+			<subject>
+				<cartographics>
+					<coordinates>
+						<xsl:call-template name="subfieldSelect">
+							<xsl:with-param name="codes">defg</xsl:with-param>
+						</xsl:call-template>
+					</coordinates>
+				</cartographics>
+			</subject>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=043]">
+			<subject>
+				<xsl:for-each select="marc:subfield[@code='a' or @code='b' or @code='c']">
+					<geographicCode>
+						<xsl:attribute name="authority">
+							<xsl:if test="@code='a'">
+								<xsl:text>marcgac</xsl:text>
+							</xsl:if>
+							<xsl:if test="@code='b'">
+								<xsl:value-of select="following-sibling::marc:subfield[@code=2]"></xsl:value-of>
+							</xsl:if>
+							<xsl:if test="@code='c'">
+								<xsl:text>iso3166</xsl:text>
+							</xsl:if>
+						</xsl:attribute>
+						<xsl:value-of select="self::marc:subfield"></xsl:value-of>
+					</geographicCode>
+				</xsl:for-each>
+			</subject>
+		</xsl:for-each>
+		<!-- tmee 2006/11/27 -->
+		<xsl:for-each select="marc:datafield[@tag=255]">
+			<subject>
+				<xsl:for-each select="marc:subfield[@code='a' or @code='b' or @code='c']">
+				<cartographics>
+					<xsl:if test="@code='a'">
+						<scale>
+							<xsl:value-of select="."></xsl:value-of>
+						</scale>
+					</xsl:if>
+					<xsl:if test="@code='b'">
+						<projection>
+							<xsl:value-of select="."></xsl:value-of>
+						</projection>
+					</xsl:if>
+					<xsl:if test="@code='c'">
+						<coordinates>
+							<xsl:value-of select="."></xsl:value-of>
+						</coordinates>
+					</xsl:if>
+				</cartographics>
+				</xsl:for-each>
+			</subject>
+		</xsl:for-each>
+				
+		<xsl:apply-templates select="marc:datafield[653 >= @tag and @tag >= 600]"></xsl:apply-templates>
+		<xsl:apply-templates select="marc:datafield[@tag=656]"></xsl:apply-templates>
+		<xsl:for-each select="marc:datafield[@tag=752]">
+			<subject>
+				<hierarchicalGeographic>
+					<xsl:for-each select="marc:subfield[@code='a']">
+						<country>
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString" select="."></xsl:with-param>
+							</xsl:call-template>
+						</country>
+					</xsl:for-each>
+					<xsl:for-each select="marc:subfield[@code='b']">
+						<state>
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString" select="."></xsl:with-param>
+							</xsl:call-template>
+						</state>
+					</xsl:for-each>
+					<xsl:for-each select="marc:subfield[@code='c']">
+						<county>
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString" select="."></xsl:with-param>
+							</xsl:call-template>
+						</county>
+					</xsl:for-each>
+					<xsl:for-each select="marc:subfield[@code='d']">
+						<city>
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString" select="."></xsl:with-param>
+							</xsl:call-template>
+						</city>
+					</xsl:for-each>
+				</hierarchicalGeographic>
+			</subject>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=045][marc:subfield[@code='b']]">
+			<subject>
+				<xsl:choose>
+					<xsl:when test="@ind1=2">
+						<temporal encoding="iso8601" point="start">
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString">
+									<xsl:value-of select="marc:subfield[@code='b'][1]"></xsl:value-of>
+								</xsl:with-param>
+							</xsl:call-template>
+						</temporal>
+						<temporal encoding="iso8601" point="end">
+							<xsl:call-template name="chopPunctuation">
+								<xsl:with-param name="chopString">
+									<xsl:value-of select="marc:subfield[@code='b'][2]"></xsl:value-of>
+								</xsl:with-param>
+							</xsl:call-template>
+						</temporal>
+					</xsl:when>
+					<xsl:otherwise>
+						<xsl:for-each select="marc:subfield[@code='b']">
+							<temporal encoding="iso8601">
+								<xsl:call-template name="chopPunctuation">
+									<xsl:with-param name="chopString" select="."></xsl:with-param>
+								</xsl:call-template>
+							</temporal>
+						</xsl:for-each>
+					</xsl:otherwise>
+				</xsl:choose>
+			</subject>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=050]">
+			<xsl:for-each select="marc:subfield[@code='b']">
+				<classification authority="lcc">
+					<xsl:if test="../marc:subfield[@code='3']">
+						<xsl:attribute name="displayLabel">
+							<xsl:value-of select="../marc:subfield[@code='3']"></xsl:value-of>
+						</xsl:attribute>
+					</xsl:if>
+					<xsl:value-of select="preceding-sibling::marc:subfield[@code='a'][1]"></xsl:value-of>
+					<xsl:text> </xsl:text>
+					<xsl:value-of select="text()"></xsl:value-of>
+				</classification>
+			</xsl:for-each>
+			<xsl:for-each select="marc:subfield[@code='a'][not(following-sibling::marc:subfield[@code='b'])]">
+				<classification authority="lcc">
+					<xsl:if test="../marc:subfield[@code='3']">
+						<xsl:attribute name="displayLabel">
+							<xsl:value-of select="../marc:subfield[@code='3']"></xsl:value-of>
+						</xsl:attribute>
+					</xsl:if>
+					<xsl:value-of select="text()"></xsl:value-of>
+				</classification>
+			</xsl:for-each>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=082]">
+			<classification authority="ddc">
+				<xsl:if test="marc:subfield[@code='2']">
+					<xsl:attribute name="edition">
+						<xsl:value-of select="marc:subfield[@code='2']"></xsl:value-of>
+					</xsl:attribute>
+				</xsl:if>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=080]">
+			<classification authority="udc">
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">abx</xsl:with-param>
+				</xsl:call-template>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=060]">
+			<classification authority="nlm">
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=086][@ind1=0]">
+			<classification authority="sudocs">
+				<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=086][@ind1=1]">
+			<classification authority="candoc">
+				<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=086]">
+			<classification>
+				<xsl:attribute name="authority">
+					<xsl:value-of select="marc:subfield[@code='2']"></xsl:value-of>
+				</xsl:attribute>
+				<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=084]">
+			<classification>
+				<xsl:attribute name="authority">
+					<xsl:value-of select="marc:subfield[@code='2']"></xsl:value-of>
+				</xsl:attribute>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</classification>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=440]">
+			<relatedItem type="series">
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="subfieldSelect">
+									<xsl:with-param name="codes">av</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"></xsl:call-template>
+				</titleInfo>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=490][@ind1=0]">
+			<relatedItem type="series">
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="subfieldSelect">
+									<xsl:with-param name="codes">av</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"></xsl:call-template>
+				</titleInfo>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=510]">
+			<relatedItem type="isReferencedBy">
+				<note>
+					<xsl:call-template name="subfieldSelect">
+						<xsl:with-param name="codes">abcx3</xsl:with-param>
+					</xsl:call-template>
+				</note>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=534]">
+			<relatedItem type="original">
+				<xsl:call-template name="relatedTitle"></xsl:call-template>
+				<xsl:call-template name="relatedName"></xsl:call-template>
+				<xsl:if test="marc:subfield[@code='b' or @code='c']">
+					<originInfo>
+						<xsl:for-each select="marc:subfield[@code='c']">
+							<publisher>
+								<xsl:value-of select="."></xsl:value-of>
+							</publisher>
+						</xsl:for-each>
+						<xsl:for-each select="marc:subfield[@code='b']">
+							<edition>
+								<xsl:value-of select="."></xsl:value-of>
+							</edition>
+						</xsl:for-each>
+					</originInfo>
+				</xsl:if>
+				<xsl:call-template name="relatedIdentifierISSN"></xsl:call-template>
+				<xsl:for-each select="marc:subfield[@code='z']">
+					<identifier type="isbn">
+						<xsl:value-of select="."></xsl:value-of>
+					</identifier>
+				</xsl:for-each>
+				<xsl:call-template name="relatedNote"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=700][marc:subfield[@code='t']]">
+			<relatedItem>
+				<xsl:call-template name="constituentOrRelatedType"></xsl:call-template>
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">tfklmorsv</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="afterCodes">g</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"></xsl:call-template>
+				</titleInfo>
+				<name type="personal">
+					<namePart>
+						<xsl:call-template name="specialSubfieldSelect">
+							<xsl:with-param name="anyCodes">aq</xsl:with-param>
+							<xsl:with-param name="axis">t</xsl:with-param>
+							<xsl:with-param name="beforeCodes">g</xsl:with-param>
+						</xsl:call-template>
+					</namePart>
+					<xsl:call-template name="termsOfAddress"></xsl:call-template>
+					<xsl:call-template name="nameDate"></xsl:call-template>
+					<xsl:call-template name="role"></xsl:call-template>
+				</name>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+				<xsl:call-template name="relatedIdentifierISSN"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=710][marc:subfield[@code='t']]">
+			<relatedItem>
+				<xsl:call-template name="constituentOrRelatedType"></xsl:call-template>
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">tfklmorsv</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="afterCodes">dg</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="relatedPartNumName"></xsl:call-template>
+				</titleInfo>
+				<name type="corporate">
+					<xsl:for-each select="marc:subfield[@code='a']">
+						<namePart>
+							<xsl:value-of select="."></xsl:value-of>
+						</namePart>
+					</xsl:for-each>
+					<xsl:for-each select="marc:subfield[@code='b']">
+						<namePart>
+							<xsl:value-of select="."></xsl:value-of>
+						</namePart>
+					</xsl:for-each>
+					<xsl:variable name="tempNamePart">
+						<xsl:call-template name="specialSubfieldSelect">
+							<xsl:with-param name="anyCodes">c</xsl:with-param>
+							<xsl:with-param name="axis">t</xsl:with-param>
+							<xsl:with-param name="beforeCodes">dgn</xsl:with-param>
+						</xsl:call-template>
+					</xsl:variable>
+					<xsl:if test="normalize-space($tempNamePart)">
+						<namePart>
+							<xsl:value-of select="$tempNamePart"></xsl:value-of>
+						</namePart>
+					</xsl:if>
+					<xsl:call-template name="role"></xsl:call-template>
+				</name>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+				<xsl:call-template name="relatedIdentifierISSN"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=711][marc:subfield[@code='t']]">
+			<relatedItem>
+				<xsl:call-template name="constituentOrRelatedType"></xsl:call-template>
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">tfklsv</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="afterCodes">g</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="relatedPartNumName"></xsl:call-template>
+				</titleInfo>
+				<name type="conference">
+					<namePart>
+						<xsl:call-template name="specialSubfieldSelect">
+							<xsl:with-param name="anyCodes">aqdc</xsl:with-param>
+							<xsl:with-param name="axis">t</xsl:with-param>
+							<xsl:with-param name="beforeCodes">gn</xsl:with-param>
+						</xsl:call-template>
+					</namePart>
+				</name>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+				<xsl:call-template name="relatedIdentifierISSN"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=730][@ind2=2]">
+			<relatedItem>
+				<xsl:call-template name="constituentOrRelatedType"></xsl:call-template>
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="subfieldSelect">
+									<xsl:with-param name="codes">adfgklmorsv</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"></xsl:call-template>
+				</titleInfo>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+				<xsl:call-template name="relatedIdentifierISSN"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=740][@ind2=2]">
+			<relatedItem>
+				<xsl:call-template name="constituentOrRelatedType"></xsl:call-template>
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"></xsl:call-template>
+				</titleInfo>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=760]|marc:datafield[@tag=762]">
+			<relatedItem type="series">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=765]|marc:datafield[@tag=767]|marc:datafield[@tag=777]|marc:datafield[@tag=787]">
+			<relatedItem>
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=775]">
+			<relatedItem type="otherVersion">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=770]|marc:datafield[@tag=774]">
+			<relatedItem type="constituent">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=772]|marc:datafield[@tag=773]">
+			<relatedItem type="host">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=776]">
+			<relatedItem type="otherFormat">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=780]">
+			<relatedItem type="preceding">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=785]">
+			<relatedItem type="succeeding">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=786]">
+			<relatedItem type="original">
+				<xsl:call-template name="relatedItem76X-78X"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=800]">
+			<relatedItem type="series">
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">tfklmorsv</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="afterCodes">g</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"></xsl:call-template>
+				</titleInfo>
+				<name type="personal">
+					<namePart>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">aq</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="beforeCodes">g</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</namePart>
+					<xsl:call-template name="termsOfAddress"></xsl:call-template>
+					<xsl:call-template name="nameDate"></xsl:call-template>
+					<xsl:call-template name="role"></xsl:call-template>
+				</name>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=810]">
+			<relatedItem type="series">
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">tfklmorsv</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="afterCodes">dg</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="relatedPartNumName"></xsl:call-template>
+				</titleInfo>
+				<name type="corporate">
+					<xsl:for-each select="marc:subfield[@code='a']">
+						<namePart>
+							<xsl:value-of select="."></xsl:value-of>
+						</namePart>
+					</xsl:for-each>
+					<xsl:for-each select="marc:subfield[@code='b']">
+						<namePart>
+							<xsl:value-of select="."></xsl:value-of>
+						</namePart>
+					</xsl:for-each>
+					<namePart>
+						<xsl:call-template name="specialSubfieldSelect">
+							<xsl:with-param name="anyCodes">c</xsl:with-param>
+							<xsl:with-param name="axis">t</xsl:with-param>
+							<xsl:with-param name="beforeCodes">dgn</xsl:with-param>
+						</xsl:call-template>
+					</namePart>
+					<xsl:call-template name="role"></xsl:call-template>
+				</name>
+				<xsl:call-template name="relatedForm"></xsl:call-template>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=811]">
+			<relatedItem type="series">
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="specialSubfieldSelect">
+									<xsl:with-param name="anyCodes">tfklsv</xsl:with-param>
+									<xsl:with-param name="axis">t</xsl:with-param>
+									<xsl:with-param name="afterCodes">g</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="relatedPartNumName"/>
+				</titleInfo>
+				<name type="conference">
+					<namePart>
+						<xsl:call-template name="specialSubfieldSelect">
+							<xsl:with-param name="anyCodes">aqdc</xsl:with-param>
+							<xsl:with-param name="axis">t</xsl:with-param>
+							<xsl:with-param name="beforeCodes">gn</xsl:with-param>
+						</xsl:call-template>
+					</namePart>
+					<xsl:call-template name="role"/>
+				</name>
+				<xsl:call-template name="relatedForm"/>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='830']">
+			<relatedItem type="series">
+				<titleInfo>
+					<title>
+						<xsl:call-template name="chopPunctuation">
+							<xsl:with-param name="chopString">
+								<xsl:call-template name="subfieldSelect">
+									<xsl:with-param name="codes">adfgklmorsv</xsl:with-param>
+								</xsl:call-template>
+							</xsl:with-param>
+						</xsl:call-template>
+					</title>
+					<xsl:call-template name="part"/>
+				</titleInfo>
+				<xsl:call-template name="relatedForm"/>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='856'][@ind2='2']/marc:subfield[@code='q']">
+			<relatedItem>
+				<internetMediaType>
+					<xsl:value-of select="."/>
+				</internetMediaType>
+			</relatedItem>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='020']">
+			<xsl:call-template name="isInvalid">
+				<xsl:with-param name="type">isbn</xsl:with-param>
+			</xsl:call-template>
+			<xsl:if test="marc:subfield[@code='a']">
+				<identifier type="isbn">
+					<xsl:value-of select="marc:subfield[@code='a']"/>
+				</identifier>
+			</xsl:if>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='024'][@ind1='0']">
+			<xsl:call-template name="isInvalid">
+				<xsl:with-param name="type">isrc</xsl:with-param>
+			</xsl:call-template>
+			<xsl:if test="marc:subfield[@code='a']">
+				<identifier type="isrc">
+					<xsl:value-of select="marc:subfield[@code='a']"/>
+				</identifier>
+			</xsl:if>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='024'][@ind1='2']">
+			<xsl:call-template name="isInvalid">
+				<xsl:with-param name="type">ismn</xsl:with-param>
+			</xsl:call-template>
+			<xsl:if test="marc:subfield[@code='a']">
+				<identifier type="ismn">
+					<xsl:value-of select="marc:subfield[@code='a']"/>
+				</identifier>
+			</xsl:if>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='024'][@ind1='4']">
+			<xsl:call-template name="isInvalid">
+				<xsl:with-param name="type">sici</xsl:with-param>
+			</xsl:call-template>
+			<identifier type="sici">
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</identifier>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='022']">
+			<xsl:call-template name="isInvalid">
+				<xsl:with-param name="type">issn</xsl:with-param>
+			</xsl:call-template>
+			<identifier type="issn">
+				<xsl:value-of select="marc:subfield[@code='a']"/>
+			</identifier>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='010']">
+			<xsl:call-template name="isInvalid">
+				<xsl:with-param name="type">lccn</xsl:with-param>
+			</xsl:call-template>
+			<identifier type="lccn">
+				<xsl:value-of select="normalize-space(marc:subfield[@code='a'])"/>
+			</identifier>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='028']">
+			<identifier>
+				<xsl:attribute name="type">
+					<xsl:choose>
+						<xsl:when test="@ind1='0'">issue number</xsl:when>
+						<xsl:when test="@ind1='1'">matrix number</xsl:when>
+						<xsl:when test="@ind1='2'">music plate</xsl:when>
+						<xsl:when test="@ind1='3'">music publisher</xsl:when>
+						<xsl:when test="@ind1='4'">videorecording identifier</xsl:when>
+					</xsl:choose>
+				</xsl:attribute>
+				<!--<xsl:call-template name="isInvalid"/>--> <!-- no $z in 028 -->
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">
+						<xsl:choose>
+							<xsl:when test="@ind1='0'">ba</xsl:when>
+							<xsl:otherwise>ab</xsl:otherwise>
+						</xsl:choose>
+					</xsl:with-param>
+				</xsl:call-template>
+			</identifier>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='037']">
+			<identifier type="stock number">
+				<!--<xsl:call-template name="isInvalid"/>--> <!-- no $z in 037 -->
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">ab</xsl:with-param>
+				</xsl:call-template>
+			</identifier>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag='856'][marc:subfield[@code='u']]">
+			<identifier>
+				<xsl:attribute name="type">
+					<xsl:choose>
+						<xsl:when test="starts-with(marc:subfield[@code='u'],'urn:doi') or starts-with(marc:subfield[@code='u'],'doi')">doi</xsl:when>
+						<xsl:when test="starts-with(marc:subfield[@code='u'],'urn:hdl') or starts-with(marc:subfield[@code='u'],'hdl') or starts-with(marc:subfield[@code='u'],'http://hdl.loc.gov')">hdl</xsl:when>
+						<xsl:otherwise>uri</xsl:otherwise>
+					</xsl:choose>
+				</xsl:attribute>
+				<xsl:choose>
+					<xsl:when test="starts-with(marc:subfield[@code='u'],'urn:hdl') or starts-with(marc:subfield[@code='u'],'hdl') or starts-with(marc:subfield[@code='u'],'http://hdl.loc.gov') ">
+						<xsl:value-of select="concat('hdl:',substring-after(marc:subfield[@code='u'],'http://hdl.loc.gov/'))"></xsl:value-of>
+					</xsl:when>
+					<xsl:otherwise>
+						<xsl:value-of select="marc:subfield[@code='u']"></xsl:value-of>
+					</xsl:otherwise>
+				</xsl:choose>
+			</identifier>
+			<xsl:if test="starts-with(marc:subfield[@code='u'],'urn:hdl') or starts-with(marc:subfield[@code='u'],'hdl')">
+				<identifier type="hdl">
+					<xsl:if test="marc:subfield[@code='y' or @code='3' or @code='z']">
+						<xsl:attribute name="displayLabel">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">y3z</xsl:with-param>
+							</xsl:call-template>
+						</xsl:attribute>
+					</xsl:if>
+					<xsl:value-of select="concat('hdl:',substring-after(marc:subfield[@code='u'],'http://hdl.loc.gov/'))"></xsl:value-of>
+				</identifier>
+			</xsl:if>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=024][@ind1=1]">
+			<identifier type="upc">
+				<xsl:call-template name="isInvalid"/>
+				<xsl:value-of select="marc:subfield[@code='a']"/>
+			</identifier>
+		</xsl:for-each>
+		<!-- 1/04 fix added $y -->
+		<xsl:for-each select="marc:datafield[@tag=856][marc:subfield[@code='u']]">
+			<location>
+				<url>
+					<xsl:if test="marc:subfield[@code='y' or @code='3']">
+						<xsl:attribute name="displayLabel">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">y3</xsl:with-param>
+							</xsl:call-template>
+						</xsl:attribute>
+					</xsl:if>
+					<xsl:if test="marc:subfield[@code='z' ]">
+						<xsl:attribute name="note">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">z</xsl:with-param>
+							</xsl:call-template>
+						</xsl:attribute>
+					</xsl:if>
+					<xsl:value-of select="marc:subfield[@code='u']"></xsl:value-of>
+
+				</url>
+			</location>
+		</xsl:for-each>
+			
+			<!-- 3.2 change tmee 856z  -->
+
+		
+		<xsl:for-each select="marc:datafield[@tag=852]">
+			<location>
+				<physicalLocation>
+					<xsl:call-template name="displayLabel"></xsl:call-template>
+					<xsl:call-template name="subfieldSelect">
+						<xsl:with-param name="codes">abje</xsl:with-param>
+					</xsl:call-template>
+				</physicalLocation>
+			</location>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=506]">
+			<accessCondition type="restrictionOnAccess">
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">abcd35</xsl:with-param>
+				</xsl:call-template>
+			</accessCondition>
+		</xsl:for-each>
+		<xsl:for-each select="marc:datafield[@tag=540]">
+			<accessCondition type="useAndReproduction">
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">abcde35</xsl:with-param>
+				</xsl:call-template>
+			</accessCondition>
+		</xsl:for-each>
+		<recordInfo>
+			<xsl:for-each select="marc:datafield[@tag=040]">
+				<recordContentSource authority="marcorg">
+					<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+				</recordContentSource>
+			</xsl:for-each>
+			<xsl:for-each select="marc:controlfield[@tag=008]">
+				<recordCreationDate encoding="marc">
+					<xsl:value-of select="substring(.,1,6)"></xsl:value-of>
+				</recordCreationDate>
+			</xsl:for-each>
+			<xsl:for-each select="marc:controlfield[@tag=005]">
+				<recordChangeDate encoding="iso8601">
+					<xsl:value-of select="."></xsl:value-of>
+				</recordChangeDate>
+			</xsl:for-each>
+			<xsl:for-each select="marc:controlfield[@tag=001]">
+				<recordIdentifier>
+					<xsl:if test="../marc:controlfield[@tag=003]">
+						<xsl:attribute name="source">
+							<xsl:value-of select="../marc:controlfield[@tag=003]"></xsl:value-of>
+						</xsl:attribute>
+					</xsl:if>
+					<xsl:value-of select="."></xsl:value-of>
+				</recordIdentifier>
+			</xsl:for-each>
+			<xsl:for-each select="marc:datafield[@tag=040]/marc:subfield[@code='b']">
+				<languageOfCataloging>
+					<languageTerm authority="iso639-2b" type="code">
+						<xsl:value-of select="."></xsl:value-of>
+					</languageTerm>
+				</languageOfCataloging>
+			</xsl:for-each>
+		</recordInfo>
+	</xsl:template>
+	<xsl:template name="displayForm">
+		<xsl:for-each select="marc:subfield[@code='c']">
+			<displayForm>
+				<xsl:value-of select="."></xsl:value-of>
+			</displayForm>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="affiliation">
+		<xsl:for-each select="marc:subfield[@code='u']">
+			<affiliation>
+				<xsl:value-of select="."></xsl:value-of>
+			</affiliation>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="uri">
+		<xsl:for-each select="marc:subfield[@code='u']">
+			<xsl:attribute name="xlink:href">
+				<xsl:value-of select="."></xsl:value-of>
+			</xsl:attribute>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="role">
+		<xsl:for-each select="marc:subfield[@code='e']">
+			<role>
+				<roleTerm type="text">
+					<xsl:value-of select="."></xsl:value-of>
+				</roleTerm>
+			</role>
+		</xsl:for-each>
+		<xsl:for-each select="marc:subfield[@code='4']">
+			<role>
+				<roleTerm authority="marcrelator" type="code">
+					<xsl:value-of select="."></xsl:value-of>
+				</roleTerm>
+			</role>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="part">
+		<xsl:variable name="partNumber">
+			<xsl:call-template name="specialSubfieldSelect">
+				<xsl:with-param name="axis">n</xsl:with-param>
+				<xsl:with-param name="anyCodes">n</xsl:with-param>
+				<xsl:with-param name="afterCodes">fgkdlmor</xsl:with-param>
+			</xsl:call-template>
+		</xsl:variable>
+		<xsl:variable name="partName">
+			<xsl:call-template name="specialSubfieldSelect">
+				<xsl:with-param name="axis">p</xsl:with-param>
+				<xsl:with-param name="anyCodes">p</xsl:with-param>
+				<xsl:with-param name="afterCodes">fgkdlmor</xsl:with-param>
+			</xsl:call-template>
+		</xsl:variable>
+		<xsl:if test="string-length(normalize-space($partNumber))">
+			<partNumber>
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString" select="$partNumber"></xsl:with-param>
+				</xsl:call-template>
+			</partNumber>
+		</xsl:if>
+		<xsl:if test="string-length(normalize-space($partName))">
+			<partName>
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString" select="$partName"></xsl:with-param>
+				</xsl:call-template>
+			</partName>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="relatedPart">
+		<xsl:if test="@tag=773">
+			<xsl:for-each select="marc:subfield[@code='g']">
+				<part>
+					<text>
+						<xsl:value-of select="."></xsl:value-of>
+					</text>
+				</part>
+			</xsl:for-each>
+			<xsl:for-each select="marc:subfield[@code='q']">
+				<part>
+					<xsl:call-template name="parsePart"></xsl:call-template>
+				</part>
+			</xsl:for-each>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="relatedPartNumName">
+		<xsl:variable name="partNumber">
+			<xsl:call-template name="specialSubfieldSelect">
+				<xsl:with-param name="axis">g</xsl:with-param>
+				<xsl:with-param name="anyCodes">g</xsl:with-param>
+				<xsl:with-param name="afterCodes">pst</xsl:with-param>
+			</xsl:call-template>
+		</xsl:variable>
+		<xsl:variable name="partName">
+			<xsl:call-template name="specialSubfieldSelect">
+				<xsl:with-param name="axis">p</xsl:with-param>
+				<xsl:with-param name="anyCodes">p</xsl:with-param>
+				<xsl:with-param name="afterCodes">fgkdlmor</xsl:with-param>
+			</xsl:call-template>
+		</xsl:variable>
+		<xsl:if test="string-length(normalize-space($partNumber))">
+			<partNumber>
+				<xsl:value-of select="$partNumber"></xsl:value-of>
+			</partNumber>
+		</xsl:if>
+		<xsl:if test="string-length(normalize-space($partName))">
+			<partName>
+				<xsl:value-of select="$partName"></xsl:value-of>
+			</partName>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="relatedName">
+		<xsl:for-each select="marc:subfield[@code='a']">
+			<name>
+				<namePart>
+					<xsl:value-of select="."></xsl:value-of>
+				</namePart>
+			</name>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedForm">
+		<xsl:for-each select="marc:subfield[@code='h']">
+			<physicalDescription>
+				<form>
+					<xsl:value-of select="."></xsl:value-of>
+				</form>
+			</physicalDescription>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedExtent">
+		<xsl:for-each select="marc:subfield[@code='h']">
+			<physicalDescription>
+				<extent>
+					<xsl:value-of select="."></xsl:value-of>
+				</extent>
+			</physicalDescription>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedNote">
+		<xsl:for-each select="marc:subfield[@code='n']">
+			<note>
+				<xsl:value-of select="."></xsl:value-of>
+			</note>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedSubject">
+		<xsl:for-each select="marc:subfield[@code='j']">
+			<subject>
+				<temporal encoding="iso8601">
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString" select="."></xsl:with-param>
+					</xsl:call-template>
+				</temporal>
+			</subject>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedIdentifierISSN">
+		<xsl:for-each select="marc:subfield[@code='x']">
+			<identifier type="issn">
+				<xsl:value-of select="."></xsl:value-of>
+			</identifier>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedIdentifierLocal">
+		<xsl:for-each select="marc:subfield[@code='w']">
+			<identifier type="local">
+				<xsl:value-of select="."></xsl:value-of>
+			</identifier>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedIdentifier">
+		<xsl:for-each select="marc:subfield[@code='o']">
+			<identifier>
+				<xsl:value-of select="."></xsl:value-of>
+			</identifier>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedItem76X-78X">
+		<xsl:call-template name="displayLabel"></xsl:call-template>
+		<xsl:call-template name="relatedTitle76X-78X"></xsl:call-template>
+		<xsl:call-template name="relatedName"></xsl:call-template>
+		<xsl:call-template name="relatedOriginInfo"></xsl:call-template>
+		<xsl:call-template name="relatedLanguage"></xsl:call-template>
+		<xsl:call-template name="relatedExtent"></xsl:call-template>
+		<xsl:call-template name="relatedNote"></xsl:call-template>
+		<xsl:call-template name="relatedSubject"></xsl:call-template>
+		<xsl:call-template name="relatedIdentifier"></xsl:call-template>
+		<xsl:call-template name="relatedIdentifierISSN"></xsl:call-template>
+		<xsl:call-template name="relatedIdentifierLocal"></xsl:call-template>
+		<xsl:call-template name="relatedPart"></xsl:call-template>
+	</xsl:template>
+	<xsl:template name="subjectGeographicZ">
+		<geographic>
+			<xsl:call-template name="chopPunctuation">
+				<xsl:with-param name="chopString" select="."></xsl:with-param>
+			</xsl:call-template>
+		</geographic>
+	</xsl:template>
+	<xsl:template name="subjectTemporalY">
+		<temporal>
+			<xsl:call-template name="chopPunctuation">
+				<xsl:with-param name="chopString" select="."></xsl:with-param>
+			</xsl:call-template>
+		</temporal>
+	</xsl:template>
+	<xsl:template name="subjectTopic">
+		<topic>
+			<xsl:call-template name="chopPunctuation">
+				<xsl:with-param name="chopString" select="."></xsl:with-param>
+			</xsl:call-template>
+		</topic>
+	</xsl:template>	
+	<!-- 3.2 change tmee 6xx $v genre -->
+	<xsl:template name="subjectGenre">
+		<genre>
+			<xsl:call-template name="chopPunctuation">
+				<xsl:with-param name="chopString" select="."></xsl:with-param>
+			</xsl:call-template>
+		</genre>
+	</xsl:template>
+	
+	<xsl:template name="nameABCDN">
+		<xsl:for-each select="marc:subfield[@code='a']">
+			<namePart>
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString" select="."></xsl:with-param>
+				</xsl:call-template>
+			</namePart>
+		</xsl:for-each>
+		<xsl:for-each select="marc:subfield[@code='b']">
+			<namePart>
+				<xsl:value-of select="."></xsl:value-of>
+			</namePart>
+		</xsl:for-each>
+		<xsl:if test="marc:subfield[@code='c'] or marc:subfield[@code='d'] or marc:subfield[@code='n']">
+			<namePart>
+				<xsl:call-template name="subfieldSelect">
+					<xsl:with-param name="codes">cdn</xsl:with-param>
+				</xsl:call-template>
+			</namePart>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="nameABCDQ">
+		<namePart>
+			<xsl:call-template name="chopPunctuation">
+				<xsl:with-param name="chopString">
+					<xsl:call-template name="subfieldSelect">
+						<xsl:with-param name="codes">aq</xsl:with-param>
+					</xsl:call-template>
+				</xsl:with-param>
+				<xsl:with-param name="punctuation">
+					<xsl:text>:,;/ </xsl:text>
+				</xsl:with-param>
+			</xsl:call-template>
+		</namePart>
+		<xsl:call-template name="termsOfAddress"></xsl:call-template>
+		<xsl:call-template name="nameDate"></xsl:call-template>
+	</xsl:template>
+	<xsl:template name="nameACDEQ">
+		<namePart>
+			<xsl:call-template name="subfieldSelect">
+				<xsl:with-param name="codes">acdeq</xsl:with-param>
+			</xsl:call-template>
+		</namePart>
+	</xsl:template>
+	<xsl:template name="constituentOrRelatedType">
+		<xsl:if test="@ind2=2">
+			<xsl:attribute name="type">constituent</xsl:attribute>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="relatedTitle">
+		<xsl:for-each select="marc:subfield[@code='t']">
+			<titleInfo>
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="."></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+			</titleInfo>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedTitle76X-78X">
+		<xsl:for-each select="marc:subfield[@code='t']">
+			<titleInfo>
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="."></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:if test="marc:datafield[@tag!=773]and marc:subfield[@code='g']">
+					<xsl:call-template name="relatedPartNumName"></xsl:call-template>
+				</xsl:if>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:subfield[@code='p']">
+			<titleInfo type="abbreviated">
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="."></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:if test="marc:datafield[@tag!=773]and marc:subfield[@code='g']">
+					<xsl:call-template name="relatedPartNumName"></xsl:call-template>
+				</xsl:if>
+			</titleInfo>
+		</xsl:for-each>
+		<xsl:for-each select="marc:subfield[@code='s']">
+			<titleInfo type="uniform">
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:value-of select="."></xsl:value-of>
+						</xsl:with-param>
+					</xsl:call-template>
+				</title>
+				<xsl:if test="marc:datafield[@tag!=773]and marc:subfield[@code='g']">
+					<xsl:call-template name="relatedPartNumName"></xsl:call-template>
+				</xsl:if>
+			</titleInfo>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="relatedOriginInfo">
+		<xsl:if test="marc:subfield[@code='b' or @code='d'] or marc:subfield[@code='f']">
+			<originInfo>
+				<xsl:if test="@tag=775">
+					<xsl:for-each select="marc:subfield[@code='f']">
+						<place>
+							<placeTerm>
+								<xsl:attribute name="type">code</xsl:attribute>
+								<xsl:attribute name="authority">marcgac</xsl:attribute>
+								<xsl:value-of select="."></xsl:value-of>
+							</placeTerm>
+						</place>
+					</xsl:for-each>
+				</xsl:if>
+				<xsl:for-each select="marc:subfield[@code='d']">
+					<publisher>
+						<xsl:value-of select="."></xsl:value-of>
+					</publisher>
+				</xsl:for-each>
+				<xsl:for-each select="marc:subfield[@code='b']">
+					<edition>
+						<xsl:value-of select="."></xsl:value-of>
+					</edition>
+				</xsl:for-each>
+			</originInfo>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="relatedLanguage">
+		<xsl:for-each select="marc:subfield[@code='e']">
+			<xsl:call-template name="getLanguage">
+				<xsl:with-param name="langString">
+					<xsl:value-of select="."></xsl:value-of>
+				</xsl:with-param>
+			</xsl:call-template>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="nameDate">
+		<xsl:for-each select="marc:subfield[@code='d']">
+			<namePart type="date">
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString" select="."></xsl:with-param>
+				</xsl:call-template>
+			</namePart>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="subjectAuthority">
+		<xsl:if test="@ind2!=4">
+			<xsl:if test="@ind2!=' '">
+				<xsl:if test="@ind2!=8">
+					<xsl:if test="@ind2!=9">
+						<xsl:attribute name="authority">
+							<xsl:choose>
+								<xsl:when test="@ind2=0">lcsh</xsl:when>
+								<xsl:when test="@ind2=1">lcshac</xsl:when>
+								<xsl:when test="@ind2=2">mesh</xsl:when>
+								<!-- 1/04 fix -->
+								<xsl:when test="@ind2=3">nal</xsl:when>
+								<xsl:when test="@ind2=5">csh</xsl:when>
+								<xsl:when test="@ind2=6">rvm</xsl:when>
+								<xsl:when test="@ind2=7">
+									<xsl:value-of select="marc:subfield[@code='2']"></xsl:value-of>
+								</xsl:when>
+							</xsl:choose>
+						</xsl:attribute>
+					</xsl:if>
+				</xsl:if>
+			</xsl:if>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="subjectAnyOrder">
+		<xsl:for-each select="marc:subfield[@code='v' or @code='x' or @code='y' or @code='z']">
+			<xsl:choose>
+				<xsl:when test="@code='v'">
+					<xsl:call-template name="subjectGenre"></xsl:call-template>
+				</xsl:when>
+				<xsl:when test="@code='x'">
+					<xsl:call-template name="subjectTopic"></xsl:call-template>
+				</xsl:when>
+				<xsl:when test="@code='y'">
+					<xsl:call-template name="subjectTemporalY"></xsl:call-template>
+				</xsl:when>
+				<xsl:when test="@code='z'">
+					<xsl:call-template name="subjectGeographicZ"></xsl:call-template>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:for-each>
+	</xsl:template>
+	<xsl:template name="specialSubfieldSelect">
+		<xsl:param name="anyCodes"></xsl:param>
+		<xsl:param name="axis"></xsl:param>
+		<xsl:param name="beforeCodes"></xsl:param>
+		<xsl:param name="afterCodes"></xsl:param>
+		<xsl:variable name="str">
+			<xsl:for-each select="marc:subfield">
+				<xsl:if test="contains($anyCodes, @code)      or (contains($beforeCodes, at code) and following-sibling::marc:subfield[@code=$axis])      or (contains($afterCodes, at code) and preceding-sibling::marc:subfield[@code=$axis])">
+					<xsl:value-of select="text()"></xsl:value-of>
+					<xsl:text> </xsl:text>
+				</xsl:if>
+			</xsl:for-each>
+		</xsl:variable>
+		<xsl:value-of select="substring($str,1,string-length($str)-1)"></xsl:value-of>
+	</xsl:template>
+	
+	<!-- 3.2 change tmee 6xx $v genre -->
+	<xsl:template match="marc:datafield[@tag=600]">
+		<subject>
+			<xsl:call-template name="subjectAuthority"></xsl:call-template>
+			<name type="personal">
+				<xsl:call-template name="termsOfAddress"></xsl:call-template>
+				<namePart>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">aq</xsl:with-param>
+							</xsl:call-template>
+						</xsl:with-param>
+					</xsl:call-template>
+				</namePart>
+				<xsl:call-template name="nameDate"></xsl:call-template>
+				<xsl:call-template name="affiliation"></xsl:call-template>
+				<xsl:call-template name="role"></xsl:call-template>
+			</name>
+			<xsl:call-template name="subjectAnyOrder"></xsl:call-template>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=610]">
+		<subject>
+			<xsl:call-template name="subjectAuthority"></xsl:call-template>
+			<name type="corporate">
+				<xsl:for-each select="marc:subfield[@code='a']">
+					<namePart>
+						<xsl:value-of select="."></xsl:value-of>
+					</namePart>
+				</xsl:for-each>
+				<xsl:for-each select="marc:subfield[@code='b']">
+					<namePart>
+						<xsl:value-of select="."></xsl:value-of>
+					</namePart>
+				</xsl:for-each>
+				<xsl:if test="marc:subfield[@code='c' or @code='d' or @code='n' or @code='p']">
+					<namePart>
+						<xsl:call-template name="subfieldSelect">
+							<xsl:with-param name="codes">cdnp</xsl:with-param>
+						</xsl:call-template>
+					</namePart>
+				</xsl:if>
+				<xsl:call-template name="role"></xsl:call-template>
+			</name>
+			<xsl:call-template name="subjectAnyOrder"></xsl:call-template>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=611]">
+		<subject>
+			<xsl:call-template name="subjectAuthority"></xsl:call-template>
+			<name type="conference">
+				<namePart>
+					<xsl:call-template name="subfieldSelect">
+						<xsl:with-param name="codes">abcdeqnp</xsl:with-param>
+					</xsl:call-template>
+				</namePart>
+				<xsl:for-each select="marc:subfield[@code='4']">
+					<role>
+						<roleTerm authority="marcrelator" type="code">
+							<xsl:value-of select="."></xsl:value-of>
+						</roleTerm>
+					</role>
+				</xsl:for-each>
+			</name>
+			<xsl:call-template name="subjectAnyOrder"></xsl:call-template>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=630]">
+		<subject>
+			<xsl:call-template name="subjectAuthority"></xsl:call-template>
+			<titleInfo>
+				<title>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString">
+							<xsl:call-template name="subfieldSelect">
+								<xsl:with-param name="codes">adfhklor</xsl:with-param>
+							</xsl:call-template>
+						</xsl:with-param>
+					</xsl:call-template>
+					<xsl:call-template name="part"></xsl:call-template>
+				</title>
+			</titleInfo>
+			<xsl:call-template name="subjectAnyOrder"></xsl:call-template>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=650]">
+		<subject>
+			<xsl:call-template name="subjectAuthority"></xsl:call-template>
+			<topic>
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString">
+						<xsl:call-template name="subfieldSelect">
+							<xsl:with-param name="codes">abcd</xsl:with-param>
+						</xsl:call-template>
+					</xsl:with-param>
+				</xsl:call-template>
+			</topic>
+			<xsl:call-template name="subjectAnyOrder"></xsl:call-template>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=651]">
+		<subject>
+			<xsl:call-template name="subjectAuthority"></xsl:call-template>
+			<xsl:for-each select="marc:subfield[@code='a']">
+				<geographic>
+					<xsl:call-template name="chopPunctuation">
+						<xsl:with-param name="chopString" select="."></xsl:with-param>
+					</xsl:call-template>
+				</geographic>
+			</xsl:for-each>
+			<xsl:call-template name="subjectAnyOrder"></xsl:call-template>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=653]">
+		<subject>
+			<xsl:for-each select="marc:subfield[@code='a']">
+				<topic>
+					<xsl:value-of select="."></xsl:value-of>
+				</topic>
+			</xsl:for-each>
+		</subject>
+	</xsl:template>
+	<xsl:template match="marc:datafield[@tag=656]">
+		<subject>
+			<xsl:if test="marc:subfield[@code=2]">
+				<xsl:attribute name="authority">
+					<xsl:value-of select="marc:subfield[@code=2]"></xsl:value-of>
+				</xsl:attribute>
+			</xsl:if>
+			<occupation>
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString">
+						<xsl:value-of select="marc:subfield[@code='a']"></xsl:value-of>
+					</xsl:with-param>
+				</xsl:call-template>
+			</occupation>
+		</subject>
+	</xsl:template>
+	<xsl:template name="termsOfAddress">
+		<xsl:if test="marc:subfield[@code='b' or @code='c']">
+			<namePart type="termsOfAddress">
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString">
+						<xsl:call-template name="subfieldSelect">
+							<xsl:with-param name="codes">bc</xsl:with-param>
+						</xsl:call-template>
+					</xsl:with-param>
+				</xsl:call-template>
+			</namePart>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="displayLabel">
+		<xsl:if test="marc:subfield[@code='i']">
+			<xsl:attribute name="displayLabel">
+				<xsl:value-of select="marc:subfield[@code='i']"></xsl:value-of>
+			</xsl:attribute>
+		</xsl:if>
+		<xsl:if test="marc:subfield[@code='3']">
+			<xsl:attribute name="displayLabel">
+				<xsl:value-of select="marc:subfield[@code='3']"></xsl:value-of>
+			</xsl:attribute>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="isInvalid">
+		<xsl:param name="type"/>
+		<xsl:if test="marc:subfield[@code='z'] or marc:subfield[@code='y']">
+			<identifier>
+				<xsl:attribute name="type">
+					<xsl:value-of select="$type"/>
+				</xsl:attribute>
+				<xsl:attribute name="invalid">
+					<xsl:text>yes</xsl:text>
+				</xsl:attribute>
+				<xsl:if test="marc:subfield[@code='z']">
+					<xsl:value-of select="marc:subfield[@code='z']"/>
+				</xsl:if>
+				<xsl:if test="marc:subfield[@code='y']">
+					<xsl:value-of select="marc:subfield[@code='y']"/>
+				</xsl:if>
+			</identifier>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="subtitle">
+		<xsl:if test="marc:subfield[@code='b']">
+			<subTitle>
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString">
+						<xsl:value-of select="marc:subfield[@code='b']"/>
+						<!--<xsl:call-template name="subfieldSelect">
+							<xsl:with-param name="codes">b</xsl:with-param>									
+						</xsl:call-template>-->
+					</xsl:with-param>
+				</xsl:call-template>
+			</subTitle>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="script">
+		<xsl:param name="scriptCode"></xsl:param>
+		<xsl:attribute name="script">
+			<xsl:choose>
+				<xsl:when test="$scriptCode='(3'">Arabic</xsl:when>
+				<xsl:when test="$scriptCode='(B'">Latin</xsl:when>
+				<xsl:when test="$scriptCode='$1'">Chinese, Japanese, Korean</xsl:when>
+				<xsl:when test="$scriptCode='(N'">Cyrillic</xsl:when>
+				<xsl:when test="$scriptCode='(2'">Hebrew</xsl:when>
+				<xsl:when test="$scriptCode='(S'">Greek</xsl:when>
+			</xsl:choose>
+		</xsl:attribute>
+	</xsl:template>
+	<xsl:template name="parsePart">
+		<!-- assumes 773$q= 1:2:3<4
+		     with up to 3 levels and one optional start page
+		-->
+		<xsl:variable name="level1">
+			<xsl:choose>
+				<xsl:when test="contains(text(),':')">
+					<!-- 1:2 -->
+					<xsl:value-of select="substring-before(text(),':')"></xsl:value-of>
+				</xsl:when>
+				<xsl:when test="not(contains(text(),':'))">
+					<!-- 1 or 1<3 -->
+					<xsl:if test="contains(text(),'&lt;')">
+						<!-- 1<3 -->
+						<xsl:value-of select="substring-before(text(),'&lt;')"></xsl:value-of>
+					</xsl:if>
+					<xsl:if test="not(contains(text(),'&lt;'))">
+						<!-- 1 -->
+						<xsl:value-of select="text()"></xsl:value-of>
+					</xsl:if>
+				</xsl:when>
+			</xsl:choose>
+		</xsl:variable>
+		<xsl:variable name="sici2">
+			<xsl:choose>
+				<xsl:when test="starts-with(substring-after(text(),$level1),':')">
+					<xsl:value-of select="substring(substring-after(text(),$level1),2)"></xsl:value-of>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:value-of select="substring-after(text(),$level1)"></xsl:value-of>
+				</xsl:otherwise>
+			</xsl:choose>
+		</xsl:variable>
+		<xsl:variable name="level2">
+			<xsl:choose>
+				<xsl:when test="contains($sici2,':')">
+					<!--  2:3<4  -->
+					<xsl:value-of select="substring-before($sici2,':')"></xsl:value-of>
+				</xsl:when>
+				<xsl:when test="contains($sici2,'&lt;')">
+					<!-- 1: 2<4 -->
+					<xsl:value-of select="substring-before($sici2,'&lt;')"></xsl:value-of>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:value-of select="$sici2"></xsl:value-of>
+					<!-- 1:2 -->
+				</xsl:otherwise>
+			</xsl:choose>
+		</xsl:variable>
+		<xsl:variable name="sici3">
+			<xsl:choose>
+				<xsl:when test="starts-with(substring-after($sici2,$level2),':')">
+					<xsl:value-of select="substring(substring-after($sici2,$level2),2)"></xsl:value-of>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:value-of select="substring-after($sici2,$level2)"></xsl:value-of>
+				</xsl:otherwise>
+			</xsl:choose>
+		</xsl:variable>
+		<xsl:variable name="level3">
+			<xsl:choose>
+				<xsl:when test="contains($sici3,'&lt;')">
+					<!-- 2<4 -->
+					<xsl:value-of select="substring-before($sici3,'&lt;')"></xsl:value-of>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:value-of select="$sici3"></xsl:value-of>
+					<!-- 3 -->
+				</xsl:otherwise>
+			</xsl:choose>
+		</xsl:variable>
+		<xsl:variable name="page">
+			<xsl:if test="contains(text(),'&lt;')">
+				<xsl:value-of select="substring-after(text(),'&lt;')"></xsl:value-of>
+			</xsl:if>
+		</xsl:variable>
+		<xsl:if test="$level1">
+			<detail level="1">
+				<number>
+					<xsl:value-of select="$level1"></xsl:value-of>
+				</number>
+			</detail>
+		</xsl:if>
+		<xsl:if test="$level2">
+			<detail level="2">
+				<number>
+					<xsl:value-of select="$level2"></xsl:value-of>
+				</number>
+			</detail>
+		</xsl:if>
+		<xsl:if test="$level3">
+			<detail level="3">
+				<number>
+					<xsl:value-of select="$level3"></xsl:value-of>
+				</number>
+			</detail>
+		</xsl:if>
+		<xsl:if test="$page">
+			<extent unit="page">
+				<start>
+					<xsl:value-of select="$page"></xsl:value-of>
+				</start>
+			</extent>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="getLanguage">
+		<xsl:param name="langString"></xsl:param>
+		<xsl:param name="controlField008-35-37"></xsl:param>
+		<xsl:variable name="length" select="string-length($langString)"></xsl:variable>
+		<xsl:choose>
+			<xsl:when test="$length=0"></xsl:when>
+			<xsl:when test="$controlField008-35-37=substring($langString,1,3)">
+				<xsl:call-template name="getLanguage">
+					<xsl:with-param name="langString" select="substring($langString,4,$length)"></xsl:with-param>
+					<xsl:with-param name="controlField008-35-37" select="$controlField008-35-37"></xsl:with-param>
+				</xsl:call-template>
+			</xsl:when>
+			<xsl:otherwise>
+				<language>
+					<languageTerm authority="iso639-2b" type="code">
+						<xsl:value-of select="substring($langString,1,3)"></xsl:value-of>
+					</languageTerm>
+				</language>
+				<xsl:call-template name="getLanguage">
+					<xsl:with-param name="langString" select="substring($langString,4,$length)"></xsl:with-param>
+					<xsl:with-param name="controlField008-35-37" select="$controlField008-35-37"></xsl:with-param>
+				</xsl:call-template>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+	<xsl:template name="isoLanguage">
+		<xsl:param name="currentLanguage"></xsl:param>
+		<xsl:param name="usedLanguages"></xsl:param>
+		<xsl:param name="remainingLanguages"></xsl:param>
+		<xsl:choose>
+			<xsl:when test="string-length($currentLanguage)=0"></xsl:when>
+			<xsl:when test="not(contains($usedLanguages, $currentLanguage))">
+				<language>
+					<xsl:if test="@code!='a'">
+						<xsl:attribute name="objectPart">
+							<xsl:choose>
+								<xsl:when test="@code='b'">summary or subtitle</xsl:when>
+								<xsl:when test="@code='d'">sung or spoken text</xsl:when>
+								<xsl:when test="@code='e'">libretto</xsl:when>
+								<xsl:when test="@code='f'">table of contents</xsl:when>
+								<xsl:when test="@code='g'">accompanying material</xsl:when>
+								<xsl:when test="@code='h'">translation</xsl:when>
+							</xsl:choose>
+						</xsl:attribute>
+					</xsl:if>
+					<languageTerm authority="iso639-2b" type="code">
+						<xsl:value-of select="$currentLanguage"></xsl:value-of>
+					</languageTerm>
+				</language>
+				<xsl:call-template name="isoLanguage">
+					<xsl:with-param name="currentLanguage">
+						<xsl:value-of select="substring($remainingLanguages,1,3)"></xsl:value-of>
+					</xsl:with-param>
+					<xsl:with-param name="usedLanguages">
+						<xsl:value-of select="concat($usedLanguages,$currentLanguage)"></xsl:value-of>
+					</xsl:with-param>
+					<xsl:with-param name="remainingLanguages">
+						<xsl:value-of select="substring($remainingLanguages,4,string-length($remainingLanguages))"></xsl:value-of>
+					</xsl:with-param>
+				</xsl:call-template>
+			</xsl:when>
+			<xsl:otherwise>
+				<xsl:call-template name="isoLanguage">
+					<xsl:with-param name="currentLanguage">
+						<xsl:value-of select="substring($remainingLanguages,1,3)"></xsl:value-of>
+					</xsl:with-param>
+					<xsl:with-param name="usedLanguages">
+						<xsl:value-of select="concat($usedLanguages,$currentLanguage)"></xsl:value-of>
+					</xsl:with-param>
+					<xsl:with-param name="remainingLanguages">
+						<xsl:value-of select="substring($remainingLanguages,4,string-length($remainingLanguages))"></xsl:value-of>
+					</xsl:with-param>
+				</xsl:call-template>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+	<xsl:template name="chopBrackets">
+		<xsl:param name="chopString"></xsl:param>
+		<xsl:variable name="string">
+			<xsl:call-template name="chopPunctuation">
+				<xsl:with-param name="chopString" select="$chopString"></xsl:with-param>
+			</xsl:call-template>
+		</xsl:variable>
+		<xsl:if test="substring($string, 1,1)='['">
+			<xsl:value-of select="substring($string,2, string-length($string)-2)"></xsl:value-of>
+		</xsl:if>
+		<xsl:if test="substring($string, 1,1)!='['">
+			<xsl:value-of select="$string"></xsl:value-of>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template name="rfcLanguages">
+		<xsl:param name="nodeNum"></xsl:param>
+		<xsl:param name="usedLanguages"></xsl:param>
+		<xsl:param name="controlField008-35-37"></xsl:param>
+		<xsl:variable name="currentLanguage" select="."></xsl:variable>
+		<xsl:choose>
+			<xsl:when test="not($currentLanguage)"></xsl:when>
+			<xsl:when test="$currentLanguage!=$controlField008-35-37 and $currentLanguage!='rfc3066'">
+				<xsl:if test="not(contains($usedLanguages,$currentLanguage))">
+					<language>
+						<xsl:if test="@code!='a'">
+							<xsl:attribute name="objectPart">
+								<xsl:choose>
+									<xsl:when test="@code='b'">summary or subtitle</xsl:when>
+									<xsl:when test="@code='d'">sung or spoken text</xsl:when>
+									<xsl:when test="@code='e'">libretto</xsl:when>
+									<xsl:when test="@code='f'">table of contents</xsl:when>
+									<xsl:when test="@code='g'">accompanying material</xsl:when>
+									<xsl:when test="@code='h'">translation</xsl:when>
+								</xsl:choose>
+							</xsl:attribute>
+						</xsl:if>
+						<languageTerm authority="rfc3066" type="code">
+							<xsl:value-of select="$currentLanguage"/>
+						</languageTerm>
+					</language>
+				</xsl:if>
+			</xsl:when>
+			<xsl:otherwise>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+	<xsl:template name="datafield">
+		<xsl:param name="tag"/>
+		<xsl:param name="ind1"><xsl:text> </xsl:text></xsl:param>
+		<xsl:param name="ind2"><xsl:text> </xsl:text></xsl:param>
+		<xsl:param name="subfields"/>
+		<xsl:element name="marc:datafield">
+			<xsl:attribute name="tag">
+				<xsl:value-of select="$tag"/>
+			</xsl:attribute>
+			<xsl:attribute name="ind1">
+				<xsl:value-of select="$ind1"/>
+			</xsl:attribute>
+			<xsl:attribute name="ind2">
+				<xsl:value-of select="$ind2"/>
+			</xsl:attribute>
+			<xsl:copy-of select="$subfields"/>
+		</xsl:element>
+	</xsl:template>
+
+	<xsl:template name="subfieldSelect">
+		<xsl:param name="codes"/>
+		<xsl:param name="delimeter"><xsl:text> </xsl:text></xsl:param>
+		<xsl:variable name="str">
+			<xsl:for-each select="marc:subfield">
+				<xsl:if test="contains($codes, @code)">
+					<xsl:value-of select="text()"/><xsl:value-of select="$delimeter"/>
+				</xsl:if>
+			</xsl:for-each>
+		</xsl:variable>
+		<xsl:value-of select="substring($str,1,string-length($str)-string-length($delimeter))"/>
+	</xsl:template>
+
+	<xsl:template name="buildSpaces">
+		<xsl:param name="spaces"/>
+		<xsl:param name="char"><xsl:text> </xsl:text></xsl:param>
+		<xsl:if test="$spaces>0">
+			<xsl:value-of select="$char"/>
+			<xsl:call-template name="buildSpaces">
+				<xsl:with-param name="spaces" select="$spaces - 1"/>
+				<xsl:with-param name="char" select="$char"/>
+			</xsl:call-template>
+		</xsl:if>
+	</xsl:template>
+
+	<xsl:template name="chopPunctuation">
+		<xsl:param name="chopString"/>
+		<xsl:param name="punctuation"><xsl:text>.:,;/ </xsl:text></xsl:param>
+		<xsl:variable name="length" select="string-length($chopString)"/>
+		<xsl:choose>
+			<xsl:when test="$length=0"/>
+			<xsl:when test="contains($punctuation, substring($chopString,$length,1))">
+				<xsl:call-template name="chopPunctuation">
+					<xsl:with-param name="chopString" select="substring($chopString,1,$length - 1)"/>
+					<xsl:with-param name="punctuation" select="$punctuation"/>
+				</xsl:call-template>
+			</xsl:when>
+			<xsl:when test="not($chopString)"/>
+			<xsl:otherwise><xsl:value-of select="$chopString"/></xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+
+	<xsl:template name="chopPunctuationFront">
+		<xsl:param name="chopString"/>
+		<xsl:variable name="length" select="string-length($chopString)"/>
+		<xsl:choose>
+			<xsl:when test="$length=0"/>
+			<xsl:when test="contains('.:,;/[ ', substring($chopString,1,1))">
+				<xsl:call-template name="chopPunctuationFront">
+					<xsl:with-param name="chopString" select="substring($chopString,2,$length - 1)"/>
+				</xsl:call-template>
+			</xsl:when>
+			<xsl:when test="not($chopString)"/>
+			<xsl:otherwise><xsl:value-of select="$chopString"/></xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+</xsl:stylesheet>$$ WHERE name = 'mods32';
+
+-- Currently, the only difference from naco_normalize is that search_normalize
+-- turns apostrophes into spaces, while naco_normalize collapses them.
+CREATE OR REPLACE FUNCTION public.search_normalize( TEXT, TEXT ) RETURNS TEXT AS $func$
+
+    use strict;
+    use Unicode::Normalize;
+    use Encode;
+
+    my $str = decode_utf8(shift);
+    my $sf = shift;
+
+    # Apply NACO normalization to input string; based on
+    # http://www.loc.gov/catdir/pcc/naco/SCA_PccNormalization_Final_revised.pdf
+    #
+    # Note that unlike a strict reading of the NACO normalization rules,
+    # output is returned as lowercase instead of uppercase for compatibility
+    # with previous versions of the Evergreen naco_normalize routine.
+
+    # Convert to upper-case first; even though final output will be lowercase, doing this will
+    # ensure that the German eszett (ß) and certain ligatures (ff, fi, ffl, etc.) will be handled correctly.
+    # If there are any bugs in Perl's implementation of upcasing, they will be passed through here.
+    $str = uc $str;
+
+    # remove non-filing strings
+    $str =~ s/\x{0098}.*?\x{009C}//g;
+
+    $str = NFKD($str);
+
+    # additional substitutions - 3.6.
+    $str =~ s/\x{00C6}/AE/g;
+    $str =~ s/\x{00DE}/TH/g;
+    $str =~ s/\x{0152}/OE/g;
+    $str =~ tr/\x{0110}\x{00D0}\x{00D8}\x{0141}\x{2113}\x{02BB}\x{02BC}][/DDOLl/d;
+
+    # transformations based on Unicode category codes
+    $str =~ s/[\p{Cc}\p{Cf}\p{Co}\p{Cs}\p{Lm}\p{Mc}\p{Me}\p{Mn}]//g;
+
+	if ($sf && $sf =~ /^a/o) {
+		my $commapos = index($str, ',');
+		if ($commapos > -1) {
+			if ($commapos != length($str) - 1) {
+                $str =~ s/,/\x07/; # preserve first comma
+			}
+		}
+	}
+
+    # since we've stripped out the control characters, we can now
+    # use a few as placeholders temporarily
+    $str =~ tr/+&@\x{266D}\x{266F}#/\x01\x02\x03\x04\x05\x06/;
+    $str =~ s/[\p{Pc}\p{Pd}\p{Pe}\p{Pf}\p{Pi}\p{Po}\p{Ps}\p{Sk}\p{Sm}\p{So}\p{Zl}\p{Zp}\p{Zs}]/ /g;
+    $str =~ tr/\x01\x02\x03\x04\x05\x06\x07/+&@\x{266D}\x{266F}#,/;
+
+    # decimal digits
+    $str =~ tr/\x{0660}-\x{0669}\x{06F0}-\x{06F9}\x{07C0}-\x{07C9}\x{0966}-\x{096F}\x{09E6}-\x{09EF}\x{0A66}-\x{0A6F}\x{0AE6}-\x{0AEF}\x{0B66}-\x{0B6F}\x{0BE6}-\x{0BEF}\x{0C66}-\x{0C6F}\x{0CE6}-\x{0CEF}\x{0D66}-\x{0D6F}\x{0E50}-\x{0E59}\x{0ED0}-\x{0ED9}\x{0F20}-\x{0F29}\x{1040}-\x{1049}\x{1090}-\x{1099}\x{17E0}-\x{17E9}\x{1810}-\x{1819}\x{1946}-\x{194F}\x{19D0}-\x{19D9}\x{1A80}-\x{1A89}\x{1A90}-\x{1A99}\x{1B50}-\x{1B59}\x{1BB0}-\x{1BB9}\x{1C40}-\x{1C49}\x{1C50}-\x{1C59}\x{A620}-\x{A629}\x{A8D0}-\x{A8D9}\x{A900}-\x{A909}\x{A9D0}-\x{A9D9}\x{AA50}-\x{AA59}\x{ABF0}-\x{ABF9}\x{FF10}-\x{FF19}/0-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-90-9/;
+
+    # intentionally skipping step 8 of the NACO algorithm; if the string
+    # gets normalized away, that's fine.
+
+    # leading and trailing spaces
+    $str =~ s/\s+/ /g;
+    $str =~ s/^\s+//;
+    $str =~ s/\s+$//g;
+
+    return lc $str;
+$func$ LANGUAGE 'plperlu' STRICT IMMUTABLE;
+
+CREATE OR REPLACE FUNCTION public.search_normalize_keep_comma( TEXT ) RETURNS TEXT AS $func$
+        SELECT public.search_normalize($1,'a');
+$func$ LANGUAGE SQL STRICT IMMUTABLE;
+
+CREATE OR REPLACE FUNCTION public.search_normalize( TEXT ) RETURNS TEXT AS $func$
+	SELECT public.search_normalize($1,'');
+$func$ LANGUAGE 'sql' STRICT IMMUTABLE;
+
+INSERT INTO config.index_normalizer (name, description, func, param_count) VALUES (
+	'Search Normalize',
+	'Apply search normalization rules to the extracted text. A less extreme version of NACO normalization.',
+	'search_normalize',
+	0
+);
+
+UPDATE config.metabib_field_index_norm_map
+    SET norm = (
+        SELECT id FROM config.index_normalizer WHERE func = 'search_normalize'
+    )
+    WHERE norm = (
+        SELECT id FROM config.index_normalizer WHERE func = 'naco_normalize'
+    )
+;
+
+
+-- This could take a long time if you have a very non-English bib database
+-- Run it outside of a transaction to avoid lock escalation
+SELECT metabib.reingest_metabib_field_entries(record)
+    FROM metabib.full_rec
+    WHERE tag = '245'
+    AND subfield = 'a'
+    AND value LIKE '%''%'
+;
+-- Evergreen DB patch 0673.data.acq-cancel-reason-cleanup.sql
+--
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0673', :eg_version);
+
+DELETE FROM
+    acq.cancel_reason
+WHERE
+    -- any entries with id >= 2000 were added locally.  
+    id < 2000 
+
+    -- these cancel_reason's are actively used by the system
+    AND id NOT IN (1, 2, 3, 1002, 1003, 1004, 1005, 1010, 1024, 1211, 1221, 1246, 1283)
+
+    -- don't delete any cancel_reason's that may be in use locally
+    AND id NOT IN (SELECT DISTINCT(cancel_reason) FROM acq.user_request WHERE cancel_reason IS NOT NULL)
+    AND id NOT IN (SELECT DISTINCT(cancel_reason) FROM acq.purchase_order WHERE cancel_reason IS NOT NULL)
+    AND id NOT IN (SELECT DISTINCT(cancel_reason) FROM acq.lineitem WHERE cancel_reason IS NOT NULL)
+    AND id NOT IN (SELECT DISTINCT(cancel_reason) FROM acq.lineitem_detail WHERE cancel_reason IS NOT NULL)
+    AND id NOT IN (SELECT DISTINCT(cancel_reason) FROM acq.acq_lineitem_history WHERE cancel_reason IS NOT NULL)
+    AND id NOT IN (SELECT DISTINCT(cancel_reason) FROM acq.acq_purchase_order_history WHERE cancel_reason IS NOT NULL);
+
+
+SELECT evergreen.upgrade_deps_block_check('0674', :eg_version);
+
+ALTER TABLE config.copy_status
+	  ADD COLUMN restrict_copy_delete BOOL NOT NULL DEFAULT FALSE;
+
+UPDATE config.copy_status
+SET restrict_copy_delete = TRUE
+WHERE id IN (1,3,6,8);
+
+INSERT INTO permission.perm_list (id, code, description) VALUES (
+    520,
+    'COPY_DELETE_WARNING.override',
+    'Allow a user to override warnings about deleting copies in problematic situations.'
+);
+
+
+SELECT evergreen.upgrade_deps_block_check('0675', :eg_version);
+
+-- set expected row count to low value to avoid problem
+-- where use of this function by the circ tagging feature
+-- results in full scans of asset.call_number
+CREATE OR REPLACE FUNCTION action.usr_visible_circ_copies( INTEGER ) RETURNS SETOF BIGINT AS $$
+    SELECT DISTINCT(target_copy) FROM action.usr_visible_circs($1)
+$$ LANGUAGE SQL ROWS 10;
+
+
+SELECT evergreen.upgrade_deps_block_check('0676', :eg_version);
+
+INSERT INTO config.global_flag (name, label, enabled, value) VALUES (
+    'opac.use_autosuggest',
+    'OPAC: Show auto-completing suggestions dialog under basic search box (put ''opac_visible'' into the value field to limit suggestions to OPAC-visible items, or blank the field for a possible performance improvement)',
+    TRUE,
+    'opac_visible'
+);
+
+CREATE TABLE metabib.browse_entry (
+    id BIGSERIAL PRIMARY KEY,
+    value TEXT unique,
+    index_vector tsvector
+);
+CREATE INDEX metabib_browse_entry_index_vector_idx ON metabib.browse_entry USING GIST (index_vector);
+CREATE TRIGGER metabib_browse_entry_fti_trigger
+    BEFORE INSERT OR UPDATE ON metabib.browse_entry
+    FOR EACH ROW EXECUTE PROCEDURE oils_tsearch2('keyword');
+
+
+CREATE TABLE metabib.browse_entry_def_map (
+    id BIGSERIAL PRIMARY KEY,
+    entry BIGINT REFERENCES metabib.browse_entry (id),
+    def INT REFERENCES config.metabib_field (id),
+    source BIGINT REFERENCES biblio.record_entry (id)
+);
+
+ALTER TABLE config.metabib_field ADD COLUMN browse_field BOOLEAN DEFAULT TRUE NOT NULL;
+ALTER TABLE config.metabib_field ADD COLUMN browse_xpath TEXT;
+
+ALTER TABLE config.metabib_class ADD COLUMN bouyant BOOLEAN DEFAULT FALSE NOT NULL;
+ALTER TABLE config.metabib_class ADD COLUMN restrict BOOLEAN DEFAULT FALSE NOT NULL;
+ALTER TABLE config.metabib_field ADD COLUMN restrict BOOLEAN DEFAULT FALSE NOT NULL;
+
+-- one good exception to default true:
+UPDATE config.metabib_field
+    SET browse_field = FALSE
+    WHERE (field_class = 'keyword' AND name = 'keyword') OR
+        (field_class = 'subject' AND name = 'complete');
+
+-- AFTER UPDATE OR INSERT trigger for biblio.record_entry
+-- We're only touching it here to add a DELETE statement to the IF NEW.deleted
+-- block.
+
+CREATE OR REPLACE FUNCTION biblio.indexing_ingest_or_delete () RETURNS TRIGGER AS $func$
+DECLARE
+    transformed_xml TEXT;
+    prev_xfrm       TEXT;
+    normalizer      RECORD;
+    xfrm            config.xml_transform%ROWTYPE;
+    attr_value      TEXT;
+    new_attrs       HSTORE := ''::HSTORE;
+    attr_def        config.record_attr_definition%ROWTYPE;
+BEGIN
+
+    IF NEW.deleted IS TRUE THEN -- If this bib is deleted
+        DELETE FROM metabib.metarecord_source_map WHERE source = NEW.id; -- Rid ourselves of the search-estimate-killing linkage
+        DELETE FROM metabib.record_attr WHERE id = NEW.id; -- Kill the attrs hash, useless on deleted records
+        DELETE FROM authority.bib_linking WHERE bib = NEW.id; -- Avoid updating fields in bibs that are no longer visible
+        DELETE FROM biblio.peer_bib_copy_map WHERE peer_record = NEW.id; -- Separate any multi-homed items
+        DELETE FROM metabib.browse_entry_def_map WHERE source = NEW.id; -- Don't auto-suggest deleted bibs
+        RETURN NEW; -- and we're done
+    END IF;
+
+    IF TG_OP = 'UPDATE' THEN -- re-ingest?
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.reingest.force_on_same_marc' AND enabled;
+
+        IF NOT FOUND AND OLD.marc = NEW.marc THEN -- don't do anything if the MARC didn't change
+            RETURN NEW;
+        END IF;
+    END IF;
+
+    -- Record authority linking
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_authority_linking' AND enabled;
+    IF NOT FOUND THEN
+        PERFORM biblio.map_authority_linking( NEW.id, NEW.marc );
+    END IF;
+
+    -- Flatten and insert the mfr data
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_metabib_full_rec' AND enabled;
+    IF NOT FOUND THEN
+        PERFORM metabib.reingest_metabib_full_rec(NEW.id);
+
+        -- Now we pull out attribute data, which is dependent on the mfr for all but XPath-based fields
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_metabib_rec_descriptor' AND enabled;
+        IF NOT FOUND THEN
+            FOR attr_def IN SELECT * FROM config.record_attr_definition ORDER BY format LOOP
+
+                IF attr_def.tag IS NOT NULL THEN -- tag (and optional subfield list) selection
+                    SELECT  ARRAY_TO_STRING(ARRAY_ACCUM(value), COALESCE(attr_def.joiner,' ')) INTO attr_value
+                      FROM  (SELECT * FROM metabib.full_rec ORDER BY tag, subfield) AS x
+                      WHERE record = NEW.id
+                            AND tag LIKE attr_def.tag
+                            AND CASE
+                                WHEN attr_def.sf_list IS NOT NULL 
+                                    THEN POSITION(subfield IN attr_def.sf_list) > 0
+                                ELSE TRUE
+                                END
+                      GROUP BY tag
+                      ORDER BY tag
+                      LIMIT 1;
+
+                ELSIF attr_def.fixed_field IS NOT NULL THEN -- a named fixed field, see config.marc21_ff_pos_map.fixed_field
+                    attr_value := biblio.marc21_extract_fixed_field(NEW.id, attr_def.fixed_field);
+
+                ELSIF attr_def.xpath IS NOT NULL THEN -- and xpath expression
+
+                    SELECT INTO xfrm * FROM config.xml_transform WHERE name = attr_def.format;
+            
+                    -- See if we can skip the XSLT ... it's expensive
+                    IF prev_xfrm IS NULL OR prev_xfrm <> xfrm.name THEN
+                        -- Can't skip the transform
+                        IF xfrm.xslt <> '---' THEN
+                            transformed_xml := oils_xslt_process(NEW.marc,xfrm.xslt);
+                        ELSE
+                            transformed_xml := NEW.marc;
+                        END IF;
+            
+                        prev_xfrm := xfrm.name;
+                    END IF;
+
+                    IF xfrm.name IS NULL THEN
+                        -- just grab the marcxml (empty) transform
+                        SELECT INTO xfrm * FROM config.xml_transform WHERE xslt = '---' LIMIT 1;
+                        prev_xfrm := xfrm.name;
+                    END IF;
+
+                    attr_value := oils_xpath_string(attr_def.xpath, transformed_xml, COALESCE(attr_def.joiner,' '), ARRAY[ARRAY[xfrm.prefix, xfrm.namespace_uri]]);
+
+                ELSIF attr_def.phys_char_sf IS NOT NULL THEN -- a named Physical Characteristic, see config.marc21_physical_characteristic_*_map
+                    SELECT  m.value INTO attr_value
+                      FROM  biblio.marc21_physical_characteristics(NEW.id) v
+                            JOIN config.marc21_physical_characteristic_value_map m ON (m.id = v.value)
+                      WHERE v.subfield = attr_def.phys_char_sf
+                      LIMIT 1; -- Just in case ...
+
+                END IF;
+
+                -- apply index normalizers to attr_value
+                FOR normalizer IN
+                    SELECT  n.func AS func,
+                            n.param_count AS param_count,
+                            m.params AS params
+                      FROM  config.index_normalizer n
+                            JOIN config.record_attr_index_norm_map m ON (m.norm = n.id)
+                      WHERE attr = attr_def.name
+                      ORDER BY m.pos LOOP
+                        EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                            COALESCE( quote_literal( attr_value ), 'NULL' ) ||
+                            CASE
+                                WHEN normalizer.param_count > 0
+                                    THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                                    ELSE ''
+                                END ||
+                            ')' INTO attr_value;
+        
+                END LOOP;
+
+                -- Add the new value to the hstore
+                new_attrs := new_attrs || hstore( attr_def.name, attr_value );
+
+            END LOOP;
+
+            IF TG_OP = 'INSERT' OR OLD.deleted THEN -- initial insert OR revivication
+                INSERT INTO metabib.record_attr (id, attrs) VALUES (NEW.id, new_attrs);
+            ELSE
+                UPDATE metabib.record_attr SET attrs = new_attrs WHERE id = NEW.id;
+            END IF;
+
+        END IF;
+    END IF;
+
+    -- Gather and insert the field entry data
+    PERFORM metabib.reingest_metabib_field_entries(NEW.id);
+
+    -- Located URI magic
+    IF TG_OP = 'INSERT' THEN
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_located_uri' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM biblio.extract_located_uris( NEW.id, NEW.marc, NEW.editor );
+        END IF;
+    ELSE
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.disable_located_uri' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM biblio.extract_located_uris( NEW.id, NEW.marc, NEW.editor );
+        END IF;
+    END IF;
+
+    -- (re)map metarecord-bib linking
+    IF TG_OP = 'INSERT' THEN -- if not deleted and performing an insert, check for the flag
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.metarecord_mapping.skip_on_insert' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM metabib.remap_metarecord_for_bib( NEW.id, NEW.fingerprint );
+        END IF;
+    ELSE -- we're doing an update, and we're not deleted, remap
+        PERFORM * FROM config.internal_flag WHERE name = 'ingest.metarecord_mapping.skip_on_update' AND enabled;
+        IF NOT FOUND THEN
+            PERFORM metabib.remap_metarecord_for_bib( NEW.id, NEW.fingerprint );
+        END IF;
+    END IF;
+
+    RETURN NEW;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+CREATE OR REPLACE FUNCTION metabib.browse_normalize(facet_text TEXT, mapped_field INT) RETURNS TEXT AS $$
+DECLARE
+    normalizer  RECORD;
+BEGIN
+
+    FOR normalizer IN
+        SELECT  n.func AS func,
+                n.param_count AS param_count,
+                m.params AS params
+          FROM  config.index_normalizer n
+                JOIN config.metabib_field_index_norm_map m ON (m.norm = n.id)
+          WHERE m.field = mapped_field AND m.pos < 0
+          ORDER BY m.pos LOOP
+
+            EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                quote_literal( facet_text ) ||
+                CASE
+                    WHEN normalizer.param_count > 0
+                        THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                        ELSE ''
+                    END ||
+                ')' INTO facet_text;
+
+    END LOOP;
+
+    RETURN facet_text;
+END;
+
+$$ LANGUAGE PLPGSQL;
+
+DROP FUNCTION biblio.extract_metabib_field_entry(bigint, text);
+DROP FUNCTION biblio.extract_metabib_field_entry(bigint);
+
+DROP TYPE metabib.field_entry_template;
+CREATE TYPE metabib.field_entry_template AS (
+        field_class     TEXT,
+        field           INT,
+        facet_field     BOOL,
+        search_field    BOOL,
+        browse_field   BOOL,
+        source          BIGINT,
+        value           TEXT
+);
+
+
+CREATE OR REPLACE FUNCTION biblio.extract_metabib_field_entry ( rid BIGINT, default_joiner TEXT ) RETURNS SETOF metabib.field_entry_template AS $func$
+DECLARE
+    bib     biblio.record_entry%ROWTYPE;
+    idx     config.metabib_field%ROWTYPE;
+    xfrm        config.xml_transform%ROWTYPE;
+    prev_xfrm   TEXT;
+    transformed_xml TEXT;
+    xml_node    TEXT;
+    xml_node_list   TEXT[];
+    facet_text  TEXT;
+    browse_text TEXT;
+    raw_text    TEXT;
+    curr_text   TEXT;
+    joiner      TEXT := default_joiner; -- XXX will index defs supply a joiner?
+    output_row  metabib.field_entry_template%ROWTYPE;
+BEGIN
+
+    -- Get the record
+    SELECT INTO bib * FROM biblio.record_entry WHERE id = rid;
+
+    -- Loop over the indexing entries
+    FOR idx IN SELECT * FROM config.metabib_field ORDER BY format LOOP
+
+        SELECT INTO xfrm * from config.xml_transform WHERE name = idx.format;
+
+        -- See if we can skip the XSLT ... it's expensive
+        IF prev_xfrm IS NULL OR prev_xfrm <> xfrm.name THEN
+            -- Can't skip the transform
+            IF xfrm.xslt <> '---' THEN
+                transformed_xml := oils_xslt_process(bib.marc,xfrm.xslt);
+            ELSE
+                transformed_xml := bib.marc;
+            END IF;
+
+            prev_xfrm := xfrm.name;
+        END IF;
+
+        xml_node_list := oils_xpath( idx.xpath, transformed_xml, ARRAY[ARRAY[xfrm.prefix, xfrm.namespace_uri]] );
+
+        raw_text := NULL;
+        FOR xml_node IN SELECT x FROM unnest(xml_node_list) AS x LOOP
+            CONTINUE WHEN xml_node !~ E'^\\s*<';
+
+            curr_text := ARRAY_TO_STRING(
+                oils_xpath( '//text()',
+                    REGEXP_REPLACE( -- This escapes all &s not followed by "amp;".  Data ise returned from oils_xpath (above) in UTF-8, not entity encoded
+                        REGEXP_REPLACE( -- This escapes embeded <s
+                            xml_node,
+                            $re$(>[^<]+)(<)([^>]+<)$re$,
+                            E'\\1&lt;\\3',
+                            'g'
+                        ),
+                        '&(?!amp;)',
+                        '&amp;',
+                        'g'
+                    )
+                ),
+                ' '
+            );
+
+            CONTINUE WHEN curr_text IS NULL OR curr_text = '';
+
+            IF raw_text IS NOT NULL THEN
+                raw_text := raw_text || joiner;
+            END IF;
+
+            raw_text := COALESCE(raw_text,'') || curr_text;
+
+            -- autosuggest/metabib.browse_entry
+            IF idx.browse_field THEN
+
+                IF idx.browse_xpath IS NOT NULL AND idx.browse_xpath <> '' THEN
+                    browse_text := oils_xpath_string( idx.browse_xpath, xml_node, joiner, ARRAY[ARRAY[xfrm.prefix, xfrm.namespace_uri]] );
+                ELSE
+                    browse_text := curr_text;
+                END IF;
+
+                output_row.field_class = idx.field_class;
+                output_row.field = idx.id;
+                output_row.source = rid;
+                output_row.value = BTRIM(REGEXP_REPLACE(browse_text, E'\\s+', ' ', 'g'));
+
+                output_row.browse_field = TRUE;
+                RETURN NEXT output_row;
+                output_row.browse_field = FALSE;
+            END IF;
+
+            -- insert raw node text for faceting
+            IF idx.facet_field THEN
+
+                IF idx.facet_xpath IS NOT NULL AND idx.facet_xpath <> '' THEN
+                    facet_text := oils_xpath_string( idx.facet_xpath, xml_node, joiner, ARRAY[ARRAY[xfrm.prefix, xfrm.namespace_uri]] );
+                ELSE
+                    facet_text := curr_text;
+                END IF;
+
+                output_row.field_class = idx.field_class;
+                output_row.field = -1 * idx.id;
+                output_row.source = rid;
+                output_row.value = BTRIM(REGEXP_REPLACE(facet_text, E'\\s+', ' ', 'g'));
+
+                output_row.facet_field = TRUE;
+                RETURN NEXT output_row;
+                output_row.facet_field = FALSE;
+            END IF;
+
+        END LOOP;
+
+        CONTINUE WHEN raw_text IS NULL OR raw_text = '';
+
+        -- insert combined node text for searching
+        IF idx.search_field THEN
+            output_row.field_class = idx.field_class;
+            output_row.field = idx.id;
+            output_row.source = rid;
+            output_row.value = BTRIM(REGEXP_REPLACE(raw_text, E'\\s+', ' ', 'g'));
+
+            output_row.search_field = TRUE;
+            RETURN NEXT output_row;
+        END IF;
+
+    END LOOP;
+
+END;
+$func$ LANGUAGE PLPGSQL;
+
+-- default to a space joiner
+CREATE OR REPLACE FUNCTION biblio.extract_metabib_field_entry ( BIGINT ) RETURNS SETOF metabib.field_entry_template AS $func$
+    SELECT * FROM biblio.extract_metabib_field_entry($1, ' ');
+    $func$ LANGUAGE SQL;
+
+
+CREATE OR REPLACE FUNCTION metabib.reingest_metabib_field_entries( bib_id BIGINT ) RETURNS VOID AS $func$
+DECLARE
+    fclass          RECORD;
+    ind_data        metabib.field_entry_template%ROWTYPE;
+    mbe_row         metabib.browse_entry%ROWTYPE;
+    mbe_id          BIGINT;
+BEGIN
+    PERFORM * FROM config.internal_flag WHERE name = 'ingest.assume_inserts_only' AND enabled;
+    IF NOT FOUND THEN
+        FOR fclass IN SELECT * FROM config.metabib_class LOOP
+            -- RAISE NOTICE 'Emptying out %', fclass.name;
+            EXECUTE $$DELETE FROM metabib.$$ || fclass.name || $$_field_entry WHERE source = $$ || bib_id;
+        END LOOP;
+        DELETE FROM metabib.facet_entry WHERE source = bib_id;
+        DELETE FROM metabib.browse_entry_def_map WHERE source = bib_id;
+    END IF;
+
+    FOR ind_data IN SELECT * FROM biblio.extract_metabib_field_entry( bib_id ) LOOP
+        IF ind_data.field < 0 THEN
+            ind_data.field = -1 * ind_data.field;
+        END IF;
+
+        IF ind_data.facet_field THEN
+            INSERT INTO metabib.facet_entry (field, source, value)
+                VALUES (ind_data.field, ind_data.source, ind_data.value);
+        END IF;
+
+        IF ind_data.browse_field THEN
+            SELECT INTO mbe_row * FROM metabib.browse_entry WHERE value = ind_data.value;
+            IF FOUND THEN
+                mbe_id := mbe_row.id;
+            ELSE
+                INSERT INTO metabib.browse_entry (value) VALUES
+                    (metabib.browse_normalize(ind_data.value, ind_data.field));
+                mbe_id := CURRVAL('metabib.browse_entry_id_seq'::REGCLASS);
+            END IF;
+
+            INSERT INTO metabib.browse_entry_def_map (entry, def, source)
+                VALUES (mbe_id, ind_data.field, ind_data.source);
+        END IF;
+
+        IF ind_data.search_field THEN
+            EXECUTE $$
+                INSERT INTO metabib.$$ || ind_data.field_class || $$_field_entry (field, source, value)
+                    VALUES ($$ ||
+                        quote_literal(ind_data.field) || $$, $$ ||
+                        quote_literal(ind_data.source) || $$, $$ ||
+                        quote_literal(ind_data.value) ||
+                    $$);$$;
+        END IF;
+
+    END LOOP;
+
+    RETURN;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+-- This mimics a specific part of QueryParser, turning the first part of a
+-- classed search (search_class) into a set of classes and possibly fields.
+-- search_class might look like "author" or "title|proper" or "ti|uniform"
+-- or "au" or "au|corporate|personal" or anything like that, where the first
+-- element of the list you get by separating on the "|" character is either
+-- a registered class (config.metabib_class) or an alias
+-- (config.metabib_search_alias), and the rest of any such elements are
+-- fields (config.metabib_field).
+CREATE OR REPLACE
+    FUNCTION metabib.search_class_to_registered_components(search_class TEXT)
+    RETURNS SETOF RECORD AS $func$
+DECLARE
+    search_parts        TEXT[];
+    field_name          TEXT;
+    search_part_count   INTEGER;
+    rec                 RECORD;
+    registered_class    config.metabib_class%ROWTYPE;
+    registered_alias    config.metabib_search_alias%ROWTYPE;
+    registered_field    config.metabib_field%ROWTYPE;
+BEGIN
+    search_parts := REGEXP_SPLIT_TO_ARRAY(search_class, E'\\|');
+
+    search_part_count := ARRAY_LENGTH(search_parts, 1);
+    IF search_part_count = 0 THEN
+        RETURN;
+    ELSE
+        SELECT INTO registered_class
+            * FROM config.metabib_class WHERE name = search_parts[1];
+        IF FOUND THEN
+            IF search_part_count < 2 THEN   -- all fields
+                rec := (registered_class.name, NULL::INTEGER);
+                RETURN NEXT rec;
+                RETURN; -- done
+            END IF;
+            FOR field_name IN SELECT *
+                FROM UNNEST(search_parts[2:search_part_count]) LOOP
+                SELECT INTO registered_field
+                    * FROM config.metabib_field
+                    WHERE name = field_name AND
+                        field_class = registered_class.name;
+                IF FOUND THEN
+                    rec := (registered_class.name, registered_field.id);
+                    RETURN NEXT rec;
+                END IF;
+            END LOOP;
+        ELSE
+            -- maybe we have an alias?
+            SELECT INTO registered_alias
+                * FROM config.metabib_search_alias WHERE alias=search_parts[1];
+            IF NOT FOUND THEN
+                RETURN;
+            ELSE
+                IF search_part_count < 2 THEN   -- return w/e the alias says
+                    rec := (
+                        registered_alias.field_class, registered_alias.field
+                    );
+                    RETURN NEXT rec;
+                    RETURN; -- done
+                ELSE
+                    FOR field_name IN SELECT *
+                        FROM UNNEST(search_parts[2:search_part_count]) LOOP
+                        SELECT INTO registered_field
+                            * FROM config.metabib_field
+                            WHERE name = field_name AND
+                                field_class = registered_alias.field_class;
+                        IF FOUND THEN
+                            rec := (
+                                registered_alias.field_class,
+                                registered_field.id
+                            );
+                            RETURN NEXT rec;
+                        END IF;
+                    END LOOP;
+                END IF;
+            END IF;
+        END IF;
+    END IF;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+
+CREATE OR REPLACE
+    FUNCTION metabib.suggest_browse_entries(
+        query_text      TEXT,   -- 'foo' or 'foo & ba:*',ready for to_tsquery()
+        search_class    TEXT,   -- 'alias' or 'class' or 'class|field..', etc
+        headline_opts   TEXT,   -- markup options for ts_headline()
+        visibility_org  INTEGER,-- null if you don't want opac visibility test
+        query_limit     INTEGER,-- use in LIMIT clause of interal query
+        normalization   INTEGER -- argument to TS_RANK_CD()
+    ) RETURNS TABLE (
+        value                   TEXT,   -- plain
+        field                   INTEGER,
+        bouyant_and_class_match BOOL,
+        field_match             BOOL,
+        field_weight            INTEGER,
+        rank                    REAL,
+        bouyant                 BOOL,
+        match                   TEXT    -- marked up
+    ) AS $func$
+DECLARE
+    query                   TSQUERY;
+    opac_visibility_join    TEXT;
+    search_class_join       TEXT;
+    r_fields                RECORD;
+BEGIN
+    query := TO_TSQUERY('keyword', query_text);
+
+    IF visibility_org IS NOT NULL THEN
+        opac_visibility_join := '
+    JOIN asset.opac_visible_copies aovc ON (
+        aovc.record = mbedm.source AND
+        aovc.circ_lib IN (SELECT id FROM actor.org_unit_descendants($4))
+    )';
+    ELSE
+        opac_visibility_join := '';
+    END IF;
+
+    -- The following determines whether we only provide suggestsons matching
+    -- the user's selected search_class, or whether we show other suggestions
+    -- too. The reason for MIN() is that for search_classes like
+    -- 'title|proper|uniform' you would otherwise get multiple rows.  The
+    -- implication is that if title as a class doesn't have restrict,
+    -- nor does the proper field, but the uniform field does, you're going
+    -- to get 'false' for your overall evaluation of 'should we restrict?'
+    -- To invert that, change from MIN() to MAX().
+
+    SELECT
+        INTO r_fields
+            MIN(cmc.restrict::INT) AS restrict_class,
+            MIN(cmf.restrict::INT) AS restrict_field
+        FROM metabib.search_class_to_registered_components(search_class)
+            AS _registered (field_class TEXT, field INT)
+        JOIN
+            config.metabib_class cmc ON (cmc.name = _registered.field_class)
+        LEFT JOIN
+            config.metabib_field cmf ON (cmf.id = _registered.field);
+
+    -- evaluate 'should we restrict?'
+    IF r_fields.restrict_field::BOOL OR r_fields.restrict_class::BOOL THEN
+        search_class_join := '
+    JOIN
+        metabib.search_class_to_registered_components($2)
+        AS _registered (field_class TEXT, field INT) ON (
+            (_registered.field IS NULL AND
+                _registered.field_class = cmf.field_class) OR
+            (_registered.field = cmf.id)
+        )
+    ';
+    ELSE
+        search_class_join := '
+    LEFT JOIN
+        metabib.search_class_to_registered_components($2)
+        AS _registered (field_class TEXT, field INT) ON (
+            _registered.field_class = cmc.name
+        )
+    ';
+    END IF;
+
+    RETURN QUERY EXECUTE 'SELECT *, TS_HEADLINE(value, $1, $3) FROM (SELECT DISTINCT
+        mbe.value,
+        cmf.id,
+        cmc.bouyant AND _registered.field_class IS NOT NULL,
+        _registered.field = cmf.id,
+        cmf.weight,
+        TS_RANK_CD(mbe.index_vector, $1, $6),
+        cmc.bouyant
+    FROM metabib.browse_entry_def_map mbedm
+    JOIN metabib.browse_entry mbe ON (mbe.id = mbedm.entry)
+    JOIN config.metabib_field cmf ON (cmf.id = mbedm.def)
+    JOIN config.metabib_class cmc ON (cmf.field_class = cmc.name)
+    '  || search_class_join || opac_visibility_join ||
+    ' WHERE $1 @@ mbe.index_vector
+    ORDER BY 3 DESC, 4 DESC NULLS LAST, 5 DESC, 6 DESC, 7 DESC, 1 ASC
+    LIMIT $5) x
+    ORDER BY 3 DESC, 4 DESC NULLS LAST, 5 DESC, 6 DESC, 7 DESC, 1 ASC
+    '   -- sic, repeat the order by clause in the outer select too
+    USING
+        query, search_class, headline_opts,
+        visibility_org, query_limit, normalization
+        ;
+
+    -- sort order:
+    --  bouyant AND chosen class = match class
+    --  chosen field = match field
+    --  field weight
+    --  rank
+    --  bouyancy
+    --  value itself
+
+END;
+$func$ LANGUAGE PLPGSQL;
+
+-- The advantage of this over the stock regexp_split_to_array() is that it
+-- won't degrade unicode strings.
+CREATE OR REPLACE FUNCTION evergreen.regexp_split_to_array(TEXT, TEXT)
+RETURNS TEXT[] AS $$
+    return encode_array_literal([split $_[1], $_[0]]);
+$$ LANGUAGE PLPERLU STRICT IMMUTABLE;
+
+
+-- Adds some logic for browse_entry to split on non-word chars for index_vector, post-normalize
+CREATE OR REPLACE FUNCTION oils_tsearch2 () RETURNS TRIGGER AS $$
+DECLARE
+    normalizer      RECORD;
+    value           TEXT := '';
+BEGIN
+
+    value := NEW.value;
+
+    IF TG_TABLE_NAME::TEXT ~ 'field_entry$' THEN
+        FOR normalizer IN
+            SELECT  n.func AS func,
+                    n.param_count AS param_count,
+                    m.params AS params
+              FROM  config.index_normalizer n
+                    JOIN config.metabib_field_index_norm_map m ON (m.norm = n.id)
+              WHERE field = NEW.field AND m.pos < 0
+              ORDER BY m.pos LOOP
+                EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                    quote_literal( value ) ||
+                    CASE
+                        WHEN normalizer.param_count > 0
+                            THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                            ELSE ''
+                        END ||
+                    ')' INTO value;
+
+        END LOOP;
+
+        NEW.value := value;
+    END IF;
+
+    IF NEW.index_vector = ''::tsvector THEN
+        RETURN NEW;
+    END IF;
+
+    IF TG_TABLE_NAME::TEXT ~ 'field_entry$' THEN
+        FOR normalizer IN
+            SELECT  n.func AS func,
+                    n.param_count AS param_count,
+                    m.params AS params
+              FROM  config.index_normalizer n
+                    JOIN config.metabib_field_index_norm_map m ON (m.norm = n.id)
+              WHERE field = NEW.field AND m.pos >= 0
+              ORDER BY m.pos LOOP
+                EXECUTE 'SELECT ' || normalizer.func || '(' ||
+                    quote_literal( value ) ||
+                    CASE
+                        WHEN normalizer.param_count > 0
+                            THEN ',' || REPLACE(REPLACE(BTRIM(normalizer.params,'[]'),E'\'',E'\\\''),E'"',E'\'')
+                            ELSE ''
+                        END ||
+                    ')' INTO value;
+
+        END LOOP;
+    END IF;
+
+    IF TG_TABLE_NAME::TEXT ~ 'browse_entry$' THEN
+        value :=  ARRAY_TO_STRING(
+            evergreen.regexp_split_to_array(value, E'\\W+'), ' '
+        );
+    END IF;
+
+    NEW.index_vector = to_tsvector((TG_ARGV[0])::regconfig, value);
+
+    RETURN NEW;
+END;
+$$ LANGUAGE PLPGSQL;
+
+-- Evergreen DB patch 0677.schema.circ_limits.sql
+--
+-- FIXME: insert description of change, if needed
+--
+
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0677', :eg_version);
+
+-- FIXME: add/check SQL statements to perform the upgrade
+-- Limit groups for circ counting
+CREATE TABLE config.circ_limit_group (
+    id          SERIAL  PRIMARY KEY,
+    name        TEXT    UNIQUE NOT NULL,
+    description TEXT
+);
+
+-- Limit sets
+CREATE TABLE config.circ_limit_set (
+    id          SERIAL  PRIMARY KEY,
+    name        TEXT    UNIQUE NOT NULL,
+    owning_lib  INT     NOT NULL REFERENCES actor.org_unit (id) DEFERRABLE INITIALLY DEFERRED,
+    items_out   INT     NOT NULL, -- Total current active circulations must be less than this. 0 means skip counting (always pass)
+    depth       INT     NOT NULL DEFAULT 0, -- Depth count starts at
+    global      BOOL    NOT NULL DEFAULT FALSE, -- If enabled, include everything below depth, otherwise ancestors/descendants only
+    description TEXT
+);
+
+-- Linkage between matchpoints and limit sets
+CREATE TABLE config.circ_matrix_limit_set_map (
+    id          SERIAL  PRIMARY KEY,
+    matchpoint  INT     NOT NULL REFERENCES config.circ_matrix_matchpoint (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    limit_set   INT     NOT NULL REFERENCES config.circ_limit_set (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    fallthrough BOOL    NOT NULL DEFAULT FALSE, -- If true fallthrough will grab this rule as it goes along
+    active      BOOL    NOT NULL DEFAULT TRUE,
+    CONSTRAINT circ_limit_set_once_per_matchpoint UNIQUE (matchpoint, limit_set)
+);
+
+-- Linkage between limit sets and circ mods
+CREATE TABLE config.circ_limit_set_circ_mod_map (
+    id          SERIAL  PRIMARY KEY,
+    limit_set   INT     NOT NULL REFERENCES config.circ_limit_set (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    circ_mod    TEXT    NOT NULL REFERENCES config.circ_modifier (code) ON DELETE CASCADE ON UPDATE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    CONSTRAINT cm_once_per_set UNIQUE (limit_set, circ_mod)
+);
+
+-- Linkage between limit sets and limit groups
+CREATE TABLE config.circ_limit_set_group_map (
+    id          SERIAL  PRIMARY KEY,
+    limit_set    INT     NOT NULL REFERENCES config.circ_limit_set (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    limit_group INT     NOT NULL REFERENCES config.circ_limit_group (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    check_only  BOOL    NOT NULL DEFAULT FALSE, -- If true, don't accumulate this limit_group for storing with the circulation
+    CONSTRAINT clg_once_per_set UNIQUE (limit_set, limit_group)
+);
+
+-- Linkage between limit groups and circulations
+CREATE TABLE action.circulation_limit_group_map (
+    circ        BIGINT      NOT NULL REFERENCES action.circulation (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    limit_group INT         NOT NULL REFERENCES config.circ_limit_group (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    PRIMARY KEY (circ, limit_group)
+);
 
+-- Function for populating the circ/limit group mappings
+CREATE OR REPLACE FUNCTION action.link_circ_limit_groups ( BIGINT, INT[] ) RETURNS VOID AS $func$
+    INSERT INTO action.circulation_limit_group_map(circ, limit_group) SELECT $1, id FROM config.circ_limit_group WHERE id IN (SELECT * FROM UNNEST($2));
+$func$ LANGUAGE SQL;
+
+DROP TYPE IF EXISTS action.circ_matrix_test_result CASCADE;
+CREATE TYPE action.circ_matrix_test_result AS ( success BOOL, fail_part TEXT, buildrows INT[], matchpoint INT, circulate BOOL, duration_rule INT, recurring_fine_rule INT, max_fine_rule INT, hard_due_date INT, renewals INT, grace_period INTERVAL, limit_groups INT[] );
+
+CREATE OR REPLACE FUNCTION action.item_user_circ_test( circ_ou INT, match_item BIGINT, match_user INT, renewal BOOL ) RETURNS SETOF action.circ_matrix_test_result AS $func$
+DECLARE
+    user_object             actor.usr%ROWTYPE;
+    standing_penalty        config.standing_penalty%ROWTYPE;
+    item_object             asset.copy%ROWTYPE;
+    item_status_object      config.copy_status%ROWTYPE;
+    item_location_object    asset.copy_location%ROWTYPE;
+    result                  action.circ_matrix_test_result;
+    circ_test               action.found_circ_matrix_matchpoint;
+    circ_matchpoint         config.circ_matrix_matchpoint%ROWTYPE;
+    circ_limit_set          config.circ_limit_set%ROWTYPE;
+    hold_ratio              action.hold_stats%ROWTYPE;
+    penalty_type            TEXT;
+    items_out               INT;
+    context_org_list        INT[];
+    done                    BOOL := FALSE;
+BEGIN
+    -- Assume success unless we hit a failure condition
     result.success := TRUE;
 
-    -- Fail if we couldn't find a user
+    -- Need user info to look up matchpoints
+    SELECT INTO user_object * FROM actor.usr WHERE id = match_user AND NOT deleted;
+
+    -- (Insta)Fail if we couldn't find the user
     IF user_object.id IS NULL THEN
         result.fail_part := 'no_user';
         result.success := FALSE;
@@ -6316,9 +12483,10 @@ BEGIN
         RETURN;
     END IF;
 
-    SELECT INTO item_object * FROM asset.copy WHERE id = match_item;
+    -- Need item info to look up matchpoints
+    SELECT INTO item_object * FROM asset.copy WHERE id = match_item AND NOT deleted;
 
-    -- Fail if we couldn't find a copy
+    -- (Insta)Fail if we couldn't find the item 
     IF item_object.id IS NULL THEN
         result.fail_part := 'no_item';
         result.success := FALSE;
@@ -6327,65 +12495,79 @@ BEGIN
         RETURN;
     END IF;
 
-    SELECT INTO matchpoint_id action.find_hold_matrix_matchpoint(pickup_ou, request_ou, match_item, match_user, match_requestor);
-    result.matchpoint := matchpoint_id;
-
-    SELECT INTO ou_skip * FROM actor.org_unit_setting WHERE name = 'circ.holds.target_skip_me' AND org_unit = item_object.circ_lib;
-
-    -- Fail if the circ_lib for the item has circ.holds.target_skip_me set to true
-    IF ou_skip.id IS NOT NULL AND ou_skip.value = 'true' THEN
-        result.fail_part := 'circ.holds.target_skip_me';
+    SELECT INTO circ_test * FROM action.find_circ_matrix_matchpoint(circ_ou, item_object, user_object, renewal);
+
+    circ_matchpoint             := circ_test.matchpoint;
+    result.matchpoint           := circ_matchpoint.id;
+    result.circulate            := circ_matchpoint.circulate;
+    result.duration_rule        := circ_matchpoint.duration_rule;
+    result.recurring_fine_rule  := circ_matchpoint.recurring_fine_rule;
+    result.max_fine_rule        := circ_matchpoint.max_fine_rule;
+    result.hard_due_date        := circ_matchpoint.hard_due_date;
+    result.renewals             := circ_matchpoint.renewals;
+    result.grace_period         := circ_matchpoint.grace_period;
+    result.buildrows            := circ_test.buildrows;
+
+    -- (Insta)Fail if we couldn't find a matchpoint
+    IF circ_test.success = false THEN
+        result.fail_part := 'no_matchpoint';
         result.success := FALSE;
         done := TRUE;
         RETURN NEXT result;
         RETURN;
     END IF;
 
-    -- Fail if user is barred
+    -- All failures before this point are non-recoverable
+    -- Below this point are possibly overridable failures
+
+    -- Fail if the user is barred
     IF user_object.barred IS TRUE THEN
         result.fail_part := 'actor.usr.barred';
         result.success := FALSE;
         done := TRUE;
         RETURN NEXT result;
-        RETURN;
     END IF;
 
-    -- Fail if we couldn't find any matchpoint (requires a default)
-    IF matchpoint_id IS NULL THEN
-        result.fail_part := 'no_matchpoint';
+    -- Fail if the item can't circulate
+    IF item_object.circulate IS FALSE THEN
+        result.fail_part := 'asset.copy.circulate';
         result.success := FALSE;
         done := TRUE;
         RETURN NEXT result;
-        RETURN;
     END IF;
 
-    SELECT INTO hold_test * FROM config.hold_matrix_matchpoint WHERE id = matchpoint_id;
-
-    IF hold_test.holdable IS FALSE THEN
-        result.fail_part := 'config.hold_matrix_test.holdable';
+    -- Fail if the item isn't in a circulateable status on a non-renewal
+    IF NOT renewal AND item_object.status NOT IN ( 0, 7, 8 ) THEN 
+        result.fail_part := 'asset.copy.status';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    -- Alternately, fail if the item isn't checked out on a renewal
+    ELSIF renewal AND item_object.status <> 1 THEN
+        result.fail_part := 'asset.copy.status';
         result.success := FALSE;
         done := TRUE;
         RETURN NEXT result;
     END IF;
 
-    IF hold_test.transit_range IS NOT NULL THEN
-        SELECT INTO transit_range_ou_type * FROM actor.org_unit_type WHERE id = hold_test.transit_range;
-        IF hold_test.distance_is_from_owner THEN
-            SELECT INTO transit_source ou.* FROM actor.org_unit ou JOIN asset.call_number cn ON (cn.owning_lib = ou.id) WHERE cn.id = item_object.call_number;
-        ELSE
-            SELECT INTO transit_source * FROM actor.org_unit WHERE id = item_object.circ_lib;
-        END IF;
+    -- Fail if the item can't circulate because of the shelving location
+    SELECT INTO item_location_object * FROM asset.copy_location WHERE id = item_object.location;
+    IF item_location_object.circulate IS FALSE THEN
+        result.fail_part := 'asset.copy_location.circulate';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
+    END IF;
 
-        PERFORM * FROM actor.org_unit_descendants( transit_source.id, transit_range_ou_type.depth ) WHERE id = pickup_ou;
+    -- Use Circ OU for penalties and such
+    SELECT INTO context_org_list ARRAY_AGG(id) FROM actor.org_unit_full_path( circ_ou );
 
-        IF NOT FOUND THEN
-            result.fail_part := 'transit_range';
-            result.success := FALSE;
-            done := TRUE;
-            RETURN NEXT result;
-        END IF;
+    IF renewal THEN
+        penalty_type = '%RENEW%';
+    ELSE
+        penalty_type = '%CIRC%';
     END IF;
- 
+
     FOR standing_penalty IN
         SELECT  DISTINCT csp.*
           FROM  actor.usr_standing_penalty usp
@@ -6393,7 +12575,7 @@ BEGIN
           WHERE usr = match_user
                 AND usp.org_unit IN ( SELECT * FROM unnest(context_org_list) )
                 AND (usp.stop_date IS NULL or usp.stop_date > NOW())
-                AND csp.block_list LIKE '%HOLD%' LOOP
+                AND csp.block_list LIKE penalty_type LOOP
 
         result.fail_part := standing_penalty.name;
         result.success := FALSE;
@@ -6401,68 +12583,84 @@ BEGIN
         RETURN NEXT result;
     END LOOP;
 
-    IF hold_test.stop_blocked_user IS TRUE THEN
-        FOR standing_penalty IN
-            SELECT  DISTINCT csp.*
-              FROM  actor.usr_standing_penalty usp
-                    JOIN config.standing_penalty csp ON (csp.id = usp.standing_penalty)
-              WHERE usr = match_user
-                    AND usp.org_unit IN ( SELECT * FROM unnest(context_org_list) )
-                    AND (usp.stop_date IS NULL or usp.stop_date > NOW())
-                    AND csp.block_list LIKE '%CIRC%' LOOP
-    
-            result.fail_part := standing_penalty.name;
-            result.success := FALSE;
-            done := TRUE;
-            RETURN NEXT result;
-        END LOOP;
+    -- Fail if the test is set to hard non-circulating
+    IF circ_matchpoint.circulate IS FALSE THEN
+        result.fail_part := 'config.circ_matrix_test.circulate';
+        result.success := FALSE;
+        done := TRUE;
+        RETURN NEXT result;
     END IF;
 
-    IF hold_test.max_holds IS NOT NULL AND NOT retargetting THEN
-        SELECT    INTO hold_count COUNT(*)
-          FROM    action.hold_request
-          WHERE    usr = match_user
-            AND fulfillment_time IS NULL
-            AND cancel_time IS NULL
-            AND CASE WHEN hold_test.include_frozen_holds THEN TRUE ELSE frozen IS FALSE END;
-
-        IF hold_count >= hold_test.max_holds THEN
-            result.fail_part := 'config.hold_matrix_test.max_holds';
+    -- Fail if the total copy-hold ratio is too low
+    IF circ_matchpoint.total_copy_hold_ratio IS NOT NULL THEN
+        SELECT INTO hold_ratio * FROM action.copy_related_hold_stats(match_item);
+        IF hold_ratio.total_copy_ratio IS NOT NULL AND hold_ratio.total_copy_ratio < circ_matchpoint.total_copy_hold_ratio THEN
+            result.fail_part := 'config.circ_matrix_test.total_copy_hold_ratio';
             result.success := FALSE;
             done := TRUE;
             RETURN NEXT result;
         END IF;
     END IF;
 
-    IF item_object.age_protect IS NOT NULL THEN
-        SELECT INTO age_protect_object * FROM config.rule_age_hold_protect WHERE id = item_object.age_protect;
-        IF hold_test.distance_is_from_owner THEN
-            SELECT INTO use_active_date value FROM actor.org_unit_ancestor_setting('circ.holds.age_protect.active_date', item_cn_object.owning_lib);
-        ELSE
-            SELECT INTO use_active_date value FROM actor.org_unit_ancestor_setting('circ.holds.age_protect.active_date', item_object.circ_lib);
+    -- Fail if the available copy-hold ratio is too low
+    IF circ_matchpoint.available_copy_hold_ratio IS NOT NULL THEN
+        IF hold_ratio.hold_count IS NULL THEN
+            SELECT INTO hold_ratio * FROM action.copy_related_hold_stats(match_item);
         END IF;
-        IF use_active_date = 'true' THEN
-            age_protect_date := COALESCE(item_object.active_date, NOW());
-        ELSE
-            age_protect_date := item_object.create_date;
+        IF hold_ratio.available_copy_ratio IS NOT NULL AND hold_ratio.available_copy_ratio < circ_matchpoint.available_copy_hold_ratio THEN
+            result.fail_part := 'config.circ_matrix_test.available_copy_hold_ratio';
+            result.success := FALSE;
+            done := TRUE;
+            RETURN NEXT result;
         END IF;
-        IF age_protect_date + age_protect_object.age > NOW() THEN
-            IF hold_test.distance_is_from_owner THEN
-                SELECT INTO item_cn_object * FROM asset.call_number WHERE id = item_object.call_number;
-                SELECT INTO hold_transit_prox prox FROM actor.org_unit_proximity WHERE from_org = item_cn_object.owning_lib AND to_org = pickup_ou;
-            ELSE
-                SELECT INTO hold_transit_prox prox FROM actor.org_unit_proximity WHERE from_org = item_object.circ_lib AND to_org = pickup_ou;
-            END IF;
+    END IF;
 
-            IF hold_transit_prox > age_protect_object.prox THEN
-                result.fail_part := 'config.rule_age_hold_protect.prox';
-                result.success := FALSE;
-                done := TRUE;
-                RETURN NEXT result;
+    -- Fail if the user has too many items out by defined limit sets
+    FOR circ_limit_set IN SELECT ccls.* FROM config.circ_limit_set ccls
+      JOIN config.circ_matrix_limit_set_map ccmlsm ON ccmlsm.limit_set = ccls.id
+      WHERE ccmlsm.active AND ( ccmlsm.matchpoint = circ_matchpoint.id OR
+        ( ccmlsm.matchpoint IN (SELECT * FROM unnest(result.buildrows)) AND ccmlsm.fallthrough )
+        ) LOOP
+            IF circ_limit_set.items_out > 0 AND NOT renewal THEN
+                SELECT INTO context_org_list ARRAY_AGG(aou.id)
+                  FROM actor.org_unit_full_path( circ_ou ) aou
+                    JOIN actor.org_unit_type aout ON aou.ou_type = aout.id
+                  WHERE aout.depth >= circ_limit_set.depth;
+                IF circ_limit_set.global THEN
+                    WITH RECURSIVE descendant_depth AS (
+                        SELECT  ou.id,
+                            ou.parent_ou
+                        FROM  actor.org_unit ou
+                        WHERE ou.id IN (SELECT * FROM unnest(context_org_list))
+                            UNION
+                        SELECT  ou.id,
+                            ou.parent_ou
+                        FROM  actor.org_unit ou
+                            JOIN descendant_depth ot ON (ot.id = ou.parent_ou)
+                    ) SELECT INTO context_org_list ARRAY_AGG(ou.id) FROM actor.org_unit ou JOIN descendant_depth USING (id);
+                END IF;
+                SELECT INTO items_out COUNT(DISTINCT circ.id)
+                  FROM action.circulation circ
+                    JOIN asset.copy copy ON (copy.id = circ.target_copy)
+                    LEFT JOIN action.circulation_limit_group_map aclgm ON (circ.id = aclgm.circ)
+                  WHERE circ.usr = match_user
+                    AND circ.circ_lib IN (SELECT * FROM unnest(context_org_list))
+                    AND circ.checkin_time IS NULL
+                    AND (circ.stop_fines IN ('MAXFINES','LONGOVERDUE') OR circ.stop_fines IS NULL)
+                    AND (copy.circ_modifier IN (SELECT circ_mod FROM config.circ_limit_set_circ_mod_map WHERE limit_set = circ_limit_set.id)
+                        OR aclgm.limit_group IN (SELECT limit_group FROM config.circ_limit_set_group_map WHERE limit_set = circ_limit_set.id)
+                    );
+                IF items_out >= circ_limit_set.items_out THEN
+                    result.fail_part := 'config.circ_matrix_circ_mod_test';
+                    result.success := FALSE;
+                    done := TRUE;
+                    RETURN NEXT result;
+                END IF;
             END IF;
-        END IF;
-    END IF;
+            SELECT INTO result.limit_groups result.limit_groups || ARRAY_AGG(limit_group) FROM config.circ_limit_set_group_map WHERE limit_set = circ_limit_set.id AND NOT check_only;
+    END LOOP;
 
+    -- If we passed everything, return the successful matchpoint
     IF NOT done THEN
         RETURN NEXT result;
     END IF;
@@ -6471,4 +12669,57 @@ BEGIN
 END;
 $func$ LANGUAGE plpgsql;
 
-COMMIT;
+-- We need to re-create these, as they got dropped with the type above.
+CREATE OR REPLACE FUNCTION action.item_user_circ_test( INT, BIGINT, INT ) RETURNS SETOF action.circ_matrix_test_result AS $func$
+    SELECT * FROM action.item_user_circ_test( $1, $2, $3, FALSE );
+$func$ LANGUAGE SQL;
+
+CREATE OR REPLACE FUNCTION action.item_user_renew_test( INT, BIGINT, INT ) RETURNS SETOF action.circ_matrix_test_result AS $func$
+    SELECT * FROM action.item_user_circ_test( $1, $2, $3, TRUE );
+$func$ LANGUAGE SQL;
+
+-- Temp function for migrating circ mod limits.
+CREATE OR REPLACE FUNCTION evergreen.temp_migrate_circ_mod_limits() RETURNS VOID AS $func$
+DECLARE
+    circ_mod_group config.circ_matrix_circ_mod_test%ROWTYPE;
+    current_set INT;
+    circ_mod_count INT;
+BEGIN
+    FOR circ_mod_group IN SELECT * FROM config.circ_matrix_circ_mod_test LOOP
+        INSERT INTO config.circ_limit_set(name, owning_lib, items_out, depth, global, description)
+            SELECT org_unit || ' : Matchpoint ' || circ_mod_group.matchpoint || ' : Circ Mod Test ' || circ_mod_group.id, org_unit, circ_mod_group.items_out, 0, false, 'Migrated from Circ Mod Test System'
+                FROM config.circ_matrix_matchpoint WHERE id = circ_mod_group.matchpoint
+            RETURNING id INTO current_set;
+        INSERT INTO config.circ_matrix_limit_set_map(matchpoint, limit_set, fallthrough, active) VALUES (circ_mod_group.matchpoint, current_set, false, true);
+        INSERT INTO config.circ_limit_set_circ_mod_map(limit_set, circ_mod)
+            SELECT current_set, circ_mod FROM config.circ_matrix_circ_mod_test_map WHERE circ_mod_test = circ_mod_group.id;
+        SELECT INTO circ_mod_count count(id) FROM config.circ_limit_set_circ_mod_map WHERE limit_set = current_set;
+        RAISE NOTICE 'Created limit set with id % and % circ modifiers attached to matchpoint %', current_set, circ_mod_count, circ_mod_group.matchpoint;
+    END LOOP;
+END;
+$func$ LANGUAGE plpgsql;
+
+-- Run the temp function
+SELECT * FROM evergreen.temp_migrate_circ_mod_limits();
+
+-- Drop the temp function
+DROP FUNCTION evergreen.temp_migrate_circ_mod_limits();
+
+--Drop the old tables
+--Not sure we want to do this. Keeping them may help "something went wrong" correction.
+--DROP TABLE IF EXISTS config.circ_matrix_circ_mod_test_map, config.circ_matrix_circ_mod_test;
+
+
+-- Evergreen DB patch 0678.data.vandelay-default-merge-profiles.sql
+
+-- check whether patch can be applied
+SELECT evergreen.upgrade_deps_block_check('0678', :eg_version);
+
+INSERT INTO vandelay.merge_profile (owner, name, replace_spec) 
+    VALUES (1, 'Match-Only Merge', '901c');
+
+INSERT INTO vandelay.merge_profile (owner, name, preserve_spec) 
+    VALUES (1, 'Full Overlay', '901c');
+
+-- COMMIT; TESTING, NO SAVING FOR YOU!
+ROLLBACK;
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/about.html b/Open-ILS/xul/staff_client/chrome/content/main/about.html
index 2609bb6..7d50358 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/about.html
+++ b/Open-ILS/xul/staff_client/chrome/content/main/about.html
@@ -1,7 +1,7 @@
 <html><head><script></script></head><body onload="var x = document.getElementById('version'); var version ='/xul/server/'.split(/\//)[2]; if (version == 'server') { version = 'versionless debug build'; } x.appendChild(document.createTextNode(version));">
 <h1 style="text-decoration: underline">Evergreen</h1>
 <p>Target Server ID: <span id="version"></span></p>
-<p>$HeadURL$</p>
+<p>http://git.evergreen-ils.org/Evergreen.git?h=refs/heads/rel_2_2_alpha2</p>
 <h2>What is Evergreen?</h2>
 <blockquote>
 <p>
diff --git a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
index bf3d517..19993c5 100644
--- a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
+++ b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
@@ -11,7 +11,7 @@ pref("toolkit.singletonWindowType", "eg_main");
 pref("open-ils.enable_join_tabs", true);
 
 // We'll use this one to help brand some build information into the client, and rely on subversion keywords
-pref("open-ils.repository.headURL","$HeadURL$");
+pref("open-ils.repository.headURL","http://git.evergreen-ils.org/Evergreen.git?h=refs/heads/rel_2_2_alpha2");
 pref("open-ils.repository.author","$Author$");
 pref("open-ils.repository.revision","$Revision$");
 pref("open-ils.repository.date","$Date$");
diff --git a/Open-ILS/xul/staff_client/windowssetup.nsi b/Open-ILS/xul/staff_client/windowssetup.nsi
index 847eedc..0609db0 100644
--- a/Open-ILS/xul/staff_client/windowssetup.nsi
+++ b/Open-ILS/xul/staff_client/windowssetup.nsi
@@ -3,7 +3,7 @@
 ; HM NIS Edit Wizard helper defines
 ; Old versions of makensis don't like this, moved to Makefile
 ;!define /file PRODUCT_VERSION "client/VERSION"
-!define PRODUCT_TAG "Master"
+!define PRODUCT_TAG "2.2"
 !define PRODUCT_INSTALL_TAG "${PRODUCT_TAG}"
 !define UI_IMAGESET "beta"
 ;!define UI_IMAGESET "release"
diff --git a/README b/README
index e476035..8565149 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for Evergreen master
+README for Evergreen 2.2-alpha2
 ===========================
 
 Preamble: referenced user accounts
@@ -30,6 +30,18 @@ follows:
        Evergreen that you will use to test connectivity and configure your
        Evergreen instance.
 
+Preamble: Getting an Evergreen official release tarball
+-------------------------------------------------------
+
+To download and extract the source for the current release of Evergreen, issue
+the following commands as the *user* Linux account:
+
+[source, bash]
+------------------------------------------------------------------------------
+wget -c http://evergreen-ils.org/downloads/Evergreen-ILS-2.2-alpha2.tar.gz
+tar xzf Evergreen-ILS-2.2-alpha2.tar.gz
+------------------------------------------------------------------------------
+
 Preamble: Developer instructions
 --------------------------------
 
@@ -166,7 +178,7 @@ Installation instructions
 +
 [source, bash]
 ------------------------------------------------------------------------------
-make STAFF_CLIENT_STAMP_ID=rel_name install
+make STAFF_CLIENT_STAMP_ID=rel_2_2_alpha2 install
 ------------------------------------------------------------------------------
 +
 2. The server portion of the staff client expects `http://hostname/xul/server`
diff --git a/configure.ac b/configure.ac
index dd0b098..678d24c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,8 +20,8 @@
 
 export PATH=${PATH}:/usr/sbin
 AC_PREREQ(2.61)
-AC_INIT(Open-ILS, trunk, open-ils-dev at list.georgialibraries.org)
-AM_INIT_AUTOMAKE([OpenILS], [trunk])
+AC_INIT(Open-ILS, 2.2-alpha2, open-ils-dev at list.georgialibraries.org)
+AM_INIT_AUTOMAKE([OpenILS], [2.2-alpha2])
 AC_REVISION($Revision: 0.1 $)
 AC_CONFIG_SRCDIR([configure.ac])
 AC_PREFIX_DEFAULT([/openils/])

-----------------------------------------------------------------------


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list