Patron Stat Cat Enhancements: Link CDBI actor::stat_cat_entry_default to parent entities.

Add relations between actor::stat_cat and actor::stat_cat_entry to actor::stat_cat_entry_default.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Add CDBI package actor::stat_cat_entry_default.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Add Pg DBI actor::stat_cat_entry_default table and sequence.

Add actor::stat_cat_entry_default->table and
actor::stat_cat_entry_default->sequence.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Add Publisher actor methods for stat_cat_entry_default objects.

Add methods actor_stat_cat_entry_default and actor_stat_cat_entry_default_ancestor
to retrieve and populate stat_cat_entry_default objects.  Modify ranged_actor_stat_cat_entry
and fleshed_actor_stat_cat to also include default entry objects, if present.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Add permissions for manipulating stat_cat_entry_default.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Add language entities for default stat cat entry labels.

Add label entities for setting a default entry;  rename staff.server.admin.stat_cat.edit_entry_name_submit
to staff.server.admin.stat_cat.edit_entry_submit.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Modify stat cat editor javascript to manipulate patron stat cat default entries.

Add functions, methods, variables to Statistical Categories Editor
javascript to manage patron stat cat default entries.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Modify stat cat editor HTML to manipulate patron stat cat default entries.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Enforce stat_cat "required" flag in patron registration screen

If a patron statistical category is flagged as required, make
the category form field a required field, and validate it before
submitting the form.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Enforce stat_cat "allow_freetext" flag in patron registration screen

If a patron statistical category is flagged to disallow user-provided
entries, make the category form field a FilteringSelect box;  otherwise,
make it a ComboBox.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Fix values stored, then displayed in "Allow freetext" categories

In the patron registration screen:  the widget dijit.form.FilteringSelect
stores the option value, not the displayed value, unlike ComboBox; so store
the FilteringSelect displayedValue, then set the FilteringSelect displayedValue
with the value retrieved from the patron/stat_cat_entry map table.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Rearrange stat cat editor screen

Rearrange the statistical categories editor interface to correctly
display the "Archived" radio buttons along side the other radio
buttons.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: Only show default entry for new patrons

Only display the default entry when registering new patrons.
Otherwise, display the saved value for the patron or nothing.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Patron Stat Cat Enhancements: SQL upgrade statements

Add SQL upgrade statements:  new table stat_cat_entry_default,
new columns 'required' and 'allow_freetext' on actor.stat_cat,
and new permissions to create, delete default entries.

Signed-off-by: Scott Prater <sprater@gmail.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Stamping Stat Cat Enhancements upgrade script

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Serial Control: Use Dijit-based issuance editor

The serial control interfaces use editors derived from the XUL
copy editor, while the alternate control uses Dijit editors.  This
commit takes a small step toward unification by using the Dijit
issuance editor within the serial control interface, with the
following benefits:

1) Both controls will have a very similar editor look and feel
2) Takes advantage of custom holding code wizard widget
3) Future fixes and enhancements to the editors will apply easily
to both controls
4) Begin deprecating XUL serial editors

This commit doesn't yet rip out the old issuance editor code, as
that should wait until the transition is more complete.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
TPac: non-inherited org unit visibility

Adds support for displaying org units that are children of hidden org
units in the tpac org unit selector.  A new global flag was added to
control this behavior called "opac.org_unit.non_inheritied_visibility" /
"Org Units Do Not Inherit Visibility".

To avoid confusion / distorted org unit trees, children of hidden org
units are left-padded one less for each hidden parent org unit.  For
example, in the stock org tree, if Sys2 is opac_visible=false (and the
global flag is enabled), the tree in the tpac would appear like so:

Cons
- Sys 1
-- BR1
--- SL1
-- BR2
- BR3
- BR4

Similarly, if CONS was also hidden, the whole tree would be shifted left
by 1 pad depth.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Org unit sibling display sort order

Adds a new "sibling_order" column to actor.org_unit which specifies the
order in which an org unit should be sorted as compared to its sibling
org units in org unit trees.

This commit adds the IDL/DB components.  It also updates the tpac and
the generic get_org_tree API.  (Note, a follow-up commit will be pushed
to remove some deprecated / reduntant org tree retrievals).

Note that the sibling_order values do not have to be unique within each
set of siblings.  The org unit name is still used as a tie-breaker sort,
so if the sort order is left unset (i.e. all values are 0), org units
will fall back to name-only sorting.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Repaired non-slim org unit fetching bug

Fixed an old thinko.  When fetching a full org unit object, set the
children org unit array value instead of clobbering the function.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Org unit sibling display sort order : admin UI

Adds a new menu entry for Local Admin called "Library Sort Order", where
staff can configure via drag-n-drop the sibling display order for org
units in the opac.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>