[open-ils-commits] [GIT] Evergreen ILS branch master updated. 402307e9147b5c52d279c951a7ae032fb4ff4da7

Evergreen Git git at git.evergreen-ils.org
Wed Aug 19 13:12:28 EDT 2015


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, master has been updated
       via  402307e9147b5c52d279c951a7ae032fb4ff4da7 (commit)
       via  b15ec960babf2214ac0dafddcbf51372a46de71e (commit)
       via  2f7133d6a32b75833e53fe6bcbfc829fc98cc110 (commit)
       via  aa041890444cf6b68e728a5d658cb9116de4a3ce (commit)
       via  cc942ca6243d2155523ecb5c2c2423327f064dae (commit)
       via  6004dac34f698b725131422538ada2ceaccc3e2b (commit)
       via  2274e9901cfbd7d2f7ab59b3e21d78f78614ad8e (commit)
       via  e14612eaab0d7d3a19eb9c880681628812df007d (commit)
       via  c6870e2347cb0616912a3c75cfbafe9dbe17f7a7 (commit)
       via  f73de8199d8fa4400bdb3a462e7d1d50fc6bdc3e (commit)
       via  bcd6bb62f5f18ddb267a5ccccfc54118cce26dba (commit)
       via  f4c415a1e68fa1721b6be1b5c80593c59c7a470a (commit)
      from  c6a391d74432353548b6fb750cdf422e20b6ea49 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 402307e9147b5c52d279c951a7ae032fb4ff4da7
Author: Jeff Godin <jgodin at tadl.org>
Date:   Wed Aug 19 13:02:24 2015 -0400

    LP#1312309 JSPAC removal release notes
    
    Add release notes for removal of the deprecated JSPAC interface.
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>

diff --git a/docs/RELEASE_NOTES_NEXT/OPAC/removal-of-deprecated-jspac.txt b/docs/RELEASE_NOTES_NEXT/OPAC/removal-of-deprecated-jspac.txt
new file mode 100644
index 0000000..017e681
--- /dev/null
+++ b/docs/RELEASE_NOTES_NEXT/OPAC/removal-of-deprecated-jspac.txt
@@ -0,0 +1,29 @@
+Removal of deprecated "JSPAC" interface
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The deprecated Javascript OPAC interface known as "JSPAC" is no
+longer included in Evergreen as of this release.
+
+With the understanding that local sites may have made use of
+existing parts of the old JSPAC interface -- especially images and
+CSS -- no attempt is made at upgrade time to automatically remove
+the existing files from disk.
+
+When upgrading, you may wish to remove "index.xml" from your Apache
+DirectoryIndex directives.
+
+The following directories, xml, js, and css files were formerly part
+of JSPAC, and you may be able to safely remove them from your system
+after verifying that they and their contents are no longer required:
+
+- web/opac/common/css/
+- web/opac/common/js/dtree.js
+- web/opac/common/xml/
+- web/opac/extras/bbags.js
+- web/opac/extras/bbags.xml
+- web/opac/skin/default/js/
+- web/opac/skin/default/xml/
+- web/opac/theme/
+
+The list of images removed in this change is lengthy, and not
+included here.

commit b15ec960babf2214ac0dafddcbf51372a46de71e
Author: Jeff Godin <jgodin at tadl.org>
Date:   Wed Aug 19 12:41:33 2015 -0400

    LP#1312297 Legacy selfcheck removal release notes
    
    Release notes for the removal of the legacy selfcheck interface.
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>

diff --git a/docs/RELEASE_NOTES_NEXT/OPAC/removal-of-legacy-selfcheck.txt b/docs/RELEASE_NOTES_NEXT/OPAC/removal-of-legacy-selfcheck.txt
new file mode 100644
index 0000000..422ee9b
--- /dev/null
+++ b/docs/RELEASE_NOTES_NEXT/OPAC/removal-of-legacy-selfcheck.txt
@@ -0,0 +1,28 @@
+Removal of legacy selfcheck interface
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The legacy selfcheck interface is no longer included in Evergreen as
+of this release.
+
+This interface was formerly located at a URL ending in
+extras/selfcheck/selfcheck.xml
+
+No attempt is made at upgrade time to automatically remove this
+interface.
+
+It is recommended that you remove this interface and its associated
+configuration after performing an upgrade:
+
+(paths relative to Evergreen web root)
+
+- opac/extras/selfcheck/selfcheck.css
+- opac/extras/selfcheck/selfcheck.js
+- opac/extras/selfcheck/selfcheck.xml
+- opac/extras/selfcheck/selfcheck_print.css
+
+You can also remove the related Apache configuration block starting
+with:
+
+[source, conf]
+<LocationMatch .*/selfcheck.xml>
+

commit 2f7133d6a32b75833e53fe6bcbfc829fc98cc110
Author: Ben Shum <bshum at biblio.org>
Date:   Tue Aug 18 11:26:09 2015 -0400

    LP#1312309: Initial changes to web Makefile to avoid copying JSPAC files
    
    In Open-ILS/web/Makefile.am, we were copying in some files for JSPAC.
    Because we're in the process of removing these files, this broke the
    installation process for make install step of the README.
    
    Remove the loop for now, probably more cleanup required here.
    
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/web/Makefile.am b/Open-ILS/web/Makefile.am
index d49719d..98f82da 100644
--- a/Open-ILS/web/Makefile.am
+++ b/Open-ILS/web/Makefile.am
@@ -51,9 +51,6 @@ webcore-install:
 	cp -r @top_srcdir@/Open-ILS/web/. $(DESTDIR)$(WEBDIR)
 	cp @top_srcdir@/Open-ILS/xsl/*.xsl $(opacextrasdir)
 	cp @top_srcdir@/Open-ILS/xsl/*.xsl $(DESTDIR)$(XSLDIR)
-	for i in mresult.xml rresult.xml rdetail.xml advanced.xml myopac.xml cnbrowse.xml authbrowse.xml; do \
-		cd $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/ && rm -f $$i && $(LN_S) index.xml $$i; \
-	done
 
 offline-install:
 	@echo "Installing offline CGIs to $(CGIDIR)/offline";

commit aa041890444cf6b68e728a5d658cb9116de4a3ce
Author: Jeff Godin <jgodin at tadl.org>
Date:   Tue May 19 12:56:04 2015 -0400

    LP#1312309: Remove unused images added by craftsman
    
    Remove all unused images that were added by the craftsman JSPAC
    skin.
    
    The following images were added by craftsman but are now in use
    elsewhere, and are not removed by this commit:
    
    Open-ILS/web/opac/images/advancedsearch-icon.png
    Open-ILS/web/opac/images/book-icon.png
    Open-ILS/web/opac/images/progressbar_green-old.gif
    Open-ILS/web/opac/images/small-rss.gif
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/web/opac/images/advancedsearch-icon.gif b/Open-ILS/web/opac/images/advancedsearch-icon.gif
deleted file mode 100644
index b823e2f..0000000
Binary files a/Open-ILS/web/opac/images/advancedsearch-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/bg.gif b/Open-ILS/web/opac/images/bg.gif
deleted file mode 100644
index ca352ba..0000000
Binary files a/Open-ILS/web/opac/images/bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/blank.gif b/Open-ILS/web/opac/images/blank.gif
deleted file mode 100644
index 2799b45..0000000
Binary files a/Open-ILS/web/opac/images/blank.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/cancel-icon-u.gif b/Open-ILS/web/opac/images/cancel-icon-u.gif
deleted file mode 100644
index d22bff2..0000000
Binary files a/Open-ILS/web/opac/images/cancel-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/cancel-icon-u.png b/Open-ILS/web/opac/images/cancel-icon-u.png
deleted file mode 100644
index 4522b87..0000000
Binary files a/Open-ILS/web/opac/images/cancel-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/cancel-icon.gif b/Open-ILS/web/opac/images/cancel-icon.gif
deleted file mode 100644
index 97024bc..0000000
Binary files a/Open-ILS/web/opac/images/cancel-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/cancel-icon.png b/Open-ILS/web/opac/images/cancel-icon.png
deleted file mode 100644
index 9e8333c..0000000
Binary files a/Open-ILS/web/opac/images/cancel-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/cartographic.jpg b/Open-ILS/web/opac/images/cartographic.jpg
deleted file mode 100644
index b44eafa..0000000
Binary files a/Open-ILS/web/opac/images/cartographic.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/chooselibrary-icon.gif b/Open-ILS/web/opac/images/chooselibrary-icon.gif
deleted file mode 100644
index c02ed2e..0000000
Binary files a/Open-ILS/web/opac/images/chooselibrary-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/chooselibrary-icon.png b/Open-ILS/web/opac/images/chooselibrary-icon.png
deleted file mode 100644
index 564e6d8..0000000
Binary files a/Open-ILS/web/opac/images/chooselibrary-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/closeall-icon-u.gif b/Open-ILS/web/opac/images/closeall-icon-u.gif
deleted file mode 100644
index 085d107..0000000
Binary files a/Open-ILS/web/opac/images/closeall-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/closeall-icon-u.png b/Open-ILS/web/opac/images/closeall-icon-u.png
deleted file mode 100644
index 48ba717..0000000
Binary files a/Open-ILS/web/opac/images/closeall-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/closeall-icon.gif b/Open-ILS/web/opac/images/closeall-icon.gif
deleted file mode 100644
index b75a6d6..0000000
Binary files a/Open-ILS/web/opac/images/closeall-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/closeall-icon.png b/Open-ILS/web/opac/images/closeall-icon.png
deleted file mode 100644
index 50212ea..0000000
Binary files a/Open-ILS/web/opac/images/closeall-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/content-bg.gif b/Open-ILS/web/opac/images/content-bg.gif
deleted file mode 100644
index 3af8f8b..0000000
Binary files a/Open-ILS/web/opac/images/content-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/content-bg.jpg b/Open-ILS/web/opac/images/content-bg.jpg
deleted file mode 100644
index 1ecbd30..0000000
Binary files a/Open-ILS/web/opac/images/content-bg.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/details-f-bg-u.gif b/Open-ILS/web/opac/images/details-f-bg-u.gif
deleted file mode 100644
index 30ff63a..0000000
Binary files a/Open-ILS/web/opac/images/details-f-bg-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/details-f-bg.gif b/Open-ILS/web/opac/images/details-f-bg.gif
deleted file mode 100644
index eed5244..0000000
Binary files a/Open-ILS/web/opac/images/details-f-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/details-headers-bg.gif b/Open-ILS/web/opac/images/details-headers-bg.gif
deleted file mode 100644
index 9276532..0000000
Binary files a/Open-ILS/web/opac/images/details-headers-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/earth-icon.png b/Open-ILS/web/opac/images/earth-icon.png
deleted file mode 100644
index 73b37ab..0000000
Binary files a/Open-ILS/web/opac/images/earth-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/eg_tiny_logo.gif b/Open-ILS/web/opac/images/eg_tiny_logo.gif
deleted file mode 100644
index b3b8e1e..0000000
Binary files a/Open-ILS/web/opac/images/eg_tiny_logo.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/expandall-icon-u.gif b/Open-ILS/web/opac/images/expandall-icon-u.gif
deleted file mode 100644
index fbb79be..0000000
Binary files a/Open-ILS/web/opac/images/expandall-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/expandall-icon-u.png b/Open-ILS/web/opac/images/expandall-icon-u.png
deleted file mode 100644
index bb6d059..0000000
Binary files a/Open-ILS/web/opac/images/expandall-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/expandall-icon.gif b/Open-ILS/web/opac/images/expandall-icon.gif
deleted file mode 100644
index 297fd9f..0000000
Binary files a/Open-ILS/web/opac/images/expandall-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/expandall-icon.png b/Open-ILS/web/opac/images/expandall-icon.png
deleted file mode 100644
index 870a23d..0000000
Binary files a/Open-ILS/web/opac/images/expandall-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-bg.gif b/Open-ILS/web/opac/images/footer-bg.gif
deleted file mode 100644
index e2d7370..0000000
Binary files a/Open-ILS/web/opac/images/footer-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-bl.gif b/Open-ILS/web/opac/images/footer-bl.gif
deleted file mode 100644
index e6474a1..0000000
Binary files a/Open-ILS/web/opac/images/footer-bl.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-bottom.gif b/Open-ILS/web/opac/images/footer-bottom.gif
deleted file mode 100644
index e0e2871..0000000
Binary files a/Open-ILS/web/opac/images/footer-bottom.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-br.gif b/Open-ILS/web/opac/images/footer-br.gif
deleted file mode 100644
index 1e0c5d1..0000000
Binary files a/Open-ILS/web/opac/images/footer-br.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-corners.gif b/Open-ILS/web/opac/images/footer-corners.gif
deleted file mode 100644
index 42c5b1a..0000000
Binary files a/Open-ILS/web/opac/images/footer-corners.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-left.gif b/Open-ILS/web/opac/images/footer-left.gif
deleted file mode 100644
index 18835c8..0000000
Binary files a/Open-ILS/web/opac/images/footer-left.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-right.gif b/Open-ILS/web/opac/images/footer-right.gif
deleted file mode 100644
index ab0a380..0000000
Binary files a/Open-ILS/web/opac/images/footer-right.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-tl.gif b/Open-ILS/web/opac/images/footer-tl.gif
deleted file mode 100644
index 68670e4..0000000
Binary files a/Open-ILS/web/opac/images/footer-tl.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-top.gif b/Open-ILS/web/opac/images/footer-top.gif
deleted file mode 100644
index 2262478..0000000
Binary files a/Open-ILS/web/opac/images/footer-top.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/footer-tr.gif b/Open-ILS/web/opac/images/footer-tr.gif
deleted file mode 100644
index 4ac5fb7..0000000
Binary files a/Open-ILS/web/opac/images/footer-tr.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/header-bg.gif b/Open-ILS/web/opac/images/header-bg.gif
deleted file mode 100644
index c7dc782..0000000
Binary files a/Open-ILS/web/opac/images/header-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/header-shadow.gif b/Open-ILS/web/opac/images/header-shadow.gif
deleted file mode 100644
index 92f2230..0000000
Binary files a/Open-ILS/web/opac/images/header-shadow.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/home-bottom-tag-bg.gif b/Open-ILS/web/opac/images/home-bottom-tag-bg.gif
deleted file mode 100644
index 41b8dcc..0000000
Binary files a/Open-ILS/web/opac/images/home-bottom-tag-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/home-icon-u.gif b/Open-ILS/web/opac/images/home-icon-u.gif
deleted file mode 100644
index 7a4ee5c..0000000
Binary files a/Open-ILS/web/opac/images/home-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/home-icon-u.png b/Open-ILS/web/opac/images/home-icon-u.png
deleted file mode 100644
index 3a53a0d..0000000
Binary files a/Open-ILS/web/opac/images/home-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/home-icon.gif b/Open-ILS/web/opac/images/home-icon.gif
deleted file mode 100644
index 3e934e8..0000000
Binary files a/Open-ILS/web/opac/images/home-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/home-icon.png b/Open-ILS/web/opac/images/home-icon.png
deleted file mode 100644
index fdd57e7..0000000
Binary files a/Open-ILS/web/opac/images/home-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-account-icon-u.gif b/Open-ILS/web/opac/images/inner-account-icon-u.gif
deleted file mode 100644
index bb2a34e..0000000
Binary files a/Open-ILS/web/opac/images/inner-account-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-account-icon-u.png b/Open-ILS/web/opac/images/inner-account-icon-u.png
deleted file mode 100644
index f28e921..0000000
Binary files a/Open-ILS/web/opac/images/inner-account-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-account-icon.gif b/Open-ILS/web/opac/images/inner-account-icon.gif
deleted file mode 100644
index 91df84f..0000000
Binary files a/Open-ILS/web/opac/images/inner-account-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-account-icon.png b/Open-ILS/web/opac/images/inner-account-icon.png
deleted file mode 100644
index b0c5cf9..0000000
Binary files a/Open-ILS/web/opac/images/inner-account-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-advanced-icon-u.gif b/Open-ILS/web/opac/images/inner-advanced-icon-u.gif
deleted file mode 100644
index b823e2f..0000000
Binary files a/Open-ILS/web/opac/images/inner-advanced-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-advanced-icon-u.png b/Open-ILS/web/opac/images/inner-advanced-icon-u.png
deleted file mode 100644
index bde9dc2..0000000
Binary files a/Open-ILS/web/opac/images/inner-advanced-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-advanced-icon.gif b/Open-ILS/web/opac/images/inner-advanced-icon.gif
deleted file mode 100644
index 2ec9357..0000000
Binary files a/Open-ILS/web/opac/images/inner-advanced-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/inner-advanced-icon.png b/Open-ILS/web/opac/images/inner-advanced-icon.png
deleted file mode 100644
index bf78ad8..0000000
Binary files a/Open-ILS/web/opac/images/inner-advanced-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/lg-txt.gif b/Open-ILS/web/opac/images/lg-txt.gif
deleted file mode 100644
index ef7ab78..0000000
Binary files a/Open-ILS/web/opac/images/lg-txt.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/libselect-btn.gif b/Open-ILS/web/opac/images/libselect-btn.gif
deleted file mode 100644
index ce67168..0000000
Binary files a/Open-ILS/web/opac/images/libselect-btn.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/list-icon.gif b/Open-ILS/web/opac/images/list-icon.gif
deleted file mode 100644
index f32e0c1..0000000
Binary files a/Open-ILS/web/opac/images/list-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/list-icon.png b/Open-ILS/web/opac/images/list-icon.png
deleted file mode 100644
index 61aa3d3..0000000
Binary files a/Open-ILS/web/opac/images/list-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/login-icon-u.gif b/Open-ILS/web/opac/images/login-icon-u.gif
deleted file mode 100644
index 59a8e6b..0000000
Binary files a/Open-ILS/web/opac/images/login-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/login-icon-u.png b/Open-ILS/web/opac/images/login-icon-u.png
deleted file mode 100644
index 6fdb7f1..0000000
Binary files a/Open-ILS/web/opac/images/login-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/login-icon.gif b/Open-ILS/web/opac/images/login-icon.gif
deleted file mode 100644
index 59a8e6b..0000000
Binary files a/Open-ILS/web/opac/images/login-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/login-icon.png b/Open-ILS/web/opac/images/login-icon.png
deleted file mode 100644
index 6fdb7f1..0000000
Binary files a/Open-ILS/web/opac/images/login-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/loginas-icon.gif b/Open-ILS/web/opac/images/loginas-icon.gif
deleted file mode 100644
index 0799be5..0000000
Binary files a/Open-ILS/web/opac/images/loginas-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/loginas-icon.png b/Open-ILS/web/opac/images/loginas-icon.png
deleted file mode 100644
index cc6af21..0000000
Binary files a/Open-ILS/web/opac/images/loginas-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/logo.gif b/Open-ILS/web/opac/images/logo.gif
deleted file mode 100644
index 472cd9d..0000000
Binary files a/Open-ILS/web/opac/images/logo.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/logo.png b/Open-ILS/web/opac/images/logo.png
deleted file mode 100644
index 5662bad..0000000
Binary files a/Open-ILS/web/opac/images/logo.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/logout-icon-u.gif b/Open-ILS/web/opac/images/logout-icon-u.gif
deleted file mode 100644
index b76d63d..0000000
Binary files a/Open-ILS/web/opac/images/logout-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/logout-icon-u.png b/Open-ILS/web/opac/images/logout-icon-u.png
deleted file mode 100644
index ece90f1..0000000
Binary files a/Open-ILS/web/opac/images/logout-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/logout-icon.gif b/Open-ILS/web/opac/images/logout-icon.gif
deleted file mode 100644
index 58d9637..0000000
Binary files a/Open-ILS/web/opac/images/logout-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/logout-icon.png b/Open-ILS/web/opac/images/logout-icon.png
deleted file mode 100644
index 8b108e6..0000000
Binary files a/Open-ILS/web/opac/images/logout-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/mix-icon.png b/Open-ILS/web/opac/images/mix-icon.png
deleted file mode 100644
index 2025d04..0000000
Binary files a/Open-ILS/web/opac/images/mix-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/mixed material.jpg b/Open-ILS/web/opac/images/mixed material.jpg
deleted file mode 100644
index f3476be..0000000
Binary files a/Open-ILS/web/opac/images/mixed material.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/mov-icon.png b/Open-ILS/web/opac/images/mov-icon.png
deleted file mode 100644
index 3f26347..0000000
Binary files a/Open-ILS/web/opac/images/mov-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/moving image.jpg b/Open-ILS/web/opac/images/moving image.jpg
deleted file mode 100644
index fc180ca..0000000
Binary files a/Open-ILS/web/opac/images/moving image.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/mussymbol-icon.png b/Open-ILS/web/opac/images/mussymbol-icon.png
deleted file mode 100644
index b9e2e0d..0000000
Binary files a/Open-ILS/web/opac/images/mussymbol-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/myaccount-icon.gif b/Open-ILS/web/opac/images/myaccount-icon.gif
deleted file mode 100644
index bb2a34e..0000000
Binary files a/Open-ILS/web/opac/images/myaccount-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/myaccount-icon.png b/Open-ILS/web/opac/images/myaccount-icon.png
deleted file mode 100644
index f28e921..0000000
Binary files a/Open-ILS/web/opac/images/myaccount-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/noimg.gif b/Open-ILS/web/opac/images/noimg.gif
deleted file mode 100644
index a7df9da..0000000
Binary files a/Open-ILS/web/opac/images/noimg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/nonmusic-icon.png b/Open-ILS/web/opac/images/nonmusic-icon.png
deleted file mode 100644
index 72ec1ee..0000000
Binary files a/Open-ILS/web/opac/images/nonmusic-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/notated music.jpg b/Open-ILS/web/opac/images/notated music.jpg
deleted file mode 100644
index fa8899e..0000000
Binary files a/Open-ILS/web/opac/images/notated music.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/pic-icon.png b/Open-ILS/web/opac/images/pic-icon.png
deleted file mode 100644
index e6de60f..0000000
Binary files a/Open-ILS/web/opac/images/pic-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/placeholder-icon.png b/Open-ILS/web/opac/images/placeholder-icon.png
deleted file mode 100644
index e523300..0000000
Binary files a/Open-ILS/web/opac/images/placeholder-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/recsound-icon.png b/Open-ILS/web/opac/images/recsound-icon.png
deleted file mode 100644
index 246d5a8..0000000
Binary files a/Open-ILS/web/opac/images/recsound-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/reg-txt.gif b/Open-ILS/web/opac/images/reg-txt.gif
deleted file mode 100644
index f3c1bbe..0000000
Binary files a/Open-ILS/web/opac/images/reg-txt.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/relevant-icon-u.gif b/Open-ILS/web/opac/images/relevant-icon-u.gif
deleted file mode 100644
index 496e58b..0000000
Binary files a/Open-ILS/web/opac/images/relevant-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/relevant-icon-u.png b/Open-ILS/web/opac/images/relevant-icon-u.png
deleted file mode 100644
index 512c35a..0000000
Binary files a/Open-ILS/web/opac/images/relevant-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/relevant-icon.gif b/Open-ILS/web/opac/images/relevant-icon.gif
deleted file mode 100644
index 000886b..0000000
Binary files a/Open-ILS/web/opac/images/relevant-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/relevant-icon.png b/Open-ILS/web/opac/images/relevant-icon.png
deleted file mode 100644
index 716a58a..0000000
Binary files a/Open-ILS/web/opac/images/relevant-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/search-btn.gif b/Open-ILS/web/opac/images/search-btn.gif
deleted file mode 100644
index 0775a3d..0000000
Binary files a/Open-ILS/web/opac/images/search-btn.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/searchbar-bg.gif b/Open-ILS/web/opac/images/searchbar-bg.gif
deleted file mode 100644
index 7a0196d..0000000
Binary files a/Open-ILS/web/opac/images/searchbar-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/searchbox-bg.gif b/Open-ILS/web/opac/images/searchbox-bg.gif
deleted file mode 100644
index a926c32..0000000
Binary files a/Open-ILS/web/opac/images/searchbox-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/series-icon-u.gif b/Open-ILS/web/opac/images/series-icon-u.gif
deleted file mode 100644
index 659a021..0000000
Binary files a/Open-ILS/web/opac/images/series-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/series-icon-u.png b/Open-ILS/web/opac/images/series-icon-u.png
deleted file mode 100644
index adf6ffb..0000000
Binary files a/Open-ILS/web/opac/images/series-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/series-icon.gif b/Open-ILS/web/opac/images/series-icon.gif
deleted file mode 100644
index 659a021..0000000
Binary files a/Open-ILS/web/opac/images/series-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/series-icon.png b/Open-ILS/web/opac/images/series-icon.png
deleted file mode 100644
index adf6ffb..0000000
Binary files a/Open-ILS/web/opac/images/series-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/sidebar-bg.gif b/Open-ILS/web/opac/images/sidebar-bg.gif
deleted file mode 100644
index 547e91d..0000000
Binary files a/Open-ILS/web/opac/images/sidebar-bg.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/software, multimedia.jpg b/Open-ILS/web/opac/images/software, multimedia.jpg
deleted file mode 100644
index bbd2002..0000000
Binary files a/Open-ILS/web/opac/images/software, multimedia.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/software-icon.png b/Open-ILS/web/opac/images/software-icon.png
deleted file mode 100644
index a347513..0000000
Binary files a/Open-ILS/web/opac/images/software-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/sound recording-musical.jpg b/Open-ILS/web/opac/images/sound recording-musical.jpg
deleted file mode 100644
index 5eaf85b..0000000
Binary files a/Open-ILS/web/opac/images/sound recording-musical.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/sound recording-nonmusical.jpg b/Open-ILS/web/opac/images/sound recording-nonmusical.jpg
deleted file mode 100644
index 9b706cb..0000000
Binary files a/Open-ILS/web/opac/images/sound recording-nonmusical.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/sound recording.jpg b/Open-ILS/web/opac/images/sound recording.jpg
deleted file mode 100644
index 35f5c39..0000000
Binary files a/Open-ILS/web/opac/images/sound recording.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/sound-icon.png b/Open-ILS/web/opac/images/sound-icon.png
deleted file mode 100644
index 7edee89..0000000
Binary files a/Open-ILS/web/opac/images/sound-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/still images.jpg b/Open-ILS/web/opac/images/still images.jpg
deleted file mode 100644
index 77f6171..0000000
Binary files a/Open-ILS/web/opac/images/still images.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/subject-icon-u.gif b/Open-ILS/web/opac/images/subject-icon-u.gif
deleted file mode 100644
index b2a364b..0000000
Binary files a/Open-ILS/web/opac/images/subject-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/subject-icon-u.png b/Open-ILS/web/opac/images/subject-icon-u.png
deleted file mode 100644
index 7ca277d..0000000
Binary files a/Open-ILS/web/opac/images/subject-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/text.jpg b/Open-ILS/web/opac/images/text.jpg
deleted file mode 100644
index d9db115..0000000
Binary files a/Open-ILS/web/opac/images/text.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/three dimensional object.jpg b/Open-ILS/web/opac/images/three dimensional object.jpg
deleted file mode 100644
index ede4f3b..0000000
Binary files a/Open-ILS/web/opac/images/three dimensional object.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/threed-icon.png b/Open-ILS/web/opac/images/threed-icon.png
deleted file mode 100644
index d4e5194..0000000
Binary files a/Open-ILS/web/opac/images/threed-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/title-icon-u.gif b/Open-ILS/web/opac/images/title-icon-u.gif
deleted file mode 100644
index 35c9504..0000000
Binary files a/Open-ILS/web/opac/images/title-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/title-icon-u.png b/Open-ILS/web/opac/images/title-icon-u.png
deleted file mode 100644
index 53b2c35..0000000
Binary files a/Open-ILS/web/opac/images/title-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/title-icon.gif b/Open-ILS/web/opac/images/title-icon.gif
deleted file mode 100644
index 0be0f37..0000000
Binary files a/Open-ILS/web/opac/images/title-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/title-icon.png b/Open-ILS/web/opac/images/title-icon.png
deleted file mode 100644
index dd3343e..0000000
Binary files a/Open-ILS/web/opac/images/title-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/titledetails-icon-u.gif b/Open-ILS/web/opac/images/titledetails-icon-u.gif
deleted file mode 100644
index dc92e72..0000000
Binary files a/Open-ILS/web/opac/images/titledetails-icon-u.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/titledetails-icon-u.png b/Open-ILS/web/opac/images/titledetails-icon-u.png
deleted file mode 100644
index 2b0ba22..0000000
Binary files a/Open-ILS/web/opac/images/titledetails-icon-u.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/titledetails-icon.gif b/Open-ILS/web/opac/images/titledetails-icon.gif
deleted file mode 100644
index 091bfa0..0000000
Binary files a/Open-ILS/web/opac/images/titledetails-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/titledetails-icon.png b/Open-ILS/web/opac/images/titledetails-icon.png
deleted file mode 100644
index fa9c732..0000000
Binary files a/Open-ILS/web/opac/images/titledetails-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/book-icon.gif b/Open-ILS/web/opac/images/tor/book-icon.gif
deleted file mode 100644
index 7ec13f0..0000000
Binary files a/Open-ILS/web/opac/images/tor/book-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/book-icon.png b/Open-ILS/web/opac/images/tor/book-icon.png
deleted file mode 100644
index 2800684..0000000
Binary files a/Open-ILS/web/opac/images/tor/book-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/earth-icon.gif b/Open-ILS/web/opac/images/tor/earth-icon.gif
deleted file mode 100644
index 4f2e05c..0000000
Binary files a/Open-ILS/web/opac/images/tor/earth-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/earth-icon.png b/Open-ILS/web/opac/images/tor/earth-icon.png
deleted file mode 100644
index 73b37ab..0000000
Binary files a/Open-ILS/web/opac/images/tor/earth-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/mix-icon.gif b/Open-ILS/web/opac/images/tor/mix-icon.gif
deleted file mode 100644
index 2fac684..0000000
Binary files a/Open-ILS/web/opac/images/tor/mix-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/mix-icon.png b/Open-ILS/web/opac/images/tor/mix-icon.png
deleted file mode 100644
index 2025d04..0000000
Binary files a/Open-ILS/web/opac/images/tor/mix-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/mov-icon.gif b/Open-ILS/web/opac/images/tor/mov-icon.gif
deleted file mode 100644
index 7c21956..0000000
Binary files a/Open-ILS/web/opac/images/tor/mov-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/mov-icon.png b/Open-ILS/web/opac/images/tor/mov-icon.png
deleted file mode 100644
index 3f26347..0000000
Binary files a/Open-ILS/web/opac/images/tor/mov-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/mussymbol-icon.gif b/Open-ILS/web/opac/images/tor/mussymbol-icon.gif
deleted file mode 100644
index 0441983..0000000
Binary files a/Open-ILS/web/opac/images/tor/mussymbol-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/mussymbol-icon.png b/Open-ILS/web/opac/images/tor/mussymbol-icon.png
deleted file mode 100644
index b9e2e0d..0000000
Binary files a/Open-ILS/web/opac/images/tor/mussymbol-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/nonmusic-icon.gif b/Open-ILS/web/opac/images/tor/nonmusic-icon.gif
deleted file mode 100644
index 6cd32f7..0000000
Binary files a/Open-ILS/web/opac/images/tor/nonmusic-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/nonmusic-icon.png b/Open-ILS/web/opac/images/tor/nonmusic-icon.png
deleted file mode 100644
index 72ec1ee..0000000
Binary files a/Open-ILS/web/opac/images/tor/nonmusic-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/pic-icon.gif b/Open-ILS/web/opac/images/tor/pic-icon.gif
deleted file mode 100644
index 07fe0e8..0000000
Binary files a/Open-ILS/web/opac/images/tor/pic-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/pic-icon.png b/Open-ILS/web/opac/images/tor/pic-icon.png
deleted file mode 100644
index e6de60f..0000000
Binary files a/Open-ILS/web/opac/images/tor/pic-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/placeholder-icon.gif b/Open-ILS/web/opac/images/tor/placeholder-icon.gif
deleted file mode 100644
index 18d949d..0000000
Binary files a/Open-ILS/web/opac/images/tor/placeholder-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/placeholder-icon.png b/Open-ILS/web/opac/images/tor/placeholder-icon.png
deleted file mode 100644
index e523300..0000000
Binary files a/Open-ILS/web/opac/images/tor/placeholder-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/recsound-icon.gif b/Open-ILS/web/opac/images/tor/recsound-icon.gif
deleted file mode 100644
index cfde2a5..0000000
Binary files a/Open-ILS/web/opac/images/tor/recsound-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/recsound-icon.png b/Open-ILS/web/opac/images/tor/recsound-icon.png
deleted file mode 100644
index 246d5a8..0000000
Binary files a/Open-ILS/web/opac/images/tor/recsound-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/software, multimedia.jpg b/Open-ILS/web/opac/images/tor/software, multimedia.jpg
deleted file mode 100644
index bbd2002..0000000
Binary files a/Open-ILS/web/opac/images/tor/software, multimedia.jpg and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/software-icon.gif b/Open-ILS/web/opac/images/tor/software-icon.gif
deleted file mode 100644
index 2fc293f..0000000
Binary files a/Open-ILS/web/opac/images/tor/software-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/software-icon.png b/Open-ILS/web/opac/images/tor/software-icon.png
deleted file mode 100644
index a347513..0000000
Binary files a/Open-ILS/web/opac/images/tor/software-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/sound-icon.gif b/Open-ILS/web/opac/images/tor/sound-icon.gif
deleted file mode 100644
index 463272f..0000000
Binary files a/Open-ILS/web/opac/images/tor/sound-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/sound-icon.png b/Open-ILS/web/opac/images/tor/sound-icon.png
deleted file mode 100644
index 7edee89..0000000
Binary files a/Open-ILS/web/opac/images/tor/sound-icon.png and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/threed-icon.gif b/Open-ILS/web/opac/images/tor/threed-icon.gif
deleted file mode 100644
index b690a1d..0000000
Binary files a/Open-ILS/web/opac/images/tor/threed-icon.gif and /dev/null differ
diff --git a/Open-ILS/web/opac/images/tor/threed-icon.png b/Open-ILS/web/opac/images/tor/threed-icon.png
deleted file mode 100644
index d4e5194..0000000
Binary files a/Open-ILS/web/opac/images/tor/threed-icon.png and /dev/null differ

commit cc942ca6243d2155523ecb5c2c2423327f064dae
Author: Jeff Godin <jgodin at tadl.org>
Date:   Sat May 16 11:22:59 2015 -0700

    LP#1312309: remove unused images
    
    Removing unused images. The orgtree images exist elsewhere, and the
    tor images exist elsewhere also (and have been updated).
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/images/opac/orgtree/base.gif b/Open-ILS/images/opac/orgtree/base.gif
deleted file mode 100644
index 9ac0b11..0000000
Binary files a/Open-ILS/images/opac/orgtree/base.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/cd.gif b/Open-ILS/images/opac/orgtree/cd.gif
deleted file mode 100644
index 7503819..0000000
Binary files a/Open-ILS/images/opac/orgtree/cd.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/empty.gif b/Open-ILS/images/opac/orgtree/empty.gif
deleted file mode 100644
index b5cf523..0000000
Binary files a/Open-ILS/images/opac/orgtree/empty.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/folder.gif b/Open-ILS/images/opac/orgtree/folder.gif
deleted file mode 100644
index eb12976..0000000
Binary files a/Open-ILS/images/opac/orgtree/folder.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/folderopen.gif b/Open-ILS/images/opac/orgtree/folderopen.gif
deleted file mode 100644
index c5c3110..0000000
Binary files a/Open-ILS/images/opac/orgtree/folderopen.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/globe.gif b/Open-ILS/images/opac/orgtree/globe.gif
deleted file mode 100644
index 57123d0..0000000
Binary files a/Open-ILS/images/opac/orgtree/globe.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/imgfolder.gif b/Open-ILS/images/opac/orgtree/imgfolder.gif
deleted file mode 100644
index e6d8803..0000000
Binary files a/Open-ILS/images/opac/orgtree/imgfolder.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/join.gif b/Open-ILS/images/opac/orgtree/join.gif
deleted file mode 100644
index 34dd476..0000000
Binary files a/Open-ILS/images/opac/orgtree/join.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/joinbottom.gif b/Open-ILS/images/opac/orgtree/joinbottom.gif
deleted file mode 100644
index 48b81c8..0000000
Binary files a/Open-ILS/images/opac/orgtree/joinbottom.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/line.gif b/Open-ILS/images/opac/orgtree/line.gif
deleted file mode 100644
index 1a259ee..0000000
Binary files a/Open-ILS/images/opac/orgtree/line.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/minus.gif b/Open-ILS/images/opac/orgtree/minus.gif
deleted file mode 100644
index 3d212a9..0000000
Binary files a/Open-ILS/images/opac/orgtree/minus.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/minusbottom.gif b/Open-ILS/images/opac/orgtree/minusbottom.gif
deleted file mode 100644
index dc3198b..0000000
Binary files a/Open-ILS/images/opac/orgtree/minusbottom.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/musicfolder.gif b/Open-ILS/images/opac/orgtree/musicfolder.gif
deleted file mode 100644
index f620789..0000000
Binary files a/Open-ILS/images/opac/orgtree/musicfolder.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/nolines_minus.gif b/Open-ILS/images/opac/orgtree/nolines_minus.gif
deleted file mode 100644
index 2592ac2..0000000
Binary files a/Open-ILS/images/opac/orgtree/nolines_minus.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/nolines_plus.gif b/Open-ILS/images/opac/orgtree/nolines_plus.gif
deleted file mode 100644
index f258ce2..0000000
Binary files a/Open-ILS/images/opac/orgtree/nolines_plus.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/page.gif b/Open-ILS/images/opac/orgtree/page.gif
deleted file mode 100644
index 42d7318..0000000
Binary files a/Open-ILS/images/opac/orgtree/page.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/plus.gif b/Open-ILS/images/opac/orgtree/plus.gif
deleted file mode 100644
index b2c9972..0000000
Binary files a/Open-ILS/images/opac/orgtree/plus.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/plusbottom.gif b/Open-ILS/images/opac/orgtree/plusbottom.gif
deleted file mode 100644
index b5671d8..0000000
Binary files a/Open-ILS/images/opac/orgtree/plusbottom.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/question.gif b/Open-ILS/images/opac/orgtree/question.gif
deleted file mode 100644
index dd4e685..0000000
Binary files a/Open-ILS/images/opac/orgtree/question.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/orgtree/trash.gif b/Open-ILS/images/opac/orgtree/trash.gif
deleted file mode 100644
index cfa0f00..0000000
Binary files a/Open-ILS/images/opac/orgtree/trash.gif and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/cartographic.jpg b/Open-ILS/images/opac/tor/cartographic.jpg
deleted file mode 100644
index 5bbeacc..0000000
Binary files a/Open-ILS/images/opac/tor/cartographic.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/mixed material.jpg b/Open-ILS/images/opac/tor/mixed material.jpg
deleted file mode 100644
index bac8c57..0000000
Binary files a/Open-ILS/images/opac/tor/mixed material.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/moving image.jpg b/Open-ILS/images/opac/tor/moving image.jpg
deleted file mode 100644
index a339a24..0000000
Binary files a/Open-ILS/images/opac/tor/moving image.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/notated music.jpg b/Open-ILS/images/opac/tor/notated music.jpg
deleted file mode 100644
index 4110c68..0000000
Binary files a/Open-ILS/images/opac/tor/notated music.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/software, multimedia.jpg b/Open-ILS/images/opac/tor/software, multimedia.jpg
deleted file mode 100644
index 7e34ec6..0000000
Binary files a/Open-ILS/images/opac/tor/software, multimedia.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/sound recording-musical.jpg b/Open-ILS/images/opac/tor/sound recording-musical.jpg
deleted file mode 100644
index fd2232c..0000000
Binary files a/Open-ILS/images/opac/tor/sound recording-musical.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/sound recording-nonmusical.jpg b/Open-ILS/images/opac/tor/sound recording-nonmusical.jpg
deleted file mode 100644
index fd2232c..0000000
Binary files a/Open-ILS/images/opac/tor/sound recording-nonmusical.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/sound recording.jpg b/Open-ILS/images/opac/tor/sound recording.jpg
deleted file mode 100644
index fd2232c..0000000
Binary files a/Open-ILS/images/opac/tor/sound recording.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/still images.jpg b/Open-ILS/images/opac/tor/still images.jpg
deleted file mode 100644
index 77f6171..0000000
Binary files a/Open-ILS/images/opac/tor/still images.jpg and /dev/null differ
diff --git a/Open-ILS/images/opac/tor/three dimensional object.jpg b/Open-ILS/images/opac/tor/three dimensional object.jpg
deleted file mode 100644
index 33a02c8..0000000
Binary files a/Open-ILS/images/opac/tor/three dimensional object.jpg and /dev/null differ

commit 6004dac34f698b725131422538ada2ceaccc3e2b
Author: Jeff Godin <jgodin at tadl.org>
Date:   Sat May 16 10:19:12 2015 -0700

    LP#1312309: JSPAC remove javascript, combined.js, etc.
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/src/extras/autogen.sh b/Open-ILS/src/extras/autogen.sh
index acecbba..37c9d90 100755
--- a/Open-ILS/src/extras/autogen.sh
+++ b/Open-ILS/src/extras/autogen.sh
@@ -109,55 +109,12 @@ perl -MOpenILS::Utils::Configure -e "print OpenILS::Utils::Configure::locale_htm
 echo " -> $OUTFILE"
 OUTFILES="$OUTFILES $OUTFILE"
 
-OUTFILE="$JSDIR/OrgLasso.js"
-echo "Updating Search Groups";
-perl -MOpenILS::Utils::Configure -e "print OpenILS::Utils::Configure::org_lasso();" > "$OUTFILE";
-cp "$OUTFILE" "$FMDOJODIR/"
-echo " -> $OUTFILE"
-OUTFILES="$OUTFILES $OUTFILE"
-
-OUTFILE="$JSDIR/*/FacetDefs.js"
-echo "Updating Facet Definitions";
-perl -MOpenILS::Utils::Configure -e "OpenILS::Utils::Configure::facet_types('$JSDIR', 'FacetDefs.js');"
-cp "$JSDIR/en-US/FacetDefs.js" "$FMDOJODIR/"
-echo " -> $OUTFILE"
-OUTFILES="$OUTFILES $OUTFILE"
-
 if [ ! -z "$PROXIMITY" ]
 then
 	echo "Refreshing proximity of org units";
 	perl -MOpenILS::Utils::Configure -e "OpenILS::Utils::Configure::org_tree_proximity();"
 fi
 
-echo "Creating combined JS..."
-cd $JSDIR;
-
-for skin in $(ls $SKINDIR); do
-
-    [ ! -f $SKINDIR/$skin/xml/common/js_common.xml ] && continue;
-
-    files=$(sed -n -e "/<\!--START COMPRESSION-->/,/<\!--END COMPRESSION-->/  s/.*\?\/\([^']*\.js\)'.*/\1/p" $SKINDIR/$skin/xml/common/js_common.xml);
-
-    if [ -n "$files" ]; then
-
-        # add the selected files to one combined file
-        COMPRESS_FILE="$SKINDIR/$skin/js/combined.js"
-        cat $files > $COMPRESS_FILE
-
-        # if a compressor is configured, compress and report the size savings
-        if [ -n "$COMPRESSOR" ]; then
-
-            echo -n "before: "; du -h $COMPRESS_FILE;
-
-            $COMPRESSOR $COMPRESS_FILE > $COMPRESS_FILE.t;
-            mv $COMPRESS_FILE.t $COMPRESS_FILE;
-
-            echo -n "after:  "; du -h $COMPRESS_FILE;
-            echo " -> $COMPRESS_FILE";
-        fi;
-    fi;
-done;
-
 # Generate a hash of the generated files
 (
 	date +%Y%m%d
diff --git a/Open-ILS/web/opac/skin/default/xml/common/js_common.xml b/Open-ILS/web/opac/skin/default/xml/common/js_common.xml
deleted file mode 100644
index 4fc4605..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/js_common.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<!--#if expr="$OILS_PAGE='myopac.xml'"-->
-<!-- my acccount uses a lot more classes -->
-<script language='javascript'  
-    src='/IDL2js?mvr,bre,aou,aout,pgt,lasso,cmf,cmc,cmsa,cam,cifm,clfm,citm,cblvl,ccs,accs,au,ahr,ahrn,acn,actscecm,cbreb,cbreb,cbrebi,acp,cust,ac,aua,mous,circ,mbts,mb,ausp,csp'
-    type='text/javascript'></script>
-<!--#else-->
-<script language='javascript'  
-    src='/IDL2js?mvr,bre,aou,aout,pgt,lasso,cmf,cmc,cmsa,cam,cifm,clfm,citm,cblvl,ccs,aba,acs,at,abaafm,acsaf,acsbf'
-    type='text/javascript'></script>
-<!--#endif-->
-
-<script language='javascript' type="text/javascript">
-    var locale = location.href.replace( /.+opac\/([^\/]+)\/skin.+/, '$1' );
-    if (!locale) locale = '<!--#echo var="locale"-->';
-     var djConfig = {
-         locale: locale.toLowerCase(),
-         parseOnLoad: true,
-         isDebug: false
-     }, lang, bidi;
-</script>
-
-<script language='javascript' src='/js/dojo/dojo/dojo.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/JSON_v1.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<script language='javascript' type="text/javascript" src='/js/dojo/opensrf/opensrf.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<script language='javascript' type="text/javascript" src='/js/dojo/dojo/openils_dojo.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<script language='javascript' type="text/javascript" src='/js/dojo/fieldmapper/AutoIDL.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-
-<script language='javascript' type="text/javascript" src='<!--#echo var="OILS_JS_BASE"-->/<!--#echo var="locale"-->/OrgTree.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<script language='javascript' type="text/javascript" src='<!--#echo var="OILS_JS_BASE"-->/<!--#echo var="locale"-->/FacetDefs.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<script language='javascript' type="text/javascript" src='<!--#echo var="OILS_JS_BASE"-->/OrgLasso.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-
-<!--#if expr="$OILS_OPAC_COMBINED_JS"-->
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/combined.js?<!--#include virtual="/eg_cache_hash"-->'></script>
-<!--#else --> 
-<!-- 
-    When combined JS is enabled in the Apache config, the block 
-    below defines which files are added to the final combined JS file. 
-    Currently, only files in $OPAC/common/js/ are eligible for automatic combination.
--->
-<!--START COMPRESSION-->
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/utils.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/config.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/CGI.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/md5.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/slimtree.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/opac_utils.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/org_utils.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/RemoteRequest.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/init.js'></script>
-<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/added_content.js'></script>
-<!--END COMPRESSION--> 
-<!--#endif -->
-
-<!-- Some global js -->
-<script language='javascript' type='text/javascript'>
-    config.css.color_1 = "color_1";
-    config.css.color_2 = "color_2";
-    config.css.color_3 = "color_3";
-    <!-- set up some global JS config variables, read from the Apache config -->
-    var OILS_OPAC_IMAGES_HOST = null;
-    <!--#if expr="$OILS_OPAC_IMAGES_HOST"-->
-        OILS_OPAC_IMAGES_HOST = '<!--#echo var="OILS_OPAC_IMAGES_HOST"-->extras/ac/jacket/';
-    <!--#endif -->
-    var OILS_OPAC_STATIC_PROTOCOL = null;
-    <!--#if expr="$OILS_OPAC_STATIC_PROTOCOL"-->
-        OILS_OPAC_STATIC_PROTOCOL = '<!--#echo var="OILS_OPAC_STATIC_PROTOCOL"-->';
-    <!--#endif -->
-    <!-- builds the "Now searching: <org_unit>" text on the home page -->
-    function home_init() {
-        getId("home_adv_search_link").setAttribute("href", buildOPACLink({page:ADVANCED})); 
-        getId("home_myopac_link").setAttribute("href", buildOPACLink({page:MYOPAC}, false, true));
-    }
-    <!--#if expr="$OILS_OPAC_FORCE_LOGIN_SSL"-->
-        forceLoginSSL = true;
-    <!--#endif -->
-</script>

commit 2274e9901cfbd7d2f7ab59b3e21d78f78614ad8e
Author: Jeff Godin <jgodin at tadl.org>
Date:   Sat May 16 09:55:06 2015 -0700

    LP#1312309: JSPAC remove more css
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/web/opac/common/css/largefont.css b/Open-ILS/web/opac/common/css/largefont.css
deleted file mode 100644
index 18c86dd..0000000
--- a/Open-ILS/web/opac/common/css/largefont.css
+++ /dev/null
@@ -1,13 +0,0 @@
-body				{ font-family: Helvetica, Arial, Tahoma, sans-serif; font-size: 1.5em; } 
-body table		{ font-size: inherit; }
-
-.org_link { font-size: 92%; }
-.sidebar_extra_item { font-size: 95%; }
-.searchbar_tag { font-size: 90%; } 
-#offset_start { font-weight: 600; }
-#offset_end { font-weight: 600; }
-#result_count { font-weight: 600; } 
-.nav_link_active { font-weight: 600;}
-.copy_count_cell { font-size: 80%; }
-
-
diff --git a/Open-ILS/web/opac/common/css/mediumfont.css b/Open-ILS/web/opac/common/css/mediumfont.css
deleted file mode 100644
index 925b0ee..0000000
--- a/Open-ILS/web/opac/common/css/mediumfont.css
+++ /dev/null
@@ -1,20 +0,0 @@
-body { font-family: Helvetica, Arial, Tahoma, sans-serif; font-size: 9pt;} 
-table { font-size: 9pt; }
-table tr { font-size: 9pt; }
-table tr td { font-size: 9pt; }
-
-body table tr td	{ font-size: inherit; }
-/*body table tr td	{ font-size: 95%;}*/
-
-.org_link { font-size: 9pt; }
-.sidebar_extra_item { font-size: 9pt; }
-.searchbar_tag { font-size: 9pt; } 
-#offset_start { font-weight: 600; font-size: 9pt;}
-#offset_end { font-weight: 600;  font-size: 9pt;}
-#result_count { font-weight: 600;  font-size: 9pt;} 
-.nav_link_active { font-weight: 600; font-size: 9pt;}
-.copy_count_cell { font-size: 8pt; }
-
-#rdetail_copy_info_table { font-size: 9pt; }
-.rdetail_copy_nav_link { font-weight: normal; font-size: 9pt; }
-#rdetail_view_marc { font-size: 9pt; }
diff --git a/Open-ILS/web/opac/common/css/smallfont.css b/Open-ILS/web/opac/common/css/smallfont.css
deleted file mode 100644
index 594aac1..0000000
--- a/Open-ILS/web/opac/common/css/smallfont.css
+++ /dev/null
@@ -1,13 +0,0 @@
-body				{ font-family: Helvetica, Arial, Tahoma, sans-serif; font-size: 50%; } 
-body table		{ font-size: inherit; }
-
-.org_link { font-size: 92%; }
-.sidebar_extra_item { font-size: 95%; }
-.searchbar_tag { font-size: 90%; } 
-#offset_start { font-weight: 600; }
-#offset_end { font-weight: 600; }
-#result_count { font-weight: 600; } 
-.nav_link_active { font-weight: 600;}
-.copy_count_cell { font-size: 80%; }
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/css_common.xml b/Open-ILS/web/opac/skin/default/xml/common/css_common.xml
deleted file mode 100644
index c01bb3f..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/css_common.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<!-- CSS shared across pages goes here --> 
-
-<link type='text/css' rel='stylesheet' href="<!--#echo var='OILS_SKIN_BASE'-->/default/css/layout.css"/>
-
-<!-- Our font CSS's -->
-<link type='text/css' rel='stylesheet' href='<!--#echo var="OILS_CSS_BASE"-->/mediumfont.css' />
-
-<!-- Our colors -->
-<link type='text/css' rel="stylesheet" href="<!--#echo var='OILS_THEME_BASE'-->/default/css/colors.css" />
-
-<!-- An alternate stylesheet -->
-<link type='text/css' rel="alternate stylesheet" title='&opac.style.reddish;' href="<!--#echo var='OILS_THEME_BASE'-->/reddish/css/colors.css" />
-
-<!-- OpenSearch auto discovery -->
-<link type="application/opensearchdescription+xml"
-	rel='search' title="Evergreen"
-	href="http://<!--#echo var='SERVER_NAME'-->/opac/extras/opensearch/1.1/-/osd.xml" />
-
-<!-- enable Dojo date picker -->
-<style type="text/css">
-	@import '/js/dojo/dojo/resources/dojo.css';
-	@import '/js/dojo/dijit/themes/tundra/tundra.css';
-</style>
diff --git a/Open-ILS/web/opac/theme/default/css/colors.css b/Open-ILS/web/opac/theme/default/css/colors.css
deleted file mode 100644
index 7bd54cc..0000000
--- a/Open-ILS/web/opac/theme/default/css/colors.css
+++ /dev/null
@@ -1,139 +0,0 @@
-body a			{ color: black; text-decoration: none;}
-body a:visited { color: black; text-decoration: none;}
-body a:hover	{ color: red; text-decoration: underline;}
-.NoveListSelect a			{ color: blue; text-decoration: underline;}
-.NoveListSelect a:visited	{ color: purple; text-decoration: underline;}
-
-
-/* the idea is to have 4 complimentary colors that 
- * are used throughout the opac.  Edit those colors
- * in this file
- */
- 
-.color_1 { background: #A7EA9D; color: #000000; }
-.color_2 { background: #64EA4F; color: #000000; }
-.color_3 { background: #E0F6E0; color: #000000; }
-.color_4 { background: #E0F0E0; color: #000000; }
-
-.border_1 { border: 1px solid #A7EA9D; }
-.border_2 { border: 1px solid #64EA4F; }
-.border_3 { border: 1px solid #E0F6E0; }
-.border_4 { border: 1px solid #E0F0E0; }
-
-.border_1_2 { border: 2px solid #A7EA9D; }
-.border_2_2 { border: 2px solid #64EA4F; }
-.border_3_2 { border: 2px solid #E0F6E0; }
-.border_4_2 { border: 2px solid #E0F0E0; }
-
-.border_1_3 { border: 3px solid #A7EA9D; }
-.border_2_3 { border: 3px solid #64EA4F; }
-.border_3_3 { border: 3px solid #E0F6E0; }
-.border_4_3 { border: 3px solid #E0F0E0; }
-
-/* some facet styling */
-.facetClassContainer { margin: 2px; border: 1px solid #64EA4F; }
-.facetClassLabelContainer { background: #A7EA9D; border: 1px solid #A7EA9D; }
-.facetClassLabel { font-weight: bold; text-align: center; }
-.facetFieldContainer { background: #E0F6E0; }
-.facetFieldLabel { padding-left: 2px; margin-top: 5px; margin-bottom: 5px; font-weight: bold; text-align: left; }
-.extraFacetFieldsWrapper { }
-.toggleExtraFacetFieldsButton { float: right; margin: 0px; padding: 0px; }
-.facetFieldLineCount { display: inline-block; border-right: 1px solid #A7EA9D; color: gray; width: 3em; margin-right: 3px }
-.facetField { border-top: 1px solid #A7EA9D; }
-.facetFields { padding-left: 5px; }
-.facetFieldLineValue { overflow: hidden; text-overflow: ellipsis; }
-
-.searcherSimpleSearchWrapper {} 
-.searcherAdvancedSearchWrapper { margin: 2px; border: 1px solid #64EA4F; } 
-
-.searcherClassedSearchesContainer { margin: 5px; } 
-.searcherClassedSearches {} 
-.searcherClassedSearchesLabel { font-weight: bold; } 
-
-.searcherClassedSearchesAddContainer { width: 50%; text-align: center; }
-
-.searcherFacetedSearchesContainer { margin: 5px; border-top: 1px solid black; } 
-.searcherFacetedSearches {} 
-.searcherFacetedSearchesLabel { font-weight: bold; } 
-
-.searcherFilterModifierContainer { margin: 5px; border-top: 1px solid black; } 
-
-.searcherFiltersLabel { font-weight: bold; } 
-.searcherFilterContainer {} 
-
-.searcherModifiersLabel { font-weight: bold; } 
-.searcherModifierContainer {} 
-
-.searcherGoContainer { width: 50%; text-align: right; }
-.searcherDeckSwapContainer {}
-
-/* general purpose light borders */
-.border_5 { border: 1px solid #D0D0D0; }
-.border_6 { border: 1px solid #808080; }
-
-input:focus { background: #E0F0E0; color: #000000;}
-a:focus { background: #E0F0E0; color: #000000;}
-
-
-/* ---------------------------------------------------------------------- */
-
-.canvas { /* main content div for each page */
-    border-left: 3px solid #A7EA9D;
-    border-bottom: 3px solid #A7EA9D;
-	border-top: 3px solid #A7EA9D;
-}
-
-/* border around home search box */
-.home_search { border: 3px solid #A7EA9D; }
-
-/* main nav sidebar */
-.sidebar_item_active { background: #A7EA9D; }
-
-/* record detail summary block */
-.rdetail_desc { border: 1px solid #A7EA9D; }
-.rdetail_item { border: 1px solid #A7EA9D; }
-.rdetail_extras_selected { background: #E0F0E0;} 
-
-
-.data_grid thead tr { background: #E0F0E0; color: #000000; }
-.data_grid thead td { border: 1px solid #808080; }
-.data_grid tbody td { border: 1px solid #E0F6E0; }
-.data_grid_nb thead tr { background: #E0F0E0; color: #000000; }
-.data_grid_nb thead td { border: none; }
-.data_grid_nb tbody td { border: none; }
-
-.light_border { border: 1px solid #E0F6E0; }
-
-.adv_quick_search_submit { border-bottom: 3px solid #E0F6E0;}
-
-.myopac_link_active { background: #E0F6E0; }
-
-.sidebar_extra_link { text-decoration: none; }
-#searchbar_tag_on { color: red; }
-.searchbar_item { color: black; } 
-#login_box { border-top: 1px solid #808080; border-bottom: 1px solid #808080; }
-#next_prev_links_dead { color: #808080; text-decoration: none; }
-
-.nav_link_active {font-weight: bold;}
-
-.search_link { text-decoration: none; }
-.result_table_subtable { border-top: 1px solid #E0E0E0; }
-
-.copy_count_cell { border-right: 1px solid #E0E0E0; } 
-.copy_count_div {	border-left: 2px solid #E0F6E0; border-right: 2px solid #E0F6E0; }
-
-#rdetail_image_cell { border: 1px solid white; border-right: 1px solid #A7EA9D;}
-#rdetail_img_link { display: block; margin-left: 1em; margin-bottom: 1em; }
-
-.x_mark { color: red; }
-.check_mark { color: green; }
-
-#myopac_holds_thaw_date_form { border: 1px solid #E0E0E0; } 
-
-.invalid_field { border: 3px solid red; }
-
-.hold_expire_warning { color:red; }
-
-#result_low_hits { border-top: 2px solid #A7EA9D }
-
-.parts-warning { border: 2px solid red; }
diff --git a/Open-ILS/web/opac/theme/reddish/css/colors.css b/Open-ILS/web/opac/theme/reddish/css/colors.css
deleted file mode 100644
index 7c49125..0000000
--- a/Open-ILS/web/opac/theme/reddish/css/colors.css
+++ /dev/null
@@ -1,96 +0,0 @@
-body a			{ color: black; text-decoration: none;}
-body a:visited { color: black; text-decoration: none;}
-body a:hover	{ color: red; text-decoration: underline;}
-
-
-/*
-.color_1 { background: #A7EA9D; color: #000000; }
-.color_2 { background: #64EA4F; color: #000000; }
-.color_3 { background: #CCFFFF; color: #000000; }
-.color_4 { background: #E0F0E0; color: #000000; } E0F6EO?
-*/
-
-.color_1 { background: #FF8000; color: #000000; }
-.color_2 { background: #B35A00; color: #000000; }
-.color_3 { background: #FFDFBF; color: #000000; }
-.color_4 { background: #FFC080; color: #000000; }
-
-.border_1 { border: 1px solid #FF8000; }
-.border_2 { border: 1px solid #B35A00; }
-.border_3 { border: 1px solid #FFDFBF; }
-.border_4 { border: 1px solid #FFC080; }
-
-.border_1_2 { border: 2px solid #FF8000; }
-.border_2_2 { border: 2px solid #B35A00; }
-.border_3_2 { border: 2px solid #FFDFBF; }
-.border_4_2 { border: 2px solid #FFC080; }
-
-.border_1_3 { border: 3px solid #FF8000; }
-.border_2_3 { border: 3px solid #B35A00; }
-.border_3_3 { border: 3px solid #FFDFBF; }
-.border_4_3 { border: 3px solid #FFC080; }
-
-
-
-
-/* general purpose light borders */
-.border_5 { border: 1px solid #D0D0D0; }
-.border_6 { border: 1px solid #808080; }
-
-input:focus { background: #FFDFBF; color: #000000;}
-a:focus { background: #FFDFBF; color: #000000;}
-
-
-/* ---------------------------------------------------------------------- */
-
-.canvas { /* main content div for each page */
-    border-left: 3px solid #FF8000;
-    border-bottom: 3px solid #FF8000;
-	border-top: 3px solid #FF8000;
-}
-
-/* border around home search box */
-.home_search { border: 3px solid #FF8000; }
-
-/* main nav sidebar */
-.sidebar_item_active { background: #FF8000; }
-
-/* record detail summary block */
-.rdetail_desc { border: 1px solid #FF8000; }
-.rdetail_item { border: 1px solid #FF8000; }
-.rdetail_extras_selected { background: #FFC080;} 
-
-
-.data_grid thead tr { background: #FFC080; color: #000000; }
-.data_grid thead td { border: 1px solid #808080; }
-.data_grid tbody td { border: 1px solid #FFDFBF; }
-.data_grid_nb thead tr { background: #FFC080; color: #000000; }
-.data_grid_nb thead td { border: none; }
-.data_grid_nb tbody td { border: none; }
-
-.light_border { border: 1px solid #FFDFBF; }
-
-.adv_quick_search_submit { border-bottom: 3px solid #FFDFBF;}
-
-.myopac_link_active { background: #FFDFBF; }
-
-.sidebar_extra_link { text-decoration: none; }
-#searchbar_tag_on { color: red; }
-.searchbar_item { color: black; } 
-#login_box { border-top: 1px solid #808080; border-bottom: 1px solid #808080; }
-#next_prev_links_dead { color: #808080; text-decoration: none; }
-
-.nav_link_active {font-weight: bold;}
-
-.search_link { text-decoration: none; }
-.result_table_subtable { border-top: 1px solid #E0E0E0; }
-
-.copy_count_cell { border-right: 1px solid #E0E0E0; } 
-.copy_count_div {	border-left: 2px solid #E0F6E0; border-right: 2px solid #E0F6E0; }
-
-#rdetail_image_cell { border: 1px solid white; border-right: 1px solid #A7EA9D;}
-
-
-
-
-

commit e14612eaab0d7d3a19eb9c880681628812df007d
Author: Jeff Godin <jgodin at tadl.org>
Date:   Sat May 16 09:41:45 2015 -0700

    LP#1312309: JSPAC first pass at removing xml and js files
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/web/opac/common/xml/item_lang_options.xml b/Open-ILS/web/opac/common/xml/item_lang_options.xml
deleted file mode 100644
index 90ee666..0000000
--- a/Open-ILS/web/opac/common/xml/item_lang_options.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-<!--
-Language otions for languages that exist in the catalog.
-This file should be updated on occasion.
-
-develooper=# select code,value from config.language_map m 
-	join metabib.rec_descriptor r on (r.item_lang = m.code) group by 1,2;
--->
-
-<option value='eng'>English</option>
-<option value='spa'>Spanish</option>
-<option value='fre'>French</option>
-<option value='ger'>German</option>
-<option value='ita'>Italian</option>
-<option value='chi'>Chinese</option>
-<option value='jpn'>Japanese</option>
-<option value='kor'>Korean</option>
-<option value='dut'>Dutch</option>
-<option value='gre'>Greek, Modern (1453- )</option>
-<option value='lat'>Latin</option>
-<option value='vie'>Vietnamese</option>
-<option value='rus'>Russian</option>
-<option value='nor'>Norwegian</option>
-<option value='wel'>Welsh</option>
-<option value='pau'>Palauan</option>
-<option value='swe'>Swedish</option>
-<option value='nav'>Navajo</option>
-<option value='und'>Undetermined</option>
diff --git a/Open-ILS/web/opac/skin/default/js/adv_global.js b/Open-ILS/web/opac/skin/default/js/adv_global.js
deleted file mode 100644
index daf3e67..0000000
--- a/Open-ILS/web/opac/skin/default/js/adv_global.js
+++ /dev/null
@@ -1,337 +0,0 @@
-
-attachEvt("common", "run", advgInit);
-attachEvt("common", "locationChanged", advSyncCopyLocLink );
-
-var COOKIE_NOGROUP_RECORDS = 'grpt';
-var advSelectedOrg = null;
-
-function advgInit() {
-
-	/* XXX */
-    dojo.require('dojo.cookie');
-	if( dojo.cookie(COOKIE_NOGROUP_RECORDS) || SHOW_MR_DEFAULT )
-		$('adv_group_titles').checked = true;
-
-	$n($('adv_global_tbody'), 'term').focus();
-
-    var ctypes = ["bib_level", "item_form", "item_type", "audience", "lit_form"];
-
-    var req = new Request('open-ils.fielder:open-ils.fielder.ccvm.atomic', {"cache":1,"query":{"ctype":ctypes, "opac_visible":"t", "is_simple":"f"}});
-    req.callback(advDrawBibExtras);
-    req.request.ctypes = ctypes;
-    req.send();
-
-	var input = $n($('adv_global_trow'), 'term');
-	input.focus();
-
-    var rows = $('adv_global_tbody').getElementsByTagName('tr');
-    for(var t = 0; t < rows.length; t++) {
-        if($n(rows[t], 'term')) {
-            setEnterFunc($n(rows[t], 'term'), advSubmitGlobal);
-        }
-    }
-
-    if(getSort() && getSortDir()) {
-	    setSelector($('adv_global_sort_by'), getSort());
-	    setSelector($('adv_global_sort_dir'), getSortDir());
-        if(getSort() != 'rel')
-            $('adv_global_sort_dir').disabled = false;
-    }
-
-    if(getAvail())
-        $('opac.result.limit2avail').checked = true;
-
-    // not sure we want to propogate the pubdate filter, 
-    // since other filters are not propogated
-    //advInitPubFilter();
-
-    if(!new CGI().param(PARAM_NOPERSIST_SEARCH))
-        initSearchBoxes();
-    advSyncCopyLocLink(getLocation());
-}
-
-function advInitPubFilter() {
-    var i1 = $('adv_global_pub_date_1');
-    var i2 = $('adv_global_pub_date_2');
-    var sel = $('adv_global_pub_date_type');
-    if(getPubdBefore()) {
-        i1.value = getPubdBefore();
-        setSelector(sel, 'before');
-    } else if(getPubdAfter()) {
-        i1.value = getPubdAfter();
-        setSelector(sel, 'after');
-    } else if(getPubdBetween()) {
-        var values = getPubdBetween().split(','); 
-        i1.value = values[0]
-        if(values[0] == values[1]) {
-            setSelector(sel, 'equals');
-        } else {
-            setSelector(sel, 'between');
-            i2.value = values[1];
-        }
-    }
-}
-
-function advSyncCopyLocLink(org) {
-    // display the option to filter by copy location
-    advLocationsLoaded = false;
-    advSelectedOrg = org;
-    removeChildren($('adv_copy_location_filter_select'));
-
-    if(isTrue(findOrgType(findOrgUnit(org).ou_type()).can_have_vols())) {
-        unHideMe($('adv_copy_location_filter_row'));
-        advLoadCopyLocations(org); 
-    } else {
-        hideMe($('adv_copy_location_filter_row'));
-    }
-
-}
-
-function clearSearchBoxes() {
-    var rows = $('adv_global_tbody').getElementsByTagName('tr');
-    for(var t = 0; t < rows.length; t++) {
-        if($n(rows[t], 'term')) {
-            $n(rows[t], 'term').value = '';
-            setSelector($n(rows[t], 'contains'), 'contains');
-            setSelector($n(rows[t], 'type'), 'keyword');
-        }
-    }
-    $n(rows[0], 'term').focus();
-}
-
-
-function initSearchBoxes() {
-    /* loads the compiled search from the search cookie 
-        and sets the widgets accordingly */
-
-    search = dojo.cookie(COOKIE_SEARCH);
-    if(!search) return;
-    _debug("loaded compiled search cookie: " + search);
-
-    search = JSON2js(search);
-    if(!search) return;
-
-    var types = getObjectKeys(search.searches);
-
-    // if we have browser cached data, clear it before populating from cookie
-    if (search.searches[types[0]].term)
-        clearSearchBoxes();
-
-    /* pre-add the needed rows */
-    while($('adv_global_tbody').getElementsByTagName('tr').length - 1 < types.length)
-        advAddGblRow();
-
-    var rows = $('adv_global_tbody').getElementsByTagName('tr');
-
-    for(var t = 0; t < types.length; t++) {
-        var row = rows[t];
-        setSelector($n(row, 'type'), types[t]);
-        var term = search.searches[types[t]].term;
-
-        /* if this is a single -<term> search, set the selector to nocontains */
-        if(match = term.match(/^-(\w+)$/)) {
-            term = match[1];
-            setSelector($n(row, 'contains'), 'nocontains');
-        }
-        $n(row, 'term').value = term;
-    }
-}
-
-function advAddGblRow() {
-	var tbody = $("adv_global_tbody");
-	var newrow = $("adv_global_trow").cloneNode(true);
-	tbody.insertBefore(newrow, $("adv_global_addrow"));
-	var input = $n(newrow, "term");
-	input.value = "";
-	setEnterFunc(input, advSubmitGlobal);
-	$n(newrow, 'type').focus();
-}
-
-function advDrawBibExtras(r) {
-	var data = r.getResultObject();
-    var ctypes = r.ctypes
-    dojo.forEach(ctypes,
-        function(ctype) {
-	        var sel = $('adv_global_' + ctype);
-            var ctypeData = dojo.filter(data, function(item) { return item.ctype == ctype } );
-            ctypeData = ctypeData.sort(
-                function(a,b) { /* sort alphabetically */
-                    return ((a.search_label ? a.search_label : a.value) < (b.search_label ? b.search_label : b.value)) ? -1 : 1;
-                }
-            );
-            dojo.forEach(ctypeData,
-                function(thing) {
-                    var opt = insertSelectorVal(sel, -1, (thing.search_label ? thing.search_label : thing.value), thing.code);
-                    opt.setAttribute('title', (thing.search_label ? thing.search_label : thing.value));
-                }
-            );
-        }
-    );
-}
-
-function advSelToStringList(sel) {
-	var list = getSelectedList(sel);
-	var vals = [];
-	for( var i = 0; i < list.length; i++ ) {
-		var str = list[i];
-		for( var j = 0; j < str.length; j++ ) {
-			//if(str.charAt(j) == ' ') continue;
-			vals.push(str.charAt(j));
-		}
-	}
-	return vals.toString();
-}
-
-function advGetVisSelectorVals(id) {
-	var basic = id + '_basic';
-	if(! $(id).className.match(/hide_me/)) 
-		return advSelToStringList($(id));
-	return advSelToStringList($(basic));
-}
-
-function advSubmitGlobal() {
-	
-	var sortdir = getSelectorVal($('adv_global_sort_dir'));
-	var sortby  = getSelectorVal($('adv_global_sort_by'));
-
-	var litforms  = advGetVisSelectorVals('adv_global_lit_form');
-	var itemforms = advGetVisSelectorVals('adv_global_item_form');
-	var itemtypes = advGetVisSelectorVals('adv_global_item_type');
-	var audiences = advGetVisSelectorVals('adv_global_audience');
-	var biblevels = advGetVisSelectorVals('adv_global_bib_level');
-    var locations = getSelectedList($('adv_copy_location_filter_select')) + '';
-	var languages = getSelectedList($('adv_global_lang')) + '';	
-    var limit2avail = $('opac.result.limit2avail').checked ? 1 : ''
-
-	var searches = advBuildSearchBlob();
-	if(!searches) return;
-
-	clearSearchParams();
-
-	var args = {};
-	args.page = MRESULT;
-	args[PARAM_ITEMFORM] = itemforms;
-	args[PARAM_ITEMTYPE] = itemtypes;
-	args[PARAM_BIBLEVEL] = biblevels;
-	args[PARAM_LITFORM]	= litforms;
-	args[PARAM_AUDIENCE]	= audiences;
-	args[PARAM_LANGUAGE] = languages;
-	args[PARAM_COPYLOCS] = locations;
-	//args[PARAM_SEARCHES]	= js2JSON(searches); /* break these out */
-	args[PARAM_DEPTH]		= depthSelGetDepth();
-	args[PARAM_LOCATION]	= depthSelGetNewLoc();
-	args[PARAM_SORT]		= sortby;
-	args[PARAM_SORT_DIR]	= sortdir;
-	args[PARAM_ADVTYPE]	= ADVTYPE_MULTI;
-	args[PARAM_STYPE]		= "";
-	args[PARAM_TERM]		= searches;
-	args[PARAM_AVAIL]		= limit2avail;
-
-    // publicate year filtering
-    var pub1;
-    if( (pub1 = $('adv_global_pub_date_1').value) && (''+pub1).match(/\d{4}/)) {
-        switch(getSelectorVal($('adv_global_pub_date_type'))) {
-            case 'equals':
-	            args[PARAM_PUBD_BETWEEN] = pub1+','+pub1;
-                break;
-            case 'before':
-	            args[PARAM_PUBD_BEFORE] = pub1;
-                break;
-            case 'after':
-	            args[PARAM_PUBD_AFTER] = pub1;
-                break;
-            case 'between':
-                var pub2 = $('adv_global_pub_date_2').value;
-                if((''+pub2).match(/\d{4}/))
-	                args[PARAM_PUBD_BETWEEN] = pub1+','+pub2;
-                break;
-        }
-    }
-
-	/* pubdate sorting causes a record (not metarecord) search */
-	if( sortby == SORT_TYPE_PUBDATE || !$('adv_group_titles').checked ) {
-		args.page = RRESULT;
-		args[PARAM_RTYPE] = RTYPE_MULTI;
-	}
-
-	if($('adv_group_titles').checked ) 
-		dojo.cookie(COOKIE_NOGROUP_RECORDS,'1');
-	else
-		dojo.cookie(COOKIE_NOGROUP_RECORDS,null,{'expires':-1});
-
-
-	goTo(buildOPACLink(args));
-}
-
-
-function advBuildSearchBlob() {
-
-	var searches = '';
-	var tbody    = $('adv_global_tbody');
-	var rows     = tbody.getElementsByTagName('tr');
-
-	for( var i = 0; i < rows.length; i++ ) {
-
-		var row = rows[i];
-		if(!(row && typeof row == 'object')) continue;
-		if(!row.getAttribute('type')) continue;
-		
-		var stype	 = getSelectorVal($n(row, 'type'));
-		var contains = getSelectorVal($n(row, 'contains'));
-		var term		 = $n(row, 'term').value;
-		if(!term) continue;
-
-		var string = "";
-		switch(contains) {
-			case 'contains' : 
-				string += " " + term; 
-				break;
-
-			case 'nocontains' : {
-	    			// Normalize spaces so we don't get "- " embedded in the query
-	    			var words = term.replace(/\s+/g,' ').replace(/^\s*/,'').replace(/\s*$/,'').split(" ");
-					for( var j in words ) 
-						string += " -" + words[j];
-				}
-				break;
-
-			case 'exact' : 
-				if(term.indexOf('"') > -1) string += " " + term;
-				else string += " \"" + term + "\"";
-				break;
-		}
-		if(string) {
-			string = string.replace(/\\/g,' ');
-            string = string.replace(/^\s*/,'');
-            string = string.replace(/\s*$/,'');
-			//searches[stype].term = string;
-            if(searches) searches += ' ';
-            searches += stype + ': '+ string;
-		}
-	}
-
-    _debug("created search query " + searches);
-	return searches;
-}
-
-
-// retrieves the shelving locations
-var advLocationsLoaded = false;
-function advLoadCopyLocations(org) {
-    if(org == null) 
-        org = advSelectedOrg;
-    var req = new Request(FETCH_COPY_LOCATIONS, org);
-    req.callback(advShowCopyLocations);
-    req.send();
-    advLocationsLoaded = true;
-}
-
-// inserts the shelving locations into the multi-select
-function advShowCopyLocations(r) {
-    var locations = r.getResultObject();
-    var sel = $('adv_copy_location_filter_select');
-    for(var i = 0; i < locations.length; i++) 
-        insertSelectorVal(sel, -1, locations[i].name(), locations[i].id());
-}
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/advanced.js b/Open-ILS/web/opac/skin/default/js/advanced.js
deleted file mode 100644
index cd48919..0000000
--- a/Open-ILS/web/opac/skin/default/js/advanced.js
+++ /dev/null
@@ -1,212 +0,0 @@
-/* advanced search interface */
-
-attachEvt("common", "run", advInit);
-
-function advInit() { 
-
-	/* propogate these? */
-
-	depthSelInit(); 
-	authoritySelInit(); 
-	setEnterFunc( $n( $('advanced.marc.tbody'), 'advanced.marc.value'), advMARCRun );
-
-	unHideMe($('adv_quick_search_sidebar'));
-
-	/*
-	if(isXUL()) 
-		setSelector($('adv_quick_type'), 'tcn'); */
-
-	setEnterFunc($('adv_quick_text'), advGenericSearch);
-	setEnterFunc($('authority_browse_term'), advAuthorityBrowse);
-
-	unHideMe($('adv_marc_search_sidebar'));
-	unHideMe($('adv_authority_browse_sidebar'));
-}
-
-
-function authoritySelInit() {
-    dojo.require("openils.Util");
-    fieldmapper.standardRequest(
-        ["open-ils.supercat", "open-ils.supercat.authority.browse_axis_list"], {
-            "params": [true /* whole objects */], 
-            "async": true,
-            "oncomplete": function(r) {
-                if ((r = openils.Util.readResponse(r))) {
-                    dojo.empty("authority_browse_axis");
-                    dojo.forEach(r, function(axis) {
-                        dojo.create("option", {"innerHTML": axis.name(), "value": axis.code()}, "authority_browse_axis");
-                    });
-                }
-            }
-        }
-    );
-}
-
-function advAddMARC() {
-	var newt = $('adv_sdbar_table').cloneNode(true);
-	newt.id = "";
-	unHideMe($n(newt, 'crow'));
-	$n(newt, 'advanced.marc.tag').value = "";
-	$n(newt, 'advanced.marc.subfield').value = "";
-	$n(newt, 'advanced.marc.value').value = "";
-	$('adv_marc_search_sidebar').insertBefore(newt, $('adv_marc_submit'));
-}
-
-function advMARCRun() {
-
-	clearSearchParams();
-
-	var div = $('adv_marc_search_sidebar');
-	var tbodies = div.getElementsByTagName('tbody');
-	var searches = [];
-
-	for( var i = 0; i < tbodies.length; i++ ) {
-		var tbody = tbodies[i];
-		var val = advExtractMARC(tbody);
-		if(val) searches.push(val);
-	}
-
-	if(searches.length == 0) return;
-
-	var arg = {};
-	arg.page = RRESULT;
-	arg[PARAM_FORM] = 'all'
-	arg[PARAM_RTYPE] = RTYPE_MARC;
-	arg[PARAM_OFFSET] = 0;
-	arg[PARAM_DEPTH]	= depthSelGetDepth();
-	arg[PARAM_LOCATION]	= depthSelGetNewLoc();
-	arg[PARAM_SEARCHES] = js2JSON(searches);
-	arg[PARAM_ADVTYPE] = ADVTYPE_MARC;
-	arg[PARAM_TERM] = "";
-
-	goTo(buildOPACLink(arg));
-}
-
-
-/* EXAMPLE => {"term":"0516011901","restrict":[{"tag":"020","subfield":"a"}]} */
-function advExtractMARC(tbody) {
-	if(!tbody) return null;
-	var term = $n(tbody, 'advanced.marc.value').value;
-	if(!term) return null;
-
-	var subfield = $n(tbody, 'advanced.marc.subfield').value;
-	if(!subfield) subfield = "_";
-
-	var tag = $n(tbody, 'advanced.marc.tag').value;
-	if(!tag) return null;
-
-	return { 'term' : term.toLowerCase(), 'restrict' :  [ { 'tag' : tag, 'subfield' : subfield } ] };
-}
-
-function advGenericSearch() {
-	clearSearchParams();
-	var type = getSelectorVal($('adv_quick_type'));
-	
-	var term = $('adv_quick_text').value;
-	if(!term) return;
-
-	var arg = {};
-
-	switch(type) {
-
-		case 'isbn' :
-			arg.page					= RRESULT;
-			arg[PARAM_STYPE]		= "";
-			arg[PARAM_TERM]		= "";
-			arg[PARAM_RTYPE]		= RTYPE_ISBN;
-			arg[PARAM_OFFSET]		= 0;
-			arg[PARAM_ADVTERM]	= term.toLowerCase();
-			break;
-		
-		case 'issn' :
-			arg.page					= RRESULT;
-			arg[PARAM_STYPE]		= "";
-			arg[PARAM_TERM]		= "";
-			arg[PARAM_ADVTERM]	= term.toLowerCase();
-			arg[PARAM_OFFSET]		= 0;
-			arg[PARAM_RTYPE]		= RTYPE_ISSN;
-			break;
-
-		case 'tcn' :
-			arg.page					= RRESULT;
-			arg[PARAM_STYPE]		= "";
-			arg[PARAM_TERM]		= "";
-			arg[PARAM_ADVTERM]	= term;
-			arg[PARAM_OFFSET]		= 0;
-			arg[PARAM_RTYPE]		= RTYPE_TCN;
-			break;
-
-        case 'barcode':
-            advFindBarcode(term);
-            break;
-
-
-		case 'cn':
-			arg.page			= CNBROWSE;
-			arg[PARAM_CN]	= term;
-			arg[PARAM_DEPTH]		= depthSelGetDepth();
-			arg[PARAM_LOCATION]	= depthSelGetNewLoc();
-			break;
-
-		case 'lccn':
-			arg.page = RRESULT;
-			arg[PARAM_FORM] = 'all'
-			arg[PARAM_RTYPE] = RTYPE_MARC;
-			arg[PARAM_OFFSET] = 0;
-			arg[PARAM_DEPTH]	= depthSelGetDepth();
-			arg[PARAM_LOCATION]	= depthSelGetNewLoc();
-			arg[PARAM_SEARCHES] = js2JSON([{ 'term' : term.toLowerCase(), 
-					'restrict' :  [ { 'tag' : '010', 'subfield' : '_' } ] }]);
-			arg[PARAM_ADVTYPE] = ADVTYPE_MARC;
-			arg[PARAM_TERM] = "";
-			break;
-
-
-		default: alert('not done');
-	}
-
-	if(arg.page) goTo(buildOPACLink(arg));
-}
-
-
-function advFindBarcode(barcode) {
-    var req = new Request(FETCH_BIB_IDS_BY_BARCODE, barcode);
-    req.callback(advDrawBarcode);
-    req.request.alertEvent = false;
-    req.send();
-}
-
-function advDrawBarcode(r) {
-    var title_ids = r.getResultObject();
-    if(checkILSEvent(title_ids)) {
-        alertId('myopac.copy.not.found');
-        return;
-    }
-    if(!title_ids) return;
-    if (title_ids[0] == -1) { // pre-cat record
-        alertId('myopac.copy.not.cataloged');
-        return;
-    }
-
-    var args = {};
-    if (title_ids.length == 1) {
-        args.page = RDETAIL;
-        args[PARAM_RID] = title_ids[0];
-    } else {
-        args.page = RRESULT;
-	    args[PARAM_RTYPE] = RTYPE_LIST;
-	    args[PARAM_RLIST] = title_ids;
-    }
-    location.href = buildOPACLink(args);
-}
-
-function advAuthorityBrowse() {
-    var selector = dojo.byId("authority_browse_axis");
-    var args = {"page": AUTHBROWSE};
-    args[PARAM_AUTHORITY_BROWSE_AXIS] =
-        selector.options[selector.selectedIndex].value;
-    args[PARAM_AUTHORITY_BROWSE_TERM] =
-        dojo.byId("authority_browse_term").value;
-    location.href = buildOPACLink(args);
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/authbrowse.js b/Open-ILS/web/opac/skin/default/js/authbrowse.js
deleted file mode 100644
index ff4c10d..0000000
--- a/Open-ILS/web/opac/skin/default/js/authbrowse.js
+++ /dev/null
@@ -1,262 +0,0 @@
-dojo.require("openils.CGI");
-dojo.require("openils.Util");
-dojo.require("MARC.FixedFields");
-dojo.require("openils.AuthorityControlSet");
-var cgi, acs_helper, last_fetched_length = 0;
-
-attachEvt("common", "init", doAuthorityBrowse);
-
-/* repeatable, supports all args or no args */
-function doAuthorityBrowse(axis, term, page, per_page) {
-    swapCanvas(dojo.byId("loading_alt"));
-
-    if (!axis) {
-        if (!cgi) cgi = new openils.CGI();
-        axis = cgi.param(PARAM_AUTHORITY_BROWSE_AXIS);
-        term = cgi.param(PARAM_AUTHORITY_BROWSE_TERM);
-        page = cgi.param(PARAM_AUTHORITY_BROWSE_PAGE) || 0;
-        per_page = cgi.param(PARAM_AUTHORITY_BROWSE_PER_PAGE) || 21;
-    }
-
-    var url = '/opac/extras/browse/marcxml/authority.'
-        + axis
-        + '/1' /* this will be OU if OU ever means anything for authorities */
-        + '/' + term /* FIXME urlescape or however it's spelt */
-        + '/' + page
-        + '/' + per_page
-    ;
-    dojo.xhrGet({
-        "url": url,
-        "handleAs": "xml",
-        "content": {"format": "marcxml"},
-        "preventCache": true,
-        "load": function(doc) {
-            displayAuthorityRecords(axis, doc);
-            setPagingLinks(axis, term, page, per_page);
-        }
-    });
-}
-
-function setPagingLinks(axis, term, page, per_page) {
-    var up_page = Number(page) - 1;
-    var down_page = Number(page) + 1;
-
-    unHideMe(dojo.byId("authority-page-up"));
-    dojo.attr(
-        "authority-page-up", "onclick", function() {
-            doAuthorityBrowse(axis, term, up_page, per_page);
-        }
-    );
-
-    /* XXX In theory this would generally stop the "next page" link from
-     * showing up when it's unwanted, but in practice the supercat/unapi
-     * call we make doesn't return the number of records it's supposed to.
-     */
-//    if (last_fetched_length == per_page) {
-        unHideMe(dojo.byId("authority-page-down"));
-        dojo.attr(
-            "authority-page-down", "onclick", function() {
-                doAuthorityBrowse(axis, term, down_page, per_page);
-            }
-        );
-//    } else {
-//        hideMe(dojo.byId("authority-page-down"));
-//    }
-}
-
-function renderAuthorityTagContent(m, af) {
-    /* XXX This doesn't take into account possible tag repeatability -- a
-     * bona fide library scientist could probably improve this. :-)
-     */
-    if (af.tag() && af.sf_list()) {
-        return dojo.filter(
-            dojo.map(
-                af.sf_list().split(""),
-                function(code) {
-                    var result = m.subfield(af.tag(), code);
-                    return (typeof(result[1]) == "undefined") ? "" : result[1];
-                }
-            ), function(datum) { return datum.length > 0; }
-        ).join(" ");
-    } else {
-        return "";
-    }
-}
-
-function renderAuthoritySubEntry(m, field, tbody) {
-    var content =
-        openils.Util.trimString(renderAuthorityTagContent(m, field));
-    if (!content.length) return;    /* don't display empty tags */
-
-    var tr = dojo.create("tr", null, tbody);
-    dojo.create("td", {"style": {"width": "2em"}, "innerHTML": ""}, tr);
-    dojo.create(
-        "td", {
-            "className": "authority-tag-label",
-            "innerHTML": field.name() + ":",
-            "title": field.description() || ""
-        }, tr
-    );
-    dojo.create(
-        "td", {
-            "className": "authority-tag-content authority-record-right",
-            "innerHTML": content
-        }, tr
-    );
-
-    if (field.sub_entries() && field.sub_entries().length) {
-        /* I *think* this shouldn't happen with good data? */
-        console.log("I, too, have " + field.sub_entries().length +
-            "sub_entries");
-    }
-}
-
-function renderAuthorityMainEntry(m, field, tbody) {
-    var content =
-        openils.Util.trimString(renderAuthorityTagContent(m, field));
-    if (!content.length) return;    /* don't display empty tags */
-
-    var tr = dojo.create("tr", null, tbody);
-    var content_holder = dojo.create(
-        "td", {
-            "className": "authority-tag-content authority-record-main",
-            "colspan": 2
-        }, tr
-    );
-    dojo.create(
-        "span",
-        {"className":"authority-content", "innerHTML": content},
-        content_holder
-    );
-    dojo.create("span", {"className":"authority-count-holder"}, content_holder);
-    dojo.create(
-        "td", {
-            "className": "authority-tag-label authority-record-right",
-            "innerHTML": field.name(),
-            "title": field.description() || ""
-        }, tr
-    );
-
-    if (field.sub_entries()) {
-        dojo.forEach(
-            field.sub_entries(),
-            function(f) { renderAuthoritySubEntry(m, f, tbody); }
-        );
-    }
-}
-
-function renderAuthorityRecord(m, control_set, auth_id) {
-    var main_entries = openils.Util.objectSort(
-        dojo.filter(
-            control_set.authority_fields(),
-            function(o) { return o.main_entry() == null; }
-        ), "tag"
-    );
-
-    var table = dojo.create("table", {"className": "authority-record"});
-    var tbody = dojo.create("tbody", {"id": "authority_" + auth_id}, table);
-
-
-    dojo.forEach(
-        main_entries, function(af) { renderAuthorityMainEntry(m, af, tbody); }
-    );
-
-    return table;
-}
-
-/* displayAuthorityRecords: given a DOM document object that contains marcxml
- * records, display each one in a table using the apporiate control set to
- * determine which fields to show.
- */
-function displayAuthorityRecords(axis, doc) {
-    if (!acs_helper)
-        acs_helper = new openils.AuthorityControlSet();
-
-    /* XXX I wanted to use bibtemplate here, but now I'm not sure it makes
-     * sense: the template itself would have to be dynamic, as it would vary
-     * from record to record when different control sets were in use.
-     */
-    var auth_ids = [];
-
-    dojo.empty("authority-record-holder");
-
-    var records = dojo.query("record", doc);
-    last_fetched_length = records.length;
-
-    dojo.forEach(
-        records,
-        function(record) {
-            var m = new MARC.Record({"xml": record});
-
-            var auth_id = m.subfield("901","c")[1];
-            auth_ids.push(auth_id);
-
-            /* best guess */
-            var t = m.field(/^1/);
-            if (dojo.isArray(t)) t = t[0];
-
-            var cs = acs_helper.findControlSetsForAuthorityTag( t.tag );
-            if (dojo.isArray(cs)) cs = cs[0];
-
-            acs_helper.controlSetId( cs );
-
-            dojo.place(
-                renderAuthorityRecord(m, acs_helper.controlSet().raw, auth_id),
-                "authority-record-holder"
-            );
-        }
-    );
-    displayRecordCounts(axis, auth_ids);
-    swapCanvas(dojo.byId("canvas_main"));
-}
-
-function displayRecordCounts(axis, auth_ids) {
-    fieldmapper.standardRequest(
-        ["open-ils.cat", "open-ils.cat.authority.records.count_linked_bibs"], {
-            "params": [auth_ids],
-            "async": true,
-            "oncomplete": function(r) {
-                if ((r = openils.Util.readResponse(r))) {
-                    dojo.forEach(r, function(blob) {
-                        if (blob.bibs > 0) {
-                            displayRecordCount(axis, blob.authority, blob.bibs);
-                        }
-                    });
-                }
-            }
-        }
-    );
-}
-
-function displayRecordCount(axis, id, count) {
-    /* 1) put record count where we can see it */
-    dojo.query("#authority_" + id + " .authority-count-holder")[0].innerHTML =
-        "(" + count + ")"; /* XXX i18n ? */
-
-    /* 2) also, provide a link to show those records */
-    var span = dojo.query("#authority_" + id + " .authority-content")[0];
-
-    var args = {};
-    args.page = RRESULT;
-    args[PARAM_DEPTH] = depthSelGetDepth();
-    args[PARAM_FORM] = "all";
-    args[PARAM_LOCATION] = depthSelGetNewLoc();
-    args[PARAM_STYPE] = "keyword";
-    args[PARAM_RTYPE] = "keyword";
-    args[PARAM_TERM] = "identifier|authority_id[" + id + "]";
-
-    var axis_obj = acs_helper.browseAxisByCode(axis);
-    if (axis_obj.sorter())
-        args[PARAM_TERM] += " sort(" + axis_obj.sorter() + ")";
-
-    dojo.create(
-        "a", {
-            "innerHTML": span.innerHTML,
-            "href": buildOPACLink(args),
-            "className": "authority-content",
-            "title": "Show related bibliographic holdings" /* XXX i18n! */
-        },
-        span, "replace"
-    );
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/cn_browse.js b/Open-ILS/web/opac/skin/default/js/cn_browse.js
deleted file mode 100644
index 4d1f59f..0000000
--- a/Open-ILS/web/opac/skin/default/js/cn_browse.js
+++ /dev/null
@@ -1,145 +0,0 @@
-var cnOffset = 0;
-var cnCount = 9;
-var cnBrowseCN;
-var cnBrowseOrg;
-
-if( findCurrentPage() == CNBROWSE ) {
-	attachEvt("common", "run", cnBrowseLoadSearch);
-	attachEvt( "common", "locationUpdated", cnBrowseResubmit );
-	attachEvt( "common", "depthChanged", cnBrowseResubmit );
-}
-
-
-function cnBrowseLoadSearch() {
-	unHideMe($('cn_browse'));
-	cnBrowseGo(getCallnumber(), getLocation(), getDepth());
-}
-
-
-function cnBrowseResubmit() {
-	var args = {}
-	args[PARAM_CN] = cnBrowseCN;
-	args[PARAM_DEPTH] = depthSelGetDepth();
-	args[PARAM_LOCATION] = getNewSearchLocation();
-	goTo(buildOPACLink(args));
-}
-
-
-
-function cnBrowseGo(cn, org, depth) { 
-	if(depth == null) depth = getDepth();
-
-	org = findOrgUnit(org);
-	cnOffset = 0;
-
-	do {
-		var t = findOrgType(org.ou_type());
-		if( t.depth() > depth ) 
-			org = findOrgUnit(org.parent_ou());
-		else break;
-	} while(true); 
-
-	cnBrowseOrg = org;
-	cnBrowseCN = cn;
-
-	_cnBrowseGo( cn, org );
-	appendClear($('cn_browse_where'), text(org.name()));
-}
-
-
-function _cnBrowseGo( cn, org ) {
-	var req = new Request( FETCH_CNBROWSE, cn, org.id(), cnCount, cnOffset );
-	req.callback( cnBrowseDraw );
-	req.send();
-}
-
-function cnBrowseNext() {
-	cnOffset++;
-	_cnBrowseGo( cnBrowseCN, cnBrowseOrg );
-}
-
-function cnBrowsePrev() {
-	cnOffset--;
-	_cnBrowseGo( cnBrowseCN, cnBrowseOrg );
-}
-
-
-function cnBrowseDraw( r ) {
-	var list = r.getResultObject();
-	_cnBrowseDraw(list);
-}
-
-
-var cnTbody;
-var cnRowT;
-var cnTdT;
-function _cnBrowseDraw( list ) {
-
-	if(!cnTbody) {
-		cnTbody = $('cn_tbody');
-		cnRowT = $('cn_browse_row');
-		cnTdT = cnRowT.removeChild($('cn_browse_td'));
-		cnTbody.removeChild(cnRowT);
-	}
-	removeChildren(cnTbody);
-
-	var counter = 1;
-	var currentRow = cnRowT.cloneNode(true);
-	cnTbody.appendChild(currentRow);
-
-	for( var idx in list ) {
-		
-
-		var currentTd = cnTdT.cloneNode(true);
-		currentRow.appendChild(currentTd);
-
-		var td = cnTdT.cloneNode(true);
-
-		var obj	= list[idx];
-		var cn	= obj.cn;
-		var mods = obj.mods;
-
-		var cn_td			= $n(currentTd, 'cn_browse_cn');
-		var lib_td			= $n(currentTd, 'cn_browse_lib');
-		var title_td		= $n(currentTd, 'cn_browse_title');
-		var author_td		= $n(currentTd, 'cn_browse_author');
-		var pic_td			= $n(currentTd, 'cn_browse_pic');
-
-		if (parseInt(cn.prefix().id()) > -1) {
-            cn_td.appendChild(text(cn.prefix().label()));
-            cn_td.appendChild(text(' '));
-        }
-
-		cn_td.appendChild(text(cn.label()));
-
-		if (parseInt(cn.suffix().id()) > -1) {
-            cn_td.appendChild(text(' '));
-            cn_td.appendChild(text(cn.suffix().label()));
-        }
-
-		lib_td.appendChild(text(findOrgUnit(cn.owning_lib()).name()));
-		cnBrowseDrawTitle(mods, title_td, author_td, pic_td);
-
-		if( counter++ % 3 == 0 ) {
-			counter = 1;
-			currentRow = cnRowT.cloneNode(true);
-			cnTbody.appendChild(currentRow);
-		}
-	}
-}
-
-
-function cnBrowseDrawTitle(mods, title_td, author_td, pic_td) {
-
-	buildTitleDetailLink(mods, title_td); 
-	buildSearchLink(STYPE_AUTHOR, mods.author(), author_td);
-	pic_td.setAttribute("src", buildJacketSrc(mods.doc_id()));
-
-	var args = {};
-	args.page = RDETAIL;
-	args[PARAM_OFFSET] = 0;
-	args[PARAM_RID] = mods.doc_id();
-	args[PARAM_MRID] = 0;
-	pic_td.parentNode.setAttribute("href", buildOPACLink(args));
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/container.js b/Open-ILS/web/opac/skin/default/js/container.js
deleted file mode 100644
index c8f1028..0000000
--- a/Open-ILS/web/opac/skin/default/js/container.js
+++ /dev/null
@@ -1,69 +0,0 @@
-
-function containerDoRequest( req, callback, args ) {
-
-	if( callback ) {
-		req.callback( callback );
-		req.request.args = args;
-		req.send();
-		return null;
-	}
-
-	req.send(true); 
-	return req.result();
-}
-
-
-function containerFetchAll( callback, args ) {
-	var req = new Request( 
-		FETCH_CONTAINERS, G.user.session, G.user.id(), 'biblio', 'bookbag' );
-	return containerDoRequest( req, callback, args );
-}
-
-function containerFlesh( id, callback, args ) {
-	var req = new Request( FLESH_CONTAINER, G.user.session, 'biblio', id );
-	return containerDoRequest( req, callback, args );
-}
-
-function containerDelete( id, callback, args ) {
-	var req = new Request( DELETE_CONTAINER, G.user.session, 'biblio', id );
-	return containerDoRequest(req, callback, args );
-}
-
-
-function containerCreate( name, pub, callback, args ) {
-
-    fieldmapper.IDL.load(['cbreb']);
-	var container = new cbreb();
-	container.btype('bookbag');
-	container.owner( G.user.id() );
-	container.name( name );
-	if(pub) container.pub('t');
-	else container.pub('f');
-
-	var req = new Request( 
-		CREATE_CONTAINER, G.user.session, 'biblio', container );
-	return containerDoRequest( req, callback, args );
-}
-
-function containerUpdate( container, callback, args ) {
-	var req = new Request(UPDATE_CONTAINER, G.user.session, 'biblio', container);
-	return containerDoRequest(req, callback, args);
-}
-
-function containerCreateItem( containerId, target, callback, args ) {
-
-    fieldmapper.IDL.load(['cbrebi']);
-	var item = new cbrebi();
-	item.target_biblio_record_entry(target);
-	item.bucket(containerId);
-
-	var req = new Request( CREATE_CONTAINER_ITEM, 
-		G.user.session, 'biblio', item );
-
-	return containerDoRequest( req, callback, args );
-}
-
-function containerRemoveItem( id, callback, args ) {
-	var req = new Request( DELETE_CONTAINER_ITEM, G.user.session, 'biblio', id );
-	return containerDoRequest( req, callback, args );
-}
diff --git a/Open-ILS/web/opac/skin/default/js/copy_details.js b/Open-ILS/web/opac/skin/default/js/copy_details.js
deleted file mode 100644
index 253e671..0000000
--- a/Open-ILS/web/opac/skin/default/js/copy_details.js
+++ /dev/null
@@ -1,483 +0,0 @@
-var cpdTemplate;
-var cpdCounter = 0;
-var cpdNodes = {};
-
-/* showDueDate will show the due date in the OPAC */
-var showDueDate = false;
-/* showDueTime will show the due time (hours and minutes) in the OPAC;
-   if showDueDate is false, then showDueTime has no effect
-*/
-var showDueTime = false;
-
-function cpdBuild( contextTbody, contextRow, record, callnumber, orgid, depth, copy_location, already_fetched_copies, peer_types ) {
-	var i = cpdCheckExisting(contextRow);
-	if(i) return i;
-
-	var counter = cpdCounter++;
-
-	/* yank out all of the template rows */
-	if(!cpdTemplate) cpdTemplate = $('rdetail_volume_details_row');
-	var templateRow = cpdTemplate.cloneNode(true);
-	templateRow.id = 'cpd_row_' + counter;
-
-	/* shove a dummy a tag in before the context previous sibling */
-	/*
-	contextTbody.insertBefore( 
-		elem('a',{name:'slot_'+templateRow.id}), contextRow.previousSibling);
-	goTo('#slot_'+templateRow.id);
-	*/
-
-	if(isXUL()) {
-		/* unhide before we unhide/clone the parent */
-		unHideMe($n(templateRow, 'age_protect_label'));
-		unHideMe($n(templateRow, 'create_date_label'));
-        unHideMe($n(templateRow, 'active_date_label'));
-		unHideMe($n(templateRow, 'holdable_label'));
-	}
-
-	if (isXUL() || showDueDate) {
-		unHideMe($n(templateRow, 'due_date_label'));
-	}
-
-	unHideMe(templateRow);
-
-	var print = $n(templateRow,'print');
-	print.onclick = function() { cpdBuildPrintPane(
-		contextRow, record, callnumber, orgid, depth) };
-    if (callnumber == null) {
-        addCSSClass(print,'hide_me');
-    }
-
-	var mainTbody = $n(templateRow, 'copies_tbody');
-	var extrasRow = mainTbody.removeChild($n(mainTbody, 'copy_extras_row'));
-
-    var request_args = {
-        peer_types      : peer_types, /* indexed the same as already_fetched_copies */
-        contextTbody	: contextTbody, /* tbody that holds the contextrow */
-        contextRow		: contextRow, /* the row our new row will be inserted after */
-        record			: record,
-        callnumber		: callnumber, 
-        orgid				: orgid,
-        depth				: depth,
-        templateRow		: templateRow, /* contains everything */
-        copy_location		: copy_location,
-        mainTbody		: mainTbody, /* holds the copy rows */
-        extrasRow		: extrasRow, /* wrapper row for all extras */
-        counter			: counter
-    }
-
-    if (! already_fetched_copies) {
-        var req = new Request(FETCH_COPIES_FROM_VOLUME, record.doc_id(), callnumber, orgid);
-        req.callback(cpdDrawCopies);
-
-        req.request.args = request_args;
-
-        req.send();
-    } else {
-        setTimeout(
-            function() {
-                delete request_args['copy_location'];
-                cpdDrawCopies({
-                    'args' : request_args,
-                    'getResultObject' : function() { return already_fetched_copies; }
-                });
-            }, 0
-        );
-    }
-
-	if( contextRow.nextSibling ) 
-		contextTbody.insertBefore( templateRow, contextRow.nextSibling );
-	else
-		contextTbody.appendChild( templateRow );
-	_debug('creating new details row with id ' + templateRow.id);
-	cpdNodes[templateRow.id] = { templateRow : templateRow };
-	return templateRow.id;
-}
-
-
-function cpdBuildPrintWindow(record, orgid) {
-	var div = $('rdetail_print_details').cloneNode(true);
-	div.id = "";
-
-	$n(div, 'lib').appendChild(text(findOrgUnit(orgid).name()));
-	$n(div, 'title').appendChild(text(record.title()));
-	$n(div, 'author').appendChild(text(record.author()));
-	$n(div, 'edition').appendChild(text(record.edition()));
-	$n(div, 'pubdate').appendChild(text(record.pubdate()));
-	$n(div, 'publisher').appendChild(text(record.publisher()));
-	$n(div, 'phys').appendChild(text(record.physical_description()));
-
-	return div;
-}
-
-function cpdStylePopupWindow(div) {
-	var tds = div.getElementsByTagName('td');
-	for( var i = 0; i < tds.length ; i++ ) {
-		var td = tds[i];
-		var sty = td.getAttribute('style');
-		if(!sty) sty = "";
-		td.setAttribute('style', sty + 'padding: 2px; border: 1px solid #F0F0E0;');
-		if( td.className && td.className.match(/hide_me/) ) 
-			td.parentNode.removeChild(td);
-	}
-}
-
-
-/* builds a friendly print window for this CNs data */
-function cpdBuildPrintPane(contextRow, record, cn, orgid, depth) {
-
-	var div = cpdBuildPrintWindow( record, orgid);
-
-    var whole_cn_text = (cn[0] ? cn[0] + ' ' : '') + cn[1] + (cn[2] ? ' ' + cn[2] : '');
-	$n(div, 'cn').appendChild(text(whole_cn_text));
-
-	unHideMe($n(div, 'copy_header'));
-
-	var subtbody = $n(contextRow.nextSibling, 'copies_tbody');
-	var rows = subtbody.getElementsByTagName('tr');
-
-	for( var r = 0; r < rows.length; r++ ) {
-		var row = rows[r];
-		if(!row) continue;
-		var name = row.getAttribute('name');
-		if( name.match(/extras_row/) ) continue; /* hide the copy notes, stat-cats */
-		var clone = row.cloneNode(true);
-		var links = clone.getElementsByTagName('a');
-		for( var i = 0; i < links.length; i++ ) 
-			links[i].style.display = 'none';
-
-		$n(div, 'tbody').appendChild(clone);
-	}
-
-	cpdStylePopupWindow(div);
-	openWindow( div.innerHTML);
-}
-
-
-
-/* hide any open tables and if we've already 
-	fleshed this cn, just unhide it */
-function cpdCheckExisting( contextRow ) {
-
-	var existingid;
-	var next = contextRow.nextSibling;
-
-	if( next && next.getAttribute('templateRow') ) {
-		var obj = cpdNodes[next.id];
-		if(obj.templateRow.className.match(/hide_me/)) 
-			unHideMe(obj.templateRow);
-		else hideMe(obj.templateRow);
-		existingid = next.id;
-	}
-
-	if(existingid) _debug('row exists with id ' + existingid);
-
-	for( var o in cpdNodes ) {
-		var node = cpdNodes[o];
-		if( existingid && o == existingid ) continue;
-		hideMe(node.templateRow);
-		removeCSSClass(node.templateRow.previousSibling, 'rdetail_context_row');
-	}
-
-	addCSSClass(contextRow, 'rdetail_context_row');
-	if(existingid) return existingid;
-	return null;
-}
-
-/*
-function cpdFetchCopies(r) {
-	var args = r.args;
-	args.cn	= r.getResultObject();
-	var req = new Request(FETCH_COPIES_FROM_VOLUME, args.cn.id());
-	req.request.args = args;
-	req.callback(cpdDrawCopies);
-	req.send();
-}
-*/
-
-function cpdDrawCopies(r) {
-
-	var copies		= r.getResultObject();
-	var args			= r.args;
-	var copytbody	= $n(args.templateRow, 'copies_tbody');
-	var copyrow		= copytbody.removeChild($n(copytbody, 'copies_row'));
-
-	if(isXUL()) {
-		/* unhide before we unhide/clone the parent */
-		unHideMe($n(copyrow, 'age_protect_value'));
-		unHideMe($n(copyrow, 'create_date_value'));
-        unHideMe($n(copyrow, 'active_date_value'));
-		unHideMe($n(copyrow, 'copy_holdable_td'));
-	}
-
-	if(isXUL() || showDueDate) {
-		unHideMe($n(copyrow, 'copy_due_date_td'));
-	}
-
-	for( var i = 0; i < copies.length; i++ ) {
-		var row = copyrow.cloneNode(true);
-		var copyid = copies[i];
-        var pt; if (args.peer_types) pt = args.peer_types[i];
-        if (typeof copyid != 'object') {
-            var req = new Request(FETCH_FLESHED_COPY, copyid);
-            req.callback(cpdDrawCopy);
-            req.request.args = r.args;
-            req.request.row = row;
-            req.send();
-        } else {
-            setTimeout(
-                function(copy,row,pt) {
-                    return function() {
-                        cpdDrawCopy({
-                            'getResultObject' : function() { return copy; },
-                            'args' : r.args,
-                            'peer_type' : pt,
-                            'row' : row
-                        });
-                    };
-                }(copies[i],row,pt), 0
-            );
-        }
-		copytbody.appendChild(row);
-	}
-}
-
-function cpdDrawCopy(r) {
-	var copy = r.getResultObject();
-	var row  = r.row;
-	var pt   = r.peer_type;
-    var trow = r.args.templateRow;
-
-    if (r.args.copy_location && copy.location().name() != r.args.copy_location) {
-        hideMe(row);
-        return;
-    }
-
-    // Make barcode more useful for staff client usage
-    if(isXUL()) {
-        var my_a = document.createElement('a');
-        my_a.appendChild(text(copy.barcode()));
-        my_a.setAttribute("href","javascript:void(0);");
-        my_a.onclick = function() {
-            xulG.new_tab(xulG.urls.XUL_COPY_STATUS, {}, {'from_item_details_new': true, 'barcodes': [copy.barcode()]});
-		};
-        $n(row, 'barcode').appendChild(my_a);
-    }
-    else {
-    	$n(row, 'barcode').appendChild(text(copy.barcode()));
-    }
-
-    /* show the peer type*/
-    if (pt) {
-        $n(row, 'barcode').appendChild(text(' :: ' + pt));
-    }
-
-	$n(row, 'location').appendChild(text(copy.location().name()));
-	$n(row, 'status').appendChild(text(copy.status().name()));
-
-    // append comma-separated list of part this copy is linked to
-    if(copy.parts() && copy.parts().length) {
-        unHideMe($n(trow, 'copy_part_label'));
-        unHideMe($n(row, 'copy_part'));
-        for(var i = 0; i < copy.parts().length; i++) {
-            var part = copy.parts()[i];
-            var node = $n(row, 'copy_part');
-            if(i > 0) node.appendChild(text(','));
-            node.appendChild(text(part.label()));
-        }
-    }
-
-    /* show the other bibs link */
-    if (copy.peer_record_maps().length > 0) {
-        var l = $n(row, 'copy_multi_home');
-        unHideMe(l);
-        var link_args = {};
-        link_args.page = RRESULT;
-        link_args[PARAM_RTYPE] = RTYPE_LIST;
-        link_args[PARAM_RLIST] = new Array();
-        for (var i = 0; i < copy.peer_record_maps().length; i++) {
-            link_args[PARAM_RLIST].push( copy.peer_record_maps()[i].peer_record() );
-        }
-        l.setAttribute('href',buildOPACLink(link_args));
-    }
-
-	if(isXUL()) {
-		/* show the hold link */
-		var l = $n(row, 'copy_hold_link');
-		unHideMe(l);
-		l.onclick = function() {
-			holdsDrawEditor( 
-				{ 
-					type			: 'C',
-					copyObject	: copy,
-					onComplete	: function(){}
-				}
-			);
-		}
-
-		/* show the book now link */
-		l = $n(row, 'copy_reserve_link');
-		unHideMe(l);
-		l.onclick = function() {
-			// XXX FIXME this duplicates things in cat/util.js
-			// Also needs i18n
-			dojo.require("fieldmapper.Fieldmapper");
-			var r = fieldmapper.standardRequest(
-				["open-ils.booking",
-					"open-ils.booking.resources.create_from_copies"],
-				[G.user.session, [copy.id()]]
-			);
-			if (!r) {
-				alert("No response from server!");
-			} else if (r.ilsevent != undefined) {
-				alert("Error from server:\n" + js2JSON(r));
-			} else {
-				xulG.auth = {"session": {"key": G.user.session}};
-				xulG.bresv_interface_opts = {"booking_results": r};
-				location.href = "/eg/booking/reservation";
-			}
-		}
-
-		if( copy.age_protect() ) 
-			appendClear($n(row, 'age_protect_value'), text(copy.age_protect().name()));
-
-		var cd = copy.create_date();
-		cd = cd.replace(/T.*/, '');
-		$n(row, 'create_date_value').appendChild(text(cd));
-
-        var ad = copy.active_date();
-        if(ad) {
-            ad = ad.replace(/T.*/, '');
-            $n(row, 'active_date_value').appendChild(text(ad));
-        }
-
-		var yes = $('rdetail.yes').innerHTML;
-		var no = $('rdetail.no').innerHTML;
-
-		if( isTrue(copy.holdable()) &&
-				isTrue(copy.location().holdable()) &&
-				isTrue(copy.status().holdable()) ) {
-			$n(row, 'copy_is_holdable').appendChild(text(yes));	
-		} else {
-			$n(row, 'copy_is_holdable').appendChild(text(no));	
-		}
-	}
-
-	if (isXUL() || showDueDate) {
-		var circ;
-		if( copy.circulations() ) {
-			circ = copy.circulations()[0];
-			if( circ ) {
-                                var due_time = dojo.date.stamp.fromISOString(circ.due_date());
-                                if( showDueTime ) {
-                                        $n(row, 'copy_due_date').appendChild(text(dojo.date.locale.format(due_time, {"formatLength": "medium"})));
-                                } else {
-                                        $n(row, 'copy_due_date').appendChild(text(dojo.date.locale.format(due_time, {"selector": "date", "formatLength": "medium"})));
-                                }
-			}
-		}
-	}
-
-	r.args.copy = copy;
-	r.args.copyrow = row;
-	cpdShowNotes(copy, r.args)
-	cpdShowStats(copy, r.args);
-
-}
-
-function _cpdExtrasInit(args) {
-
-	var newrid	= 'extras_row_' + args.copy.barcode();
-	var newrow	= $(newrid);
-	if(!newrow) newrow = args.extrasRow.cloneNode(true);
-	var tbody	= $n(newrow, 'extras_tbody');
-	var rowt		= $n(tbody, 'extras_row');
-	newrow.id	= newrid;
-
-	var cr = args.copyrow;
-	var nr = cr.nextSibling;
-	var np = args.mainTbody;
-
-	/* insert the extras row into the main table */
-	if(nr) np.insertBefore( newrow, nr );
-	else np.appendChild(newrow);
-
-	var link = $n(args.copyrow, 'details_link');
-	var link2 = $n(args.copyrow, 'less_details_link');
-	var id = newrow.id;
-	link.id = id + '_morelink';
-	link2.id = id + '_lesslink';
-	unHideMe(link);
-	hideMe(link2);
-
-	link.setAttribute('href', 
-			'javascript:unHideMe($("'+link2.id+'")); hideMe($("'+link.id+'"));unHideMe($("'+newrow.id+'"));');
-
-	link2.setAttribute('href', 
-			'javascript:unHideMe($("'+link.id+'")); hideMe($("'+link2.id+'"));hideMe($("'+newrow.id+'"));');
-
-	return [ tbody, rowt ];
-}
-
-function cpdShowNotes(copy, args) {
-	var notes = copy.notes();
-	if(!notes || notes.length == 0) return;
-
-	var a = _cpdExtrasInit(args);
-	var tbody = a[0];
-	var rowt = a[1];
-
-	for( var n in notes ) {
-		var note = notes[n];
-		if(!isTrue(note.pub())) continue;
-		var row = rowt.cloneNode(true);
-		$n(row, 'key').appendChild(text(note.title()));
-		$n(row, 'value').appendChild(text(note.value()));
-		unHideMe($n(row, 'note'));
-		unHideMe(row);
-		tbody.appendChild(row);
-	}
-}
-
-
-function cpdShowStats(copy, args) {
-	var entries = copy.stat_cat_entry_copy_maps();
-	if(!entries || entries.length == 0) return;
-
-	var visibleStatCat = false;
-
-	/*
-		check all copy stat cats; if we find one that's OPAC visible,
-		set the flag and break the loop. If we've found one, or we're
-		in the staff client, build the table. if not, we return doing
-		nothing, as though the stat_cat_entry_copy_map was empty or null
-	*/
-
-	for( var n in entries )
-	{
-			var entry = entries[n];
-			if(isTrue(entry.stat_cat().opac_visible()))
-			{
-				visibleStatCat = true;
-				break;
-			}
-	}
-
-	if(!(isXUL() || visibleStatCat)) return;
-
-	var a = _cpdExtrasInit(args);
-	var tbody = a[0];
-	var rowt = a[1];
-
-	for( var n in entries ) {
-		var entry = entries[n];
-		if(!(isXUL() || isTrue(entry.stat_cat().opac_visible()))) continue;
-		var row = rowt.cloneNode(true);
-		$n(row, 'key').appendChild(text(entry.stat_cat().name()));
-		$n(row, 'value').appendChild(text(entry.stat_cat_entry().value()));
-		unHideMe($n(row, 'cat'));
-		unHideMe(row);
-		tbody.appendChild(row);
-	}
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/depth_selector.js b/Open-ILS/web/opac/skin/default/js/depth_selector.js
deleted file mode 100644
index 6bd4b0e..0000000
--- a/Open-ILS/web/opac/skin/default/js/depth_selector.js
+++ /dev/null
@@ -1,129 +0,0 @@
-
-attachEvt( "common", "locationChanged", updateLoc );
-
-var _ds;
-var _libselspan;
-var _libselslink;
-var _dselspan;
-var _newlocation = null;
-
-function depthSelInit() {
-	_ds = $('depth_selector'); 
-	_ds.onchange = depthSelectorChanged;
-	_libselspan = $('lib_selector_span');
-	_libsellink = $('lib_selector_link');
-	_dselspan = $('depth_selector_span');
-
-	if( getLocation() == globalOrgTree.id() ) {
-		unHideMe( _libselspan );
-		_libsellink.onclick = _opacHandleLocationTagClick;
-	} else {
-		unHideMe( _dselspan );
-		buildLocationSelector();
-	}
-
-	setSelector(_ds,	getDepth());
-	_newlocation = getLocation();
-}
-
-
-var orgTreeIsBuilt = false;
-function _opacHandleLocationTagClick() {
-
-	swapCanvas(G.ui.common.org_container);
-
-	if(!orgTreeIsBuilt) {
-		drawOrgTree();
-		orgTreeIsBuilt = true;
-	}
-
-}
-
-function depthSelGetDepth() {
-	var depth = parseInt(_ds.options[_ds.selectedIndex].value);
-	if(isNaN(depth)) depth = 0;
-	return depth;
-}
-
-function depthSelectorChanged() {
-	var i = _ds.selectedIndex;
-	if( i == _ds.options.length - 1 ) {
-		setSelector( _ds, getDepth() );
-		_opacHandleLocationTagClick();
-	} else { 
-		/* this re-submits the search when they change the search range
-			disabled for testing...
-			*/
-		/*runEvt('common', 'depthChanged');*/ 
-	}
-}
-
-var chooseAnotherNode;
-function buildLocationSelector(newLoc) {
-
-	var loc;
-	if(newLoc != null) loc = newLoc;
-	else loc = getLocation();
-
-	if( loc == globalOrgTree.id() ) return;
-
-	var selector = _ds;
-	if(!chooseAnotherNode) 
-		chooseAnotherNode = selector.removeChild(
-			selector.getElementsByTagName("option")[0]);
-	var node = chooseAnotherNode;
-	removeChildren(selector);
-	
-	var location = findOrgUnit(loc);
-	var type;
-	if (location) type = findOrgType(location.ou_type());
-
-	var orgHiding = checkOrgHiding();
-	while( type && location ) {
-		var n = node.cloneNode(true);	
-		n.setAttribute("value", type.depth());
-		removeChildren(n);
-		n.appendChild(text(type.opac_label()));
-		selector.appendChild(n);
-		location = findOrgUnit(location.parent_ou());
-		if(location) {
-			type = findOrgType(location.ou_type());
-			if (orgHiding && orgHiding.depth > type.depth()) {
-				type = null;
-			}
-		} else {
-			type = null;
-		}
-	}
-
-	selector.appendChild(node);
-}
-
-function getNewSearchDepth() { return newSearchDepth; }
-function getNewSearchLocation() { return (isNull(_newlocation)) ? LOCATION : _newlocation; }
-function depthSelGetNewLoc() { return getNewSearchLocation(); }
-
-function updateLoc(location, depth) {
-	if( depth != null ) {
-		if(depth != 0 ){
-			_libsellink.onclick = _opacHandleLocationTagClick;
-			if( location == globalOrgTree.id() ) {
-				hideMe( _dselspan );
-				unHideMe( _libselspan );
-			} else {
-				buildLocationSelector(location);
-				hideMe( _libselspan );
-				unHideMe( _dselspan );
-			}
-		}
-
-		setSelector(_ds, depth);
-		newSearchDepth = depth;
-	}
-
-	_newlocation = location;
-	runEvt('common','locationUpdated', location);
-}
-
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/holds.js b/Open-ILS/web/opac/skin/default/js/holds.js
deleted file mode 100644
index 60487c2..0000000
--- a/Open-ILS/web/opac/skin/default/js/holds.js
+++ /dev/null
@@ -1,1188 +0,0 @@
-var holdsOrgSelectorBuilt = false;
-var holdArgs;
-
-/* 
-note: metarecord holds have a holdable_formats field that contains
-item_type(s)-item_forms(s)-language
-item_form and language are optional - if language exist and no 
-item_form is specified, use item_type(s)--language
-*/
-
-var noEmailMessage;
-var noEmailMessageXUL;
-
-var holdTargetTypeMap = {
-    M : 'metarecord',
-    T : 'record',
-    V : 'volume',
-    I : 'issuance',
-    C : 'copy',
-    P : 'part'
-};
-
-
-
-function holdsHandleStaff() {
-
-    // if we know the recipient's barcode, use it
-    if(xulG.patron_barcode) return _holdsHandleStaff();
-
-	swapCanvas($('xulholds_box'));
-	$('xul_recipient_barcode').focus();
-	$('xul_recipient_barcode').onkeypress = function(evt) 
-		{if(userPressedEnter(evt)) { _holdsHandleStaff(); } };
-	$('xul_recipient_barcode_submit').onclick = _holdsHandleStaff;
-	$('xul_recipient_me').onclick = _holdsHandleStaffMe;
-
-	$('xul_recipient_barcode').onkeyup = function(evt) {
-        if($('xul_recipient_barcode').value == '') 
-            $('xul_recipient_me').disabled = false;
-        else
-            $('xul_recipient_me').disabled = true;
-    };
-}
-
-$('holds_frozen_thaw_input').onchange = 
-        function(){holdsVerifyThawDateUI('holds_frozen_thaw_input');}
-$('holds_frozen_thaw_input').onkeyup = 
-        function(){holdsVerifyThawDateUI('holds_frozen_thaw_input');}
-
-function _holdsHandleStaffMe() {
-	holdArgs.recipient = G.user;
-	holdsDrawEditor();
-}
-
-function _holdsHandleStaff() {
-	var barcode = xulG.patron_barcode;
-    if(!barcode) {
-        barcode = $('xul_recipient_barcode').value;
-        if(xulG.get_barcode) {
-            // We have a "complete the barcode" function, call it (actor = users only)
-            var new_barcode = xulG.get_barcode(window, 'actor', barcode);
-            // If we got a result (boolean false is "no result") check it
-            if(new_barcode) {
-                // user_false string means they picked "None of the above"
-                // Abort before any other events can fire
-                if(new_barcode == "user_false") return;
-                // No error means we have a (hopefully valid) completed barcode to use.
-                // Otherwise, fall through to other methods of checking
-                if(typeof new_barcode.ilsevent == 'undefined')
-                    barcode = new_barcode.barcode;
-            }
-        }
-    }
-	var user = grabUserByBarcode( G.user.session, barcode );
-
-	var evt;
-	if(evt = checkILSEvent(user)) {
-		alertILSEvent(user);
-		return;
-	}
-
-	if(!barcode || !user) {
-		alertId('holds_invalid_recipient', barcode);
-		return
-	}
-
-	grabUserPrefs(user);
-
-	holdArgs.recipient = user;
-	holdsDrawEditor();
-}
-
-
-
-/** args:
-  * record, volume, copy (ids)
-  * request, recipient, editHold (objects)
-  */
-
-function holdsDrawEditor(args) {
-
-	holdArgs = (args) ? args : holdArgs;
-
-    if(!noEmailMessage)
-        noEmailMessage = $('holds_email').removeChild($('holds.no_email'));
-
-    if(!noEmailMessageXUL)
-        noEmailMessageXUL = $('holds_email').removeChild($('holds.no_email.xul'));
-
-	if(isXUL() && holdArgs.recipient == null 
-			&& holdArgs.editHold == null) {
-		holdsHandleStaff();
-		return;
-	}
-
-	if(!holdArgs.recipient) holdArgs.recipient = G.user;
-	if(!holdArgs.requestor) holdArgs.requestor = G.user;
-
-	if(!(holdArgs.requestor && holdArgs.requestor.session)) {
-		detachAllEvt('common','locationChanged');
-		attachEvt('common','loggedIn', holdsDrawEditor)
-		initLogin();
-		return;
-	}
-
-	if(holdArgs.editHold) // flesh the args with the existing hold 
-		holdArgsFromHold(holdArgs.editHold, holdArgs);
-
-     removeCSSClass($('holds_parts_selector'), 'parts-warning');
-    holdArgs.partsSuggestionMade = false;
-
-	holdsDrawWindow();
-}
-
-
-// updates the edit window with the existing hold's data 
-function _holdsUpdateEditHold() {
-
-	var hold = holdArgs.editHold;
-	var qstats = holdArgs.status;
-
-	var orgsel = $('holds_org_selector');
-    var frozenbox = $('holds_frozen_chkbox');
-
-	setSelector(orgsel, hold.pickup_lib());
-
-	if( hold.capture_time() || qstats.status > 2 ) {
-        frozenbox.disabled = true;
-        $('holds_frozen_thaw_input').disabled = true;
-        if(qstats.status == 3) {
-            // no pickup lib changes while in-transit
-		    orgsel.disabled = true;
-        } else {
-            var orgs = fetchPermOrgs('UPDATE_PICKUP_LIB_FROM_HOLDS_SHELF');
-            if(orgs[0] == -1)
-		        orgsel.disabled = true;
-        }
-    } else {
-		orgsel.disabled = false;
-        frozenbox.disabled = false;
-    }
-
-
-	$('holds_submit').onclick = holdsEditHold;
-	$('holds_update').onclick = holdsEditHold;
-
-	if(hold.phone_notify()) {
-		$('holds_enable_phone').checked = true;
-		$('holds_phone').value = hold.phone_notify();
-
-	} else {
-		$('holds_phone').disabled = true;
-		$('holds_enable_phone').checked = false;
-	}
-
-	if(isTrue(hold.email_notify())) {
-		$('holds_enable_email').checked = true;
-
-	} else {
-		$('holds_enable_email').checked = false;
-	}
-
-    dijit.byId('holds_expire_time').setValue(dojo.date.stamp.fromISOString(hold.expire_time()));
-
-    /* populate the hold freezing info */
-    if(!frozenbox.disabled && isTrue(hold.frozen())) {
-        frozenbox.checked = true;
-        unHideMe($('hold_frozen_thaw_row'));
-        if(hold.thaw_date()) {
-            dijit.byId('holds_frozen_thaw_input').setValue(dojo.date.stamp.fromISOString(hold.thaw_date()));
-        } else {
-            dijit.byId('holds_frozen_thaw_input').setValue('');
-        }
-    } else {
-        frozenbox.checked = false;
-        dijit.byId('holds_frozen_thaw_input').setValue('');
-        hideMe($('hold_frozen_thaw_row'));
-    }
-}
-
-function holdsEditHold() {
-	var hold = holdsBuildHoldFromWindow();
-	if(!hold) return;
-	holdsUpdate(hold);
-	showCanvas();
-	if(holdArgs.onComplete)
-		holdArgs.onComplete(hold);
-}
-
-function holdArgsFromHold(hold, oargs) {
-	var args = (oargs) ? oargs : {};
-	args.type = hold.hold_type();
-	var target = hold.target();
-    args[holdTargetTypeMap[args.type]] = target;
-	return args;
-}
-
-function holdFetchObjects(hold, doneCallback) {
-
-	var args = (hold) ? holdArgsFromHold(hold) : holdArgs;
-
-	var type = args.type;
-
-	if( type == 'C' ) {
-
-		if( args.copyObject ) {
-
-			args.copy = args.copyObject.id();
-			args.volume = args.copyObject.call_number();
-			_h_set_vol(args, doneCallback);
-
-		} else {
-			var creq = new Request(FETCH_COPY, args.copy);
-
-			creq.callback(
-				function(r) {
-					var cp = r.getResultObject();
-					args.copyObject = cp;
-					args.volume = args.copyObject.call_number();
-					_h_set_vol(args, doneCallback);
-				}
-			);
-			creq.send();
-		}
-	} else {
-		if( type == 'V' ) {
-			_h_set_vol(args, doneCallback);
-
-        } else if( type == 'I' ) {
-            _h_set_issuance(args, doneCallback);
-
-        } else if( type == 'P' ) {
-            _h_set_parts(args, doneCallback);
-
-		} else {
-			if( type == 'T') {
-				_h_set_rec(args, doneCallback);
-			} else {
-				_h_set_rec_descriptors(args, doneCallback);
-			}
-		}
-	}
-
-	return args;
-}
-
-function _h_set_parts(args, doneCallback) {
-
-    var preq = new Request(
-        'open-ils.fielder:open-ils.fielder.bmp.atomic',
-        {"cache":1, "fields":["label", "record"],"query": {"id":args.part}}
-    );
-
-    preq.callback(
-        function(r) {
-            var part = r.getResultObject()[0];
-            args.record = part.record;
-            args.partObject = part;
-            _h_set_rec(args, doneCallback);
-        }
-    );
-
-    preq.send();
-}
-
-function _h_set_vol(args, doneCallback) {
-
-	if( args.volumeObject ) {
-		args.volume = args.volumeObject.id();
-		args.record = args.volumeObject.record();
-		_h_set_rec(args, doneCallback);
-
-	} else {
-
-		var vreq = new Request(FETCH_VOLUME, args.volume);
-		vreq.callback(
-			function(r) {
-				var vol = r.getResultObject();
-				args.volumeObject = vol;
-				args.record = vol.record();
-				_h_set_rec(args, doneCallback);
-			}
-		);
-		vreq.send();
-	}
-}
-
-function _h_set_issuance(args, doneCallback) {
-
-	if( args.issuanceObject ) {
-		args.issuance = args.issuanceObject.id();
-		args.record = args.issuanceObject.subscription().record_entry();
-		_h_set_rec(args, doneCallback);
-
-	} else {
-
-		var vreq = new Request(FETCH_ISSUANCE, [args.issuance]);
-		vreq.callback(
-			function(r) {
-				var issuance = r.getResultObject()[0];
-				args.issuanceObject = issuance;
-				args.record = issuance.subscription().record_entry();
-				_h_set_rec(args, doneCallback);
-			}
-		);
-		vreq.send();
-	}
-}
-
-function _h_set_rec(args, doneCallback) {
-
-	if(args.recordObject) 
-		args.record = args.recordObject.doc_id();
-	else 
-		args.recordObject = findRecord( args.record, 'T' );
-	
-	if( args.type == 'T' || args.type == 'M' )  {
-		_h_set_rec_descriptors(args, doneCallback);
-	//} else if(args.type == 'P') {
-        //_h_get_parts(args, doneCallback);
-    } else {
-		if(doneCallback) doneCallback(args);
-    }
-}
-
-
-function _h_set_rec_descriptors(args, doneCallback) {
-
-    if( ! args.pickup_lib )
-        args.pickup_lib = getSelectorVal($('holds_org_selector'));
-
-    if(args.pickup_lib === null)
-        args.pickup_lib = args.recipient.home_ou();
-
-	// grab the list of record desciptors attached to this records metarecord 
-	if( ! args.recordDescriptors )  {
-		var params = { pickup_lib: args.pickup_lib };
-
-        if (args.type == 'M') {
-    		if( !args.metarecord && args.record) {
-                params.metarecord = args.metarecord = args.record;
-                delete(args.record);
-	    	} else {
-		    		params.metarecord = args.metarecordObject.doc_id();
-    		}
-        } else {
-    		params.record = args.record;
-        }
-
-		if( ! args.record ) {
-			if( args.metarecord )
-				params.metarecord = args.metarecord;
-			else 
-				params.metarecord = args.metarecordObject.doc_id();
-		}
-
-		var req = new Request(FETCH_MR_DESCRIPTORS, params );
-		req.callback(
-			function(r) {
-				var data = r.getResultObject();
-				args.recordDescriptors = args.recordDescriptors = data.descriptors;
-				args.metarecord = args.metarecord = data.metarecord;
-				if( args.type == 'M' && ! args.metarecordObject) 
-					args.metarecordObject = args.metarecordObject = findRecord(args.metarecord, 'M');	
-
-                _h_get_parts(args, doneCallback);
-			}
-		);
-		req.send();
-
-	} else {
-        _h_get_parts(args, doneCallback);
-	}
-
-	return args;
-}
-
-function _h_get_parts(args, doneCallback) {
-
-    if(args.type == 'M' || args.editHold || args.holdParts) {
-        if(doneCallback) 
-            doneCallback(args);
-
-    } else {
-
-		var req = new Request(
-            'open-ils.search:open-ils.search.biblio.record_hold_parts', 
-		    {pickup_lib: args.pickup_lib, record: args.record}
-        );
-
-		req.callback(
-			function(r) {
-				args.recordParts = r.getResultObject();
-                if(doneCallback)
-                    doneCallback(args);
-			}
-		);
-		req.send();
-    }
-}
-
-
-
-function holdsDrawWindow() {
-	swapCanvas($('holds_box'));
-	$('holds_cancel').onclick = function(){ runEvt('common', 'holdUpdateCanceled'), showCanvas() };
-	$('holds_submit').onclick = function(){holdsPlaceHold(holdsBuildHoldFromWindow())};
-	$('holds_update').onclick = function(){holdsPlaceHold(holdsBuildHoldFromWindow())};
-	holdFetchObjects(null, 
-		function(){
-			__holdsDrawWindow();
-
-			if(holdArgs.editHold) {
-				hideMe($('holds_submit'));
-				unHideMe($('holds_update'));
-				var req = new Request(FETCH_HOLD_STATUS, 
-					G.user.session, holdArgs.editHold.id());
-				req.send(true);
-				holdArgs.status = req.result();
-				_holdsUpdateEditHold();
-			}  
-		}
-	);
-}
-
-function __holdsDrawWindow() {
-
-	var rec = holdArgs.recordObject;
-	var vol = holdArgs.volumeObject;
-	var copy = holdArgs.copyObject;
-	var mr = holdArgs.metarecordObject;
-
-	rec = (rec) ? rec : mr;
-
-	if(!holdsOrgSelectorBuilt) {
-		holdsBuildOrgSelector(null,0);
-		holdsOrgSelectorBuilt = true;
-		var selector = $('holds_org_selector');
-
-		/*
-		var o_loc = findOrgUnit(getOrigLocation());
-		var t = findOrgType(o_loc.ou_type());
-		if( t.can_have_users() ) 
-			setSelector(selector, o_loc.id());
-		else 
-		*/
-
-		setSelector(selector, holdArgs.recipient.home_ou());
-	
-	}
-
-	var pref = holdArgs.recipient.prefs[PREF_DEF_PICKUP];
-	if(pref) {
-		setSelector(selector, pref);
-	}
-
-	/*
-	if(isXUL()) {
-		var dsel = $('holds_depth_selector');
-		unHideMe($('holds_depth_selector_row'));
-		if(dsel.getElementsByTagName('option').length == 0) {
-			var types = globalOrgTypes;
-			var depth = findOrgDepth(G.user.ws_ou());
-			iterate(types, 
-				function(t) {
-					if(t.depth() > depth) return;
-					insertSelectorVal(dsel, -1, t.opac_label(), t.depth());
-				}
-			);
-		}
-	}
-	*/
-
-	appendClear($('holds_recipient'), text(
-		holdArgs.recipient.family_name() + ', ' +  
-			holdArgs.recipient.first_given_name()));
-	appendClear($('holds_title'), text(rec.title()));
-	appendClear($('holds_author'), text(rec.author()));
-
-    if( holdArgs.type == 'I' ) {
-		unHideMe($('holds_type_row'));
-        unHideMe($('holds_is_issuance'));
-        unHideMe($('holds_issuance_row'));
-        appendClear($('holds_issuance_label'), text(holdArgs.issuanceObject.label()));
-
-    } else if( holdArgs.type == 'V' || holdArgs.type == 'C' ) {
-
-		unHideMe($('holds_type_row'));
-		unHideMe($('holds_cn_row'));
-		appendClear($('holds_cn'), text(holdArgs.volumeObject.label()));
-
-		if( holdArgs.type == 'V'  ) {
-			unHideMe($('holds_is_cn'));
-			hideMe($('holds_is_copy'));
-
-		} else {
-			hideMe($('holds_is_cn'));
-			unHideMe($('holds_is_copy'));
-			unHideMe($('holds_copy_row'));
-			appendClear($('holds_copy'), text(holdArgs.copyObject.barcode()));
-		}
-
-	} else {
-		hideMe($('holds_type_row'));
-		hideMe($('holds_copy_row'));
-		hideMe($('holds_cn_row'));
-		hideMe($('holds_issuance_row'));
-	}
-
-    if(holdArgs.recordParts && holdArgs.recordParts.length) {
-        var selector = $('holds_parts_selector');
-        unHideMe($('holds_parts_row'));
-        unHideMe(selector);
-
-        var nodeList = [];
-        dojo.forEach(selector.options, 
-            function(node) { if(node.value != '') nodeList.push(node) } );
-
-        dojo.forEach(nodeList, function(node) { selector.removeChild(node); });
-
-        dojo.forEach(
-            holdArgs.recordParts, 
-            function(part) {
-                insertSelectorVal(selector, -1, part.label, part.id);
-            }
-        );
-
-    } else if(holdArgs.type == 'P') {
-        unHideMe($('holds_parts_row'));
-        unHideMe($('holds_parts_label'));
-	    appendClear( $('holds_parts_label'), text(holdArgs.partObject.label));
-    }
-
-	removeChildren($('holds_format'));
-
-	var mods_formats = rec.types_of_resource();
-	var formats;
-
-	if (holdArgs.recordDescriptors && holdArgs.recordDescriptors.length)
-		formats = holdArgs.recordDescriptors[0].item_type();
-
-	if( holdArgs.type == 'T' ) {
-		var desc = grep( holdArgs.recordDescriptors,
-			function(i) {
-				return (i.record() == holdArgs.record);	
-			}
-		);
-		if (desc) {
-			formats = desc[0].item_type();
-		}
-	}
-
-	if( holdArgs.type == 'M' ) {
-		var mr_formats;
-		if(holdArgs.editHold){
-			mr_formats = holdArgs.editHold.holdable_formats();
-		}else{
-			mr_formats = ''; // collect the item_type()s from all holdArgs.recordDescriptors
-			for(var desc in holdArgs.recordDescriptors){
-                if (!holdArgs.recordDescriptors[desc].item_type()) continue;
-				mr_formats += holdArgs.recordDescriptors[desc].item_type();
-			}
-
-            var first_form = 1;
-			for(var desc in holdArgs.recordDescriptors){
-                if (!holdArgs.recordDescriptors[desc].item_form()) continue;
-                if (first_form) {
-                    mr_formats += '-';
-                    first_form = 0;
-                }
-				mr_formats += holdArgs.recordDescriptors[desc].item_form();
-			}
-
-
-		}
-		
-		var data = holdsParseMRFormats(mr_formats);
-		mods_formats = data.mods_formats;
-		formats = data.formats;
-	}
-
-
-	for( var i in mods_formats ) {
-		var res = mods_formats[i];
-		var img = elem("img");
-		setResourcePic(img, res);
-		$('holds_format').appendChild(img);
-		if(formats)
-			$('holds_format').appendChild(text(' '+ MARCTypeToFriendly(formats[i]) +' '));
-		else
-			$('holds_format').appendChild(text(' '+ mods_formats[i] +' '));
-		$('holds_format').appendChild(elem('br'));
-	}
-
-
-	$('holds_phone').value = (holdArgs.recipient.day_phone() ? holdArgs.recipient.day_phone() : '');
-	var pref = holdArgs.recipient.prefs[PREF_DEF_PHONE];
-	if(pref) $('holds_phone').value = pref;
-	appendClear( $('holds_email'), text(holdArgs.recipient.email()));
-
-	pref = holdArgs.recipient.prefs[PREF_HOLD_NOTIFY];
-
-	if(pref) {
-		if( ! pref.match(/email/i) ) {
-			$('holds_enable_email').checked = false;
-		} else {
-			$('holds_enable_email').checked = true;
-		}
-
-		if( ! pref.match(/phone/i) ) {
-			$('holds_phone').disabled = true;
-			$('holds_enable_phone').checked = false;
-		} else {
-			$('holds_phone').disabled = false;
-			$('holds_enable_phone').checked = true;
-		}
-	}
-
-    if(!holdArgs.recipient.email()) {
-		$('holds_enable_email').checked = false;	
-		$('holds_enable_email').disabled = true;
-        var message;
-        if(isXUL()) {
-            message = noEmailMessageXUL.cloneNode(true);
-	        appendClear($('holds_email'), message);
-        } else {
-            message = noEmailMessage.cloneNode(true);
-	        appendClear($('holds_email'), message);
-            $('holds.no_email.my_account').setAttribute('href', buildOPACLink({page:MYOPAC},null,true));
-        }
-        unHideMe(message);
-    }
-
-	if(!$('holds_phone').value) 
-		$('holds_enable_phone').checked = false;	
-
-	appendClear($('holds_physical_desc'), text(rec.physical_description()));
-
-	if(holdArgs.type == 'M') hideMe($('hold_physical_desc_row'));
-
-	holdsSetFormatSelector();
-
-    $('holds_frozen_chkbox').checked = false;
-    hideMe($('hold_frozen_thaw_row'));
-
-    var interval = fetchOrgSettingDefault(holdArgs.recipient.home_ou(), 'circ.hold_expire_interval');
-    var secs = 0;
-    if(interval) {
-        secs = interval_to_seconds(interval);
-        var expire = new Date();
-        expire.setTime(expire.getTime() + Number(secs + '000'));
-        dijit.byId('holds_expire_time').setValue(expire);
-    }
-}
-
-function holdsParseMRFormats(str) {
-	var data = str.split(/-/);	
-
-	var formats = [];
-	var mods_formats = [];
-
-	for( var i = 0; i < data[0].length; i++ ) {
-		formats.push( data[0].charAt(i) );
-		mods_formats.push( MARCFormatToMods( formats[i] ) );
-	}
-	
-	formats = uniquify(formats);
-	mods_formats = uniquify(mods_formats);
-
-	return {
-		formats			: formats,
-		mods_formats	: mods_formats,
-		lang				: data[2],
-		largeprint		: data[1]
-	};
-}
-
-
-function holdsSetFormatSelector() {
-	var type = holdArgs.type;
-	if( type == 'C' || type == 'V' || type == "I" || holdArgs.editHold ) return;
-
-	var data				= holdsGetFormats();
-	var avail_formats	= data.avail_formats;
-	var sel_formats	= data.sel_formats;
-	holdArgs.language = data.lang;
-	if( type=='M'){		
-		hideMe($('holds_alt_formats_row_extras'));
-		unHideMe($('holds_alt_formats_row'));	
-	}else{
-		unHideMe($('holds_alt_formats_row_extras'));
-	}
-
-	var selector = $('hold_alt_form_selector');
-
-    for( var i = 0; i < selector.options.length; i++ ) {
-        if (selector.options[i].className.indexOf('hide_me') == -1)
-            hideMe(selector.options[i]);
-        selector.options[i].disabled = true;
-    }
-
-	for( var i = 0; i < avail_formats.length; i++ ) {
-		var form = avail_formats[i];
-		var opt = findFormatSelectorOptByParts(selector,form);
-        if (!opt) continue;
-		if(type=='M') opt.selected=true;
-		unHideMe(opt);
-        opt.disabled = false;
-	}
-
-    // If the user selects a format, P-type holds are no longer an option
-    // disable and reset the P-type form control
-    selector.onchange = function() {
-        var partsSel = $('holds_parts_selector');
-        for(var i = 0; i < selector.options.length; i++) {
-            if(selector.options[i].selected) {
-                partsSel.selectedIndex = 0; // none selected
-                partsSel.disabled = true;
-                return;
-            }
-        }
-        partsSel.disabled = false;
-    }
-}
-
-function findFormatSelectorOptByParts( sel, val ) {
-    var parts = val.split('-');
-    for( var i = 0; i < sel.options.length; i++ ) {
-        var opt = sel.options[i];
-        var oval = opt.value;
-        var oparts = oval.split('-');
-        if( oparts[0].indexOf(parts[0]) > -1 && (!parts[1] || oparts[1].indexOf(parts[1]) > -1) ) return opt;
-    }
-    return null;
-}
-
-function holdsGetFormats() {
-
-	var lang;
-	var formats = [];
-	var sformats = []; // selected formats 
-
-	var type = holdArgs.type;
-	var desc = holdArgs.recordDescriptors;
-	var rec	= holdArgs.record;
-	var mrec = holdArgs.metarecord;
-
-
-	if( type == 'T') {
-
-		for( var i = 0; i < desc.length; i++ ) {
-			var d = desc[i];
-			if( d.record() == holdArgs.record ) {
-				lang = d.item_lang();
-				holdArgs.myFormat =  _t_f_2_format(d.item_type(), d.item_form());
-				sformats.push(holdArgs.myFormat);
-				break;
-			}
-		}
-
-    	for( var i = 0; i < desc.length; i++ ) {
-	    	var d = desc[i];
-		    if( type == 'T' && d.item_lang() != lang ) continue;
-    		formats.push( _t_f_2_format(d.item_type(), d.item_form()));
-	    }
-
-	} else if( type =='M') {
-
-        // All available formats are selected by default in MR holds
-       	for( var i = 0; i < desc.length; i++ ) {
-	    	var d = desc[i];
-		    var _tmp_f = _t_f_2_format(d.item_type(), d.item_form());
-    		formats.push( _tmp_f );
-	    	sformats.push( _tmp_f );
-    	}
-	}
-
-	formats = uniquify(formats);
-	sformats = uniquify(sformats);
-
-	return {
-		lang : lang,
-		avail_formats : formats, 
-		sel_formats : sformats
-	};
-}
-
-
-
-function _t_f_2_format(type, form) {
-	if( (type == 'a' || type == 't') && form == 's' ) return 'at-s';
-	if( form == 'd' ) return 'at-d';
-	return (type == 'a' || type == 't') ? 'at' : type;
-}
-
-function holdsSetSelectedFormats() {
-
-	var cn = $('holds_alt_formats_row').className;
-	if( cn && cn.match(/hide_me/) ) return;
-
-	var selector = $('hold_alt_form_selector');
-	var vals = getSelectedList(selector);
-
-	if(vals.length == 0) return;
-
-	var fstring = "";
-
-	if( contains(vals, 'at-d') || contains(vals, 'at-s') || contains(vals, 'at')) {
-		if( contains(vals, 'at') ) {
-			fstring = 'at';
-		} else if (contains(vals, 'at-s') && contains(vals, 'at-d')) {
-			fstring = 'at-sd';
-		} else if (!contains(vals, 'at-s')) {
-			fstring = 'at-d';
-		} else {
-			fstring = 'at-s';
-		}
-	}
-
-	for( var i = 0; i < vals.length; i++ ) {
-		var val = vals[i];
-		if( !val.match(/at/) ) fstring = val + fstring;
-	}
-
-	if( holdArgs.language ) {
-		if( fstring.match(/-/) )
-			fstring = fstring + '-' + holdArgs.language;
-		else
-			fstring = fstring + '--' + holdArgs.language;
-	}
-
-
-	return fstring;
-}
-
-
-function holdsCheckPossibility(pickuplib, hold, recurse) {
-
-	var args = { 
-		titleid : holdArgs.record,
-		mrid : holdArgs.metarecord,
-		volume_id : holdArgs.volume,
-		issuanceid : holdArgs.issuance,
-		copy_id : holdArgs.copy,
-		hold_type : holdArgs.type,
-		holdable_formats : holdArgs.holdable_formats,
-		patronid : holdArgs.recipient.id(),
-		depth : 0, 
-		pickup_lib : pickuplib,
-        partid : holdArgs.part
-	};
-
-	if(recurse) {
-		/* if we're calling create again (recursing), 
-			we know that the hold possibility check already succeeded */
-		holdHandleCreateResponse({_recurse:true, _hold:hold}, true );
-
-	} else {
-		_debug("hold possible args = "+js2JSON(args));
-	
-		var req = new Request(CHECK_HOLD_POSSIBLE, G.user.session, args );
-	
-		req.request.alertEvent = false;
-		req.request._hold = hold;
-		req.request._recurse = recurse;
-		req.callback(holdHandleCreateResponse);
-		req.send();
-	}
-}
-
-
-function holdsBuildOrgSelector(node) {
-
-	if(!node) node = globalOrgTree;
-	if(!isTrue(node.opac_visible()) && !isXUL()) return;
-
-	var render_this_org = true;
-	var orgHiding = checkOrgHiding(); // value here is cached so not too painful with the recursion
-	if (orgHiding) {
-		if (node.id() == globalOrgTree.id()) {
-			node = orgHiding.org; // top of tree = org hiding context org
-		}
-		if ( ! orgIsMine( orgHiding.org, node, orgHiding.depth ) ) {
-			render_this_org = false;
-		}
-	}
-
-	if (render_this_org) {
-		var selector = $('holds_org_selector');
-		var index = selector.options.length;
-
-		var type = findOrgType(node.ou_type());
-		var indent = type.depth() - 1;
-
-		var opt = setSelectorVal( selector, index, node.name(), node.id(), null, indent );
-		if(!type.can_have_users()) {
-			opt.disabled = true;
-			addCSSClass(opt, 'disabled_option');
-		}
-	}
-	
-	for( var i in node.children() ) {
-		var child = node.children()[i];
-		if(child) holdsBuildOrgSelector(child);
-	}
-}
-
-function holdsBuildHoldFromWindow() {
-
-	var org = getSelectorVal($('holds_org_selector'));
-	var node = findOrgUnit(org);
-	var ntype = findOrgType(node.ou_type());
-	if(!ntype.can_have_users()) {
-		alertId('holds_pick_good_org');
-		return;
-	}
-
-    fieldmapper.IDL.load(['ahr']);
-	var hold = new ahr();
-	if(holdArgs.editHold) {
-		hold = holdArgs.editHold;
-		holdArgs.editHold = null;
-	}
-
-	if( $('holds_enable_phone').checked ) {
-		var phone = $('holds_phone').value;
-		if( !phone || !phone.match(REGEX_PHONE) ) {
-			alert($('holds_bad_phone').innerHTML);
-			return null;
-		}
-		hold.phone_notify(phone);
-
-	} else {
-		hold.phone_notify("");
-	}
-
-	if( $('holds_enable_email').checked ) 
-		hold.email_notify(1);
-	else
-		hold.email_notify(0);
-
-    var part = getSelectorVal($('holds_parts_selector'));
-    if(part) {
-        holdArgs.type = 'P';
-        holdArgs.part = part;
-    }
-
-	var target = holdArgs[holdTargetTypeMap[holdArgs.type]];
-
-    // a mono part is selected
-
-	hold.pickup_lib(org); 
-	//hold.request_lib(org); 
-	hold.requestor(holdArgs.requestor.id());
-	hold.usr(holdArgs.recipient.id());
-	hold.target(target);
-	hold.hold_type(holdArgs.type);
-
-    var expDate = dijit.byId('holds_expire_time').getValue();
-    if(expDate) {
-        var expireDate = dojo.date.stamp.toISOString(expDate);
-        expireDate = holdsVerifyThawDate(expireDate); 
-        if(expireDate)
-            hold.expire_time(expireDate);
-        else 
-            return;
-    }
-
-    // see if this hold should be frozen and for how long
-    if($('holds_frozen_chkbox').checked) {
-        hold.frozen('t');
-        unHideMe($('hold_frozen_thaw_row'));
-        var thawDate = dijit.byId('holds_frozen_thaw_input').attr('value');
-        if(thawDate) {
-            thawDate = dojo.date.stamp.toISOString(thawDate);
-            thawDate = holdsVerifyThawDate(thawDate); 
-            if(thawDate) 
-                hold.thaw_date(thawDate);
-            else
-                return;
-        } else {
-            hold.thaw_date(null);
-        }
-    } else {
-        hold.frozen('f');
-        hold.thaw_date(null);
-    }
-
-	//check for alternate hold formats 
-	var fstring = holdsSetSelectedFormats();
-	if(fstring) { 
-		hold.hold_type('M'); 
-		hold.holdable_formats(fstring);
-		if (fstring)
-			holdArgs.holdable_formats = fstring;
-		hold.target(holdArgs.metarecord);
-	}
-	return hold;
-}
-	
-function holdsPlaceHold(hold, recurse) {
-	if(!hold) return;
-	swapCanvas($('check_holds_box'));
-	holdsCheckPossibility(hold.pickup_lib(), hold, recurse);
-}
-
-
-function holdHandleCreateResponse(r, recurse) {
-
-	if(!recurse) {
-		var res = r.getResultObject();
-        var place_anyway = false;
-		if(checkILSEvent(res) || res.success != 1) {
-            if(res.success != 1) {
-                if(res.age_protected_copy == 1) {
-                    // There is at least one copy that *could* fill the hold, if it were not age-protected.
-                    if( confirm($('hold_age_protected_override').innerHTML) ) {
-                        place_anyway = true;
-                    } else {
-    		        	swapCanvas($('holds_box'));
-	    		        return;
-                    }
-                } else if(res.place_unfillable == 1) {
-                    if( confirm($('hold_place_unfillable_override').innerHTML) ) {
-                        place_anyway = true;
-                    } else {
-    		        	swapCanvas($('holds_box'));
-	    		        return;
-                    }
-                }
-            }
-            if(!place_anyway) {
-    			if(res.success != 1) {
-
-                    if(!holdArgs.partsSuggestionMade && holdArgs.recordParts && 
-                            holdArgs.recordParts.length && holdArgs.type == 'T') {
-                        // T holds on records that have parts are OK, but if the record has no non-part
-                        // copies, the hold will ultimately fail.  Suggest selecting a part to the user.
-                        addCSSClass($('holds_parts_selector'), 'parts-warning');
-                        holdArgs.partsSuggestionMade = true;
-                        alert($('hold_has_parts').innerHTML);
-                    } else {
-			    	    alert($('hold_not_allowed').innerHTML);
-                    }
-    			} else {
-	    			if( res.textcode == 'PATRON_BARRED' ) {
-		    			alertId('hold_failed_patron_barred');
-			    } else {
-				    	alert($('hold_not_allowed').innerHTML);
-    				}
-	    		}
-		    	swapCanvas($('holds_box'));
-			    return;
-            }
-		}
-        r._hold.selection_depth(res.depth);
-	}	
-
-	holdCreateHold(r._recurse, r._hold);
-}
-
-
-function holdCreateHold( recurse, hold ) {
-	var method = CREATE_HOLD;
-	if(recurse) method = CREATE_HOLD_OVERRIDE;
-	var req = new Request( method, holdArgs.requestor.session, hold );
-	req.request.alertEvent = false;
-	req.send(true);
-	var res = req.result();
-	holdProcessResult(hold, res, recurse);
-	
-	showCanvas();
-
-	runEvt('common', 'holdUpdated');
-}
-
-
-function holdProcessResult( hold, res, recurse ) {
-
-	if( res && res > -1 ) {
-		alert($('holds_success').innerHTML);
-		holdArgs = null;
-        if(isXUL() && typeof xulG.opac_hold_placed == 'function')
-            xulG.opac_hold_placed(res);
-
-	} else {
-
-		if( recurse ) {
-			alert($('holds_failure').innerHTML);
-			return;
-		}
-
-		if( grep(res, function(e) { return (e.textcode == 'HOLD_EXISTS'); }) ) {
-			if( fetchPermOrgs('HOLD_EXISTS.override')[0] != -1 ) {
-				if( confirm($('hold_dup_exists_override').innerHTML) ) {
-					return holdsPlaceHold(hold, true);
-				}
-                return;
-
-			} else {
-				return alert($('hold_dup_exists').innerHTML);
-			}
-		}
-
-		if( grep(res, function(e) { return (e.textcode == 'HOLD_ITEM_CHECKED_OUT'); }) ) {
-			if( fetchPermOrgs('HOLD_ITEM_CHECKED_OUT.override')[0] != -1 ) {
-				if( confirm($('hold_checked_out_override').innerHTML) ) {
-					return holdsPlaceHold(hold, true);
-				}
-                return;
-
-			} else {
-				return alert($('hold_checked_out').innerHTML);
-			}
-		}
-
-
-		alert($('holds_failure').innerHTML);
-	}
-}
-
-
-function holdsCancel(holdid, user) {
-	if(!user) user = G.user;
-	var req = new Request(CANCEL_HOLD, user.session, holdid, /* Patron via OPAC */ 6);
-	req.send(true);
-	return req.result();
-	runEvt('common', 'holdUpdated');
-}
-
-function holdsUpdate(hold, user) {
-	if(!user) user = G.user;
-	var req = new Request(UPDATE_HOLD, user.session, hold);
-	req.send(true);
-	var x = req.result(); // cause an exception if there is one 
-	runEvt('common', 'holdUpdated');
-}
-
-/* verify that the thaw date is valid and after today */
-function holdsVerifyThawDate(dateString, isGreater) {
-    thawDate = dojo.date.stamp.fromISOString(dateString);
-    if(thawDate) {
-        if(isGreater) {
-            if(dojo.date.compare(thawDate) > 0) {
-                return dojo.date.stamp.toISOString(thawDate);
-            }
-        } else {
-            return dojo.date.stamp.toISOString(thawDate);
-        }
-    }
-    return null;
-}
-
-function holdsVerifyThawDateUI(element) {
-    value = dojo.date.stamp.toISOString(dijit.byId(element).getValue());
-
-    if(!value) {
-        removeCSSClass($(element), 'invalid_field');
-        return;
-    }
-
-    if(!holdsVerifyThawDate(value, true)) {
-        addCSSClass($(element), 'invalid_field');
-    } else {
-        removeCSSClass($(element), 'invalid_field');
-    }
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/mresult.js b/Open-ILS/web/opac/skin/default/js/mresult.js
deleted file mode 100644
index c6c548b..0000000
--- a/Open-ILS/web/opac/skin/default/js/mresult.js
+++ /dev/null
@@ -1,141 +0,0 @@
-//var records = {};
-var records = [];
-var ranks = [];
-var onlyrecord = {};
-var table;
-var mresultPreCache = 200;
-var searchTimer;
-var resultFacetKey;
-
-attachEvt("common", "unload", mresultUnload);
-attachEvt("common", "run", mresultDoSearch);
-attachEvt("result", "idsReceived", mresultSetRecords); 
-attachEvt("result", "idsReceived", mresultCollectRecords); 
-
-function mresultUnload() { removeChildren(table); table = null;}
-
-hideMe($('copyright_block')); 
-
-function mresultDoSearch() {
-
-
-	TFORM = null; /* clear the rresult tform var so it's not propogated */
-
-	swapCanvas($('loading_alt'));
-	table = G.ui.result.main_table;
-
-    var holdTarget = new CGI().param('hold_target');
-    if(holdTarget != null) {
-        mresultHandlePlaceHold(holdTarget);
-        return;
-    }
-
-
-	while( table.parentNode.rows.length <= (getDisplayCount() + 1) )  
-		table.appendChild(G.ui.result.row_template.cloneNode(true));
-
-	if( (getSearches() || getAdvTerm()) && !getTerm() ) {
-		if(getAdvType() == ADVTYPE_MULTI ) mresultCollectAdvIds();
-
-	} else {
-		_mresultCollectIds(); 
-		ADVTERM = "";
-		ADVTYPE = "";
-	}
-}
-
-function _mresultCollectIds() { 
-	resultCollectSearchIds(true, SEARCH_MRS_QUERY, mresultHandleMRIds ); 
-}
-
-function mresultCollectAdvIds() { 
-	resultCollectSearchIds(false, SEARCH_MRS_QUERY, mresultHandleMRIds ); 
-}
-
-function mresultHandleMRIds(r) {
-	var res = r.getResultObject();
-    resultFacetKey = res.facet_key;
-    resultCompiledSearch = res.compiled_search;
-    dojo.require('dojo.cookie');
-    dojo.cookie(COOKIE_SEARCH, js2JSON(res.compiled_search));
-	if(res.count != null) {
-		if( getOffset() == 0 ) HITCOUNT = res.count;
-		runEvt('result', 'hitCountReceived');
-	} 
-	runEvt('result', 'idsReceived', res.ids);
-}
-
-
-
-function mresultSetRecords(idstruct) {
-	if(!idstruct) return;
-	var o = getOffset();
-	for( var x = o; x < idstruct.length + o; x++ ) {
-		if( idstruct[x-o] != null ) {
-			var r = parseInt(idstruct[x - o][0]);
-			var ra = parseFloat(idstruct[x - o][1]);
-			var or = parseInt(idstruct[x - o][2]);
-			if(!isNull(r) && !isNaN(r)) records[x] = r;
-			if(!isNull(ra) && !isNaN(ra)) ranks[x] = ra;
-			if(!isNull(or) && !isNaN(or)) onlyrecord[x] = or;
-		}
-	}
-
-	TOPRANK = ranks[getOffset()];
-}
-
-
-
-var recsReceivedCalled = false;
-function mresultCollectRecords() {
-	if(getHitCount() > 0 ) runEvt("result", "preCollectRecords");
-	var i = 0;
-	for( var x = getOffset(); x!= getDisplayCount() + getOffset(); x++ ) {
-		if(isNull(records[x])) break;
-		if(isNaN(records[x])) continue;
-		var req = new Request(FETCH_MRMODS, records[x]);
-
-		req.request.userdata = i++;
-
-		/* wait at most 10 seconds for the mods rec to come back */
-		/* this needs more testing  */
-		req.request.timeout(10); 
-		req.request.abortCallback(
-			function(){
-				recordsHandled++;
-				if(resultPageIsDone()  && !recsReceivedCalled) {
-                    recsReceivedCalled = true;
-					runEvt('result', 'allRecordsReceived', recordsCache);
-					unHideMe($('copyright_block'));
-				}
-			}
-		);
-
-		req.callback(mresultHandleMods);
-		req.send();
-	}
-}
-
-function mresultHandleMods(r) {
-	var rec = r.getResultObject();
-	var pagePosition = r.userdata;
-	runEvt('result', 'recordReceived', rec, pagePosition, true);
-	if(rec) resultCollectCopyCounts(rec, pagePosition, FETCH_MR_COPY_COUNTS);
-	if(resultPageIsDone()) {
-		runEvt('result', 'allRecordsReceived', recordsCache);
-		unHideMe($('copyright_block')); /* *** */
-	}
-}
-
-
-function mresultHandlePlaceHold(target) {
-    function reload() {
-        location.href = location.href.replace(/&hold_target=\d+/, '');
-    }
-    attachEvt("common", "holdUpdated", reload);
-    attachEvt("common", "holdUpdateCanceled", reload);
-    attachEvt("common", "loginCanceled", reload);
-    holdsDrawEditor({record:target, type: 'M'});
-}
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/myopac.js b/Open-ILS/web/opac/skin/default/js/myopac.js
deleted file mode 100644
index 7378106..0000000
--- a/Open-ILS/web/opac/skin/default/js/myopac.js
+++ /dev/null
@@ -1,1738 +0,0 @@
-
-attachEvt("common", "run", myOPACInit );
-//attachEvt("common", "loggedIn", myOPACInit );
-attachEvt('common','locationUpdated', myopacReload );
-
-dojo.requireLocalization("openils.opac", "opac");
-
-var opac_strings = dojo.i18n.getLocalization("openils.opac", "opac");
-var fleshedUser = null;
-var fleshedContainers = {};
-var holdCache = {};
-var holdStatusCache = {};
-var showHoldQueuePosition = false;
-var allowPendingAddr = false;
-var myopacEnableRefWorks = false;
-var myopacRefWorksHost = 'http://www.refworks.com';
-
-function clearNodes( node, keepArray ) {
-	if(!node) return;
-	for( var n in keepArray ) node.removeChild(keepArray[n]);
-	removeChildren(node);
-	for( var n in keepArray ) node.appendChild(keepArray[n]);
-}
-
-function myOPACInit() {
-
-    fieldmapper.IDL.load(['mous']);
-
-    var orgHiding = checkOrgHiding();
-    if (orgHiding) {
-        hideMe($('prefs_def_location_row'));
-        hideMe($('prefs_def_range_row'));
-    }
-
-	if(!(G.user && G.user.session)) {
-        initLogin();
-
-    } else {
-
-        allowPendingAddr = fetchOrgSettingDefault(G.user.home_ou(), 'opac.allow_pending_address');
-        if(allowPendingAddr)
-            unHideMe($('myopac_pending_addr_td'));
-	    myOPACChangePage( "summary" );
-    }
-
-    $('myopac_holds_thaw_date_input').onkeyup = 
-        function(){holdsVerifyThawDateUI('myopac_holds_thaw_date_input'); }
-    $('myopac_holds_thaw_date_input').onchange = 
-        function(){holdsVerifyThawDateUI('myopac_holds_thaw_date_input'); }
-
-}
-
-function myopacReload() {
-	//swapCanvas($('myopac_reloading'));
-	var a = {};
-	a[PARAM_LOCATION] = getNewSearchLocation();
-	a[PARAM_DEPTH] = getNewSearchDepth();
-	hideMe($('canvas_main'));
-	goTo(buildOPACLink(a, true));
-}
-
-
-function myOPACChangePage( page ) {
-	showCanvas();
-
-	var s = $("myopac_summary_td");
-	var c = $("myopac_checked_td");
-	var f = $("myopac_fines_td");
-	var h = $("myopac_holds_td");
-	var p = $("myopac_prefs_td");
-	var b = $('myopac_bookbag_td');
-
-	var ss = $("myopac_summary_div");
-	var cc = $("myopac_checked_div");
-	var ff = $("myopac_fines_div");
-	var hh = $("myopac_holds_div");
-	var pp = $("myopac_prefs_div");
-	var bb = $('myopac_bookbag_div');
-
-	var cls = "myopac_link";
-	var acls = "myopac_link_active";
-
-	hideMe(ss);
-	hideMe(cc); hideMe(ff);
-	hideMe(hh); hideMe(pp);
-	hideMe(bb);
-
-	removeCSSClass(s, acls );
-	removeCSSClass(c, acls );
-	removeCSSClass(f, acls );
-	removeCSSClass(h, acls );
-	removeCSSClass(p, acls );
-	removeCSSClass(b, acls );
-
-	switch( page ) {
-
-		case "summary": 
-			unHideMe(ss);
-			addCSSClass(s, acls );
-			myOPACShowSummary();
-			break;
-
-		case "checked": 
-			unHideMe(cc);
-			addCSSClass(c, acls );
-			myOPACShowChecked();
-			break;
-
-		case "holds": 
-			unHideMe(hh);
-			addCSSClass(h, acls );
-			myOPACShowHolds();
-			break;
-
-		case "fines": 
-			unHideMe(ff);
-			addCSSClass(f, acls );
-			myOPACShowFines();
-			break;
-
-		case "prefs": 
-			unHideMe(pp);
-			addCSSClass(p, acls );
-			myOPACShowPrefs();
-			break;
-
-		case 'bookbag':
-			unHideMe(bb);
-			addCSSClass(b, acls);
-			myOPACShowBookbags();
-			break;
-	}
-}
-
-function myOPACShowChecked() {
-	if(checkedDrawn) return;
-	var req = new Request(FETCH_CHECKED_OUT_SUM, G.user.session, G.user.id());	
-	req.callback(myOPACDrawCheckedOutSlim);
-	req.send();
-
-	var nreq = new Request(FETCH_NON_CAT_CIRCS, G.user.session);
-	nreq.callback(myOPACDrawNonCatCircs);
-	nreq.send();
-}
-
-
-var checkedRowTemplate;
-var circsCache = new Array();
-var checkedDrawn = false;
-
-function moClearCheckedTable() {
-	var tbody			= $("myopac_checked_tbody");
-	var loading			= $("myopac_checked_loading");
-	var none				= $("myopac_checked_none");
-	clearNodes( tbody, [ loading, none ] );
-}
-
-var __can_renew_one = false;
-
-function myOPACDrawCheckedOutSlim(r) {
-
-	var checked			= r.getResultObject();
-	var tbody			= $("myopac_checked_tbody");
-	var loading			= $("myopac_checked_loading");
-	var none				= $("myopac_checked_none");
-
-   __can_renew_one = false;
-
-	if(checkedDrawn) return;
-	checkedDrawn = true;
-	if(!checkedRowTemplate) 
-		checkedRowTemplate = tbody.removeChild($("myopac_checked_row"));
-
-   moClearCheckedTable();
-
-	hideMe(loading); /* remove all children and start over */
-	if(!(checked && (checked.out || checked.overdue))) {
-		unHideMe(none);
-		return;
-	}
-
-    var totalAsync = checked.overdue.length + checked.out.length;
-    var fetchedCircs = [];
-    var collectCircs = function(r) {
-        var circ = r.getResultObject();
-        circ._od = r.od;
-        fetchedCircs.push(circ);
-        if(fetchedCircs.length < totalAsync) return;
-
-        // sort by due date, oldest to newest
-        fetchedCircs = fetchedCircs.sort(
-            function(a, b) {
-                if(a.due_date() > b.due_date()) return 1;
-                return -1;
-            }
-        )
-
-        dojo.forEach(fetchedCircs, 
-            function(circ) { 
-                myOPACDrawCheckedItem(circ, tbody);
-            }
-        );
-    }
-
-	for( var i = 0; i < checked.overdue.length; i++ ) {
-		var req = new Request(FETCH_CIRC_BY_ID, G.user.session, checked.overdue[i]);
-		//req.request.tbody = tbody;
-		req.request.od = true;
-		req.callback(collectCircs);
-		req.send();
-	}
-
-
-	for( var i = 0; i < checked.out.length; i++ ) {
-		var req = new Request(FETCH_CIRC_BY_ID, G.user.session, checked.out[i]);
-		//req.request.tbody = tbody;
-		req.callback(collectCircs);
-		req.send();
-	}
-
-   appendClear($('mo_items_out_count'), 
-      text(new String( parseInt(checked.overdue.length) + parseInt(checked.out.length) )) );
-
-   if( checked.overdue.length > 0 ) {
-      addCSSClass($('mo_items_overdue_count'), 'overdue');
-      appendClear($('mo_items_overdue_count'),
-         text(new String( parseInt(checked.overdue.length) )) );
-   }
-
-}
-
-
-//function myOPACDrawCheckedItem(r) {
-function myOPACDrawCheckedItem(circ, tbody) {
-
-	//var circ = r.getResultObject();
-	//var tbody = r.tbody;
-	var row = checkedRowTemplate.cloneNode(true);
-	row.id = 'myopac_checked_row_ ' + circ.id();
-    row.setAttribute('circid', circ.id());
-
-	var due = _trimTime(circ.due_date());
-
-	var dlink = $n( row, "myopac_checked_due" );
-	var rlink = $n( row, "myopac_checked_renewals" );
-	//var rnlink = $n( row, "myopac_checked_renew_link" );
-
-	//if( r.od ) due = elem('b', {style:'color:red;font-size:110%'},due);
-	if( circ._od ) {
-      due = elem('b', null, due);
-      addCSSClass(due, 'overdue');
-   } else {
-      due = text(due);
-   }
-
-	dlink.appendChild(due);
-	rlink.appendChild(text(circ.renewal_remaining()));
-	unHideMe(row);
-	//rnlink.setAttribute('href', 'javascript:myOPACRenewCirc("'+circ.id()+'");');
-	circsCache.push(circ);
-
-   if( circ.renewal_remaining() < 1 ) {
-      $n(row, 'selectme').disabled = true;
-      if(!__can_renew_one)
-         $('mo_renew_button').disabled = true;
-   } else {
-      __can_renew_one = true;
-      $('mo_renew_button').disabled = false;
-      $n(row, 'selectme').disabled = false;
-   }
-
-	tbody.appendChild(row);
-
-	var req = new Request(FETCH_MODS_FROM_COPY, circ.target_copy() );
-	req.request.alertEvent = false;
-	req.request.circ = circ.id();
-	req.request.copy = circ.target_copy();
-	req.callback(myOPACDrawCheckedTitle);
-	req.send();
-}
-
-var __circ_titles = {};
-
-function myOPACDrawCheckedTitle(r) {
-	var record = r.getResultObject();
-	var circid = r.circ;
-
-	/* Draw pre-cataloged items */
-	if(!record || checkILSEvent(record) || !(record.title() || record.author())) {
-		var req = new Request( FETCH_COPY, r.copy );
-		req.request.circ = circid;
-		req.callback(myOPACDrawPreCatalogedItem);
-		req.send();
-		return;
-	}
-
-	var row = $('myopac_checked_row_ ' + circid);
-	var tlink = $n( row, "myopac_checked_title_link" );
-	var alink = $n( row, "myopac_checked_author_link" );
-
-	buildTitleDetailLink(record, tlink);
-	buildSearchLink(STYPE_AUTHOR, record.author(), alink);
-   __circ_titles[circid] = record.title();
-}
-
-function myOPACDrawPreCatalogedItem(r) {
-	var copy = r.getResultObject();
-	var circid = r.circ;
-
-	var row = $('myopac_checked_row_ ' + circid);
-	var tlink = $n( row, "myopac_checked_title_link" );
-	var alink = $n( row, "myopac_checked_author_link" );
-
-	tlink.parentNode.appendChild(text(copy.dummy_title()));
-	alink.parentNode.appendChild(text(copy.dummy_author()));
-   __circ_titles[circid] = copy.dummy_title();
-}
-
-
-/*
-function myOPACRenewCirc(circid) {
-
-	var circ;
-	for( var i = 0; i != circsCache.length; i++ ) 
-		if(circsCache[i].id() == circid)
-			circ = circsCache[i];
-
-	if(!confirm($('myopac_renew_confirm').innerHTML)) return;
-
-	var req = new Request(RENEW_CIRC, G.user.session, 
-		{ patron : G.user.id(), copyid : circ.target_copy(), opac_renewal : 1 } );
-	req.request.alertEvent = false;
-	req.send(true);
-	var res = req.result();
-
-	if(checkILSEvent(res) || checkILSEvent(res[0])) {
-		alertId('myopac_renew_fail');
-		return;
-	}
-
-	alert($('myopac_renew_success').innerHTML);	
-	checkedDrawn = false;
-	myOPACShowChecked();
-}
-*/
-
-
-
-function myOPACShowHolds() {
-	var req = new Request(FETCH_HOLDS, G.user.session, G.user.id());	
-	req.callback(myOPACDrawHolds);
-	req.send();
-    $('myopac_holds_actions_none').selected = true;
-}
-
-var holdsTemplateRowOrig;
-var holdsTemplateRow;
-var myopacForceHoldsRedraw = false;
-function myOPACDrawHolds(r) {
-
-	var tbody = $("myopac_holds_tbody");
-	if(holdsTemplateRow && !myopacForceHoldsRedraw) return;
-    myopacForceHoldsRedraw = false;
-
-	if(holdsTemplateRowOrig) {
-		holdsTemplateRow = holdsTemplateRowOrig;
-		removeChildren(tbody);
-	} else {
-		holdsTemplateRow = tbody.removeChild($("myopac_holds_row"));
-		holdsTemplateRowOrig = holdsTemplateRow;
-	}
-
-	hideMe($('myopac_holds_loading'));
-
-	var holds = r.getResultObject();
-
-	if(!holds || holds.length < 1) unHideMe($('myopac_holds_none'));
-	for( var i = 0; i != holds.length; i++ ) {
-
-		var h = holds[i];
-		holdCache[h.id()] = h;
-
-		var row = holdsTemplateRow.cloneNode(true);
-		row.id = "myopac_holds_row_" + h.id();
-
-		var form = $n(row, "myopac_holds_formats");
-		form.id = "myopac_holds_form_" + h.id();
-
-		var orglink = $n(row, "myopac_holds_location");
-		orglink.appendChild(text(findOrgUnit(h.pickup_lib()).name()));
-
-		tbody.appendChild(row);
-
-		$n(row,'myopac_holds_edit_link').setAttribute(
-			'href','javascript:myOPACEditHold("'+ h.id()+'");'); 
-
-        if(isTrue(h.frozen())) {
-            hideMe($n(row, 'myopac_hold_unfrozen_true'))
-            unHideMe($n(row, 'myopac_hold_unfrozen_false'))
-            if(h.thaw_date()) {
-                var d = dojo.date.stamp.fromISOString(h.thaw_date());
-                $n(row, 'myopac_holds_frozen_until').appendChild(text(dojo.date.locale.format(d, {selector: 'date', fullYear: true})));
-            }
-        } else {
-            unHideMe($n(row, 'myopac_hold_unfrozen_true'))
-            hideMe($n(row, 'myopac_hold_unfrozen_false'))
-        }
-
-        $n(row, 'myopac_holds_selected_chkbx').checked = false;
-
-        var exp_date;
-        if(h.expire_time()) {
-            exp_date = dojo.date.stamp.fromISOString(h.expire_time().replace(/(T\d\d:\d\d:\d\d)([+-]\d\d)(\d)/, "$1$2:$3"));
-            $n(row, 'myopac_hold_expire_time').appendChild(
-                text(dojo.date.locale.format(exp_date, {selector:'date'})));
-        }
-
-		unHideMe(row);
-
-        var interval = fetchOrgSettingDefault(G.user.home_ou(), 'circ.hold_expire_alert_interval');
-        if(interval && exp_date) {
-            secs = interval_to_seconds(interval) * 1000;
-            var diff = exp_date.getTime() - new Date().getTime();
-            if(diff < secs)
-                addCSSClass($n(row, 'myopac_hold_expire_time'), 'hold_expire_warning');
-        }
-
-        myOPACDrawHoldTitle(h);
-        myOPACDrawHoldStatus(h);
-    }
-}
-
-function myOPACEditHold(holdid) {
-	var hold = holdCache[holdid];
-
-	holdsDrawEditor( 
-		{ 
-			editHold : hold,
-			onComplete : function(){ 
-				holdsTemplateRow = null;
-				myOPACShowHolds(); 
-			}
-		}
-	);
-}
-
-
-function myOPACDrawHoldStatus(hold) {
-	var req = new Request(FETCH_HOLD_STATUS, G.user.session, hold.id() );
-	req.callback(myOShowHoldStatus);
-	req.request.hold = hold;
-	req.send();
-}
-
-var myopacShowHoldEstimate = false;
-function myOShowHoldStatus(r) {
-
-	var hold = r.hold;
-	var qstats = r.getResultObject();
-    holdStatusCache[hold.id()] = qstats;
-
-	var row = $("myopac_holds_row_" + r.hold.id());
-
-    // A note: estimated_wait may be -1 under some circumstances where it shouldn't be shown.
-    if((qstats.estimated_wait && qstats.estimated_wait > 0) || myopacShowHoldEstimate) {
-        myopacShowHoldEstimate = true;
-        if(qstats.estimated_wait) {
-            // wait is currently returned in seconds, but displayed in days
-            var wait = Math.ceil(qstats.estimated_wait / 86400);
-            $n(row, 'myopac_holds_estimated_wait').appendChild(text(wait));
-        }
-        unHideMe($('myopac_holds_estimated_wait_column'));
-        unHideMe($n(row, 'myopac_holds_estimated_wait'));
-    } 
-
-	if( qstats.status == 4 ) {
-		unHideMe($n(row, 'hold_status_available'));
-		hideMe($n(row, 'myopac_holds_cancel_link'));
-	}
-
-    if( qstats.status == 7 ) {
-        unHideMe($n(row, 'hold_status_suspended'));
-    } else if (showHoldQueuePosition) {
-        var node = $n(row, 'hold_qstats');
-        if (qstats.potential_copies == 1) {
-            node.appendChild(text(dojo.string.substitute(opac_strings.HOLD_STATUS_SINGULAR, [qstats.queue_position, qstats.total_holds, qstats.potential_copies])));
-        } else {
-            node.appendChild(text(dojo.string.substitute(opac_strings.HOLD_STATUS_PLURAL, [qstats.queue_position, qstats.total_holds, qstats.potential_copies])));
-        }
-        unHideMe(node);
-
-    } else {
-	    if( qstats.status < 3 )
-		    unHideMe($n(row, 'hold_status_waiting'));
-    
-	    if( qstats.status == 3 || qstats.status == 8 )
-		    unHideMe($n(row, 'hold_status_transit'));
-    }
-}
-
-
-function myOPACDrawHoldTitle(hold) {
-	var method;
-
-	if( hold.hold_type() == 'T' || hold.hold_type() == 'M') {
-		if(hold.hold_type() == "M") method = FETCH_MRMODS;
-		if(hold.hold_type() == "T") method = FETCH_RMODS;
-		var req = new Request(method, hold.target());
-		req.callback(myOPACFleshHoldTitle);
-		req.request.hold = hold;
-		req.request.alertEvent = false;
-		req.send();
-
-	} else {
-		holdFetchObjects(hold, 
-			function(a) { _myOPACFleshHoldTitle(hold, a);});
-	}
-}
-
-function myOPACFleshHoldTitle(r) {
-	var rec = r.getResultObject();
-	_myOPACFleshHoldTitle(r.hold, {recordObject: rec});
-}
-
-function _myOPACFleshHoldTitle(hold, holdObjects) {
-
-	var record  = holdObjects.recordObject;
-	var volume	= holdObjects.volumeObject;
-	var copy	= holdObjects.copyObject;
-
-	var row = $("myopac_holds_row_" + hold.id());
-	var title_link = $n(row, "myopac_holds_title_link");
-	var author_link = $n(row, "myopac_holds_author_link");
-
-	if(!record || checkILSEvent(record) ) {
-		addCSSClass(row, 'invalid_hold');
-		$n(row, 'myopac_holds_edit_link').setAttribute('href', 'javascript:void(0);');
-		$n(row, 'myopac_holds_edit_link').onclick = function(){alertId('invalid_hold');};
-		return;
-	}
-
-	buildTitleDetailLink(record, title_link);
-	buildSearchLink(STYPE_AUTHOR, record.author(), author_link);
-
-    if(hold.hold_type() == 'P') {
-        unHideMe($n(row, 'vol_copy'));
-        $n(row, 'part').appendChild(text(holdObjects.partObject.label));
-    }
-
-	if( volume ) {
-		$n(row, 'volume').appendChild(text(volume.label()));
-		unHideMe($n(row, 'vol_copy'));
-		if(copy) $n(row, 'copy').appendChild(text(copy.barcode()));
-	}
-
-	var form = $("myopac_holds_form_" + hold.id());
-
-	if(form) {
-		var mods_formats = record.types_of_resource();
-
-		if( hold.hold_type() == 'M' ) {
-			var data = holdsParseMRFormats(hold.holdable_formats());
-			mods_formats = data.mods_formats;
-		}
-
-		for( var i = 0; i < mods_formats.length; i++ ) {
-			var img = elem("img");
-			setResourcePic(img, mods_formats[i]);
-			form.appendChild(img);
-		}
-	}
-}
-
-var finesShown = false;
-function myOPACShowFines() {
-	if(finesShown) return; finesShown = true;
-	var req = new Request(FETCH_FINES_SUMMARY, G.user.session, G.user.id() );
-	req.callback(_myOPACShowFines);
-	req.send();
-}
-
-function _myOPACShowFines(r) {
-	hideMe($('myopac_fines_summary_loading'));
-	unHideMe($('myopac_fines_summary_row'));
-
-	var summary = r.getResultObject();
-	var total	= "0.00"; /* localization? */
-	var paid		= "0.00";
-	var balance = "0.00";
-	if( instanceOf(summary,mous) ) {
-
-		total		= _finesFormatNumber(summary.total_owed());
-		paid		= _finesFormatNumber(summary.total_paid());
-		balance	= _finesFormatNumber(summary.balance_owed());
-
-		var req = new Request(FETCH_TRANSACTIONS, G.user.session, G.user.id() );
-		req.callback(myOPACShowTransactions);
-		req.send();
-	}
-
-	$('myopac_fines_summary_total').appendChild(text(total));
-	$('myopac_fines_summary_paid').appendChild(text(paid));
-	$('myopac_fines_summary_balance').appendChild(text(balance));
-}
-
-function _finesFormatNumber(num) {
-	if(isNull(num)) num = 0;
-	num = num + "";
-	if(num.length < 2 || !num.match(/\./)) num += ".00";
-	if(num.match(/\./) && num.charAt(num.length-2) == '.') num += "0";
-	return num;
-}          
-
-//function _trimTime(time) { if(!time) return ""; return time.replace(/\ .*/,""); }
-function _trimTime(time) { 
-	if(!time) return ""; 
-    time = time.replace(/(T\d\d:\d\d:\d\d)([+-]\d\d)(\d)/, "$1$2:$3");
-    var d = dojo.date.stamp.fromISOString(time);
-    if(!d) return ""; /* date parse failed */
-    return dojo.date.locale.format(d, {"formatLength": "medium"});
-}
-
-function _trimSeconds(time) { 
-    if(!time) return ""; 
-    var d = dojo.date.stamp.fromISOString(time.replace(/(T\d\d:\d\d:\d\d)([+-]\d\d)(\d)/, "$1$2:$3"));
-    if(!d) return ""; /* date parse failed */
-    return dojo.date.locale.format(d, { "timePattern" : "h:ma", "formatLength" : "medium" });
-}
-
-function myOPACShowTransactions(r) {
-
-	if(myopacGenericTransTemplate || myopacCircTransTemplate) return;
-
-	var transactions = r.getResultObject();
-
-	for( var idx in transactions ) {
-
-		var trans	= transactions[idx].transaction;
-		var record	= transactions[idx].record;
-		var circ		= transactions[idx].circ;
-
-		if(trans.xact_type() == 'circulation') 
-			myOPACShowCircTransaction(trans, record, circ);
-
-		else if(trans.xact_type() == 'grocery' ) 
-			myopacShowGenericTransaction( trans );
-
-/*      XXX need to copy circulation output function here
-		else if(trans.xact_type() == 'reservation' ) 
-			myopacShowReservationTransaction( trans );
-*/
-
-	}
-}
-
-var myopacGenericTransTemplate;
-function myopacShowGenericTransaction( trans ) {
-	var tbody = $('myopac_trans_tbody');
-
-	if(!myopacGenericTransTemplate) {
-		myopacGenericTransTemplate = 
-			tbody.removeChild($('myopac_trans_row'));
-		removeChildren(tbody);
-	}
-
-	var row = myopacGenericTransTemplate.cloneNode(true);
-
-	$n(row,'myopac_trans_start').appendChild(
-			text(_trimSeconds(trans.xact_start())));
-
-	$n(row,'myopac_trans_last_payment').appendChild(
-			text(_trimSeconds(trans.last_payment_ts())));
-
-	$n(row,'myopac_trans_init_amount').appendChild(
-			text(_finesFormatNumber(trans.total_owed())));
-
-	$n(row,'myopac_trans_total_paid').appendChild(
-			text(_finesFormatNumber(trans.total_paid())));
-
-	$n(row,'myopac_trans_balance').appendChild(
-			text(_finesFormatNumber(trans.balance_owed())));
-
-	var req = new Request(FETCH_MONEY_BILLING, G.user.session, trans.id());
-	req.send(true);
-	var bills = req.result();
-	if(bills && bills[0])
-		$n(row,'myopac_trans_bill_type').appendChild(
-				text(bills[0].billing_type()));
-
-	tbody.appendChild(row);
-	unHideMe($('myopac_trans_div'));
-}
-
-
-
-/* draws a circulation transaction summary */
-var myopacCircTransTemplate;
-function myOPACShowCircTransaction(trans, record, circ) {
-	var tbody = $('myopac_circ_trans_tbody');
-
-	if(!myopacCircTransTemplate) {
-		myopacCircTransTemplate = tbody.removeChild($('myopac_circ_trans_row'));
-		removeChildren(tbody);
-	}
-
-	var row = myopacCircTransTemplate.cloneNode(true);
-
-	if(record) {
-		buildTitleDetailLink(record, $n(row,'myopac_circ_trans_title'));
-
-		$n(row,'myopac_circ_trans_author').appendChild(text(
-			normalize(truncate(record.author(), 65))));
-
-	} else {
-
-		var req = new Request( FETCH_COPY, circ.target_copy() );
-		req.alertEvents = false;
-		req.send(true);
-		var copy = req.result();
-		if( copy ) {
-			$n(row,'myopac_circ_trans_title').appendChild(text(copy.dummy_title()));
-			$n(row,'myopac_circ_trans_author').appendChild(text(copy.dummy_author()));
-		}
-	}
-
-
-	$n(row,'myopac_circ_trans_start').
-		appendChild(text(_trimTime(trans.xact_start())));
-	var due = _trimTime(circ.due_date());
-	var checkin = _trimTime(circ.checkin_time());
-
-	$n(row,'myopac_circ_trans_due').appendChild(text(due))
-	if(checkin)
-		appendClear($n(row,'myopac_circ_trans_finished'), text(checkin));
-	if(circ.stop_fines() == 'LOST')
-		appendClear($n(row,'myopac_circ_trans_finished'), text(circ.stop_fines()));
-	if(circ.stop_fines() == 'CLAIMSRETURNED')
-		appendClear($n(row,'myopac_circ_trans_finished'), text(""));
-
-
-	$n(row,'myopac_circ_trans_balance').
-		appendChild(text(_finesFormatNumber(trans.balance_owed())));
-
-	tbody.appendChild(row);
-	unHideMe($('myopac_circ_trans_div'));
-}
-
-
-function myOPACSavePrefs() {
-	G.user.prefs[PREF_HITS_PER] = getSelectorVal($('prefs_hits_per'));
-	G.user.prefs[PREF_DEF_FONT] = getSelectorVal($('prefs_def_font'));
-	G.user.prefs[PREF_HOLD_NOTIFY] = getSelectorVal($('prefs_hold_notify'));
-	G.user.prefs[PREF_DEF_DEPTH] = getSelectorVal($('prefs_def_range'));
-
-	if( $('myopac_pref_home_lib').checked == true )
-		G.user.prefs[PREF_DEF_LOCATION] = null;
-	else
-		G.user.prefs[PREF_DEF_LOCATION] = getSelectorVal($('prefs_def_location'));
-
-	if(commitUserPrefs())
-		alert($('prefs_update_success').innerHTML);
-	else alert($('prefs_update_failure').innerHTML);
-}
-
-
-function myOPACShowDefFont() {
-	var font;
-	if(G.user.prefs[PREF_DEF_FONT])
-		font = G.user.prefs[PREF_DEF_FONT];
-	else font = "regular";
-	setSelector($('prefs_def_font'), font);
-}
-
-function myOPACShowHoldNotify() {
-	var pref = G.user.prefs[PREF_HOLD_NOTIFY];
-
-	if(pref) {
-		if(pref.match(/email/i) && pref.match(/phone/i)) {
-			setSelector($('prefs_hold_notify'), 'phone:email');
-		} else if( pref.match(/email/i) ) {
-			setSelector($('prefs_hold_notify'), 'email');
-		} else if( pref.match(/phone/i) ) {
-			setSelector($('prefs_hold_notify'), 'phone');
-		}
-
-	} else {
-		setSelector($('prefs_hold_notify'), 'phone:email');
-	}
-}
-
-function myOPACShowPrefs() {
-	grabUserPrefs();
-	myOPACShowHitsPer();
-	myOPACShowDefFont();
-	myOPACShowHoldNotify();
-	myOPACShowDefLocation();
-	hideMe($('myopac_prefs_loading'));
-}
-
-var defSearchLocationDrawn = false;
-var defDepthIndex = 0;
-function myOPACShowDefLocation() {
-
-	var selector = $('prefs_def_location');
-	var rsel = $('prefs_def_range');
-
-	if(!defSearchLocationDrawn) {
-
-		defSearchLocationDrawn = true;
-
-		var org = G.user.prefs[PREF_DEF_LOCATION];
-
-		if(!org) {
-			$('myopac_pref_home_lib').checked = true;
-			$('prefs_def_location').disabled = true;
-			org = G.user.home_ou();
-		}
-
-		buildOrgSel(selector, globalOrgTree, 0);
-
-		globalOrgTypes = globalOrgTypes.sort(
-			function(a, b) {
-				if( a.depth() < b.depth() ) return -1;
-				return 1;
-			}
-		);
-
-		iterate(globalOrgTypes,
-			function(t) {
-				if( t.depth() <= findOrgDepth(org) ) {
-					setSelectorVal(rsel, defDepthIndex++, t.opac_label(), t.depth());
-					if( t.depth() == findOrgDepth(org) ) 
-						setSelector(rsel, t.depth());
-				}
-			}
-		);
-	}
-
-	setSelector(selector, org);
-}
-
-function myOPACShowHitsPer() {
-	var hits = 10;
-	if(G.user.prefs[PREF_HITS_PER])
-		hits = G.user.prefs[PREF_HITS_PER];
-	var hitsSel = $('prefs_hits_per');
-	setSelector(hitsSel, hits);
-}
-
-var userShown = false;
-function myOPACShowSummary() {
-	if(userShown) return; userShown = true;
-	var req = new Request(FETCH_FLESHED_USER,G.user.session, G.user.id());
-	req.callback(_myOPACSummaryShowUer);
-	req.send();
-}
-
-var addrRowTemplate;
-var notesTemplate;
-function _myOPACSummaryShowUer(r) {
-
-	var user = r.getResultObject();
-	fleshedUser = user;
-	if(!user) return;
-
-    var expireDate = dojo.date.stamp.fromISOString(user.expire_date());
-    if( expireDate < new Date() ) {
-        appendClear($('myopac.expired.date'), dojo.date.locale.format(expireDate, { "formatLength" : "medium", "selector" : "date" }));
-        unHideMe($('myopac.expired.alert'));
-    }
-
-	var iv1 = '';
-    if (user.ident_value()) {
-        iv1 = user.ident_value()+'';
-        if (iv1.length > 4 && iv1.match(/\d{4}/)) iv1 = iv1.substring(0,4) + '***********';
-    }
-
-	appendClear($('myopac_summary_prefix'),text(user.prefix()));
-	appendClear($('myopac_summary_first'),text(user.first_given_name()));
-	appendClear($('myopac_summary_middle'),text(user.second_given_name()));
-	appendClear($('myopac_summary_dayphone'),text(user.day_phone()));
-	appendClear($('myopac_summary_eveningphone'),text(user.evening_phone()));
-	appendClear($('myopac_summary_otherphone'),text(user.other_phone()));
-	appendClear($('myopac_summary_last'),text(user.family_name()));
-	appendClear($('myopac_summary_suffix'),text(user.suffix()));
-	appendClear($('myopac_summary_username'),text(user.usrname()));
-	appendClear($('myopac_summary_email'),text(user.email()));
-	appendClear($('myopac_summary_barcode'),text(user.card().barcode()));
-	appendClear($('myopac_summary_ident1'),text(iv1));
-	appendClear($('myopac_summary_homelib'),text(findOrgUnit(user.home_ou()).name()));
-	appendClear($('myopac_summary_create_date'),text(_trimTime(user.create_date())));
-
-	var req = new Request( 
-		FETCH_USER_NOTES, G.user.session, {pub:1, patronid:G.user.id()});
-	req.callback(myopacDrawNotes);
-	req.send();
-
-    r = fetchOrgSettingDefault(G.user.home_ou(), 'opac.lock_usernames');
-    if(r) {
-        // No changing username - Policy Lock
-        hideMe($('myopac_summary_username_change'));
-    } else {
-        r = fetchOrgSettingDefault(G.user.home_ou(), 'opac.unlimit_usernames');
-        if(!r) {
-            r = fetchOrgSettingDefault(G.user.home_ou(), 'opac.barcode_regex');
-            if(r) REGEX_BARCODE = new RegExp(r);
-
-            if(!user.usrname().match(REGEX_BARCODE)) {
-                // No changing username - You already have one!
-                hideMe($('myopac_summary_username_change'));
-            }
-        }
-    }
-
-	var tbody = $('myopac_addr_tbody');
-	var template;
-
-	if(addrRowTemplate) { 
-		template = addrRowTemplate;
-	} else {
-		template = tbody.removeChild($('myopac_addr_row'));
-		addrRowTemplate = template;
-	}
-	removeChildren(tbody);
-
-    var addrs = user.addresses();
-	for( var a in addrs ) {
-        var addr = addrs[a];
-        if(!allowPendingAddr && isTrue(addr.pending()))
-            continue;
-        if(addr.replaces() != null) continue;
-		var row = template.cloneNode(true);
-		myOPACDrawAddr(row, addr, addrs);
-		tbody.appendChild(row);
-	}
-}
-
-
-function myopacDrawNotes(r) {
-	var notes = r.getResultObject();
-	var tbody = $('myopac.notes.tbody');
-	if(!notesTemplate)
-		notesTemplate = tbody.removeChild($('myopac.notes.tr'));
-	removeChildren(tbody);
-
-	iterate(notes, 
-		function(note) {
-			unHideMe($('myopac.notes.div'));
-			var row = notesTemplate.cloneNode(true);
-			$n(row, 'title').appendChild(text(note.title()));
-			$n(row, 'value').appendChild(text(note.value()));
-			tbody.appendChild(row);
-		}
-	);
-}
-
-
-
-function myOPACDrawAddr(row, addr, addrs) {
-    appendClear($n(row, 'myopac_addr_type'),text(addr.address_type()));
-    appendClear($n(row, 'myopac_addr_street'),text(addr.street1()));
-    appendClear($n(row, 'myopac_addr_street2'),text(addr.street2()));
-    appendClear($n(row, 'myopac_addr_city'),text(addr.city()));
-    appendClear($n(row, 'myopac_addr_county'),text(addr.county()));
-    appendClear($n(row, 'myopac_addr_state'),text(addr.state()));
-    appendClear($n(row, 'myopac_addr_country'),text(addr.country()));
-    appendClear($n(row, 'myopac_addr_zip'),text(addr.post_code()));
-
-    if(!isTrue(addr.valid()))
-        unHideMe($n(row, 'myopac_invalid_addr_row'));
-
-    if(!allowPendingAddr) return;
-
-    $n(row, 'myopac_addr_edit_link').onclick = function(){myopacEditAddress(addr)};
-    unHideMe($n(row, 'myopac_addr_edit_td'));
-
-    /* if we have a replacement address, plop it into the table next to this addr */
-    var repl = grep(addrs,
-        function(a) { 
-            return a.replaces() == addr.id(); 
-        } 
-    );
-
-    $n(row, 'myopac_pending_addr_td').id = 'myopac_pending_addr_td_' + addr.id();
-
-    if(repl) {
-        hideMe($n(row, 'myopac_addr_edit_td')); // hide the edit link
-        repl = repl[0];
-        myopacSetAddrInputs(row, repl);
-    }
-}
-
-function myopacEditAddress(addr) {
-    var td = $('myopac_pending_addr_td_' + addr.id());
-    var row = td.parentNode;
-    myopacSetAddrInputs(row, addr);
-}
-
-function myopacSetAddrInputs(row, addr, prefix) {
-    unHideMe($n(row, 'myopac_pending_addr_td'));
-    $n(row, 'myopac_pending_addr_type').value = addr.address_type();
-    $n(row, 'myopac_pending_addr_street').value = addr.street1();
-    $n(row, 'myopac_pending_addr_street2').value = addr.street2();
-    $n(row, 'myopac_pending_addr_city').value = addr.city();
-    $n(row, 'myopac_pending_addr_county').value = addr.county();
-    $n(row, 'myopac_pending_addr_state').value = addr.state();
-    $n(row, 'myopac_pending_addr_country').value = addr.country();
-    $n(row, 'myopac_pending_addr_zip').value = addr.post_code();
-    $n(row, 'myopac_pending_addr_edit_link').onclick = function(){myopacSaveAddress(row, addr)};
-    $n(row, 'myopac_pending_addr_del_link').onclick = function(){myopacSaveAddress(row, addr, true)};
-}
-
-// if no pending addr exists, this is called with the original address
-function myopacSaveAddress(row, addr, deleteMe) {
-
-    if(addr.replaces() == null) {
-        // we are editing a non-pending address.  create a pending address to manage that
-        var repl = new aua();
-        repl.usr(addr.usr());
-        repl.address_type(addr.address_type());
-        repl.within_city_limits(addr.within_city_limits());
-        repl.replaces(addr.id());
-        repl.pending('t');
-        repl.isnew(true);
-        repl.id(null);
-        addr = repl;
-    }
-
-    if(deleteMe) {
-        if(addr.id() == null) {
-            hideMe($n(row, 'myopac_pending_addr_td'));
-            return;
-        }
-        addr.isdeleted(true);
-    } else {
-        addr.address_type($n(row, 'myopac_pending_addr_type').value);
-        addr.street1($n(row, 'myopac_pending_addr_street').value);
-        addr.street2($n(row, 'myopac_pending_addr_street2').value);
-        addr.city($n(row, 'myopac_pending_addr_city').value);
-        addr.county($n(row, 'myopac_pending_addr_county').value);
-        addr.state($n(row, 'myopac_pending_addr_state').value);
-        addr.country($n(row, 'myopac_pending_addr_country').value);
-        addr.post_code($n(row, 'myopac_pending_addr_zip').value);
-    }
-
-	var req = new Request(
-        'open-ils.actor:open-ils.actor.user.address.pending.cud', 
-        G.user.session, addr);
-
-    req.callback(
-        function(r) {
-            var resp = r.getResultObject(); 
-
-            if(addr.isnew()) {
-                // new, add to list of addrs
-                addr.id(resp);
-                fleshedUser.addresses().push(addr);
-
-            } else {
-                // deleted, remove from list of addrs
-                if(addr.isdeleted()) {
-                    hideMe($n(row, 'myopac_pending_addr_td'));
-                    var addrs = [];
-                    for(var i in fleshedUser.addresses()) {
-                        var a = fleshedUser.addresses()[i];
-                        if(a.id() != addr.id())
-                            addrs.push(a);
-                    }
-                    fleshedUser.addresses(addrs);
-                }
-            }
-           alertId('myopac_addr_changes_saved');
-        }
-    );
-    req.send();
-};
-
-
-function myOPACUpdateUsername() {
-	var username = $('myopac_new_username').value;
-	var curpassword = $('myopac_username_current_password').value;
-	if(username == null || username == "") {
-		alert($('myopac_username_error').innerHTML);
-		return;
-	}
-
-	if( username.match(/.*\s.*/) ) {
-		alert($('myopac_invalid_username').innerHTML);
-		return;
-	}
-
-    r = fetchOrgSettingDefault(G.user.home_ou(), 'opac.barcode_regex');
-    if(r) REGEX_BARCODE = new RegExp(r);
-
-    if(username.match(REGEX_BARCODE)) {
-        alert($('myopac_invalid_username').innerHTML);
-        return;
-    }
-
-    r = fetchOrgSettingDefault(G.user.home_ou(), 'opac.username_regex');
-    if(r) {
-        if(!username.match(new RegExp(r))) {
-            alert($('myopac_invalid_username').innerHTML);
-            return;
-        }
-    }
-
-	/* first see if the requested username is taken */
-	var req = new Request(CHECK_USERNAME, G.user.session, username);
-	req.send(true);
-	var res = req.result();
-	/* If the username does not already exist, res will be null;
-	 * we can move on to updating the username.
-	 * 
-	 * If the username does exist, then res will be the user ID.
-	 * G.user.id() gives us the currently authenticated user ID.
-	 * If res == G.user.id(), we try to update the username anyways.
-	 */
-	if( res !== null && res != G.user.id() ) {
-		alertId('myopac_username_dup');
-		return;
-	}
-
-	var req = new Request(UPDATE_USERNAME, G.user.session, username, curpassword );
-	req.send(true);
-	if(req.result()) {
-
-		var evt;
-		var res = req.result();
-		if(evt = checkILSEvent(res)) {
-			alertILSEvent(res);
-			return;
-		}
-
-		G.user.usrname(username);
-		hideMe($('myopac_update_username_row'));
-		userShown = false;
-		alertId('myopac_username_success');
-		myOPACShowSummary();
-		return;
-	}
-
-	alert($('myopac_username_failure').innerHTML);
-}
-
-function myOPACUpdateEmail() {
-	var email = $('myopac_new_email').value;
-	var curpassword = $('myopac_email_current_password').value;
-	if(email == null || email == "") {
-		alert($('myopac_email_error').innerHTML);
-		return;
-	}
-
-	var req = new Request(UPDATE_EMAIL, G.user.session, email, curpassword );
-	req.send(true);
-	if(req.result()) {
-		G.user.email(email);
-		hideMe($('myopac_update_email_row'));
-		userShown = false;
-		alertId('myopac_email_success');
-		myOPACShowSummary();
-		return;
-	}
-
-	alert($('myopac_email_failure').innerHTML);
-}
-
-
-function myOPACUpdatePassword() {
-	var curpassword = $('myopac_current_password').value;
-	var password = $('myopac_new_password').value;
-	var password2 = $('myopac_new_password2').value;
-
-	if(	curpassword == null || curpassword == "" || 
-			password == null || password == "" || 
-			password2 == null || password2 == "" || password != password2 ) {
-		alert($('myopac_password_error').innerHTML);
-		return;
-	}
-
-	if(!strongPassword(password, true)) return;
-
-	var req = new Request(UPDATE_PASSWORD, G.user.session, password, curpassword );
-	req.send(true);
-	if(req.result()) {
-		hideMe($('myopac_update_password_row'));
-		userShown = false;
-		alertId('myopac_password_success');
-		myOPACShowSummary();
-		return;
-	}
-
-	alert($('myopac_password_failure').innerHTML);
-}
-
-
-
-
-var containerTemplate;
-function myOPACShowBookbags(force) {
-
-	var tbody =$('myopac_bookbag_tbody') ;
-
-	if(!containerTemplate) 
-		containerTemplate = tbody.removeChild($('myopac_bookbag_tr'));
-	else if(!force) return;
-
-	removeChildren(tbody);
-
-	var containers = containerFetchAll();
-
-	var found = false;
-	for( var i in containers ) {
-		found = true;
-		var cont = containers[i];
-		var row = containerTemplate.cloneNode(true);
-		row.id = 'myopac_bookbag_row_' + cont.id();
-		var link = $n(row, 'myopac_expand_bookbag');
-		var dlink = $n(row, 'myopac_container_delete');
-		link.appendChild( text(cont.name()) );
-		link.setAttribute('href', 
-			'javascript:myOPACExpandBookbag("' + cont.id() + '","' + cont.name() + '");');
-		myOPACFetchBBItems( cont.id(), row );
-		dlink.setAttribute('href', 'javascript:myOPACDeleteBookbag("'+cont.id()+'");');
-
-		if( isTrue(cont.pub()) ) {
-			unHideMe($n(row, 'myopac_bb_published_yes'));
-			var link = $n(row, 'myopac_bb_published_view');
-			link.setAttribute('href', buildExtrasLink( 'feed/bookbag/html-full/'+cont.id(), false));  
-			link.setAttribute('target', '_blank' );
-			unHideMe(link);
-
-			link = $n(row, 'myopac_bb_published_atom');
-			link.setAttribute('href', buildExtrasLink( 'feed/bookbag/rss2-full/'+cont.id(), false));  
-			link.setAttribute('target', '_blank' );
-			unHideMe(link);
-
-			link = $n(row, 'myopac_bb_make_unpublished');
-			link.setAttribute('href', 'javascript:myOPACMakeBBPublished("'+cont.id()+'", true);');
-			unHideMe(link);
-                        
-			var RW = $n(row, 'myopac_bb_exp_refworks');
-			if (RW && myopacEnableRefWorks) {
-				var here = (findOrgUnit(getLocation())).name();
-				var org_name = here.replace(" ", "+");
-				var cgi = new CGI();
-
-				RW.setAttribute('href',
-				myopacRefWorksHost + '/express/expressimport.asp?vendor='
-					+ org_name
-					+ '&filter=MARC+Format&database=All+MARC+Formats&encoding=65001&url=http%3A%2F%2F'
-					+ cgi.server_name + '/opac/extras/feed/bookbag/marctxt-full/'
-					+ cont.id()
-				);
-				RW.setAttribute('target', 'RefWorksMain');
-				unHideMe($n(row, 'myopac_bb_exp_refworks'));
-			}
-		} else { 
-			unHideMe($n(row, 'myopac_bb_published_no')); 
-			var link = $n(row, 'myopac_bb_make_published');
-			link.setAttribute('href', 'javascript:myOPACMakeBBPublished("'+cont.id()+'");');
-			unHideMe(link);
-		}
-
-		tbody.appendChild(row);	
-	}
-
-	if(!found) unHideMe($('myopac_bookbags_none'));
-	else unHideMe($('myopac_bookbag_table'));	
-}
-
-function myOPACMakeBBPublished(bbid, hideme) {
-
-	var bb = fleshedContainers[bbid];
-
-	if(hideme) {
-		if(!confirm($('myopac_make_unpublished_confirm').innerHTML)) return;
-		bb.pub('f');
-	} else {
-		if(!confirm($('myopac_make_published_confirm').innerHTML)) return;
-		bb.pub('t');
-	}
-
-	var result = containerUpdate(bb);
-
-	var code = checkILSEvent(result);
-	if(code) { alertILSEvent(result); return; }
-
-	alert($('myopac_bb_update_success').innerHTML);
-	myOPACShowBookbags(true);
-}
-
-
-
-function myOPACDeleteBookbag(id) {
-	if( confirm( $('myopac_delete_bookbag_warn').innerHTML ) ) {
-		var result = containerDelete(id);
-		var code = checkILSEvent(result);
-		if(code) { alertILSEvent(result); return; }
-		alert($('myopac_bb_update_success').innerHTML);
-		hideMe($('myopac_bookbag_items_table'));
-		hideMe($('myopac_bookbag_items_name'));
-		hideMe($('myopac_bookbag_no_items'));
-		myOPACShowBookbags(true);
-	}
-}
-
-function myOPACFetchBBItems( id, row, block ) {
-	if(!block) {
-		containerFlesh( id, _myOPACSetBBItems, { row: row }  );
-	} else {
-		var cont = containerFlesh(id);
-		myOPACSetBBItems( cont, row );
-	}
-}
-
-function _myOPACSetBBItems(r) { myOPACSetBBItems( r.getResultObject(), r.args.row ); }
-
-function myOPACSetBBItems( container, row ) {
-	fleshedContainers[container.id()] = container;
-	var node = $n(row, 'myopac_bookbag_item_count');
-	removeChildren(node);
-	node.appendChild( text(container.items().length) );
-}
-
-var BBItemsRow;
-function myOPACExpandBookbag( id, name ) {
-	
-	var tbody = $('myopac_bookbag_items_tbody');
-	if(!BBItemsRow) BBItemsRow = tbody.removeChild($('myopac_bookbag_items_row'));
-	removeChildren(tbody);
-	removeChildren($('myopac_bookbag_items_name'));
-
-	$('myopac_bookbag_items_name').appendChild(text(name));
-
-	if( fleshedContainers[id] ) {
-		var len = fleshedContainers[id].items().length;
-
-		if( len == 0 ) {
-			unHideMe($('myopac_bookbag_no_items'));
-			hideMe($('myopac_bookbag_items_table'));
-			return;
-		}
-
-		hideMe($('myopac_bookbag_no_items'));
-		unHideMe($('myopac_bookbag_items_table'));
-
-		for( var i = 0; i != len; i++ ) {
-			var row = BBItemsRow.cloneNode(true);
-			found = true;
-
-			var item = fleshedContainers[id].items()[i];
-			var tlink = $n(row,'myopac_bookbag_items_title');
-			var alink = $n(row,'myopac_bookbag_items_author');
-
-			var req = new Request( FETCH_RMODS, item.target_biblio_record_entry() );
-			req.request.tlink = tlink;
-			req.request.alink = alink;
-			req.callback(myOPACShowBBItem);
-			req.send();
-
-			var clink = $n(row, 'myopac_bookbag_items_remove');
-			clink.setAttribute('href', 'javascript:myOPACRemoveBBItem("'+item.id()+'","'+id+'","'+name+'");');
-
-			tbody.appendChild(row);
-		}
-	}
-}
-
-function myOPACRemoveBBItem( id, containerid, container_name ) {
-	if(!confirm($('myopac_remove_bb_item_confirm').innerHTML)) return;
-	var stat = containerRemoveItem( id );
-	if(stat) alert($('myopac_bb_update_success').innerHTML);
-	myOPACFetchBBItems( containerid, $('myopac_bookbag_row_' + containerid), true);
-	myOPACExpandBookbag( containerid, container_name );
-}
-
-function myOPACShowBBItem(r) {
-	var record = r.getResultObject();
-	buildTitleDetailLink(record, r.tlink);
-	buildSearchLink(STYPE_AUTHOR, record.author(), r.alink);
-}
-
-function myOPACCreateBookbag() {
-	var name = $('myopac_bookbag_new_name').value;	
-	if(!name) return;
-
-	var exists = false;
-	for( var c in fleshedContainers ) { exists = true; break; }
-
-	/* let them know what they are getting into... */
-	if(!exists) if(!confirm($('bb_create_warning').innerHTML)) return;
-
-	var result = containerCreate( name, $('bb_public_yes').checked );
-	var code = checkILSEvent(result);
-	if(code) { alertILSEvent(result); return; }
-	if(result) alert($('myopac_bb_update_success').innerHTML);
-	myOPACShowBookbags(true);
-}
-
-
-/* ---------------------------------------------------------------------- */
-/* Non cat circs */
-/* ---------------------------------------------------------------------- */
-
-var nonCatCircIds;
-var nonCatTypes;
-/* if we have some circs, grab the non-cat types */
-function myOPACDrawNonCatCircs(r) {
-	var ids = r.getResultObject();
-	if(ids.length == 0) return;
-	nonCatCircIds = ids;
-	unHideMe($('non_cat_circs_div'));
-	var req = new Request(FETCH_NON_CAT_TYPES, G.user.home_ou());
-	req.callback(myOPACDrawNonCatCircs2);
-	req.send();
-}
-
-
-/* now we have circs and the types.. draw each one */
-var nonCatTbody;
-var nonCatRow;
-function myOPACDrawNonCatCircs2(r) {
-	nonCatTypes = r.getResultObject();
-	nonCatTbody = $('non_cat_circs_tbody');
-	if(!nonCatRow) nonCatRow = 
-		nonCatTbody.removeChild($('non_cat_circs_row'));
-	removeChildren(nonCatTbody);
-	for( var i in nonCatCircIds ) {
-		var req = new Request(FETCH_NON_CAT_CIRC, G.user.session, nonCatCircIds[i]);
-		req.callback(myOPACDrawNonCatCirc);
-		req.send();
-	}
-}
-
-
-/* draw a single circ */
-function myOPACDrawNonCatCirc(r) {
-	var circ = r.getResultObject();
-
-
-	var type = grep(nonCatTypes, 
-		function(i){
-			return (i.id() == circ.item_type());
-		}
-	)[0];
-
-
-	var row = nonCatTbody.appendChild(nonCatRow.cloneNode(true));
-	appendClear($n(row, 'circ_lib'), text(findOrgUnit(circ.circ_lib()).name()));
-	appendClear($n(row, 'item_type'), text(type.name()));
-
-	appendClear(
-        $n(row, 'circ_time'), 
-        text(dojo.date.locale.format(
-            dojo.date.stamp.fromISOString(circ.duedate()),
-            {format : 'short'}
-        ))
-    );
-}
-
-
-
-
-function myopacSelectAllChecked() {
-   __myopacSelectChecked(true);
-}
-
-function myopacSelectNoneChecked() {
-   __myopacSelectChecked(false);
-}
-
-function __myopacSelectChecked(value) {
-   var rows = myopacGetCheckedOutRows();
-   for( var i = 0; i < rows.length; i++ ) {
-      var row = rows[i];
-      var box = $n(row, 'selectme');
-      if( box && ! box.disabled )
-      box.checked = value;
-   }
-}
-
-function myopacGetCheckedOutRows() {
-   var rows = [];
-   var tbody = $('myopac_checked_tbody');
-   var children = tbody.childNodes;
-   for( var i = 0; i < children.length; i++ ) {
-      var child = children[i];
-      if( child.nodeName.match(/^tr$/i) ) 
-         if( $n(child, 'selectme') ) 
-            rows.push(child);
-   }
-   return rows;
-}
-
-var __renew_circs = [];
-
-/* true if 1 renewal succeeded */
-var __success_count = 0;
-
-/* renews all selected circulations */
-function myOPACRenewSelected() {
-   var rows = myopacGetCheckedOutRows();
-	if(!confirm($('myopac_renew_confirm').innerHTML)) return;
-   __success_count = 0;
-
-   for( var i = 0; i < rows.length; i++ ) {
-
-      var row = rows[i];
-      if( ! $n(row, 'selectme').checked ) continue;
-      var circ_id = row.getAttribute('circid');
-
-	   var circ;
-	   for( var j = 0; j != circsCache.length; j++ ) 
-		   if(circsCache[j].id() == circ_id)
-			   circ = circsCache[j];
-
-      __renew_circs.push(circ);
-   }
-
-    if( __renew_circs.length == 0 ) return;
-
-    unHideMe($('my_renewing'));
-    moClearCheckedTable();
-
-    for( var i = 0; i < __renew_circs.length; i++ ) {
-        var circ = __renew_circs[i];
-        moRenewCirc( circ.target_copy(), G.user.id(), circ );
-    }
-}
-
-
-/* renews a single circulation */
-function moRenewCirc(copy_id, user_id, circ) {
-
-   _debug('renewing circ ' + circ.id() + ' with copy ' + copy_id);
-   var req = new Request(RENEW_CIRC, G.user.session, 
-      {  patron : user_id, 
-         copyid : copy_id, 
-         opac_renewal : 1 
-      } 
-   );
-
-   req.request.alertEvent = false;
-   req.callback(myHandleRenewResponse);
-   req.request.circ = circ;
-   req.send();
-}
-
-
-
-/* handles the circ renew results */
-function myHandleRenewResponse(r) {
-   var res = r.getResultObject();
-   var circ = r.circ;
-
-   /* remove this circ from the list of circs to renew */
-   __renew_circs = grep(__renew_circs, function(i) { return (i.id() != circ.id()); });
-
-   _debug("handling renew result for " + circ.id());
-
-   if(checkILSEvent(res) || checkILSEvent(res[0])) 
-      alertIdText('myopac_renew_fail', __circ_titles[circ.id()]);
-   else __success_count++;
-
-   if(__renew_circs) return; /* more to come */
-
-   __renew_circs = [];
-
-	if( __success_count > 0 )
-      alertIdText('myopac_renew_success', __success_count);
-
-   hideMe($('my_renewing'));
-   checkedDrawn = false;
-    myOPACShowChecked();
-}
-
-/** ---- batch hold processing ------------ */
-
-
-/* myopac_holds_checkbx */
-function myopacSelectAllHolds() {
-    var rows = getTableRows($("myopac_holds_tbody"));
-    for(var i = 0; i < rows.length; i++) {
-        cb = $n(rows[i], 'myopac_holds_selected_chkbx');
-        if(cb) cb.checked = true;
-    }
-}
-
-function myopacSelectNoneHolds() {
-    var rows = getTableRows($("myopac_holds_tbody"));
-    for(var i = 0; i < rows.length; i++) {
-        cb = $n(rows[i], 'myopac_holds_selected_chkbx');
-        if(cb) cb.checked = false;
-    }
-}
-
-function myopacSelectedHoldsRows() {
-    var r = [];
-    var rows = getTableRows($("myopac_holds_tbody"));
-    for(var i = 0; i < rows.length; i++) {
-        cb = $n(rows[i], 'myopac_holds_selected_chkbx');
-        if(cb && cb.checked)
-            r.push(rows[i]);
-    }
-    return r;
-}
-
-var myopacProcessedHolds = 0;
-var myopacHoldsToProcess = 0;
-function myopacDoHoldAction() {
-
-    var selectedRows = myopacSelectedHoldsRows();
-    action = getSelectorVal($('myopac_holds_actions'));
-    $('myopac_holds_actions_none').selected = true;
-    if(selectedRows.length == 0) return;
-
-    myopacProcessedHolds = 0;
-
-    if(!confirmId('myopac.holds.'+action+'.confirm')) return;
-    myopacSelectNoneHolds(); /* clear the selection */
-
-
-    /* first, let's collect the holds that actually need processing and
-        collect the full process count while we're at it */
-    var holds = [];
-    for(var i = 0; i < selectedRows.length; i++) {
-        hold = holdCache[myopacHoldIDFromRow(selectedRows[i])];
-        var qstats = holdStatusCache[hold.id()];
-        switch(action) {
-            case 'cancel':
-                holds.push(hold);
-                break;
-            case 'thaw_date':
-            case 'thaw':
-                if(isTrue(hold.frozen()))
-                    holds.push(hold);
-                break;
-            case 'freeze':
-                if(!isTrue(hold.frozen()) && qstats.status < 3)
-                    holds.push(hold);
-                break;
-        }
-    }
-    myopacHoldsToProcess = holds;
-    if(myopacHoldsToProcess.length == 0) return;
-
-    if(action == 'thaw_date' || action == 'freeze') 
-        myopacDrawHoldThawDateForm();
-    else
-    myopacProcessHolds(action);
-}
-
-
-function myopacProcessHolds(action, thawDate) {
-
-    myopacShowHoldProcessing();
-    /* now we process them */
-    for(var i = 0; i < myopacHoldsToProcess.length; i++) {
-
-        hold = myopacHoldsToProcess[i];
-        
-        var req;
-        switch(action) { 
-
-            case 'cancel':
-	            req = new Request(CANCEL_HOLD, G.user.session, hold.id(), /* Patron via OPAC */ 6);
-                break;
-    
-            case 'thaw':
-                hold.frozen('f');
-                hold.thaw_date(null);
-                req = new Request(UPDATE_HOLD, G.user.session, hold);
-                break;
-
-            case 'thaw_date':
-            case 'freeze':
-                hold.frozen('t');
-                hold.thaw_date(thawDate); 
-                req = new Request(UPDATE_HOLD, G.user.session, hold);
-                break;
-                //thawDate = prompt($('myopac.holds.freeze.select_thaw').innerHTML);
-
-        }
-
-        req.callback(myopacBatchHoldCallback);
-        req.send();
-        req = null;
-    }
-}
-
-function myopacDrawHoldThawDateForm() {
-    hideMe($('myopac_holds_main_table'));
-    unHideMe($('myopac_holds_thaw_date_form'));
-    $('myopac_holds_thaw_date_input').focus();
-}
-
-function myopacApplyThawDate() {
-    var dateString = dijit.byId('myopac_holds_thaw_date_input').getValue();
-    if(dateString) {
-        dateString = dojo.date.stamp.toISOString(dateString);
-        if(dateString) {
-            dateString = holdsVerifyThawDate(dateString);
-            if(!dateString) return;
-        } else {
-            dateString = null;
-        }
-    }
-    myopacProcessHolds('freeze', dateString);
-}
-
-function myopacHoldIDFromRow(row) {
-    return row.id.replace(/.*_(\d+)$/, '$1');
-}
-
-function myopacShowHoldProcessing() {
-    unHideMe($('myopac_holds_processing'));
-    hideMe($('myopac_holds_main_table'));
-}
-
-function myopacHideHoldProcessing() {
-    hideMe($('myopac_holds_processing'));
-    unHideMe($('myopac_holds_main_table'));
-    hideMe($('myopac_holds_thaw_date_form'));
-}
-
-function myopacBatchHoldCallback(r) {
-    if(r) /* force load any exceptions */
-        r.getResultObject();
-    if(++myopacProcessedHolds >= myopacHoldsToProcess.length) {
-        myopacHideHoldProcessing();
-        holdCache = {};
-        holdStatusCache = {};
-        myopacForceHoldsRedraw = true;
-        myOPACShowHolds();
-    }
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/password_reset.js b/Open-ILS/web/opac/skin/default/js/password_reset.js
deleted file mode 100644
index 83db272..0000000
--- a/Open-ILS/web/opac/skin/default/js/password_reset.js
+++ /dev/null
@@ -1,114 +0,0 @@
-dojo.require('dojo.parser');
-dojo.require('dijit.Dialog');
-dojo.require('dijit.form.Button');
-dojo.require('dijit.form.TextBox');
-
-dojo.requireLocalization("openils.opac", "opac");
-opac_strings = dojo.i18n.getLocalization("openils.opac", "opac");
-
-dojo.addOnLoad(function() {
-
-    // Create the password reset dialog
-    var pwResetFormDlg = createResetDialog();
-    dojo.parser.parse();
-
-    // Connect the buttons to submit / cancel events that override
-    // the default actions associated with the buttons to do
-    // pleasing Ajax things
-    dojo.connect(dijit.byId("pwCancel"), "onClick", function(event) {
-        event.preventDefault();
-        event.stopPropagation();
-        pwResetFormDlg.hide();
-        dijit.byId('pwUsername').attr('value', null);
-        dijit.byId('pwBarcode').attr('value', null);
-    });
-    dojo.connect(dijit.byId("pwSubmit"), "onClick", function(event) {
-        event.preventDefault();
-        event.stopPropagation();
-        var xhrArgs = {
-            form: dojo.byId("requestReset"),
-            handleAs: "text",
-            load: function(data) {
-                pwResetFormDlg.hide();
-                passwordSubmission(opac_strings.PWD_RESET_SUBMIT_SUCCESS);
-                dijit.byId('pwUsername').attr('value', null);
-                dijit.byId('pwBarcode').attr('value', null);
-            },
-            error: function(error) {
-                pwResetFormDlg.hide();
-                passwordSubmission(opac_strings.PWD_RESET_SUBMIT_ERROR);
-            }
-        }
-        var deferred = dojo.xhrPost(xhrArgs);
-    });
-    dojo.place("<tr><td colspan='2' align='center'><a class='classic_link' id='pwResetLink' onClick='dijit.byId(\"pwResetFormDlg\").show();'</a></td></tr>", config.ids.login.tbody);
-    dojo.query("#pwResetLink").attr("innerHTML", opac_strings.PWD_RESET_FORGOT_PROMPT);
-
-});
-
-function passwordSubmission( msg ) {
-    var responseDialog = new dijit.Dialog({
-        title: opac_strings.PWD_RESET_RESPONSE_TITLE,
-        style: "width: 35em"
-    });
-    responseDialog.startup();
-    var requestStatusDiv = dojo.create("div", { style: "width: 30em" });
-    var requestStatusMsg = dojo.create("div", { innerHTML: msg }, requestStatusDiv);
-    var okButton = new dijit.form.Button({
-        id: "okButton",
-        type: "submit",
-        label: opac_strings.OK
-    }).placeAt(requestStatusDiv);
-    responseDialog.attr("content", requestStatusDiv);
-    responseDialog.show();
-    dojo.connect(dijit.byId("okButton"), "onClick", responseDialog, "hide");
-}
-
-function createResetDialog() {
-    var pwResetFormDlg = new dijit.Dialog({
-        id: "pwResetFormDlg",
-        title: opac_strings.PWD_RESET_FORM_TITLE,
-        style: "width: 35em"
-    });
-    pwResetFormDlg.startup();
-
-    // Instantiate the form
-    var pwResetFormURL = "/opac/password/" + (OpenSRF.locale || "en-US") + "/";
-    var pwResetFormDiv = dojo.create("form", { id: "requestReset", style: "width: 30em", method: "post", action: pwResetFormURL });
-    dojo.create("p", { innerHTML: opac_strings.PWD_RESET_SUBMIT_PROMPT }, pwResetFormDiv);
-    var pwResetFormTable = dojo.create("table", null, pwResetFormDiv);
-    var pwResetFormTbody = dojo.create("tbody", null, pwResetFormTable);
-    var pwResetFormRow = dojo.create("tr", null, pwResetFormTbody);
-    var pwResetFormCell = dojo.create("td", null, pwResetFormRow);
-    var pwResetFormLabel = dojo.create("label", null, pwResetFormCell);
-    dojo.attr(pwResetFormCell, { innerHTML: opac_strings.BARCODE_PROMPT });
-    pwResetFormCell = dojo.create("td", null, pwResetFormRow);
-    var barcodeText = new dijit.form.TextBox({
-        id: "pwBarcode",
-        name: "barcode"
-    }).placeAt(pwResetFormCell);
-    pwResetFormRow = dojo.create("tr", {}, pwResetFormTbody);
-    pwResetFormCell = dojo.create("td", {}, pwResetFormRow);
-    dojo.attr(pwResetFormCell, { innerHTML: opac_strings.USERNAME_PROMPT });
-    pwResetFormCell = dojo.create("td", {}, pwResetFormRow);
-    var usernameText = new dijit.form.TextBox({
-        id: "pwUsername",
-        name: "username"
-    }).placeAt(pwResetFormCell);
-    dojo.create("br", null, pwResetFormDiv);
-    var submitButton = new dijit.form.Button({
-        id: "pwSubmit",
-        type: "submit",
-        label: opac_strings.SUBMIT_BUTTON_LABEL
-    }).placeAt(pwResetFormDiv);
-    var cancelButton = new dijit.form.Button({
-        id: "pwCancel",
-        type: "cancel",
-        label: opac_strings.CANCEL_BUTTON_LABEL
-    }).placeAt(pwResetFormDiv);
-
-    // Set the content of the Dialog to the pwResetForm
-    pwResetFormDlg.attr("content", pwResetFormDiv);
-    return pwResetFormDlg;
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/rdetail.js b/Open-ILS/web/opac/skin/default/js/rdetail.js
deleted file mode 100644
index 596c0c2..0000000
--- a/Open-ILS/web/opac/skin/default/js/rdetail.js
+++ /dev/null
@@ -1,1409 +0,0 @@
-
-/* */
-
-detachAllEvt('common', 'run');
-attachEvt("common", "run", rdetailDraw);
-attachEvt("rdetail", "recordDrawn", rdetailBuildStatusColumns);
-attachEvt("rdetail", "recordDrawn", rdetailBuildInfoRows);
-attachEvt("rdetail", "recordDrawn", rdetailGetPageIds);
-
-/* Per-skin configuration settings */
-var rdetailLocalOnly = true;
-var rdetailShowLocal = true;
-var rdetailShowCopyLocation = true;
-var rdetailGoogleBookPreview = true;
-var rdetailDisplaySerialHoldings = true;
-var rdetailEnableRefWorks = false;
-var rdetailRefWorksHost = 'http://www.refworks.com';
-
-/* vars vars vars */
-var record = null;
-var cp_statuses = null;
-var recordsCache = [];
-
-var copyRowParent = null;
-var copyRow = null;
-var statusRow = null;
-var numStatuses = null;
-var defaultCN;
-var callnumberCache = {};
-var globalCNCache = {};
-var localTOC;
-var cachedRecords;
-var _statusPositions = {};
-var opac_strings;
-
-var nextContainerIndex;
-
-var nextRecord;
-var prevRecord;
-
-var rdetailPrev = null;
-var rdetailNext = null;
-var rdetailStart = null;
-var rdetailEnd = null;
-var rdetailBackToResults = null;
-
-var mfhdDetails = [];
-var orgHiding = false;
-
-if(location.href.match(/&place_hold=1/) || location.href.match(/&show_login=1/)) {
-    // prevent load flicker between canvases
-    hideMe(dojo.byId('canvas_main'));
-}
-
-dojo.require("dijit.Dialog");
-dojo.require("dijit.form.TextBox");
-
-/* serials are currently the only use of Dojo strings in the OPAC */
-if (rdetailDisplaySerialHoldings) {
-	dojo.require("dijit.Menu");
-	dojo.require("dijit.form.Button");
-	dojo.requireLocalization("openils.opac", "opac");
-	opac_strings = dojo.i18n.getLocalization("openils.opac", "opac");
-}
-
-function rdetailReload() {
-	var args = {};
-	args[PARAM_LOCATION] = getNewSearchLocation();
-	args[PARAM_DEPTH] = depthSelGetDepth();
-	goTo(buildOPACLink(args));
-}
-
-/* looks to see if we have a next and/or previous record in the
-   record cache, if so, set up the nav links */
-function rdetailSetPaging(ids) {
-
-	cachedRecords = {};
-	cachedRecords.ids = ids;
-
-	for( var i = 0; i < cachedRecords.ids.length; i++ ) {
-		var rec = cachedRecords.ids[i];
-		if( rec == getRid() ) {
-			if( i > 0 ) prevRecord = cachedRecords.ids[i-1];
-			if( i < cachedRecords.ids.length - 1 )
-				nextRecord = cachedRecords.ids[i+1];
-			break;
-		}
-	}
-	var cgi = new CGI();   // add the offset if we're not on the first page of results
-	var offset = parseInt(cgi.param('o'));
-	if (offset)
-		i = i + offset;
-
-	$('np_offset').appendChild(text(i + 1));
-	$('np_count').appendChild(text(getHitCount()));
-
-	if(prevRecord) {
-		unHideMe($('np_table'));
-		unHideMe($('np_prev'));
-		unHideMe($('np_start'));
-		rdetailPrev = function() { _rdetailNav(prevRecord); };
-		rdetailStart = function() { _rdetailNav(cachedRecords.ids[0]); };
-	}
-
-	if(nextRecord) {
-		unHideMe($('np_table'));
-		unHideMe($('np_next'));
-		unHideMe($('np_end'));
-		rdetailNext = function() { _rdetailNav(nextRecord); };
-		rdetailEnd = function() { _rdetailNav(cachedRecords.ids[cachedRecords.ids.length-1]); };
-	}
-    rdetailBackToResults = function() { location.href = prevRResults(); };
-
-	runEvt('rdetail', 'nextPrevDrawn', i, cachedRecords.ids.length);
-}
-
-
-function _rdetailNav(id, offset) {
-	var args = {};
-	args[PARAM_RID] = id;
-	goTo(buildOPACLink(args));
-}
-
-function rdetailHandlePlaceHold() {
-    function reload() {
-        location.href = location.href.replace(/&place_hold=1/, '');
-    }
-    attachEvt("common", "holdUpdated", reload);
-    attachEvt("common", "holdUpdateCanceled", reload);
-    attachEvt("common", "loginCanceled", reload);
-    holdsDrawEditor({record:getRid(), type: 'T'});
-}
-
-function rdetailDraw() {
-
-    if(new CGI().param('place_hold')) {
-        rdetailHandlePlaceHold();
-        return;
-    }
-
-	detachAllEvt('common','depthChanged');
-	detachAllEvt('common','locationUpdated');
-	attachEvt('common','depthChanged', rdetailReload);
-	attachEvt('common','locationUpdated', rdetailReload);
-	attachEvt('common','holdUpdated', rdetailReload);
-	attachEvt('common','holdUpdateCanceled', rdetailReload);
-
-	copyRowParent = G.ui.rdetail.cp_info_row.parentNode;
-	copyRow = copyRowParent.removeChild(G.ui.rdetail.cp_info_row);
-	statusRow = G.ui.rdetail.cp_status.parentNode;
-	statusRow.id = '__rdsrow';
-
-	G.ui.rdetail.cp_info_local.onclick = rdetailShowLocalCopies;
-	G.ui.rdetail.cp_info_all.onclick = rdetailShowAllCopies;
-
-	if(getLocation() == globalOrgTree.id())
-		hideMe(G.ui.rdetail.cp_info_all);
-
-    if(getRid()) {
-
-	    var req = new Request(FETCH_RMODS, getRid());
-	    req.callback(_rdetailDraw);
-	    req.send();
-
-    } else { // No record ID was specified
-
-       // If we have an ISBN in the URL, let's try to find that record
-       // This allows direct linking by ISBN.
-       // Note, this uses the first record it finds
-       if(getRtype() == RTYPE_ISBN) { 
-            var req = new Request(FETCH_ADV_ISBN_RIDS, getAdvTerm() );
-            req.callback(
-                function(r) {
-                    var blob = r.getResultObject();
-                    if(blob && blob.count > 0) 
-                        RID = blob.ids[0]; 
-                    var req2 = new Request(FETCH_RMODS, getRid());
-                    req2.callback(_rdetailDraw);
-                    req2.send();
-                }
-            );
-            req.send();
-        }
-    }
-
-
-	if (rdetailDisplaySerialHoldings && (
-        isXUL() || !fetchOrgSettingDefault(
-            getLocation(), "opac.fully_compressed_serial_holdings")
-        )
-    ) {
-		var req = new Request(FETCH_MFHD_SUMMARY, getRid());
-		req.callback(_holdingsDraw);
-		req.send();
-		if (isXUL()) {
-			var here = findOrgUnit(getLocation());
-			dojo.place("<div id='mfhd_ad_menu'></div>", "rdetail_details_table", "after");
-			var mfhd_add = new dijit.Menu({style:"float: right;"});
-			new dijit.MenuItem({onClick:function(){
-				var bibReq = new Request(FETCH_BRE, [getRid()]);
-				bibReq.send(true);
-				var bib = bibReq.result()[0];
-				var sourceReq = new Request(FETCH_BIB_SOURCE, G.user.session, bib.source());
-				sourceReq.send(true);
-				var source = sourceReq.result();
-				if (source && source.can_have_copies() == 'f') {
-					alert(dojo.string.substitute(opac_strings.SOURCE_CANNOT_HAVE_COPIES, [source.source()]));
-				} else {
-					var req = new Request(CREATE_MFHD_RECORD, G.user.session, 1, here.id(), getRid());
-					var res = req.send();
-					alert(dojo.string.substitute(opac_strings.CREATED_MFHD_RECORD, [here.name()]));
-				}
-			}, label:opac_strings.CREATE_MFHD}).placeAt(mfhd_add);
-			mfhd_add.placeAt(mfhd_ad_menu);
-		}
-	}
-
-	detachAllEvt("result", "idsReceived");
-	G.evt.result.hitCountReceived = [];
-	G.evt.result.recordReceived = [];
-	G.evt.result.copyCountsReceived = [];
-	G.evt.result.allRecordsReceived = [];
-
-    if(isXUL()) 
-        unHideMe($('rdetail_show_orders'));
-}
-
-function rdetailGetPageIds() {
-	attachEvt("result", "idsReceived", rdetailSetPaging );
-	resultFetchAllRecords = true;
-	rresultCollectIds(true);
-}
-
-
-function buildunAPISpan (span, type, id) {
-	var cgi = new CGI();
-	var d = new Date();
-
-	addCSSClass(span,'unapi-id');
-
-	span.setAttribute(
-			'title', 'tag:' + cgi.server_name + ',' +
-			d.getFullYear() + ':' + type + '/' + id
-			);
-}
-
-function rdetailViewMarc(r,id) {
-	hideMe($('rdetail_extras_loading'));
-	$('rdetail_view_marc_box').innerHTML = r.getResultObject();
-
-	var div = elem('div', { "class" : 'hide_me' });
-	var span = div.appendChild( elem('abbr') );
-
-	buildunAPISpan( span, 'biblio-record_entry', record.doc_id() );
-
-	$('rdetail_view_marc_box').insertBefore(span, $('rdetail_view_marc_box').firstChild);
-}
-
-function rdetailForeignItems(r,id) {
-	hideMe($('rdetail_extras_loading'));
-    var tbody = $('rdetail_foreign_items_tbody');
-
-    var robj = r.getResultObject(); /* mvr list with foreign_copy_maps fleshed */
-
-    for (var i = 0; i < robj.length; i++) {
-        var args = {};
-        args.page = RDETAIL;
-        args[PARAM_OFFSET] = 0;
-        args[PARAM_RID] = robj[i].doc_id();
-        var row = elem('tr'); tbody.appendChild(row);
-        var td1 = elem('td'); row.appendChild(td1);
-        var title = elem(
-            'a',
-            {
-                'href' : buildOPACLink(args),
-                'class' : 'classic_link'
-            },
-            robj[i].title()
-        );
-        td1.appendChild(title);
-        var td2 = elem('td',{},robj[i].author()); row.appendChild(td2);
-        var td3 = elem('td'); row.appendChild(td3);
-        var details = elem(
-            'a',
-            {
-                'href' : 'javascript:void(0)',
-                'class' : 'classic_link'
-            },
-            'Copy Details'
-        );
-        details.onclick = function(idx,context_row){
-            return function() {
-                cpdBuild(
-                    tbody,
-                    context_row,
-                    robj[idx],
-                    null,
-                    1,
-                    0,
-                    1,
-                    dojo.map(
-                        robj[idx].foreign_copy_maps(),
-                        function(x){ return x.target_copy(); }
-                    ),
-                    dojo.map(
-                        robj[idx].foreign_copy_maps(),
-                        function(x){ return x.peer_type().name(); }
-                    )
-                );
-            };
-        }(i,row);
-        td3.appendChild(details);
-    }
-}
-
-
-
-function rdetailShowLocalCopies() {
-	rdetailShowLocal = true;
-	rdetailBuildInfoRows();
-	hideMe(G.ui.rdetail.cp_info_local);
-	unHideMe(G.ui.rdetail.cp_info_all);
-	hideMe(G.ui.rdetail.cp_info_none); 
-}
-
-function rdetailShowAllCopies() {
-
-	rdetailShowLocal = false;
-	rdetailBuildInfoRows();
-	hideMe(G.ui.rdetail.cp_info_all);
-	unHideMe(G.ui.rdetail.cp_info_local);
-	hideMe(G.ui.rdetail.cp_info_none); 
-}
-
-function OpenMarcEditWindow(pcrud, rec) {
-	/*
-	   To run in Firefox directly, must set signed.applets.codebase_principal_support
-	   to true in about:config
-	 */
-	win = window.open('/xul/server/cat/marcedit.xul','','chrome'); // XXX version?
-	dojo.require('openils.PermaCrud');
-
-	win.xulG = {
-		"record": {"marc": rec.marc(), "rtype": "sre"},
-		"save": {
-			"label": opac_strings.SAVE_MFHD_LABEL,
-			"func": function(xmlString) {
-				rec.marc(xmlString);
-				rec.edit_date('now');
-				rec.ischanged(true);
-				pcrud.update(rec);
-			}
-		},
-        'lock_tab' : typeof xulG != 'undefined' ? (typeof xulG['lock_tab'] != 'undefined' ? xulG.lock_tab : undefined) : undefined,
-        'unlock_tab' : typeof xulG != 'undefined' ? (typeof xulG['unlock_tab'] != 'undefined' ? xulG.unlock_tab : undefined) : undefined
-	};
-}
-
-function loadMarcEditor(recId) {
-	var pcrud = new openils.PermaCrud({"authtoken": G.user.session});
-	var rec = pcrud.retrieve("sre", recId);
-	if (rec) {
-		OpenMarcEditWindow(pcrud, rec);
-	}
-}
-
-/*
- * This function could be written much more intelligently
- * Limited brain power means that I'm brute-forcing it for now
- */
-function _holdingsDraw(h) {
-    holdings = h.getResultObject();
-
-    if (holdings) {
-        // Only draw holdings within our OU scope
-        var here = findOrgUnit(getLocation());
-        var entryNum = 0;
-        var depth = getDepth();
-        dojo.forEach(holdings, function (item) {
-            if (orgIsMine(here, findOrgUnit(item.owning_lib()), depth)) {
-                _holdingsDrawMFHD(item, entryNum);
-                entryNum++;
-            }
-        });
-    }
-
-    // Populate (or unpopulate) XUL menus
-    if (isXUL()) {
-        runEvt('rdetail','MFHDDrawn');
-    }
-}
-
-function _holdingsDrawMFHD(holdings, entryNum) {
-	var hb = holdings.basic_holdings();
-	var hba = holdings.basic_holdings_add();
-	var hs = holdings.supplement_holdings();
-	var hsa = holdings.supplement_holdings_add();
-	var hi = holdings.index_holdings();
-	var hia = holdings.index_holdings_add();
-	var ho = holdings.online();
-	var hm = holdings.missing();
-	var hinc = holdings.incomplete();
-	var hloc = holdings.location() || 'MFHD';
-
-	if (	hb.length == 0 && hba.length == 0 && hs.length == 0 &&
-		hsa.length == 0 && hi.length == 0 && hia.length == 0 &&
-		ho.length == 0 && hm.length == 0 && hinc.length == 0
-	) {
-
-		if (isXUL()) {
-			/* 
-			 * If we have a record, but nothing to show for it, then the
-			 * record is likely empty or corrupt. This gives cataloguers a
-			 * chance to add holdings or correct the record
-			 */
-			hb = ['PLACEHOLDER'];
-		} else {
-			return null;
-		}
-	}
-
-	// Show entryNum + 1 in staff client for better menu correlation
-	// Maybe this should be holdings.sre_id() instead? (which could get long after time)
-	var entryNumString = '';
-	if (isXUL()) {
-		var entryNumInc = entryNum + 1;
-		entryNumString = ' [Entry #'+entryNumInc+'] ';
-	}
-
-	var refNode;
-	if (entryNum > 0) {
-		refNode = 'rdetail_holdings_table_' + (entryNum - 1);
-	} else {
-		refNode = 'rdetail_details_table';
-	}
-
-	dojo.place("<table style='width: 100%;' id='rdetail_holdings_table_"+entryNum+"'><caption id='mfhdHoldingsCaption" + entryNum + "' class='rdetail_header color_1'>" +
-		dojo.string.substitute(opac_strings.HOLDINGS_TABLE_CAPTION, [hloc]) + entryNumString +
-		"</caption><tbody id='rdetail_holdings_tbody_" + entryNum +
-		"'></tbody></table>", refNode, "after"
-	);
-	if (hb.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.BASIC_HOLDINGS, hb); }
-	if (hba.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.BASIC_HOLDINGS_ADD, hba); }
-	if (hs.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.SUPPLEMENT_HOLDINGS, hs); }
-	if (hsa.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.SUPPLEMENT_HOLDINGS_ADD, hsa); }
-	if (hi.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.INDEX_HOLDINGS, hi); }
-	if (hia.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.INDEX_HOLDINGS_ADD, hia); }
-	if (ho.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.ONLINE_VOLUMES, ho); }
-	if (hm.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.MISSING_VOLUMES, hm); }
-	if (hinc.length > 0) { _holdingsDrawMFHDEntry(entryNum, opac_strings.INCOMPLETE_VOLUMES, hinc); }
-
-	if (isXUL() && holdings.sre_id() != -1) { // -1 indicates in-DB only holdings, so no button or menu entries for MFHD
-		mfhdDetails.push({ 'id' : holdings.sre_id(), 'label' : hloc, 'entryNum' : entryNum, 'owning_lib' : holdings.owning_lib() });
-		dojo.require('openils.Event');
-		dojo.require('openils.PermaCrud');
-		var mfhd_edit = new dijit.Menu({});
-		new dijit.MenuItem({onClick: function(){loadMarcEditor(holdings.sre_id())}, label:opac_strings.EDIT_MFHD_RECORD}).placeAt(mfhd_edit, "first");
-		new dijit.MenuItem({onClick:function(){
-			// Avoid accidental deletion of MFHD records
-			if (!confirm(opac_strings.DELETE_MFHD_CONFIRM)) {
-				return;
-			}
-			var pcrud = new openils.PermaCrud({"authtoken": G.user.session});
-			var mfhd_rec = pcrud.retrieve("sre", holdings.sre_id());
-			if (mfhd_rec) {
-				pcrud.eliminate(mfhd_rec);
-				alert(dojo.string.substitute(opac_strings.DELETED_MFHD_RECORD, [holdings.sre_id()]));
-			}
-		}, label:opac_strings.DELETE_MFHD}).placeAt(mfhd_edit, "last");
-		// new dijit.MenuItem({onClick:function(){alert("Edit properties " + holdings.sre_id());}, label:opac_strings.EDIT_PROPERTIES}).placeAt(mfhd_edit, "last");
-		var mfhd_mb = new dijit.form.DropDownButton({dropDown: mfhd_edit, label:opac_strings.EDIT_MFHD_MENU, style:"float:right"});
-		mfhd_mb.placeAt("mfhdHoldingsCaption" + entryNum, "last");
-		mfhd_edit.startup();
-	}
-}
-
-function _holdingsDrawMFHDEntry(entryNum, entryName, entry) {
-	var flatEntry = entry.toString().replace(/,/g, ', ');
-	dojo.place("<tr><td> </td><td nowrap='nowrap' class='rdetail_desc'>" + entryName + "</td><td class='rdetail_item'>" + flatEntry + "</td></tr>", "rdetail_holdings_tbody_" + entryNum, "last");
-}
-
-function _rdetailDraw(r) {
-	record = r.getResultObject();
-
-	runEvt('rdetail', 'recordRetrieved', record.doc_id());
-
-	G.ui.rdetail.title.appendChild(text(record.title()));
-	buildSearchLink(STYPE_AUTHOR, record.author(), G.ui.rdetail.author);
-	G.ui.rdetail.isbn.appendChild(text(cleanISBN(record.isbn())));
-	G.ui.rdetail.edition.appendChild(text(record.edition()));
-	G.ui.rdetail.pubdate.appendChild(text(record.pubdate()));
-	G.ui.rdetail.publisher.appendChild(text(record.publisher()));
-	$('rdetail_physical_desc').appendChild(text(record.physical_description()));
-	r = record.types_of_resource();
-	if(r) {
-		G.ui.rdetail.tor.appendChild(text(r[0]));
-		setResourcePic( G.ui.rdetail.tor_pic, r[0]);
-	}
-	G.ui.rdetail.abstr.appendChild(text(record.synopsis()));
-
-	try{
-		if(record.isbn()) {
-			if(ENABLE_ADDED_CONTENT_ATTRIB_LINKS) {
-				unHideMe($('rdetail.jacket_attrib_div'));
-				var href = $('rdetail.jacket_attrib_link').getAttribute('href') +cleanISBN(record.isbn());
-				$('rdetail.jacket_attrib_link').setAttribute('href', href);
-			}
-			rdetailCheckForGBPreview();
-
-		} else {
-			if(!record.doc_id()) {
-				hideMe($("rdetail.jacket_attrib_div"));
-				hideMe($("rdetail_img_link"));
-			}
-		}
-	} catch(E) {}
-
-
-	// see if the record has any external links 
-	var links = record.online_loc();
-	for( var i = 0; links && links.length > 0 && i < links.length; i = i + 3 ) {
-		var href = links[i];
-		// avoid matching "HTTP: The Complete Reference"
-		if( href.match(/https?:\/|ftps?:\/|mailto:/i) ) {
-			unHideMe($('rdetail_online_row'));
-			// MODS can contain a display label (used for the text of the link)
-			// as well as a note about the URL; many legacy systems conflate the
-			// two and generate MARC records that expect the note to be used as
-			// the text of the link, with no display label; here's the canonical
-			// format:
-			//
-			// 856 40 $uhttp://localhost$yDisplay label$zPublic note
-			//
-			// Note that the MARC21slim2MODS XSL concatenates $3 and $y together
-			// (as $y was defined later in MARC21's life as the display label)
-			var displayLabel = '' + links[i+1];
-			var note = '' + links[i+2];
-			if(!displayLabel || displayLabel.match(/https?:\/|ftps?:\/|mailto:/i)) {
-				if(!note || note.match(/https?:\/|ftps?:\/|mailto:/i)) {
-					displayLabel = href;
-				} else {
-					displayLabel = note;
-				}
-			}
-			$('rdetail_online').appendChild(elem('a', {href:href,'class':'classic_link'}, displayLabel));
-			if (note && note != displayLabel) {
-				$('rdetail_online').appendChild(elem('span', {'class':'url_note'}, ' - ' + note));
-			}
-			$('rdetail_online').appendChild(elem('br'));
-		}
-	}
-
-	// Fill in our unAPI ID, if anyone cares
-	var abbrs = document.getElementsByTagName('abbr');
-	var span;
-	for (var i = 0; i < abbrs.length; i++) {
-		if (abbrs[i].getAttribute('name') == 'unapi') {
-			span = abbrs[i];
-			break;
-		}
-	}
-	buildunAPISpan( span, 'biblio-record_entry', record.doc_id() );
-
-	$('rdetail_place_hold').onclick = function() {
-        var src = location.href;
-
-        if(forceLoginSSL && src.match(/^http:/)) {
-
-            src = src.replace(/^http:/, 'https:');
-
-            if(!src.match(/&place_hold=1/)) {
-                src += '&place_hold=1';
-            }
-
-            location.href = src;
-
-        } else {
-            holdsDrawEditor({record:record.doc_id(), type:'T'});
-        }
-    }
-
-
-	var RW = $('rdetail_exp_refworks');
-	if (RW && rdetailEnableRefWorks) {
-
-		var here = (findOrgUnit(getLocation())).name();
-		var org_name = here.replace(" ", "+");
-		var cgi = new CGI();
-
-		RW.setAttribute(
-			'href',
-			rdetailRefWorksHost + '/express/expressimport.asp?vendor='
-			+ org_name
-			+ '&filter=MARC+Format&database=All+MARC+Formats&encoding=65001&url=http%3A%2F%2F'
-			+ cgi.server_name + '/opac/extras/supercat/marctxt/record/'
-			+ record.doc_id()
-	       );
-
-		RW.setAttribute('target', 'RefWorksMain');
-
-		unHideMe($('rdetail_exp_refworks_span'));
-	}
-
-	$('rdetail_img_link').setAttribute('href', buildJacketSrc(record.doc_id()), 'large'));
-	G.ui.rdetail.image.setAttribute("src", buildJacketSrc(record.doc_id()));
-	runEvt("rdetail", "recordDrawn");
-	recordsCache.push(record);
-
-	rdetailSetExtrasSelector();
-
-	var breq = new Request(FETCH_BRE, [getRid()]);
-	breq.callback( rdetailCheckDeleted );
-	breq.send();
-
-	//resultBuildCaches( [ record ] );
-	//resultDrawSubjects();
-	//resultDrawSeries();
-
-	// grab added content 
-
-    // Proxied through Evergreen AddedContent module
-	acCollectData(cleanISBN(record.isbn()), rdetailhandleAC);
-
-    var currentISBN = cleanISBN(record.isbn());
-
-    // Not proxied, cross-site javascript
-
-    // ChiliFresh
-    if (chilifresh && chilifresh != '(none)' && currentISBN) {
-        $('chilifreshReviewLink').setAttribute('id','isbn_'+currentISBN);
-        $('chilifreshReviewResult').setAttribute('id','chili_review_'+currentISBN);
-        unHideMe($('rdetail_reviews_link'));
-        unHideMe($('rdetail_chilifresh_reviews'));
-        try {
-            chili_init();
-        } catch(E) {
-            console.log(E + '\n');
-            hideMe($('rdetail_reviews_link'));
-            hideMe($('rdetail_chilifresh_reviews'));
-        }
-    }
-
-    // Novelist
-    if (novelist && currentISBN) {
-        unHideMe($('rdetail_novelist_link'));
-    }
-
-    // Multi-Home / Foreign Items / Peer Bibs
-    var req = new Request( TEST_PEER_BIBS, record.doc_id() );
-    req.callback(function(r){
-        var test = r.getResultObject();
-        if (test == "1") {
-            unHideMe($('rdetail_foreign_items_link'));
-        }
-    }); 
-    req.send();
-}
-
-
-
-function rdetailCheckDeleted(r) {
-	var br = r.getResultObject()[0];
-	if( isTrue(br.deleted()) ) {
-		hideMe($('rdetail_place_hold'));
-		$('rdetail_more_actions_selector').disabled = true;
-		unHideMe($('rdetail_deleted_exp'));
-	}
-}
-
-function rdetailSetExtrasSelector() {
-	if(!grabUser()) return;
-	unHideMe($('rdetail_more_actions'));
-
-	var req = new Request( 
-			FETCH_CONTAINERS, G.user.session, G.user.id(), 'biblio', 'bookbag' );
-	req.callback(rdetailAddBookbags);
-	req.send();
-}
-
-function rdetailAddBookbags(r) {
-
-	var containers = r.getResultObject();
-	var selector = $('rdetail_more_actions_selector');
-	var found = false;
-	var index = 3;
-	doSelectorActions(selector);
-
-	for( var i = 0; i < containers.length; i++ ) {
-		found = true;
-		var container = containers[i];
-		insertSelectorVal( selector, index++, container.name(), 
-				"container_" + container.id(), rdetailAddToBookbag,  1 );
-	}
-
-	nextContainerIndex = index;
-}
-
-var _actions = {};
-/**
- * Adds a new bookbag and exits.
- * 
- * exitstatus should be 0 if the status is to be read.
- */
-function finishBookbag(exitstatus) {
-	var name = bbName.attr('value');
-	
-	newBBDialog.hide();	
-	bbName.attr("value", ""); // Do this after hide so the text doesn't disappear.
-	
-	if(exitstatus != 0) return; // If the user canceled, just drop off here.
-	
-	var id;
-	
-	if( id = containerCreate( name ) ) {
-		alert( $('rdetail_bb_success').innerHTML );
-		var selector = $('rdetail_more_actions_selector');
-		insertSelectorVal( selector, nextContainerIndex++, name, 
-				"container_" + id, rdetailAddToBookbag, 1 );
-		setSelector( selector, 'start' );
-	}
-}
-
-/**
- * Creates a new Bookbag for the user.
- */
-function rdetailNewBookbag() {
-    newBBDialog.show(); // Show the bookbag dialog.
-    dojo.connect(dijit.byId('newBBDialog'), 'onKeyPress', function(evt) {
-        if (evt.keyCode == dojo.keys.ENTER) {
-            finishBookbag(0);
-        }
-    });
-}
-
-function rdetailAddToBookbag() {
-	var selector = $('rdetail_more_actions_selector');
-	var id = selector.options[selector.selectedIndex].value;
-	setSelector( selector, 'start' );
-
-	if( containerCreateItem( id.substring(10), record.doc_id() )) {
-		alert($('rdetail_bb_item_success').innerHTML);
-	}
-}
-
-
-var rdetailMarcFetched = false;
-var rdetailForeignItemsFetched = false;
-function rdetailShowExtra(type, args) {
-
-	hideMe($('rdetail_copy_info_div'));
-	hideMe($('rdetail_summary_div'));
-	hideMe($('rdetail_reviews_div'));
-	hideMe($('rdetail_toc_div'));
-	hideMe($('rdetail_anotes_div'));
-	hideMe($('rdetail_excerpt_div'));
-	hideMe($('rdetail_preview_div'));
-	hideMe($('rdetail_marc_div'));
-	hideMe($('cn_browse'));
-	hideMe($('rdetail_cn_browse_div'));
-	hideMe($('rdetail_novelist_div'));
-	hideMe($('rdetail_foreign_items_div'));
-	hideMe($('rdetail_notes_div'));
-
-	removeCSSClass($('rdetail_copy_info_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_viewcn_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_summary_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_reviews_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_toc_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_excerpt_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_preview_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_anotes_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_annotation_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_viewmarc_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_novelist_link'), 'rdetail_extras_selected');
-	removeCSSClass($('rdetail_foreign_items_link'), 'rdetail_extras_selected');
-
-	switch(type) {
-
-		case "copyinfo": 
-			unHideMe($('rdetail_copy_info_div')); 
-			addCSSClass($('rdetail_copy_info_link'), 'rdetail_extras_selected');
-			break;
-
-        case "summary":
-            addCSSClass($('rdetail_summary_link'), 'rdetail_extras_selected');
-            unHideMe($('rdetail_summary_div'));
-            break;
-
-		case "reviews": 
-			addCSSClass($('rdetail_reviews_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_reviews_div')); 
-			break;
-
-		case "excerpt": 
-			addCSSClass($('rdetail_excerpt_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_excerpt_div'));
-			break;
-
-		case "preview": 
-			addCSSClass($('rdetail_preview_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_preview_div'));
-			rdetailDisplayGBPreview();
-			break;
-
-		case "anotes": 
-			addCSSClass($('rdetail_anotes_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_anotes_div'));
-			break;
-
-		case "toc": 
-			addCSSClass($('rdetail_toc_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_toc_div'));
-			break;
-
-		case "marc": 
-			addCSSClass($('rdetail_viewmarc_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_marc_div')); 
-			if(rdetailMarcFetched) return;
-			unHideMe($('rdetail_extras_loading'));
-			rdetailMarcFetched = true;
-			var req = new Request( FETCH_MARC_HTML, record.doc_id() );
-			req.callback(rdetailViewMarc); 
-			req.send();
-			break;
-
-		case "novelist": 
-			addCSSClass($('rdetail_novelist_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_novelist_div')); 
-			break;
-
-		case "foreign_items": 
-			addCSSClass($('rdetail_foreign_items_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_foreign_items_div')); 
-            if(rdetailForeignItemsFetched) return;
-			unHideMe($('rdetail_extras_loading'));
-            rdetailForeignItemsFetched = true;
-			var req = new Request( FETCH_PEER_BIBS, record.doc_id() );
-			req.callback(rdetailForeignItems); 
-			req.send();
-			break;
-
-		case 'cn':
-			addCSSClass($('rdetail_viewcn_link'), 'rdetail_extras_selected');
-			unHideMe($('rdetail_cn_browse_div'));
-			rdetailShowCNBrowse(defaultCN[1], getLocation(), null, true);
-			break;
-
-	}
-}
-
-function rdetailVolumeDetails(args) {
-	var row = $(args.rowid);
-	var tbody = row.parentNode;
-	cpdBuild( tbody, row, record, [args.cn_prefix, args.cn, args.cn_suffix], args.org, args.depth, args.copy_location );
-	return;
-}
-
-function rdetailBuildCNList() {
-
-	var select = $('cn_browse_selector');
-	var index = 0;
-	var arr = [];
-	for( var cn_json in callnumberCache ) arr.push( cn_json );
-	arr.sort();
-
-	if( arr.length == 0 ) {
-		hideMe($('rdetail_cn_browse_select_div'));
-		return;
-	}
-
-	for( var i = 0; i < arr.length; i++ ) {
-		var cn_json = arr[i];
-        var cn = JSON2js(cn_json);
-        var whole_cn_text = (cn[0] ? cn[0] + ' ' : '') + cn[1] + (cn[2] ? ' ' + cn[2] : '');
-		var opt = new Option(whole_cn_text,cn_json);
-		select.options[index++] = opt;
-	}
-	select.onchange = rdetailGatherCN;
-}
-
-function rdetailGatherCN() {
-	var cn = getSelectorVal($('cn_browse_selector'));
-	rdetailShowCNBrowse( JSON2js(cn), getLocation(), getDepth(), true );
-	setSelector( $('cn_browse_selector'), cn );
-}
-
-
-function rdetailShowCNBrowse( cn, loc, depth, fromOnclick ) {
-
-	if(!cn) {
-		unHideMe($('cn_browse_none'));
-		hideMe($('rdetail_cn_browse_select_div'));
-		return;
-	}
-
-	unHideMe($('rdetail_cn_browse_select_div'));
-	rdetailBuildCNList();
-	setSelector( $('cn_browse_selector'), js2JSON(cn) );
-	hideMe($('rdetail_copy_info_div'));
-	hideMe($('rdetail_reviews_div'));
-	hideMe($('rdetail_summary_div'));
-	hideMe($('rdetail_toc_div'));
-	hideMe($('rdetail_marc_div'));
-	unHideMe($('rdetail_cn_browse_div'));
-	unHideMe($('cn_browse'));
-	if( !rdetailLocalOnly && ! fromOnclick ) depth = findOrgDepth(globalOrgTree);
-	cnBrowseGo(cn, loc, depth);
-}
-
-function rdetailhandleAC(data) {
-
-	if( data.summary.html ) {
-		$('rdetail_summary_div').innerHTML = data.summary.html;
-		unHideMe($('rdetail_summary_link'));
-	}
-
-	if( data.reviews.html ) {
-		$('rdetail_review_container').innerHTML = data.reviews.html;
-		unHideMe($('rdetail_reviews_link'));
-	}
-
-	if( data.toc.html ) {
-		$('rdetail_toc_div').innerHTML = data.toc.html;
-		unHideMe($('rdetail_toc_link'));
-	}
-
-	if( data.excerpt.html ) {
-		$('rdetail_excerpt_div').innerHTML = data.excerpt.html;
-		unHideMe($('rdetail_excerpt_link'));
-	}
-
-	if( data.anotes.html ) {
-		$('rdetail_anotes_div').innerHTML = data.anotes.html;
-		unHideMe($('rdetail_anotes_link'));
-	}
-}
-
-function rdetailShowReviews(r) {
-	hideMe($('rdetail_extras_loading'));
-	var res = r.getResultObject();
-	var par = $('rdetail_reviews_div');
-	var template = par.removeChild($('rdetail_review_template'));
-	if( res && res.length > 0 ) {
-		unHideMe($('rdetail_reviews_link'));
-		for( var i = 0; i < res.length; i++ ) {
-			var rev = res[i];	
-			if( rev.text && rev.info ) {
-				var node = template.cloneNode(true);
-				$n(node, 'review_header').appendChild(text(rev.info));
-				$n(node, 'review_text').appendChild(text(rev.text));
-				par.appendChild(node);
-			}
-		}
-	}
-}
-
-
-function rdetailShowTOC(r) {
-	hideMe($('rdetail_extras_loading'));
-	var resp = r.getResultObject();
-	if(resp) {
-		unHideMe($('rdetail_toc_link'));
-		$('rdetail_toc_div').innerHTML = resp;
-	}
-}
-
-function rdetailBuildInfoRows() {
-	var req;
-	var method = FETCH_COPY_COUNTS_SUMMARY;
-	if (rdetailShowCopyLocation)
-		method = FETCH_COPY_LOCATION_COUNTS_SUMMARY;
-	if( rdetailShowLocal ) 
-		req = new Request(method, record.doc_id(), getLocation(), getDepth())
-	else
-		req = new Request(method, record.doc_id());
-	req.callback(_rdetailBuildInfoRows);
-	req.send();
-}
-
-function _rdetailRows(node) {
-
-	if( rdetailShowLocal && getLocation() != globalOrgTree.id() ) {
-		var loc = findOrgUnit(getLocation());
-		if( node ) {
-			if( !orgIsMine(node, loc) && !orgIsMine(loc,node) ) return;
-		} else {
-            var kids = globalOrgTree.children();
-            if (kids) {
-    			for( var i = 0; i < kids.length; i++ ) {
-	    			var org = findOrgUnit(kids[i]);
-		    		if( orgIsMine(org, loc) ) {
-			    		node = org;
-				    	break;
-    				}
-                }
-			}
-		} 
-	}
-
-	if(!node && findOrgType(globalOrgTree.ou_type()).can_have_vols())
-		node = globalOrgTree;
-
-
-	/* don't show hidden orgs */
-
-	if(node) {
-
-		if(!isXUL() && !isTrue(node.opac_visible())) return;
-
-		if (orgHiding) {
-			if (isTrue( findOrgType(node.ou_type()).can_have_vols() )) {
-				if ( ! orgIsMine( orgHiding.org, node, orgHiding.depth ) ) {
-					return;
-				}
-			}
-		}
-
-		var row = copyRow.cloneNode(true);
-		row.id = "cp_info_" + node.id();
-
-		var libtd = findNodeByName( row, config.names.rdetail.lib_cell );
-		var cntd  = findNodeByName( row, config.names.rdetail.cn_cell );
-		var cpctd = findNodeByName( row, config.names.rdetail.cp_count_cell );
-		var actions = $n(row, 'rdetail_actions_cell');
-
-		var p = libtd.getElementsByTagName('a')[0];
-		libtd.insertBefore(text(node.name()), p);
-		libtd.setAttribute("style", "padding-left: " + ((findOrgDepth(node) - 1)  * 9) + "px;");
-
-		if(!findOrgType(node.ou_type()).can_have_vols()) {
-
-			row.removeChild(cntd);
-			row.removeChild(cpctd);
-			row.removeChild(actions);
-			row.setAttribute('novols', '1');
-
-			libtd.setAttribute("colspan", numStatuses + 3 );
-			libtd.colSpan = numStatuses + 3;
-			addCSSClass(row, 'copy_info_region_row');
-		} 
-
-		copyRowParent.appendChild(row);
-
-	} else { node = globalOrgTree; }
-
-    var kids = node.children();
-    if (kids) {
-    	for( var c = 0; c < kids.length; c++ ) 
-	    	_rdetailRows(kids[c]);
-    }
-}
-
-function rdetailCNPrint(orgid, cn) {
-	var div = cpdBuildPrintWindow( record, orgid);
-	var template = div.removeChild($n(div, 'cnrow'));
-	var rowNode = $("cp_info_" + orgid);
-	cpdStylePopupWindow(div);
-	openWindow(div.innerHTML);
-}
-
-var localCNFound = false;
-var ctr = 0;
-function _rdetailBuildInfoRows(r) {
-
-	if (rdetailShowCopyLocation)
-		unHideMe( $n( $('rdetail_copy_info_table'), 'rdetail_copylocation_header' ) );
-
-	removeChildren(copyRowParent);
-
-	orgHiding = checkOrgHiding();
-
-	_rdetailRows();
-
-	var summary = r.getResultObject();
-	if(!summary) return;
-
-	var found = false;
-	for( var i = 0; i < summary.length; i++ ) {
-
-		var arr = summary[i];
-		globalCNCache[js2JSON([arr[1],arr[2],arr[3]])] = 1; // prefix, label, suffix.  FIXME - Am I used anywhere?
-		var thisOrg = findOrgUnit(arr[0]);
-		var rowNode = $("cp_info_" + thisOrg.id());
-		if(!rowNode) continue;
-
-		if(rowNode.getAttribute("used")) {
-
-			if( rowNode.nextSibling ) {
-				sib = rowNode.nextSibling;
-				o ='cp_info_'+thisOrg.id()+'_';
-				/* push the new row on as the last row for this org unit */
-				while( sib && sib.id.match(o) ) {
-					sib = sib.nextSibling;
-				}
-				if(sib)
-					rowNode = copyRowParent.insertBefore(copyRow.cloneNode(true), sib);
-				else
-					rowNode = copyRowParent.appendChild(copyRow.cloneNode(true));
-			} else {
-				rowNode = copyRowParent.appendChild(copyRow.cloneNode(true));
-			}
-
-			var n = findNodeByName( rowNode, config.names.rdetail.lib_cell );
-			n.appendChild(text(thisOrg.name()));
-			n.setAttribute("style", "padding-left: " + ((findOrgDepth(thisOrg) - 1)  * 9) + "px;");
-			rowNode.id = "cp_info_" + thisOrg.id() + '_' + (++ctr); 
-
-		} else {
-			rowNode.setAttribute("used", "1");
-		}
-
-		var cpc_temp = rowNode.removeChild(
-				findNodeByName(rowNode, config.names.rdetail.cp_count_cell));
-
-		var statuses = arr[4];
-		var cl = '';
-		if (rdetailShowCopyLocation) {
-			cl = arr[4];
-			statuses = arr[5];
-		}
-
-
-		rdetailApplyStatuses(rowNode, cpc_temp, statuses);
-
-		var isLocal = false;
-		if( orgIsMine( findOrgUnit(getLocation()), thisOrg ) ) { 
-			found = true; 
-			isLocal = true; 
-			if(!localCNFound) {
-				localCNFound = true;
-				defaultCN = [arr[1],arr[2],arr[3]]; // prefix, label, suffix
-			}
-		}
-
-		//if(isLocal) unHideMe(rowNode);
-		unHideMe(rowNode);
-
-		rdetailSetPath( thisOrg, isLocal );
-		rdetailBuildBrowseInfo( rowNode, [arr[1],arr[2],arr[3]], isLocal, thisOrg, cl );
-
-		if( i == summary.length - 1 && !defaultCN) defaultCN = [arr[1],arr[2],arr[3]]; // prefix, label, suffix
-	}
-
-	if(!found) unHideMe(G.ui.rdetail.cp_info_none);
-}
-
-function rdetailBuildBrowseInfo(row, cn, local, orgNode, cl) {
-
-    var whole_cn_json = js2JSON(cn);
-    var whole_cn_text = (cn[0] ? cn[0] + ' ' : '') + cn[1] + (cn[2] ? ' ' + cn[2] : '');
-
-	if(local) {
-		var cache = callnumberCache[whole_cn_json];
-		if( cache ) cache.count++;
-		else callnumberCache[whole_cn_json] = { count : 1 };
-	}
-
-	var depth = getDepth();
-	if( !local ) depth = findOrgDepth(globalOrgTree);
-
-	$n(row, 'rdetail_callnumber_cell').appendChild(text(whole_cn_text));
-
-	if (rdetailShowCopyLocation) {
-		var cl_cell = $n(row, 'rdetail_copylocation_cell');
-		cl_cell.appendChild(text(cl));
-		unHideMe(cl_cell);
-	}
-
-	_debug('setting action clicks for cn ' + whole_cn_text);
-
-	var dHref = 'javascript:rdetailVolumeDetails('+
-			'{copy_location : "'+cl.replace(/\"/g, '\\"')+'", rowid : "'+row.id+'", cn_prefix :"'+cn[0].replace(/\"/g, '\\"')+'",cn :"'+cn[1].replace(/\"/g, '\\"')+'",cn_suffix :"'+cn[2].replace(/\"/g, '\\"')+'", depth:"'+depth+'", org:"'+orgNode.id()+'", local: '+local+'});';
-
-	var bHref = 'javascript:rdetailShowCNBrowse("'+cn[1].replace(/\"/g, '\\"') + '", '+orgNode.id()+', "'+depth+'");'; 
-
-	unHideMe( $n(row, 'details') )
-		$n(row, 'details').setAttribute('href', dHref);
-	unHideMe( $n(row, 'browse') )
-		$n(row, 'browse').setAttribute('href', bHref);
-
-	if(isXUL()) {
-		unHideMe($n(row, 'hold_div'));
-		$n(row, 'hold').onclick = function() {
-			var req = new Request(FETCH_VOLUME_BY_INFO, cn, record.doc_id(), orgNode.id());
-			req.callback(
-					function(r) {
-					var vol = r.getResultObject();
-					holdsDrawEditor({type: 'V', volumeObject : vol});
-					}
-				    );
-			req.send();
-		};
-	}
-}
-
-// sets the path to org as 'active' and displays the path if it's local 
-function rdetailSetPath(org, local) {
-	if( findOrgDepth(org) == 0 ) return;
-	var row = $("cp_info_" + org.id());
-	row.setAttribute("hasinfo", "1");
-	unHideMe(row);
-	rdetailSetPath(findOrgUnit(org.parent_ou()), local);
-}
-
-//Append all the statuses for a given summary to the 
-//copy summary table 
-function rdetailApplyStatuses( row, template, statuses ) {
-	for( var j in _statusPositions ) {
-		var stat = _statusPositions[j];
-		var val = statuses[stat.id()];
-		var nn = template.cloneNode(true);
-		if(val) nn.appendChild(text(val));
-		else nn.appendChild(text(0));
-		row.appendChild(nn);
-	}
-}
-
-//Add one td (creating a new column) to the copy summary
-//table for each opac_visible copy status
-function rdetailBuildStatusColumns() {
-
-	rdetailGrabCopyStatuses();
-	var parent = statusRow;
-	var template = parent.removeChild(G.ui.rdetail.cp_status);
-
-	var i = 0;
-	for( i = 0; i < cp_statuses.length; i++ ) {
-
-		var c = cp_statuses[i];
-		if( c && isTrue(c.opac_visible()) ) {
-			var name = c.name();
-			_statusPositions[i] = c;
-			var node = template.cloneNode(true);
-			var data = findNodeByName( node, config.names.rdetail.cp_status);
-
-			data.appendChild(text(name));
-			parent.appendChild(node);
-		}
-	}	
-
-	numStatuses = 0;
-	for(x in _statusPositions) numStatuses++; 
-}
-
-function rdetailGrabCopyStatuses() {
-	if(cp_statuses) return cp_statuses;
-	var req = new Request(FETCH_COPY_STATUSES);
-	req.send(true);
-	cp_statuses = req.result();
-	cp_statuses = cp_statuses.sort(_rdetailSortStatuses);
-}
-
-function _rdetailSortStatuses(a, b) {
-	return parseInt(a.id()) - parseInt(b.id());
-}
-
-/**
- * Check for a Google Book preview after the main page loads
- */
-function rdetailCheckForGBPreview() {
-	if (!rdetailGoogleBookPreview) return;
-        dojo.addOnLoad(function() {
-		searchForGBPreview( cleanISBN(record.isbn()) );
-	});
-}
-
-/**
- *
- * @param {DOM object} isbn The form element containing the input parameters "isbns"
- */
-function searchForGBPreview( isbn ) {
-	dojo.require("dojo.io.script");
-	dojo.io.script.get({"url": "https://www.google.com/jsapi"});
-	dojo.io.script.get({"url": "https://www.googleapis.com/books/v1/volumes", "content": { "q": "isbn:" + isbn, "callback": "GBPreviewCallback"}});
-}
-
-/**
- * This function is the call-back function for the JSON scripts which 
- * executes a Google book search response.
- *
- * XXX I18N of text needed
- *
- * @param {JSON} GBPBookInfo is the JSON object pulled from the Google books service.
- */
-function GBPreviewCallback(GBPBookInfo) {
-	if (GBPBookInfo.totalItems < 1) return;
-
-	var accessInfo = GBPBookInfo.items[0].accessInfo;
-	if ( !accessInfo ) {
-		return;
-	}
-
-	if ( accessInfo.embeddable ) {
-		// Add a button below the book cover image to load the preview.
-		GBPBadge = document.createElement( 'img' );
-		GBPBadge.src = 'https://www.google.com/intl/en/googlebooks/images/gbs_preview_button1.gif';
-		GBPBadge.title = $('rdetail_preview_badge').innerHTML;
-		GBPBadge.style.border = 0;
-		GBPBadgelink = document.createElement( 'a' );
-		GBPBadgelink.href = 'javascript:rdetailShowExtra("preview");';
-		GBPBadgelink.appendChild( GBPBadge );
-		$('rdetail_image_cell').appendChild( GBPBadgelink );
-		$('rdetail_preview_div').style.height = 600;
-
-		/* Display the "Preview" tab in the Extras section */
-		unHideMe( $('rdetail_preview_link' ) );
-	}
-}
-
-/**
- *  This is called when the user clicks on the 'Preview' link.  We assume
- *  a preview is available from Google if this link was made visible.
- *
- * XXX I18N of Google Book Preview language attribute needed
- */
-function rdetailDisplayGBPreview() {
-	unHideMe($('rdetail_extras_loading'));
-	GBPreviewPane = $('rdetail_preview_div');
-	if ( GBPreviewPane.getAttribute('loaded') == null ||
-		GBPreviewPane.getAttribute('loaded') == "false" ) {
-		google.load("books", "0", {"callback" : rdetailGBPViewerLoadCallback, "language": "en"} );
-		GBPreviewPane.setAttribute('loaded', 'true');
-	}
-}
-
-function rdetailGBPViewerLoadCallback() {
-	hideMe($('rdetail_extras_loading'));
-	var GBPViewer = new google.books.DefaultViewer(document.getElementById('rdetail_preview_div'));
-	GBPViewer.load('ISBN:' + cleanISBN(record.isbn()) );
-
-}
-
-function rdetailDrawExpandedHoldings(anchor, bibid, type) {
-    var offsets = {"basic": 0, "index": 0, "supplement": 0};
-    var limit = 10; /* XXX give user control over this? */
-    var target_id = "holding_type_" + type;
-    var target = dojo.byId(target_id);
-
-    anchor.innerHTML = "[-]";
-    anchor.oldonclick = anchor.onclick;
-    anchor.onclick = function() {
-        anchor.onclick = anchor.oldonclick;
-        anchor.innerHTML = "[+]";
-        dojo.empty(target);
-    };
-
-    function _load() {
-        dojo.empty(target);
-        fieldmapper.standardRequest(
-            ["open-ils.serial",
-                "open-ils.serial.received_siss.retrieve.by_bib.atomic"], {
-                "params": [bibid, {"offset": offsets[type], "limit": limit}],
-                "async": true,
-                "oncomplete": function(r) {
-                    try {
-                        if (msg = r.recv().content()) { /* sic, assignment */
-                            if (!msg.length) return;
-                            offsets[type] += msg.length;
-                            var table = dojo.create("table", null, target);
-                            dojo.forEach(
-                                msg, function(o) {
-                                    var tr = dojo.create("tr", null, table);
-                                    dojo.create(
-                                        "td", {
-                                            "innerHTML": o.issuance.label(),
-                                            "style": {"paddingLeft": "3em"}
-                                        }, tr
-                                    );
-
-                                    if (!o.has_units) return;
-                                    /* can't place holds if no units */
-                                    var td = dojo.create("td", null, tr);
-                                    dojo.create(
-                                        "a", {
-                                            "href":"javascript:void(0);",
-                                            "style": {"marginLeft": "1.5em"},
-                                            "onclick": function() {
-                                                holdsDrawEditor({
-                                                    "type": "I",
-                                                    "issuance": o.issuance.id()
-                                                });
-                                            },
-                                            "innerHTML": "[" +
-                                                opac_strings.PLACE_HOLD + "]"
-                                        }, td
-                                    );
-                                }
-                            );
-                            if (msg.length == limit) {
-                                dojo.create("br", null, target);
-                                dojo.create(
-                                    "a", {
-                                        "href": "javascript:void(0);",
-                                        "innerHTML":
-                                            "[" + opac_strings.MORE + "]",
-                                        "onclick": _load
-                                    }, target
-                                );
-                            }
-                        }
-                    } catch (E) {
-                        void(0);
-                    }
-                }
-            }
-        );
-    }
-    _load();
-}
diff --git a/Open-ILS/web/opac/skin/default/js/result_common.js b/Open-ILS/web/opac/skin/default/js/result_common.js
deleted file mode 100644
index c3d4764..0000000
--- a/Open-ILS/web/opac/skin/default/js/result_common.js
+++ /dev/null
@@ -1,995 +0,0 @@
-dojo.require('openils.BibTemplate');
-dojo.requireLocalization("openils.opac", "opac");
-var opac_strings = dojo.i18n.getLocalization("openils.opac", "opac");
-
-var recordsHandled = 0;
-var recordsCache = [];
-var lowHitCount = 4;
-var isbnList = new Array();
-var googleBooksLink = true;
-var OpenLibraryLinks = true;
-
-var resultFetchAllRecords = false;
-var resultCompiledSearch = null;
-
-/* set up the event handlers */
-if( findCurrentPage() == MRESULT || findCurrentPage() == RRESULT ) {
-	G.evt.result.hitCountReceived.push(resultSetHitInfo);
-	G.evt.result.recordReceived.push(resultDisplayRecord, resultAddCopyCounts);
-	G.evt.result.copyCountsReceived.push(resultDisplayCopyCounts);
-	G.evt.result.allRecordsReceived.push( function(){unHideMe($('result_info_2'))}, fetchOpenLibraryLinks, fetchGoogleBooksLink, fetchChiliFreshReviews);
-
-	attachEvt('result','lowHits',resultLowHits);
-	attachEvt('result','zeroHits',resultZeroHits);
-	attachEvt( "common", "locationUpdated", resultSBSubmit );
-	/* do this after we have ID's so the rank for mr pages will be correct */
-	attachEvt("result", "preCollectRecords", resultPaginate);
-}
-
-function resultSBSubmit(){searchBarSubmit();}
-
-/* returns the last 'index' postion ocurring in this page */
-function resultFinalPageIndex() {
-	if(getHitCount() < (getOffset() + getDisplayCount())) 
-		return getHitCount() - 1;
-	return getOffset() + getDisplayCount() - 1;
-}
-
-
-
-
-/* generic search method */
-function resultCollectSearchIds( type, method, handler ) {
-
-	var sort		= (getSort() == SORT_TYPE_REL) ? null : getSort(); 
-	var sortdir = (sort) ? ((getSortDir()) ? getSortDir() : SORT_DIR_ASC) : null;
-
-	var item_type;
-	var item_form;
-	var args = {};
-
-	if( type ) {
-		var form = parseForm(getForm());
-		item_type = form.item_type;
-		item_form = form.item_form;
-
-	} else {
-		item_type = (getItemType()) ? getItemType().split(/,/) : null;
-		item_form = (getItemForm()) ? getItemForm().split(/,/) : null;
-	}
-
-	var limit = (resultFetchAllRecords) ? 1000 : getDisplayCount();
-
-	if( getOffset() > 0 ) {
-		if( getHitCount() > 0 && (getOffset() + getDisplayCount()) > getHitCount() ) 
-			limit = getHitCount() - getOffset();
-	}
-
-	var lasso = getLasso();
-
-	if (lasso) args.org_unit = -lasso;
-	else args.org_unit = getLocation();
-
-	args.depth    = getDepth();
-	args.limit    = limit;
-	args.offset   = getOffset();
-	args.visibility_limit = 3000;
-    args.default_class = getStype();
-
-	if(sort) args.sort = sort;
-	if(sortdir) args.sort_dir = sortdir;
-	if(item_type) args.item_type	= item_type;
-	if(item_form) args.item_form	= item_form;
-    if(getAvail()) args.available = 1;
-
-
-	if(getFacet()) args.facets  = getFacet();
-
-	if(getAudience()) args.audience  = getAudience().split(/,/);
-	if(getLitForm()) args.lit_form	= getLitForm().split(/,/);
-	if(getLanguage()) args.language	= getLanguage().split(/,/);
-	if(getBibLevel()) args.bib_level	= getBibLevel().split(/,/);
-	if(getCopyLocs()) args.locations	= getCopyLocs().split(/,/);
-    if(getPubdBefore()) args.before = getPubdBefore();
-    else if(getPubdAfter()) args.after = getPubdAfter();
-    else if(getPubdBetween()) args.between = getPubdBetween().split(/,/);
-
-	_debug('Search args: ' + js2JSON(args));
-	_debug('Raw query: ' + getTerm());
-
-	var my_ou = findOrgUnit(args.org_unit);
-	if (my_ou && my_ou.shortname()) {
-		var atomfeed = "/opac/extras/opensearch/1.1/" + my_ou.shortname() + "/atom-full/" + getStype() + '?searchTerms=' + getTerm();
-		if (args.facets) { atomfeed += ' ' + args.facets; }
-		if (sort) { atomfeed += '&searchSort=' + sort; }
-		if (sortdir) { atomfeed += '&searchSortDir=' + sortdir; }
-		dojo.create('link', {"rel":"alternate", "href":atomfeed, "type":"application/atom+xml"}, dojo.query('head')[0]);
-	}
-
-	var req = new Request(method, args, getTerm(), 1);
-	req.callback(handler);
-	req.send();
-}
-
-
-
-
-
-/* set the search result info, number of hits, which results we're 
-	displaying, links to the next/prev pages, etc. */
-function resultSetHitInfo() { 
-
-	var lasso = getLasso();
-	if (!lasso) {
-		/* tell the user where the results are coming from */
-		var baseorg = findOrgUnit(getLocation());
-		var depth = getDepth();
-		var mydepth = findOrgDepth(baseorg);
-		if( findOrgDepth(baseorg) != depth ) {
-			var tmporg = baseorg;
-			while( mydepth > depth ) {
-				mydepth--;
-				tmporg = findOrgUnit(tmporg.parent_ou());
-			}
-			unHideMe($('including_results_for'));
-			$('including_results_location').appendChild(text(tmporg.name()));
-		}
-	}
-
-
-	try{searchTimer.stop()}catch(e){}
-
-	//if( findCurrentPage() == MRESULT ) {
-	if( findCurrentPage() == MRESULT || 
-
-		(findCurrentPage() == RRESULT &&
-			(
-				getRtype() == RTYPE_TITLE ||
-				getRtype() == RTYPE_AUTHOR ||
-				getRtype() == RTYPE_SUBJECT ||
-				getRtype() == RTYPE_SERIES ||
-				getRtype() == RTYPE_KEYWORD 
-			)
-
-		) ) {
-
-		if(getHitCount() <= lowHitCount && getTerm())
-			runEvt('result', 'lowHits');
-	}
-
-	if(getHitCount() == 0) {
-		runEvt('result', 'zeroHits');
-		return;
-	}
-
-
-	var pages = getHitCount() / getDisplayCount();
-	if(pages % 1) pages = parseInt(pages) + 1;
-
-	
-
-	var cpage = (getOffset()/getDisplayCount()) + 1;
-
-	G.ui.result.current_page.appendChild(text(cpage));
-	G.ui.result.num_pages.appendChild(text(pages + ")")); /* the ) is dumb */
-
-	$('current_page2').appendChild(text(cpage));
-	$('num_pages2').appendChild(text(pages + ")")); /* the ) is dumb */
-
-	/* set the offsets */
-	var offsetEnd = getDisplayCount() + getOffset();  
-	if( getDisplayCount() > (getHitCount() - getOffset()))  
-		offsetEnd = getHitCount();
-
-	G.ui.result.offset_end.appendChild(text(offsetEnd));
-	G.ui.result.offset_start.appendChild(text(getOffset() + 1));
-
-	$('offset_end2').appendChild(text(offsetEnd));
-	$('offset_start2').appendChild(text(getOffset() + 1));
-
-	G.ui.result.result_count.appendChild(text(getHitCount()));
-	unHideMe(G.ui.result.info);
-
-	$('result_count2').appendChild(text(getHitCount()));
-	unHideMe($('result_info_div2'));
-}
-
-function resultLowHits() {
-	showCanvas();
-	unHideMe($('result_low_hits'));
-	if(getHitCount() > 0)
-		unHideMe($('result_low_hits_msg'));
-
-    var words = [];
-    for(var key in resultCompiledSearch.searches) 
-        words.push(resultCompiledSearch.searches[key].term);
-
-	var sreq = new Request(CHECK_SPELL, words.join(' '));
-	sreq.callback(resultSuggestSpelling);
-	sreq.send();
-
-    for(var key in resultCompiledSearch.searches) {
-		var areq = new Request(FETCH_CROSSREF, key, resultCompiledSearch.searches[key].term);
-		areq.callback(resultLowHitXRef);
-		areq.send();
-	}
-
-	if( !(getForm() == null || getForm() == 'all' || getForm() == "") ) {
-		var a = {};
-		a[PARAM_FORM] = "all";
-		$('low_hits_remove_format_link').setAttribute('href',buildOPACLink(a));
-		unHideMe($('low_hits_remove_format'));
-	}
-
-	resultSuggestSearchClass();
-
-	if(getTerm()) resultExpandSearch(); /* advanced search */
-}
-
-var lowHitsXRefSet = {};
-var lowHitsXRefLink;
-var lowHitsXRefLinkParent;
-function resultLowHitXRef(r) {
-	if(!lowHitsXRefLink){
-		lowHitsXRefLinkParent = $('low_hits_xref_link').parentNode;
-		lowHitsXRefLink = lowHitsXRefLinkParent.removeChild($('low_hits_xref_link'));
-	}
-	var res = r.getResultObject();
-	var arr = res.from;
-	arr.concat(res.also);
-	if(arr && arr.length > 0) {
-		unHideMe($('low_hits_cross_ref'));
-		var word;
-		var c = 0;
-		while( word = arr.shift() ) {
-
-            if (lowHitsXRefSet[word] == 1) continue;
-            lowHitsXRefSet[word] = 1;
-
-			if(c++ > 20) break;
-			var a = {};
-			a[PARAM_TERM] = word;
-			var template = lowHitsXRefLink.cloneNode(true);
-			template.setAttribute('href',buildOPACLink(a));
-			template.appendChild(text(word));
-			lowHitsXRefLinkParent.appendChild(template);
-			lowHitsXRefLinkParent.appendChild(text(' '));
-		}
-	}
-}
-
-function resultZeroHits() {
-	showCanvas();
-	unHideMe($('result_low_hits'));
-	unHideMe($('result_zero_hits_msg'));
-	//if(getTerm()) resultExpandSearch(); /* advanced search */
-}
-
-function resultExpandSearch() {
-	var top = findOrgDepth(globalOrgTree);
-	if(getDepth() == top) return;
-	unHideMe($('low_hits_expand_range'));
-	var par = $('low_hits_expand_link').parentNode;
-	var template = par.removeChild($('low_hits_expand_link'));
-
-	var bottom = getDepth();
-	while( top < bottom ) {
-		var a = {};
-		a[PARAM_DEPTH] = top;
-		var temp = template.cloneNode(true);
-		temp.appendChild(text(findOrgTypeFromDepth(top).opac_label()))
-		temp.setAttribute('href',buildOPACLink(a));
-		par.appendChild(temp);
-		top++;
-	}
-}
-
-function resultSuggestSearchClass() {
-	var stype = getStype();
-	if(stype == STYPE_KEYWORD) return;
-	var a = {}; var ref;
-	unHideMe($('low_hits_search_type'));
-	if(stype != STYPE_TITLE) {
-		ref = $('low_hits_title_search');
-		unHideMe(ref);
-		a[PARAM_STYPE] = STYPE_TITLE;
-		ref.setAttribute('href',buildOPACLink(a));
-	}
-	if(stype != STYPE_AUTHOR) {
-		ref = $('low_hits_author_search');
-		unHideMe(ref);
-		a[PARAM_STYPE] = STYPE_AUTHOR;
-		ref.setAttribute('href',buildOPACLink(a));
-	}
-	if(stype != STYPE_SUBJECT) {
-		ref = $('low_hits_subject_search');
-		unHideMe(ref);
-		a[PARAM_STYPE] = STYPE_SUBJECT;
-		ref.setAttribute('href',buildOPACLink(a));
-	}
-	if(stype != STYPE_KEYWORD) {
-		ref = $('low_hits_keyword_search');
-		unHideMe(ref);
-		a[PARAM_STYPE] = STYPE_KEYWORD;
-		ref.setAttribute('href',buildOPACLink(a));
-	}
-	if(stype != STYPE_SERIES) {
-		ref = $('low_hits_series_search');
-		unHideMe(ref);
-		a[PARAM_STYPE] = STYPE_SERIES;
-		ref.setAttribute('href',buildOPACLink(a));
-	}
-}
-
-function resultSuggestSpelling(r) {
-	var res = r.getResultObject();
-	var phrase = getTerm();
-	var words = phrase.split(/ /);
-
-	var newterm = "";
-
-	for( var w = 0; w < words.length; w++ ) {
-		var word = words[w];
-		var blob = grep(res, function(i){return (i.word == word);});
-		if( blob ) blob = blob[0];
-		else continue;
-		if( blob.word == word ) {
-			if( !blob.found && blob.suggestions && blob.suggestions[0] ) {
-				newterm += " " + blob.suggestions[0];
-				unHideMe($('did_you_mean'));
-			} else {
-				newterm += " " + word;
-			}
-		}
-	}
-
-	var arg = {};
-	arg[PARAM_TERM] = newterm;
-	$('spell_check_link').setAttribute('href', buildOPACLink(arg));
-	$('spell_check_link').appendChild(text(newterm));
-}
-
-
-function resultPaginate() {
-	var o = getOffset();
-
-	if( !(  ((o) + getDisplayCount()) >= getHitCount()) ) {
-
-		var args = {};
-		args[PARAM_OFFSET]	= o + getDisplayCount();
-		args[PARAM_SORT]		= SORT;
-		args[PARAM_SORT_DIR] = SORT_DIR;
-		args[PARAM_RLIST]		= new CGI().param(PARAM_RLIST);
-
-		G.ui.result.next_link.setAttribute("href", buildOPACLink(args)); 
-		addCSSClass(G.ui.result.next_link, config.css.result.nav_active);
-
-		$('next_link2').setAttribute("href", buildOPACLink(args)); 
-		addCSSClass($('next_link2'), config.css.result.nav_active);
-
-		args[PARAM_OFFSET] = getHitCount() - (getHitCount() % getDisplayCount());
-
-		/* when hit count is divisible by display count, we have to adjust */
-		if( getHitCount() % getDisplayCount() == 0 ) 
-			args[PARAM_OFFSET] -= getDisplayCount();
-
-        /*
-		G.ui.result.end_link.setAttribute("href", buildOPACLink(args)); 
-		addCSSClass(G.ui.result.end_link, config.css.result.nav_active);
-
-		$('end_link2').setAttribute("href", buildOPACLink(args)); 
-		addCSSClass($('end_link2'), config.css.result.nav_active);
-        */
-	}
-
-	if( o > 0 ) {
-
-		var args = {};
-		args[PARAM_SORT]		= SORT;
-		args[PARAM_SORT_DIR] = SORT_DIR;
-		args[PARAM_RLIST]		= new CGI().param(PARAM_RLIST);
-
-		args[PARAM_OFFSET] = o - getDisplayCount();
-		G.ui.result.prev_link.setAttribute( "href", buildOPACLink(args)); 
-		addCSSClass(G.ui.result.prev_link, config.css.result.nav_active);
-
-		$('prev_link2').setAttribute( "href", buildOPACLink(args)); 
-		addCSSClass($('prev_link2'), config.css.result.nav_active);
-
-		args[PARAM_OFFSET] = 0;
-		G.ui.result.home_link.setAttribute( "href", buildOPACLink(args)); 
-		addCSSClass(G.ui.result.home_link, config.css.result.nav_active);
-
-		$('search_home_link2').setAttribute( "href", buildOPACLink(args)); 
-		addCSSClass($('search_home_link2'), config.css.result.nav_active);
-	}
-
-	if(getDisplayCount() < getHitCount()) {
-		unHideMe($('start_end_links_span'));
-		unHideMe($('start_end_links_span2'));
-   }
-
-	showCanvas();
-	try{searchTimer.stop()}catch(e){}
-}
-
-function buildunAPISpan (span, type, id) {
-	var cgi = new CGI();
-	var d = new Date();
-
-	addCSSClass(span,'unapi-id');
-
-	span.setAttribute(
-		'title',
-		'tag:' + cgi.server_name + ',' +
-			d.getFullYear() +
-			':' + type + '/' + id
-	);
-}
-
-function unhideGoogleBooksLink (data) {
-    for (var i = 0; i < data.items.length; i++) {
-        var item = data.items[i];
-
-        var gbspan;
-        for (var j = 0; j < item.volumeInfo.industryIdentifiers.length; j++) {
-            // XXX: As of 11-17-2011, some items do not return their own ISBN
-            // as an identifier, so this code fails.  For example:
-            // https://www.googleapis.com/books/v1/volumes?q=isbn:0743243560&callback=unhideGoogleBooksLink
-            // It seems the only way around this would be doing a separate
-            // search for each result rather than one search for the whole
-            // page.  Informal testing seems to indicate that these books
-            // are generally Google-unfriendly (no previews, not embeddable),
-            // so we will live without them for now.
-            var ident = item.volumeInfo.industryIdentifiers[j].identifier;
-            gbspan = $n(document.documentElement, 'googleBooksLink-' + ident);
-            if (gbspan) break;
-        }
-        if (!gbspan) continue;
-
-        var gba = $n(gbspan, "googleBooks-link");
-
-        gba.setAttribute(
-            'href',
-            item.volumeInfo.infoLink
-            // XXX: we might consider constructing the above link ourselves,
-            // as the link provided populates the search box with our original
-            // multi-item search.  Something like:
-            // 'http://books.google.com/books?id=' + item.id
-            // Postive: cleaner display
-            // Negative: more fragile (link format subject to change; likely
-            // enough to matter?)
-        );
-        removeCSSClass( gbspan, 'hide_me' );
-    }
-}
-
-/* display the record info in the record display table 'pos' is the 
-		zero based position the record should have in the display table */
-function resultDisplayRecord(rec, pos, is_mr) {
-
-    fieldmapper.IDL.load(['mvr']);
-	if(rec == null) rec = new mvr(); /* so the page won't die if there was an error */
-	recordsHandled++;
-	recordsCache.push(rec);
-
-	var r = table.rows[pos + 1];
-    var currentISBN = cleanISBN(rec.isbn());
-
-    if (currentISBN) {
-        isbnList.push(currentISBN);
-        if (OpenLibraryLinks) {
-            var olspan = $n(r, 'openLibraryLink');
-            olspan.setAttribute('name', olspan.getAttribute('name') + 
-                '-' + currentISBN
-            );
-        }
-
-        if (googleBooksLink) {
-            var gbspan = $n(r, "googleBooksLink");
-            // Google never has dashes in the ISBN, records sometimes do;
-            // remove them to match results list
-            // XXX: consider making part of cleanISBN(), or we can work around
-            // this if we move to one request per record
-            gbspan.setAttribute(
-                'name',
-                gbspan.getAttribute('name') + '-' + currentISBN.toString().replace(/-/g,"")
-            );
-
-        }
-    }
-
-    if (currentISBN && chilifresh && chilifresh != '(none)') {
-        var cfrow = $n(r, "chilifreshReview");
-        if (cfrow) {
-            removeCSSClass( cfrow, 'hide_me' );
-        }
-        var cflink = $n(r, "chilifreshReviewLink");
-        if (cflink) {
-            cflink.setAttribute(
-                'id',
-                'isbn_' + currentISBN
-            );
-        }
-        var cfdiv = $n(r, "chilifreshReviewResult");
-        if (cfdiv) {
-            cfdiv.setAttribute(
-                'id',
-                'chili_review_' + currentISBN
-            )
-        }
-    }
-
-/*
-	try {
-		var rank = parseFloat(ranks[pos + getOffset()]);
-		rank		= parseInt( rank * 100 );
-		var relspan = $n(r, "relevancy_span");
-		relspan.appendChild(text(rank));
-		unHideMe(relspan.parentNode);
-	} catch(e){ }
-*/
-
-    var pic = $n(r, config.names.result.item_jacket);
-    if (rec.doc_id()) {
-        pic.setAttribute("src", buildJacketSrc(rec.doc_id()));
-    } else {
-        pic.setAttribute("src", "/opac/images/blank.png");
-    }
-
-	var title_link = $n(r, config.names.result.item_title);
-	var author_link = $n(r, config.names.result.item_author);
-
-	var onlyrec;
-	if( is_mr )  {
-		onlyrec = onlyrecord[ getOffset() + pos ];
-		if(onlyrec) {
-			buildunAPISpan($n(r,'unapi'), 'biblio-record_entry', onlyrec);
-
-			var args = {};
-			args.page = RDETAIL;
-			args[PARAM_OFFSET] = 0;
-			args[PARAM_RID] = onlyrec;
-			args[PARAM_MRID] = rec.doc_id();
-			pic.parentNode.setAttribute("href", buildOPACLink(args));
-			title_link.setAttribute("href", buildOPACLink(args));
-			title_link.appendChild(text(normalize(truncate(rec.title(), 65))));
-
-		} else {
-			buildunAPISpan($n(r,'unapi'), 'metabib-metarecord', rec.doc_id());
-
-			buildTitleLink(rec, title_link); 
-			var args = {};
-			args.page = RRESULT;
-			args[PARAM_OFFSET] = 0;
-			args[PARAM_MRID] = rec.doc_id();
-			pic.parentNode.setAttribute("href", buildOPACLink(args));
-		}
-
-		unHideMe($n(r,'place_hold_span'));
-		$n(r,'place_hold_link').onclick = function() { resultDrawHoldsWindow(rec.doc_id(), 'M'); }
-            
-
-	} else {
-		onlyrec = rec.doc_id();
-		buildunAPISpan($n(r,'unapi'), 'biblio-record_entry', rec.doc_id());
-
-		buildTitleDetailLink(rec, title_link); 
-		var args = {};
-		args.page = RDETAIL;
-		args[PARAM_OFFSET] = 0;
-		args[PARAM_RID] = rec.doc_id();
-		pic.parentNode.setAttribute("href", buildOPACLink(args));
-
-		unHideMe($n(r,'place_hold_span'));
-		$n(r,'place_hold_link').onclick = function() { resultDrawHoldsWindow(rec.doc_id(), 'T'); }
-	}
-
-	buildSearchLink(STYPE_AUTHOR, rec.author(), author_link);
-
-	if(! is_mr ) {
-	
-		if(!isNull(rec.edition()))	{
-			unHideMe( $n(r, "result_table_extra_span"));
-			$n(r, "result_table_edition_span").appendChild( text( rec.edition()) );
-		}
-		if(!isNull(rec.pubdate())) {
-			unHideMe( $n(r, "result_table_extra_span"));
-			unHideMe($n(r, "result_table_pub_span"));
-			$n(r, "result_table_pub_span").appendChild( text( rec.pubdate() ));
-		}
-		if(!isNull(rec.publisher()) ) {
-			unHideMe( $n(r, "result_table_extra_span"));
-			unHideMe($n(r, "result_table_pub_span"));
-			$n(r, "result_table_pub_span").appendChild( text( " " + rec.publisher() ));
-		}
-
-		if(!isNull(rec.physical_description()) ) {
-			unHideMe( $n(r, "result_table_extra_span"));
-			var t = " " + rec.physical_description();
-			//$n(r, "result_table_phys_span").appendChild( text(t.replace(/:.*/g,'')));
-			$n(r, "result_table_phys_span").appendChild( text(t));
-		}
-
-	}
-
-	resultBuildFormatIcons( r, rec, is_mr );
-
-	var bt_params = {
-		sync			: false,
-		root			: r,
-		subObjectLimit  : 10,
-		org_unit		: findOrgUnit(getLocation()).shortname(),
-		depth			: getDepth()
-	};
-
-	if (!is_mr) {
-		bt_params = dojo.mixin( bt_params, { record : onlyrec } );
-	} else {
-		bt_params = dojo.mixin( bt_params, { metarecord : onlyrec } );
-	}
-
-	if (findOrgType(findOrgUnit(getLocation()).ou_type()).can_have_vols())
-		unHideMe($n(r,'local_callnumber_list'));
-
-	new openils.BibTemplate( bt_params ).render();
-
-	unHideMe(r);
-	
-	runEvt("result", "recordDrawn", rec.doc_id(), title_link);
-
-	/*
-	if(resultPageIsDone())  {
-		runEvt('result', 'allRecordsReceived', recordsCache);
-	}
-	*/
-}
-
-function resultDrawHoldsWindow(hold_target, hold_type) {
-    var src = location.href;
-
-    if(forceLoginSSL && src.match(/^http:/)) {
-
-        src = src.replace(/^http:/, 'https:');
-
-        if(src.match(/&hold_target=/)) {
-            src.replace(/&hold_target=(\d+)/, hold_target);
-
-        } else {
-            src += '&hold_target=' + hold_target;
-        }
-
-        location.href = src;
-
-    } else {
-        holdsDrawEditor({record:hold_target, type:hold_type});
-    }
-}
-
-
-
-function _resultFindRec(id) {
-	for( var i = 0; i != recordsCache.length; i++ ) {
-		var rec = recordsCache[i];
-		if( rec && rec.doc_id() == id )
-			return rec;
-	}
-	return null;
-}
-
-
-function resultBuildFormatIcons( row, rec, is_mr ) {
-
-	var ress = rec.types_of_resource();
-
-	for( var i in ress ) {
-
-		var res = ress[i];
-		if(!res) continue;
-
-		var link = $n(row, res + "_link");
-		link.title = res;
-		var img = link.getElementsByTagName("img")[0];
-		removeCSSClass( img, config.css.dim );
-
-		var f = getForm();
-		if( f != "all" ) {
-			if( f == modsFormatToMARC(res) ) 
-				addCSSClass( img, "dim2_border");
-		}
-
-		var args = {};
-		args[PARAM_OFFSET] = 0;
-
-		if(is_mr) {
-			args.page = RRESULT;
-			args[PARAM_TFORM] = modsFormatToMARC(res);
-			args[PARAM_MRID] = rec.doc_id();
-
-		} else {
-			args.page = RDETAIL
-			args[PARAM_RID] = rec.doc_id();
-		}
-
-		link.setAttribute("href", buildOPACLink(args));
-
-	}
-}
-
-function fetchOpenLibraryLinks() {
-    if (isbnList.length > 0 && OpenLibraryLinks) {
-        /* OpenLibrary supports a number of different identifiers:
-         * ISBN: isbn:<isbn>
-         * LCCN: lccn:<lccn>
-         * OpenLibrary ID: olid:<openlibrary-ID>
-         *
-         * We'll just fire off ISBNs for now.
-         */
-
-        var isbns = '';
-        dojo.forEach(isbnList, function(isbn) {
-            isbns += 'isbn:' + isbn + '|';
-        });
-        isbns = isbns.replace(/.$/, '');
-    }
-
-    dojo.xhrGet({
-        "url": "/opac/extras/ac/proxy/json/" + isbns,
-        "handleAs": "json",
-        "load": function (data) { renderOpenLibraryLinks(data); }
-    });
-
-}
-
-function renderOpenLibraryLinks(response) {
-    var ol_ebooks = {};
-
-    /* Iterate over each identifier we requested */
-    for (var item_id in response) {
-
-        var isbn = item_id.replace(/^isbn:/, '');
-        /* Iterate over each matching item; OpenLibrary supplies access info:
-         *  * match: "exact" or "similar"
-         *  * status: "full access" or "lendable"
-         */
-        dojo.forEach(response[item_id].items, function(item) {
-            ol_ebooks[isbn] = {};
-            if (item.match == 'exact') {
-                if (item.status == 'full access') {
-                    ol_ebooks[isbn]['exact_full'] = item.itemURL;
-                } else {
-                    ol_ebooks[isbn]['exact_lendable'] = item.itemURL;
-                }
-            } else {
-                if (item.status == 'full access') {
-                    ol_ebooks[isbn]['similar_full'] = item.itemURL;
-                } else {
-                    ol_ebooks[isbn]['similar_lendable'] = item.itemURL;
-                }
-            }
-        });
-
-        /* If there are no books to read or borrow, move on */
-        if (!ol_ebooks[isbn]) {
-            continue;
-        }
-
-        /* Now populate the results page with our ebook goodness*/
-        /* Go for the jugular - exact match with full access */
-        if (ol_ebooks[isbn]['exact_full']) {
-            createOpenLibraryLink(
-                isbn, ol_ebooks[isbn]['exact_full'], 'Read online'
-            );
-            continue;
-        }
-
-        /* Fall back to slightly less palatable options */
-        else if (ol_ebooks[isbn]['exact_lendable']) {
-            createOpenLibraryLink(
-                isbn, ol_ebooks[isbn]['exact_lendable'], 'Borrow online'
-            );
-        }
-
-        if (ol_ebooks[isbn]['similar_full']) {
-            createOpenLibraryLink(
-                isbn, ol_ebooks[isbn]['similar_full'], 'Read similar online'
-            );
-        } else if (ol_ebooks[isbn]['similar_lendable']) {
-            createOpenLibraryLink(
-                isbn, ol_ebooks[isbn]['similar_lendable'], 'Borrow similar online'
-            );
-        }
-    }
-}
-
-function createOpenLibraryLink(isbn, url, text) {
-    var ol_span = $n(document.documentElement, 'openLibraryLink-' + isbn);
-
-    var ol_a_span = dojo.create('a', {
-            "href": url,
-            "class": "classic_link"
-        }, ol_span
-    );
-    dojo.create('img', {
-            "src": "/opac/images/openlibrary.gif"
-        }, ol_a_span
-    );
-    dojo.create('br', null, ol_a_span);
-    ol_a_span.appendChild(dojo.doc.createTextNode(text));
-    dojo.removeClass(ol_span, 'hide_me');
-}
-
-function fetchGoogleBooksLink () {
-    if (isbnList.length > 0 && googleBooksLink) {
-        var scriptElement = document.createElement("script");
-        scriptElement.setAttribute("id", "jsonScript");
-        scriptElement.setAttribute("src",
-            "https://www.googleapis.com/books/v1/volumes?q=" +
-            encodeURIComponent('isbn:' + isbnList.join(' | isbn:')) + "&callback=unhideGoogleBooksLink");
-        scriptElement.setAttribute("type", "text/javascript");
-        // make the request to Google Book Search
-        document.documentElement.firstChild.appendChild(scriptElement);
-    }
-}
-
-function fetchChiliFreshReviews() {
-    if (chilifresh && chilifresh != '(none)') {
-        try { chili_init(); } catch(E) { console.log(E + '\n'); }
-    }
-}
-
-function resultPageIsDone(pos) {
-
-	return (recordsHandled == getDisplayCount() 
-		|| recordsHandled + getOffset() == getHitCount());
-}
-
-var resultCCHeaderApplied = false;
-
-/* -------------------------------------------------------------------- */
-/* dynamically add the copy count rows based on the org type 'countsrow' 
-	is the row into which we will add TD's to hold the copy counts 
-	This code generates copy count cells with an id of
-	'copy_count_cell_<depth>_<pagePosition>'  */
-function resultAddCopyCounts(rec, pagePosition) {
-
-	var r = table.rows[pagePosition + 1];
-	var countsrow = $n(r, config.names.result.counts_row );
-	var ccell = $n(countsrow, config.names.result.count_cell);
-
-	var nodes = orgNodeTrail(findOrgUnit(getLocation()));
-	var start_here = 0;
-	var orgHiding = checkOrgHiding();
-	if (orgHiding) {
-		for (var i = 0; i < nodes.length; i++) {
-			if (orgHiding.depth == findOrgDepth(nodes[i])) {
-				start_here = i;
-			}
-		}
-	}
-
-	var node = nodes[start_here];
-	var type = findOrgType(node.ou_type());
-	ccell.id = "copy_count_cell_" + type.depth() + "_" + pagePosition;
-	ccell.title = type.opac_label();
-	//addCSSClass(ccell, config.css.result.cc_cell_even);
-
-	var lastcell = ccell;
-	var lastheadcell = null;
-
-	var cchead = null;
-	var ccheadcell = null;
-	if(!resultCCHeaderApplied && !getLasso()) {
-		ccrow = $('result_thead_row');
-		ccheadcell =  ccrow.removeChild($n(ccrow, "result_thead_ccell"));
-		var t = ccheadcell.cloneNode(true);
-		lastheadcell = t;
-		t.appendChild(text(type.opac_label()));
-		ccrow.appendChild(t);
-		resultCCHeaderApplied = true;
-	}
-
-	if(nodes[start_here+1]) {
-
-		var x = start_here+1;
-		var d = findOrgDepth(nodes[start_here+1]);
-		var d2 = findOrgDepth(nodes[nodes.length -1]);
-
-		for( var i = d; i <= d2 ; i++ ) {
-	
-			ccell = ccell.cloneNode(true);
-
-			//if((i % 2)) removeCSSClass(ccell, "copy_count_cell_even");
-			//else addCSSClass(ccell, "copy_count_cell_even");
-
-			var node = nodes[x++];
-			var type = findOrgType(node.ou_type());
-	
-			ccell.id = "copy_count_cell_" + type.depth() + "_" + pagePosition;
-			ccell.title = type.opac_label();
-			countsrow.insertBefore(ccell, lastcell);
-			lastcell = ccell;
-
-			if(ccheadcell) {
-				var t = ccheadcell.cloneNode(true);
-				t.appendChild(text(type.opac_label()));
-				ccrow.insertBefore(t, lastheadcell);
-				lastheadcell = t;
-			}
-		}
-	}
-
-	unHideMe($("search_info_table"));
-}
-
-/* collect copy counts for a record using method 'methodName' */
-function resultCollectCopyCounts(rec, pagePosition, methodName) {
-	if(rec == null || rec.doc_id() == null) return;
-
-	var loc = getLasso();
-	if (loc) loc = -loc;
-	else loc= getLocation();
-
-	var req = new Request(methodName, loc, rec.doc_id(), getForm() );
-	req.request.userdata = [ rec, pagePosition ];
-	req.callback(resultHandleCopyCounts);
-	req.send();
-}
-
-function resultHandleCopyCounts(r) {
-	runEvt('result', 'copyCountsReceived', r.userdata[0], r.userdata[1], r.getResultObject()); 
-}
-
-
-/* XXX Needs to understand Lasso copy counts... */
-/* display the collected copy counts */
-function resultDisplayCopyCounts(rec, pagePosition, copy_counts) {
-	if(copy_counts == null || rec == null) return;
-
-	if (getLasso()) {
-		var copy_counts_lasso = {
-			transcendant : null,
-			count : 0,
-			unshadow : 0,
-			available : 0,
-			depth : -1,
-			org_unit : getLasso()
-		};
-
-		for (var i in copy_counts) {
-			copy_counts_lasso.transcendant = copy_counts[i].transcendant;
-			copy_counts_lasso.count += parseInt(copy_counts[i].count);
-			copy_counts_lasso.unshadow += parseInt(copy_counts[i].unshadow);
-			copy_counts_lasso.available += parseInt(copy_counts[i].available);
-		}
-
-		copy_counts = [ copy_counts_lasso ];
-	}
-
-	var i = 0;
-	while(copy_counts[i] != null) {
-		var cell = $("copy_count_cell_" + i +"_" + pagePosition);
-		if (cell) {
-			var cts = copy_counts[i];
-			cell.appendChild(text(cts.available + " / " + cts.count));
-
-			if(isXUL()) {
-				/* here we style opac-invisible records for xul */
-
-				if( cts.depth == 0 ) {
-					if(cts.transcendant == null && cts.unshadow == 0) {
-						_debug("found an opac-shadowed record: " + rec.doc_id());
-						var row = cell.parentNode.parentNode.parentNode.parentNode.parentNode; 
-						if( cts.count == 0 ) 
-							addCSSClass( row, 'no_copies' );
-						else 
-							addCSSClass( row, 'shadowed' );
-					}
-				}
-			}
-		}
-		i++;
-	}
-}
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/rresult.js b/Open-ILS/web/opac/skin/default/js/rresult.js
deleted file mode 100644
index 6dccc49..0000000
--- a/Open-ILS/web/opac/skin/default/js/rresult.js
+++ /dev/null
@@ -1,359 +0,0 @@
-var records = new Array();
-var table;
-var rowtemplate;
-var rresultLimit = 200;
-var resultFacetKey;
-
-var rresultIsPaged = false;
-
-function rresultUnload() { removeChildren(table); table = null;}
-
-attachEvt("common", "unload", rresultUnload);
-attachEvt("common", "run", rresultDoSearch);
-attachEvt("result", "idsReceived", rresultCollectRecords); 
-attachEvt("result", "recordDrawn", rresultLaunchDrawn); 
-
-hideMe($('copyright_block')); 
-
-function rresultDoSearch() {
-
-	swapCanvas($('loading_alt'));
-
-	table = G.ui.result.main_table;
-	hideMe(G.ui.result.row_template);
-	if( table && table.parentNode ) {
-		while( table.parentNode.rows.length <= (getDisplayCount() +1) ) 
-			hideMe(table.appendChild(G.ui.result.row_template.cloneNode(true)));
-	}
-	rresultCollectIds();
-}
-
-function rresultCollectIds() {
-	var ids;
-
-
-    var holdTarget = new CGI().param('hold_target');
-    if(holdTarget != null) {
-        rresultHandlePlaceHold(holdTarget);
-        return;
-    }
-
-    var rtype = getRtype();
-    if (rtype && rtype.indexOf('|') > -1)
-        rtype = rtype.substring(0,rtype.indexOf('|'));
-
-	switch(rtype) {
-
-		case RTYPE_COOKIE:
-			ids = JSON2js(dojo.cookie(COOKIE_RIDS));
-			_rresultHandleIds( ids, ids.length );
-			break;
-
-		case RTYPE_TITLE:
-		case RTYPE_AUTHOR:
-		case RTYPE_SUBJECT:
-		case RTYPE_SERIES:
-		case RTYPE_KEYWORD:
-			rresultDoRecordSearch();
-			break;
-
-		case RTYPE_MULTI:
-			rresultDoRecordMultiSearch();
-			break;
-			
-		case RTYPE_LIST :
-			rresultHandleList();
-			break;
-
-		case RTYPE_MARC :
-			rresultCollectMARCIds();
-			break;
-
-		case RTYPE_ISBN :
-			rresultCollectISBNIds();
-			break;
-
-		case RTYPE_TCN :
-			rresultCollectTCNIds();
-			break;
-
-		case RTYPE_ISSN :
-			rresultCollectISSNIds();
-			break;
-
-
-		case RTYPE_MRID :
-		case null :
-		case "" :
-		default:
-			var form = rresultGetForm();
-			var args = { format : form, org : getLocation(), depth : rresultGetDepth() };
-
-			var lasso = getLasso();
-			if (lasso) args.org = -lasso;
-
-			var req = new Request(FETCH_RIDS, getMrid(), args);
-			req.callback( rresultHandleRIds );
-			req.send();
-
-			if( rresultGetDepth() != findOrgDepth(globalOrgTree) ) {
-				var link = $('rresult_show_all_link');
-				if(link) {
-					unHideMe($('rresult_show_all'));
-					link.appendChild( text(
-						findOrgType(globalOrgTree.ou_type()).opac_label()));
-				}
-
-			} else {
-				if( rresultGetDepth() != getDepth() ) { /* inside a limited display */
-					var link = $('rresult_show_here_link');
-					if(link) {
-						link.appendChild( text(
-							findOrgType(findOrgUnit(getLocation()).ou_type()).opac_label()));
-						unHideMe($('rresult_show_here'));
-					}
-				}
-			}
-	}
-}
-
-function rresultExpandSearch() {
-	var args = {};
-	args[PARAM_RDEPTH] = findOrgDepth(globalOrgTree);
-	goTo(buildOPACLink(args));
-}
-
-function rresultContractSearch() {
-	var args = {};
-	RDEPTH = null;
-	args[PARAM_OFFSET] = 0;
-	goTo(buildOPACLink(args));
-}
-
-
-function rresultGetDepth() {
-	if( getRdepth() != null) return getRdepth();
-	return getDepth();
-}
-
-
-function rresultGetForm() {
-	var form;
-
-	if(getTform())  /* did the user select a format from the icon list (temporary) */
-		form = (getTform() == 'all') ? null : getTform();
-	else  /* did the use select a format from simple search dropdown */
-		form = (getForm() == 'all') ? null : getForm();
-
-	if(!form) { /* did the user select a format from the advanced search */
-		form = getItemType();
-		var f = getItemForm();
-
-		if(form) {
-			form = form.replace(/,/,'');
-			if(f) form += '-' + f;
-		} else {
-			if(f) form = '-' + f;
-		}
-	}
-
-	return form;
-}
-
-
-function rresultCollectMARCIds() {
-
-	var args			= {};
-	args.searches	= JSON2js(getSearches());
-	args.limit		= 200;
-	args.org_unit	= globalOrgTree.id();
-	args.depth		= 0;
-
-	rresultIsPaged = true;
-	var req = new Request(FETCH_ADV_MARC_MRIDS, args, getDisplayCount(), getOffset());
-	req.callback(rresultHandleRIds);
-	req.request.noretry = true;
-	req.send();
-}
-
-
-function rresultCollectISBNIds() {
-	var req = new Request(FETCH_ADV_ISBN_RIDS, getAdvTerm() );
-	req.callback(
-		function(r) {
-			var blob = r.getResultObject();
-			_rresultHandleIds(blob.ids, blob.count);
-		}
-	);
-	req.send();
-}
-
-function rresultCollectTCNIds() {
-	var req = new Request(FETCH_ADV_TCN_RIDS, getAdvTerm() );
-	req.callback(
-		function(r) {
-			var blob = r.getResultObject();
-			_rresultHandleIds(blob.ids, blob.count);
-		}
-	);
-	req.send();
-}
-
-function rresultCollectISSNIds() {
-	var req = new Request(FETCH_ADV_ISSN_RIDS, getAdvTerm() );
-	req.callback(
-		function(r) {
-			var blob = r.getResultObject();
-			_rresultHandleIds(blob.ids, blob.count);
-		}
-	);
-	req.send();
-}
-
-function rresultHandleList() {
-	var ids = new CGI().param(PARAM_RLIST);
-    var count;
-    if(!dojo.isArray(ids)) {
-        count = 1;
-        ids = [ids];
-    } else {
-        count = ids.length;
-    }
-	if(ids) _rresultHandleIds(ids, count);
-}
-
-var rresultTries = 0;
-function rresultHandleRIds(r) {
-	var res = r.getResultObject();
-
-	if(!res) res = {count:0,ids:[]};
-
-	if( res.count == 0 && rresultTries == 0 && ! r.noretry) {
-
-		rresultTries++;
-		var form = rresultGetForm();
-		var args = { format : form, org : getLocation(), depth : findOrgDepth(globalOrgTree) };
-
-		var lasso = getLasso();
-		if (lasso) args.org = -lasso;
-
-		var req = new Request(FETCH_RIDS, getMrid(), args );
-		req.callback( rresultHandleRIds );
-		req.send();
-		unHideMe($('no_formats'));
-		hideMe($('rresult_show_all'));
-
-	} else {
-
-		_rresultHandleIds(res.ids, res.count);
-	}
-}
-
-function _rresultHandleIds(ids, count) {
-	//var json = js2JSON({ids:ids,count:count});
-	/*
-	dojo.cookie(COOKIE_SRIDS, json, {'expires':1});
-	*/
-
-	HITCOUNT = parseInt(count);
-	runEvt('result', 'hitCountReceived');
-	runEvt('result', 'idsReceived', ids, getOffset());
-}
-
-/*
-function rresultCollectRecords(ids) {
-	runEvt("result", "preCollectRecords");
-	var x = 0;
-	for( var i = getOffset(); i!= getDisplayCount() + getOffset(); i++ ) {
-		if(ids[i] == null) break;
-		var req = new Request(FETCH_RMODS, parseInt(ids[i]));
-		req.callback(rresultHandleMods);
-		req.request.userdata = x++;
-		req.send();
-	}
-}
-*/
-
-
-function rresultCollectRecords(ids, base) {
-	runEvt("result", "preCollectRecords");
-	var x = 0;
-
-    // don't perform rdetail redirect if user was on rdetail and cliecked Back
-    if(findCurrentPage() == RRESULT && isXUL()) {
-        if(ids.length == 1 && !xulG.fromBack) {
-            var args = {};
-            args.page = RDETAIL;
-            args[PARAM_OFFSET] = 0;
-            args[PARAM_RID] = ids[0];
-            location.href = buildOPACLink(args);
-        }
-    }
-
-	if (!base) base = 0;
-	if( rresultIsPaged )  base = 0;
-
-	for( var i = base; i!= getDisplayCount() + base; i++ ) {
-		if(ids[i] == null) break;
-		var req = new Request(FETCH_RMODS, parseInt(ids[i]));
-		req.callback(rresultHandleMods);
-		req.request.userdata = x++;
-		req.send();
-	}
-}
-
-
-var recsReceivedCalled = false;
-function rresultHandleMods(r) {
-	var rec = r.getResultObject();
-	runEvt('result', 'recordReceived', rec, r.userdata, false);
-	resultCollectCopyCounts(rec, r.userdata, FETCH_R_COPY_COUNTS);
-	if(resultPageIsDone() && !recsReceivedCalled) {
-        recsReceivedCalled = true;
-		runEvt('result', 'allRecordsReceived', recordsCache);
-		unHideMe($('copyright_block')); 
-	}
-}
-
-function rresultLaunchDrawn(id, node) {
-	runEvt("rresult", "recordDrawn", id, node);
-}
-
-
-function rresultDoRecordSearch() { 
-	rresultIsPaged = true;
-	resultCollectSearchIds(true, SEARCH_RS_QUERY, rresultFilterSearchResults ); 
-}
-
-function rresultDoRecordMultiSearch() { 
-	rresultIsPaged = true;
-	resultCollectSearchIds(false, SEARCH_RS_QUERY, rresultFilterSearchResults ); 
-}
-
-
-function rresultFilterSearchResults(r) {
-	var result = r.getResultObject();
-	var ids = [];
-	if( result.count > 0 ) {
-		for( var i = 0; i != result.ids.length; i++ ) 
-			ids.push(result.ids[i][0]);
-	}
-
-    resultFacetKey = result.facet_key;
-    resultCompiledSearch = result.compiled_search;
-    dojo.require('dojo.cookie');
-    dojo.cookie(COOKIE_SEARCH, js2JSON(result.compiled_search));
-	_rresultHandleIds( ids, result.count );
-}
-
-
-function rresultHandlePlaceHold(target) {
-    function reload() {
-        location.href = location.href.replace(/&hold_target=\d+/, '');
-    }
-    attachEvt("common", "holdUpdated", reload);
-    attachEvt("common", "holdUpdateCanceled", reload);
-    attachEvt("common", "loginCanceled", reload);
-    holdsDrawEditor({record:target, type: 'T'});
-}
-
diff --git a/Open-ILS/web/opac/skin/default/js/search_bar.js b/Open-ILS/web/opac/skin/default/js/search_bar.js
deleted file mode 100644
index be0239e..0000000
--- a/Open-ILS/web/opac/skin/default/js/search_bar.js
+++ /dev/null
@@ -1,128 +0,0 @@
-var searchBarExpanded = false;
-/* our search selector boxes */
-var _ts, _fs;
-
-
-var isFrontPage = false;
-
-
-G.evt.common.init.push(searchBarInit);
-
-/* if set by the org selector, this will be the location used the
-	next time the search is submitted */
-var newSearchLocation; 
-var newSearchDepth = null;
-
-function autoSuggestInit() {
-    var org_unit_getter = null;
-    var global_flag = fieldmapper.standardRequest(
-        ["open-ils.fielder", "open-ils.fielder.cgf.atomic"], [{
-            "query": {"name": "opac.use_autosuggest"},
-            "fields": ["enabled", "value"]
-        }]
-    ).shift();  /* XXX do we want to use caching here? a cookie? */
-
-    if (!global_flag || !isTrue(global_flag.enabled))
-        return;
-    else if (global_flag.value && global_flag.value.match(/opac_visible/))
-        org_unit_getter = depthSelGetNewLoc;
-
-    dojo.require("openils.widget.AutoSuggest");
-
-    /* See comments in openils.AutoSuggestStore, esp. near the constructor,
-     * to find out what you can control with the store_args object. */
-    var widg = new openils.widget.AutoSuggest(
-        {
-            "store_args": {
-                "org_unit_getter": org_unit_getter
-            },
-            "type_selector": G.ui.searchbar.type_selector,
-            "submitter": searchBarSubmit,
-            "style": {"width": dojo.style("search_box", "width")},
-            "value": ((getTerm() != null) ? getTerm() : "")
-        }, "search_box"
-    );
-
-    G.ui.searchbar.text = widg.textbox;
-    setTimeout(function() { widg.focus(); }, 1000);/* raise chance of success */
-}
-
-function searchBarInit() {
-
-	_ts = G.ui.searchbar.type_selector;
-	_fs = G.ui.searchbar.form_selector;
-
-	try{G.ui.searchbar.text.focus();}catch(e){}
-	G.ui.searchbar.text.onkeydown = 
-		function(evt) {if(userPressedEnter(evt)) { searchBarSubmit(); } };
-	_ts.onkeydown = 
-		function(evt) {if(userPressedEnter(evt)) { searchBarSubmit(); } };
-	_fs.onkeydown = 
-		function(evt) {if(userPressedEnter(evt)) { searchBarSubmit(); } };
-
-	G.ui.searchbar.submit.onclick = searchBarSubmit;
-
-	/* set up the selector objects, etc */
-	G.ui.searchbar.text.value = (getTerm() != null) ? getTerm() : "";
-	if (!isFrontPage) G.ui.searchbar.facets.value = (getFacet() != null) ? getFacet() : "";
-	setSelector(_ts,	getStype());
-	setSelector(_fs,	getItemType());
-
-	depthSelInit();
-
-
-	if(!isFrontPage && (findCurrentPage() != MYOPAC)) {
-		attachEvt('common','depthChanged', searchBarSubmit);
-	}
-
-    if( (limit = $('opac.result.limit2avail')) ) {
-        if(getAvail()) limit.checked = true;
-        if(getSort() && getSortDir()) 
-            setSelector($('opac.result.sort'), getSort()+'.'+getSortDir());
-    }
-
-    autoSuggestInit();
-}
-
-function searchBarSubmit(isFilterSort) {
-
-	var text = G.ui.searchbar.text.value;
-	var facet_text = isFrontPage ? '' : G.ui.searchbar.facets.value;
-
-    if (!isFilterSort) {	
-        clearSearchParams();
-    }
-
-	if(!text || text == "") return;
-
-	var d	= (newSearchDepth != null) ?  newSearchDepth : depthSelGetDepth();
-	if(isNaN(d)) d = 0;
-
-	var args = {};
-
-	if(SHOW_MR_DEFAULT || findCurrentPage() == MRESULT) {
-		args.page				= MRESULT;
-	} else {
-		args.page				= RRESULT;
-		args[PARAM_RTYPE]		= _ts.options[_ts.selectedIndex].value;
-	}
-
-	args[PARAM_STYPE]		= _ts.options[_ts.selectedIndex].value;
-	args[PARAM_TERM]		= text;
-	args[PARAM_FACET]		= facet_text;
-	args[PARAM_LOCATION] = depthSelGetNewLoc();
-	args[PARAM_DEPTH]		= d;
-	args[PARAM_FORM]		= _fs.options[_fs.selectedIndex].value;
-
-    if($('opac.result.limit2avail')) {
-        args[PARAM_AVAIL] = ($('opac.result.limit2avail').checked) ? 1 : '';
-        if( (val = getSelectorVal($('opac.result.sort'))) ) {
-            args[PARAM_SORT] = val.split('.')[0]
-            args[PARAM_SORT_DIR] = val.split('.')[1]
-        }
-    }
-
-	goTo(buildOPACLink(args));
-}
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/sidebar.js b/Open-ILS/web/opac/skin/default/js/sidebar.js
deleted file mode 100644
index 02d18ac..0000000
--- a/Open-ILS/web/opac/skin/default/js/sidebar.js
+++ /dev/null
@@ -1,240 +0,0 @@
-/* set up the colors in the sidebar 
-	Disables/Enables certain components based on various state data */
-
-attachEvt("common", "init", initSideBar);
-attachEvt("common", "init", setSidebarLinks);
-
-attachEvt("common", "unload", sidebarTreesFree );
-
-function prevRResults() {
-	return buildOPACLink({ page : RRESULT });
-}
-
-function prevMResults() {
-	return buildOPACLink({ page : MRESULT });
-}
-
-function initSideBar() {
-	var page = findCurrentPage();
-
-	if( page == MRESULT ) 
-		unHideMe($("sidebar_results_wrapper"));
-
-	if( page == RRESULT ) {
-		unHideMe($("sidebar_results_wrapper"));
-		unHideMe(G.ui.sidebar[MRESULT]);
-		if( getRtype() == RTYPE_MRID )
-			$("sidebar_title_group_results").setAttribute("href", prevMResults());
-		else hideMe($("sidebar_title_group_results").parentNode);
-	}
-
-	if( page == RDETAIL ) {
-		unHideMe($("sidebar_results_wrapper"));
-
-
-		unHideMe(G.ui.sidebar[MRESULT]);
-		if(getRtype())
-			$("sidebar_title_results").setAttribute("href", prevRResults());
-		unHideMe(G.ui.sidebar[RRESULT]);
-
-		if( getRtype() == RTYPE_MRID )
-			$("sidebar_title_group_results").setAttribute("href", prevMResults());
-		else hideMe($("sidebar_title_group_results").parentNode);
-	}
-
-	unHideMe(G.ui.sidebar[page]);
-	addCSSClass(G.ui.sidebar[page], "sidebar_item_active");
-
-	/* if we're logged in, show it and replace the Login link with the Logout link */
-	if(grabUser()) {
-		G.ui.sidebar.username_dest.appendChild(text(G.user.usrname()));
-		unHideMe(G.ui.sidebar.logoutbox);
-		unHideMe(G.ui.sidebar.logged_in_as);
-		hideMe(G.ui.sidebar.loginbox);
-	}
-
-	if(G.ui.sidebar.login) G.ui.sidebar.login.onclick = initLogin;
-	if(G.ui.sidebar.logout) G.ui.sidebar.logout.onclick = doLogout; 
-
-	if(isXUL()) hideMe( G.ui.sidebar.logoutbox );
-}
-
-/* sets up the login ui components */
-var loginBoxVisible = false;
-
-function loginDance() {
-
-	if(doLogin(true)) {
-
-		if(!strongPassword( G.ui.login.password.value ) ) {
-
-            dojo.require('dojo.cookie');
-			dojo.cookie(COOKIE_SES, "");
-			hideMe($('login_table'));
-			unHideMe($('change_pw_table'));
-			$('change_pw_current').focus();
-			$('change_pw_button').onclick = changePassword;
-			setEnterFunc($('change_pw_2'), changePassword);
-
-		} else {
-			loggedInOK();
-		}
-	}
-}
-
-function loggedInOK() {
-	if (!location.href.match(/&show_login=1/)) {
-		showCanvas();
-		G.ui.sidebar.username_dest.appendChild(text(G.user.usrname()));
-		unHideMe(G.ui.sidebar.logoutbox);
-		unHideMe(G.ui.sidebar.logged_in_as);
-		hideMe(G.ui.sidebar.loginbox);
-	}
-	runEvt( 'common', 'loggedIn');
-	
-	var org = G.user.prefs[PREF_DEF_LOCATION];
-	if(!org) org = G.user.home_ou();
-
-	var depth = G.user.prefs[PREF_DEF_DEPTH];
-	if(! ( depth && depth <= findOrgDepth(org)) ) 
-		depth = findOrgDepth(org);
-
-	runEvt( "common", "locationChanged", org, depth);
-	if (location.href.match(/&show_login=1/)) {
-		// this redirect should only happen if the runEvt above didn't already
-		// trigger one
-		goTo(location.href.replace(/&show_login=1/, ''));
-	}
-}
-
-
-function changePassword() {
-
-	var pc = $('change_pw_current').value;
-	var p1 = $('change_pw_1').value;
-	var p2 = $('change_pw_2').value;
-
-	if( p1 != p2 ) {
-		alert($('pw_no_match').innerHTML);
-		return;
-	}
-
-	if(!strongPassword(p2, true) ) return;
-
-	var req = new Request(UPDATE_PASSWORD, G.user.session, p2, pc );
-	req.send(true);
-	if(req.result()) {
-		alert($('pw_update_successful').innerHTML);
-		loggedInOK();
-	}
-}
-
-var pwRegexSetting;
-function strongPassword(pass, alrt) {
-
-    /* first, let's see if there is a configured regex */
-    if(!pwRegexSetting) {
-        var regex = fetchOrgSettingDefault(G.user.home_ou(), 'global.password_regex');
-        if(regex) {
-            if(pass.match(new RegExp(regex))) {
-                return true;
-            } else {
-                if(alrt)
-	               alert($('pw_not_strong').innerHTML);
-                return false;
-            }
-        }
-    }
-
-    /* no regex configured, use the default */
-
-	var good = false;
-
-	do {
-
-		if(pass.length < 7) break;
-		if(!pass.match(/.*\d+.*/)) break;
-		if(!pass.match(/.*[A-Za-z]+.*/)) break;
-		good = true;
-
-	} while(0);
-
-	if(!good && alrt) alert($('pw_not_strong').innerHTML);
-	return good;
-}
-
-function initLogin() {
-    var src = location.href;
-    if(forceLoginSSL && src.match(/^http:/)) {
-        src = src.replace(/^http:/, 'https:');
-        if(!src.match(/&show_login=1/)) {
-            src += '&show_login=1';
-        }
-        goTo(src);
-        return false;
-    }
-
-    swapCanvas(G.ui.login.box);
-    try{G.ui.login.username.focus();} catch(e) {}
-
-    G.ui.login.cancel.onclick = function(evt) { 
-        G.ui.login.form.setAttribute('action',
-            'javascript:showCanvas();runEvt("common", "loginCanceled");'); 
-    };
-
-    if(findCurrentPage() == MYOPAC) {
-        G.ui.login.cancel.onclick = function(evt) { 
-            G.ui.login.form.setAttribute('action','javascript:goHome();'); };
-    }
-}
-
-function setSidebarLinks() {
-	G.ui.sidebar.home_link.setAttribute("href", buildOPACLink({page:HOME}));
-	G.ui.sidebar.advanced_link.setAttribute("href", buildOPACLink({page:ADVANCED}));
-	G.ui.sidebar.myopac_link.setAttribute("href", buildOPACLink({page:MYOPAC}, false, true));
-}
-
-function sidebarTreesFree() {
-/*
-	removeChildren($(subjectSidebarTree.rootid));
-	removeChildren($(authorSidebarTree.rootid));
-	removeChildren($(seriesSidebarTree.rootid));
-	subjectSidebarTree = null;
-	authorSidebarTree = null;
-	seriesSidebarTree = null;
-*/
-}
-
-
-
-
-/* --------------------------------------------------------------------------------- */
-/* Code to support GALILEO links for PINES.  Fails gracefully
-/* --------------------------------------------------------------------------------- */
-attachEvt('common', 'init', buildEGGalLink);
-function buildEGGalLink() {
-
-	/* we're in a lib, nothing to do here */
-	if( getOrigLocation() ) return;
-	if(!$('eg_gal_link')) return;
-
-	//var link = 'http://demo.galib.uga.edu/express?pinesid=';
-	var link = 'http://www.galileo.usg.edu/express?pinesid=';
-	if(grabUser()) {
-		$('eg_gal_link').setAttribute('href', link + G.user.session);
-		return;
-	}
-
-	$('eg_gal_link').setAttribute('href', 'javascript:void(0);');
-	$('eg_gal_link').setAttribute('target', '');
-	$('eg_gal_link').onclick = function() {
-		/* we're not logged in.  go ahead and login */
-		detachAllEvt('common','locationChanged');
-		detachAllEvt('common','loggedIn');
-		attachEvt('common','loggedIn', function() { goTo(link + G.user.session); })
-		initLogin();
-	};
-}
-/* --------------------------------------------------------------------------------- */
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/sidebar_extras.js b/Open-ILS/web/opac/skin/default/js/sidebar_extras.js
deleted file mode 100644
index cb35d88..0000000
--- a/Open-ILS/web/opac/skin/default/js/sidebar_extras.js
+++ /dev/null
@@ -1,243 +0,0 @@
-
-/* captures extraneous info from each record */
-
-var subjectCache = {};
-var authorCache = {};
-var seriesCache = {};
-
-function resultBuildCaches(records) {
-	for( var r in records ) {
-		var rec = records[r];
-		for( var s in rec.subject() ) 
-			subjectCache[s] == null ? subjectCache[s] = 1 : subjectCache[s]++;
-		authorCache[rec.author()] = 1;
-		for( var s in rec.series() ) seriesCache[rec.series()[s]] = 1;
-	}
-}
-
-function resultSortSubjects(a, b) { return -(a.count - b.count); } /* sort in reverse */
-function resultDrawSubjects() {
-
-	var subjs = [];
-	for( var s in subjectCache )
-		subjs.push( { sub : s, count : subjectCache[s] } );
-	subjs.sort(resultSortSubjects);
-
-	var ss = [];
-	for( var s in subjs ) ss.push(subjs[s].sub);
-
-	resultDrawSidebarTrees( 
-		STYPE_SUBJECT, 
-		"subjectSidebarTree", ss, 
-		$("subject_tree_sidebar"), 
-		$("subject_sidebar_tree_div") );
-}
-
-function resultDrawAuthors() {
-	var auths = new Array();
-	for( var s in authorCache ) auths.push(s);
-
-	resultDrawSidebarTrees( 
-		STYPE_AUTHOR, 
-		"authorSidebarTree", auths.sort(), 
-		$("author_tree_sidebar"), 
-		$("author_sidebar_tree_div") );
-}
-
-function resultDrawSeries() {
-	var sers = new Array();
-	for( var s in seriesCache ) sers.push(s);
-	resultDrawSidebarTrees( 
-		STYPE_SERIES, 
-		"seriesSidebarTree", sers.sort(), 
-		$("series_tree_sidebar"), 
-		$("series_sidebar_tree_div") );
-}
-
-var IESux = true;
-
-function resultDrawSidebarTrees( stype, treeName, items, wrapperNode, destNode ) {
-	eval("tree = " + treeName);
-
-	var xrefCache = [];
-	var found = false;
-	var x = 0;
-	for( var i in items ) {
-
-		if(isNull(items[i])) continue;
-
-		/* again, IE is a turd */
-		if(IE) { if(x++ > 5) break; }
-		else { if(x++ > 7) break; }
-
-		found = true;
-
-		var item = normalize(truncate(items[i], 65));
-		var args = {};
-		var href = resultQuickLink( items[i], stype );
-		tree.addNode( stype + "_" + items[i], treeName + 'Root', item, href );
-
-//		if( !IE ) resultFireXRefReq(treeName, stype, items[i]);
-
-		var a = {};
-		a.type = stype;
-		a.term = item;
-		xrefCache.push(a);
-	}
-
-	if(found) {
-		unHideMe(wrapperNode);
-//		if(IE) resultFireXRefSingle(treeName, xrefCache, stype);
-		/* XXX */ // disabled auth lookups for now
-
-		if( DO_AUTHORITY_LOOKUPS ) {
-			resultFireXRefBatch(treeName, xrefCache, stype);
-		}
-	}
-}
-
-/* XXX */
-function resultFireXRefBatch(treeName, xrefCache, stype) {
-	var query = [];
-	for( var i = 0; i != xrefCache.length; i++ ) {
-		var topic = xrefCache[i];
-		query.push( [ topic.type, topic.term ] );
-	}
-	var req = new Request(FETCH_CROSSREF_BATCH, query);
-	var tree;
-	eval('tree=' + treeName);
-	req.request._tree = tree;
-	req.request._stype = stype;
-	req.callback(resultRenderXRefTree);
-	req.send();
-}
-
-var xrefCacheIndex = {};
-xrefCacheIndex['subject'] = 0;
-xrefCacheIndex['author'] = 0;
-xrefCacheIndex['series'] = 0;
-
-function resultHandleXRefResponse(r) {
-	resultFireXRefSingle( r._treename, r._cache, r._stype );
-	resultAppendCrossRef(r);
-}
-
-
-function resultFireXRefSingle( treeName, xrefCache, stype ) {
-	var i = xrefCacheIndex[stype]++;
-	if(xrefCache[i] == null) return;
-	var item = xrefCache[i].term;
-	var tree;
-	eval('tree=' + treeName);
-	var req = new Request(FETCH_CROSSREF, stype, item);
-	req.request._tree = tree;
-	req.request._item = item;
-	req.request._stype = stype;
-	req.request._cache = xrefCache;
-	req.request._treename = treeName;
-	req.callback(resultHandleXRefResponse);
-	req.send();
-}
-
-function resultFireXRefReq( treeName, stype, item ) {
-	var tree;
-	eval('tree=' + treeName);
-	var req = new Request(FETCH_CROSSREF, stype, item);
-	req.request._tree = tree;
-	req.request._item = item;
-	req.request._stype = stype;
-	req.callback(resultAppendCrossRef);
-	req.send();
-}
-
-
-function resultQuickLink( term, type ) {
-	var args = {};
-	if(SHOW_MR_DEFAULT) {
-		args.page = MRESULT;
-	} else {
-		args.page = RRESULT;
-		args[PARAM_RTYPE] = type;
-	}
-	args[PARAM_OFFSET] = 0;
-	args[PARAM_TERM] = term;
-	args[PARAM_STYPE] = type;
-	return buildOPACLink(args);
-}
-
-/* XXX */
-function resultRenderXRefTree(r) {
-	var tree = r._tree;
-	var res = r.getResultObject();
-	var stype = r._stype;
-
-	for( var c in res ) {
-		var cls = res[c];
-		for( var t in cls ) {
-			var term = res[c][t];
-			var froms = term['from'];
-			var alsos = term['also'];
-			var total = 0;
-
-			for( var i = 0; (total++ < 5 && i < froms.length); i++ ) {
-				var string = normalize(truncate(froms[i], 45));
-				if($(stype + '_' + froms[i])) continue;
-				tree.addNode(stype + '_' + froms[i], 
-					stype + '_' + t, string, resultQuickLink(froms[i],stype));
-			}
-			for( var i = 0; (total++ < 10 && i < alsos.length); i++ ) {
-				var string = normalize(truncate(alsos[i], 45));
-				if($(stype + '_' + alsos[i])) continue;
-				tree.addNode(stype + '_' + alsos[i], 
-					stype + '_' + t, string, resultQuickLink(alsos[i],stype));
-			}
-		}
-	}
-}
-
-
-/* Addes the see-from/see-also entries for this subject item */
-function resultAppendCrossRef(r) {
-	var tree		= r._tree
-	var item		= r._item
-	var stype	= r._stype;
-	var result	= r.getResultObject();
-	if(!result) return;
-	var froms	= result['from'];
-	var alsos	= result['also'];
-
-	var total = 0;
-
-	for( var i = 0; (total++ < 5 && i < froms.length); i++ ) 
-		resultAddXRefItem( tree, item, stype, froms, i );
-
-	for( var i = 0; (total++ < 10 && i < alsos.length); i++ ) 
-		resultAddXRefItem( tree, item, stype, alsos, i );
-}
-
-/**
- * Adds a single entry into the see-from/also sidebar tree 
- */
-var collectedStrings = [];
-function resultAddXRefItem(tree, rootItem, stype, arr, idx) {
-
-	var string = normalize(truncate(arr[idx], 45));
-
-	if( string == rootItem ) return;
-
-	if( grep( collectedStrings, 
-		function(a) { return (a == string); }) ) return;
-
-	if($(stype + '_' + arr[idx])) return;
-
-	tree.addNode(stype + '_' + arr[idx], 
-		stype + '_' + rootItem, string, resultQuickLink(arr[idx],stype));
-
-	collectedStrings.push(string);
-}
-
-
-
-
-
-
diff --git a/Open-ILS/web/opac/skin/default/js/tips.js b/Open-ILS/web/opac/skin/default/js/tips.js
deleted file mode 100644
index 48fa83a..0000000
--- a/Open-ILS/web/opac/skin/default/js/tips.js
+++ /dev/null
@@ -1,19 +0,0 @@
-attachEvt('result', 'allRecordsReceived', insertTip);
-
-/*
-var user_tips = [
-	'Click on a folder icon in the sidebar to access related quick searches',
-	"If you don't find what you want try expanding your search using the range selector at the right of the search bar"
-];
-*/
-
-function insertTip () {
-	var tip_div = document.getElementById('tips');
-	if (tip_div) {
-		var tips = tip_div.getElementsByTagName('div')[0].getElementsByTagName('span');
-		var index = Math.floor(Math.random() * tips.length);
-        try { tip_div.appendChild( tips[index] ); } catch(E) {}
-		removeCSSClass(tip_div, 'hide_me');
-	}
-}
-
diff --git a/Open-ILS/web/opac/skin/default/xml/advanced/adv_global_row.xml b/Open-ILS/web/opac/skin/default/xml/advanced/adv_global_row.xml
deleted file mode 100644
index f5c5ca7..0000000
--- a/Open-ILS/web/opac/skin/default/xml/advanced/adv_global_row.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<!--
-<tr id='adv_global_trow' type='input'>
--->
-<tr id='<!--#echo var="adv_global_row_id"-->' type='input'>
-	<td align='center' width='100%' nowrap='nowrap'>
-
-		<!-- select the search class -->
-		<select name='type' style='margin-right: 7px;'>
-			<option value='keyword' selected='selected'>&common.keyword;</option>
-			<option value='title'>&common.title;</option>
-			<option value='author'>&common.author;</option>
-			<option value='subject'>&common.subject;</option>
-			<option value='series'>&common.series;</option>
-		</select>
-	
-		<!-- select how to treat the text -->
-		<select name='contains' style='margin-right: 7px;'>
-			<option value='contains'>&opac.advanced.refined.contains;</option>
-			<option value='nocontains'>&opac.advanced.refined.nocontains;</option>
-			<option value='exact'>&opac.advanced.refined.exact;</option>
-		</select>
-			
-		<!-- search term -->
-		<input type='text' size='18' name='term' style='margin-right: 3px;' />
-	
-		<!-- Remove this row -->
-        <button 
-			onclick='
-				var row = this.parentNode.parentNode;
-				var tbody = row.parentNode;
-				if( tbody.getElementsByTagName("tr").length > 2 )
-					row.parentNode.removeChild(row);'>X</button>
-
-	</td>
-</tr>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/advanced/advanced_global.xml b/Open-ILS/web/opac/skin/default/xml/advanced/advanced_global.xml
deleted file mode 100644
index 865aa59..0000000
--- a/Open-ILS/web/opac/skin/default/xml/advanced/advanced_global.xml
+++ /dev/null
@@ -1,309 +0,0 @@
-<table id='adv_global_search' class='data_grid data_grid_center' width='100%'>
-
-	<style type="text/css">
-		#adv_global_search select { width: 13em; }
-		#adv_global_input_table select { width: 7em; }
-		.adv_adv_link { font-size: 8pt; color: red; }
-	</style>
-
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/adv_global.js'> </script>
-
-	<tr style='border-bottom: none;'>
-
-		<!-- Contains the user-addable(?) rows to define search class, containment and text -->
-		<td valign='top' width='65%' style='border-bottom: none;'>
-			<table width='100%' id='adv_global_input_table'>
-	
-				<thead>
-					<tr><td colspan='2' align='center'>&advanced.search.title;</td></tr>
-				</thead>
-				<tbody id='adv_global_tbody'>
-
-					<script language='javascript' type='text/javascript'>
-						config.ids.common.now_searching = 'now_searching_location';
-					</script>
-
-					<!--#set var="adv_global_row_id" value="adv_global_trow"-->
-					<!--#include virtual="adv_global_row.xml"-->
-
-					<!--#set var="adv_global_row_id" value=""-->
-					<!--#include virtual="adv_global_row.xml"-->
-					<!--#include virtual="adv_global_row.xml"-->
-
-					<!-- add a new row -->
-					<tr id='adv_global_addrow'>
-						<td align='center'>
-                            <button onclick='clearSearchBoxes();'>&advanced.search.reset;</button>
-                            <span style='padding-left: 10px;'> </span>
-							<button id='myopac_new_global_row' onclick='advAddGblRow();'>&advanced.add.row;</button>
-							<span style='padding-left: 10px;'> </span>
-                            <button onclick='advSubmitGlobal();'>&advanced.search.submit;</button>
-						</td>
-					</tr>
-
-				</tbody>
-			</table>
-		</td>
-
-
-		<td rowspan='2'>
-
-			<table width='100%'>
-				<thead>
-					<tr><td colspan='2' align='center'>&advanced.search.filters;</td></tr>
-				</thead>
-				<tbody>
-
-					<tr>
-						<td align='right'>
-							<span>&advanced.item.form;</span>
-						</td>
-						<td align='left'>
-							<select multiple='multiple' size='3' id='adv_global_item_form'>
-							</select>	
-						</td>
-					</tr>
-
-					<tr>
-						<td align='right'>
-							<span>&advanced.item.type;</span>
-							<a id='adv_global_item_type_link_adv' class='classic_link adv_adv_link'
-								href='javascript:void(0);' onclick='
-								hideMe($("adv_global_item_type_basic"));
-								unHideMe($("adv_global_item_type"));
-								hideMe(this);
-								unHideMe($("adv_global_item_type_link_basic"));
-								'>&advanced.link;</a>
-
-							<a id='adv_global_item_type_link_basic' class='hide_me classic_link adv_adv_link'
-								href='javascript:void(0);' onclick='
-								unHideMe($("adv_global_item_type_basic"));
-								hideMe($("adv_global_item_type"));
-								unHideMe($("adv_global_item_type_link_adv"));
-								hideMe(this);
-								'>&advanced.basic.link;</a>
-						</td>
-
-						<td align='left'>
-							<select multiple='multiple' size='3' id='adv_global_item_type' class='hide_me'>
-							</select>	
-							<select multiple='multiple' size='3' id='adv_global_item_type_basic'>
-								<option value='at'>&opac.search.books;</option>
-								<option value='i'>&opac.search.audioBooks;</option>
-								<option value='g'>&opac.search.videoRecordings;</option>
-								<option value='j'>&opac.search.music;</option>
-								<option value='m'>&opac.search.electronic;</option>
-							</select>	
-						</td>
-					</tr>
-
-					<tr>
-						<td align='right'>
-							<span>&advanced.literary.form;</span>
-							<a id='adv_global_lit_form_link_adv' class='classic_link adv_adv_link'
-								href='javascript:void(0);' onclick='
-								hideMe($("adv_global_lit_form_basic"));
-								unHideMe($("adv_global_lit_form"));
-								hideMe(this);
-								unHideMe($("adv_global_lit_form_link_basic"));
-								'>&advanced.link;</a>
-
-							<a id='adv_global_lit_form_link_basic' class='hide_me classic_link adv_adv_link'
-								href='javascript:void(0);' onclick='
-								unHideMe($("adv_global_lit_form_basic"));
-								hideMe($("adv_global_lit_form"));
-								unHideMe($("adv_global_lit_form_link_adv"));
-								hideMe(this);
-								'>&advanced.basic.link;</a>
-						</td>
-						<td align='left'>
-							<select multiple='multiple' size='3' id='adv_global_lit_form' class='hide_me'>
-							</select>	
-							<select multiple='multiple' size='3' id='adv_global_lit_form_basic'>
-								<option value='0 '>&advanced.non.fiction;</option>
-								<option value='1'>&advanced.fiction;</option>
-							</select>	
-						</td>
-					</tr>
-
-
-					<!-- Language selector -->
-					<tr>
-						<td align='right'>
-							<span>&advanced.language;</span>
-						</td>
-
-						<td align='left'>
-							<select multiple='multiple' size='3' id='adv_global_lang'>
-								<!--#include virtual="../../../../../common/xml/item_lang_options.xml"-->
-							</select>
-						</td>
-					</tr>
-
-					<!-- Audience selector -->
-					<tr>
-						<td align='right'>
-							<span>&advanced.audience;</span>
-
-							<a id='adv_global_audience_link_adv' class='classic_link adv_adv_link'
-								href='javascript:void(0);' onclick='
-								hideMe($("adv_global_audience_basic"));
-								unHideMe($("adv_global_audience"));
-								hideMe(this);
-								unHideMe($("adv_global_audience_link_basic"));
-								'>&advanced.link;</a>
-
-							<a id='adv_global_audience_link_basic' class='hide_me classic_link adv_adv_link'
-								href='javascript:void(0);' onclick='
-								unHideMe($("adv_global_audience_basic"));
-								hideMe($("adv_global_audience"));
-								unHideMe($("adv_global_audience_link_adv"));
-								hideMe(this);'>&advanced.basic.link;</a>
-						</td>
-
-						<td align='left'>
-							<select multiple='multiple' size='3' id='adv_global_audience' class='hide_me'>
-							</select>
-							<select multiple='multiple' size='3' id='adv_global_audience_basic'>
-								<option value='e '>&advanced.adult;</option>
-								<option value='abcdj'>&advanced.juvenile;</option>
-								<option value='fg '>&advanced.general;</option>
-							</select>
-						</td>
-					</tr>
-
-					<tr>
-						<td align='right'>
-							<span>&advanced.biblevel;</span>
-						</td>
-						<td align='left'>
-							<select multiple='multiple' size='3' id='adv_global_bib_level'>
-							</select>	
-						</td>
-					</tr>
-
-					<tr>
-						<td align='right'>
-							<span>&advanced.filter.pubyear;</span>
-						</td>
-						<td align='left'>
-							<select id='adv_global_pub_date_type' onchange='
-                                if($("adv_global_pub_date_type").selectedIndex == 3)
-                                    unHideMe($("adv_global_pub_date_2_span"));
-                                else
-                                    hideMe($("adv_global_pub_date_2_span"));'>
-                                <option value='equals' selected='selected'>&advanced.filter.pubyear.equals;</option>
-                                <option value='before'>&advanced.filter.pubyear.before;</option>
-                                <option value='after'>&advanced.filter.pubyear.after;</option>
-                                <option value='between'>&advanced.filter.pubyear.between;</option>
-							</select>	
-                            <div style='margin-top:5px;'>
-                                <input id='adv_global_pub_date_1' type='text' size='4' maxlength='4'/>
-                                <span id='adv_global_pub_date_2_span' class='hide_me'>
-                                   &common.and; <input id='adv_global_pub_date_2' type='text' size='4' maxlength='4'/>
-                                </span>
-                            </div>
-						</td>
-					</tr>
-
-
-                    <!-- copy location selector -->
-                    <tr id='adv_copy_location_filter_row' class='hide_me'>
-                        <td align='right'>&opac.advanced.copy_loc_filter;</td>
-                        <td align='left' id='adv_copy_location_filter_td'>
-                            <select size='3' id='adv_copy_location_filter_select' multiple='multiple'>
-                            </select>
-                        </td>
-                    </tr>
-				</tbody>
-			</table>
-		</td>
-	</tr>
-
-	<tr style='border-top: none;'>
-		<td align='center' valign='top' style='border-top: none;'>
-
-			<table style='border: none; width: 100%;'>
-				<tr>
-					<td align='center' width='100%'>
-						<table class='' width='100%'>
-			
-							<thead>
-								<tr>
-									<td align='center' width='50%'>&advanced.sort.criteria;</td>
-									<td align='center'>&advanced.search.library;</td>
-								</tr>
-							</thead>
-			
-							<tbody>
-								<tr>
-
-                           <script language='javascript' type='text/javascript'>
-                              function __setsortsel() {
-                                 var sel = $('adv_global_sort_by')
-										   if(sel.selectedIndex == 0) {
-											   $("adv_global_sort_dir").disabled = true;
-											   $("adv_global_sort_dir").selectedIndex = 0;
-										   } else $("adv_global_sort_dir").disabled = false;
-                              }
-                           </script>
-
-									<td align=''>
-										<select id='adv_global_sort_by' onchange='__setsortsel();'>
-											<option value='rel'>&advanced.relevance;</option>
-											<option value='titlesort'>&common.title;</option>
-											<option value='authorsort'>&common.author;</option>
-											<option value='pubdate'>&advanced.pubdate;</option>
-										</select>
-									</td>
-
-
-									<td align='center' width='100%' nowrap='nowrap'>
-										<b id='now_searching_location'> </b>
-									</td>
-
-								</tr>
-			
-								<tr>
-
-									<td>
-										<select id='adv_global_sort_dir' disabled='disabled'>
-											<option value='asc'>&advanced.sort.asc;</option>
-											<option value='desc'>&advanced.sort.desc;</option>
-										</select>
-									</td>
-
-                           <!-- force the enable/disable sort dir code to run -->
-                           <script language='javascript' type='text/javascript'>__setsortsel();</script>
-
-									<td align='center'>
-										<!--#include virtual="../common/libselect.xml"-->
-									</td>
-
-								</tr>
-								<tr>
-									<td align='center'>
-										<span>&advanced.frbrize;</span>
-										<input id='adv_group_titles' type='checkbox' />
-									</td>
-                                    <td align='center'>
-                                        <span>&result.limit2avail;</span>
-                                        <input type='checkbox' id='opac.result.limit2avail'/>
-                                    </td>
-								</tr>
-							</tbody>
-						</table>
-					</td>
-				</tr>
-			</table>
-		</td>
-
-	</tr>
-
-	<tr class='border_4_2'>
-		<td colspan='2'><input type='submit' onclick='advSubmitGlobal();' value='&advanced.search.submit;'></input></td>
-	</tr>
-
-</table>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/advanced/advanced_marc.xml b/Open-ILS/web/opac/skin/default/xml/advanced/advanced_marc.xml
deleted file mode 100644
index 46fe287..0000000
--- a/Open-ILS/web/opac/skin/default/xml/advanced/advanced_marc.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-XXX Deprecate me
--->
-
-<table class='data_grid' width='100%'>
-	<thead>
-		<tr>
-			<td colspan='6'>&opac.advanced.marc.title;</td>
-		</tr>
-	</thead>
-	<tbody id='advanced.marc.tbody'>
-		<tr id='advanced.marc.template'>
-			<td>
-				<span>&opac.advanced.marc.tag;: </span>
-				<input name='advanced.marc.tag' maxlength='3' size='3' />
-			</td>
-			<td>
-				<span>&opac.advanced.marc.subfield;: </span>
-				<input name='advanced.marc.subfield' maxlength='1' size='1' />
-			</td>
-			<td>
-				<span>&opac.advanced.marc.value;: </span>
-				<input name='advanced.marc.value' size='36' />
-			</td>
-
-			<td>
-				<input type='submit' value='X' onclick='
-					var row = this.parentNode.parentNode;
-					var tbody = row.parentNode;
-					if(tbody.getElementsByTagName("tr").length > 2)
-						tbody.removeChild(row);
-					' />
-			</td>
-		</tr>
-		<tr id='advanced.marc.submit.row'>
-			<td colspan='4' align='center'>
-
-				<input name='advanced.marc.addrow' type='submit' onclick='advAddMARC();'
-					value='&opac.advanced.marc.addrow;' />
-
-				<input style='margin-left: 10px;' 
-					onclick='advMARCRun();' type='submit' value='&common.submit;' />
-			</td>
-		</tr>
-	</tbody>
-</table>
diff --git a/Open-ILS/web/opac/skin/default/xml/advanced/advanced_quick.xml b/Open-ILS/web/opac/skin/default/xml/advanced/advanced_quick.xml
deleted file mode 100644
index 3f7da6f..0000000
--- a/Open-ILS/web/opac/skin/default/xml/advanced/advanced_quick.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<!--
-XXX Deprecate me
--->
-
-<table class='data_grid' width='95%'>
-	<thead>
-		<tr>
-			<td colspan='6'>&opac.advanced.quick.title;</td>
-		</tr>
-	</thead>
-	<tbody>
-		<tr>
-			<td>
-				<span style='padding-right: 0px;'>&common.call.number.label;</span>
-				<input id='opac.advanced.quick.cn' style='margin: 2px;' type='text' size='12' />
-				<input type='submit' onclick='advCNRun();' value='&advanced.go;' />
-			</td>
-			<td>
-				<span style='padding-right: 0px;'>&common.isbn.label;</span>
-				<input id='opac.advanced.quick.isbn' style='margin: 2px;' type='text' size='13' maxlength='13' />
-				<input type='submit' onclick='advISBNRun();' value='&advanced.go;' />
-			</td>
-			<td>
-				<span style='padding-right: 0px;'>&common.issn.label;</span>
-				<input id='opac.advanced.quick.issn' style='margin: 2px;' type='text' size='9' maxlength='9' />
-				<input type='submit' onclick='advISSNRun();' value='&advanced.go;' />
-			</td>
-		</tr>
-	</tbody>
-</table>
diff --git a/Open-ILS/web/opac/skin/default/xml/body.xml b/Open-ILS/web/opac/skin/default/xml/body.xml
deleted file mode 100644
index 3325a26..0000000
--- a/Open-ILS/web/opac/skin/default/xml/body.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<body class="tundra">
-	<table width='100%'>
-		<tbody>
-			<tr>
-				<td id='main_left_cell'>
-					<!--#include virtual="common/logo.xml"-->
-					<!--#include virtual="common/sidebar.xml"-->
-				</td>
-				<td id='main_right_cell'>
-					<div id='content' class=''>
-
-						<!--#if expr="$OILS_PAGE!='advanced.xml'"-->
-							<!--#include virtual="common/searchbar.xml"-->
-							<!--#include virtual="common/statusbar.xml"-->
-						<!--#endif-->
-
-						<!--#include virtual="common/fonts.xml"-->
-
-						<!--#include virtual="common/altcanvas.xml"-->
-						<!--#include virtual="common/ilsevents.xml"--> 
-						<!--#include virtual="page_${OILS_PAGE}"-->
-					</div>
-					<br/>
-					<!--#include virtual="common/tips.xml"-->
-				</td>
-			</tr>
-		</tbody>
-	</table>
-		<!--#include virtual='footer.xml'-->
-    <center>
-        <div id='gcfPrompt' class='hide_me'>
-            <script>dojo.require('dojo.cookie')</script>;
-            <div><span>&common.googlechromeframe.why;</span></div>
-            <button onclick='CFInstall.check({preventPrompt: false, mode: "popup"});'>&common.googlechromeframe.install;</button>
-            <button onclick='dojo.cookie("noGCF", "true", {path:"/", expires: 365}); hideMe($("gcfPrompt"));'>&common.googlechromeframe.dontask;</button>
-        </div>
-    </center>
-    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script>
-    <script><![CDATA[ 
-        CFInstall.check({
-            preventPrompt: true,
-            onmissing: function() {
-                if (dojo.cookie("noGCF") != "true")
-                    unHideMe($('gcfPrompt'));
-            }
-        });]]>
-    </script>
-
-    <script language="javascript" type="text/javascript">
-        dojo.addOnLoad(init);
-        dojo.require("dijit._Calendar");
-        dojo.require("dijit.form.DateTextBox");
-        dojo.require("dijit.form.FilteringSelect");
-        dojo.require("dojo.date.locale");
-        dojo.require("dojo.date.stamp");
-        dojo.require("dojo.parser");
-        dojo.require("openils.widget.FacetSidebar"); // pulls in Searcher and I18N
-    </script>
-
-</body>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/altcanvas.xml b/Open-ILS/web/opac/skin/default/xml/common/altcanvas.xml
deleted file mode 100644
index 97448da..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/altcanvas.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-<!-- These are the UI components that may be needed on any given page.  The must be
-	set to class += 'hide_me' by default -->
-
-<div id='not_the_canvas' xmlns:xi="http://www.w3.org/2001/XInclude">
-
-	<!-- the login page -->
-	<!--#if expr="$FRONT_PAGE!='true'"-->
-		<!--#include virtual="login.xml"-->
-	<!--#endif-->
-
-	<!-- The org tree -->
-	<!--#include virtual="orgtree.xml"-->
-
-	<!-- ============================================================================= -->
-	<!-- Register the alternate canvases  -->
-	<script language='javascript' type='text/javascript'>
-		config.ids.altcanvas.org_tree		= config.ids.common.org_container;
-		config.ids.altcanvas.holds			= 'holds_box';
-		config.ids.altcanvas.check_holds	= 'check_holds_box';
-		config.ids.altcanvas.xulholds		= 'xulholds_box';
-		config.ids.altcanvas.loading		= 'loading_alt';
-		//config.ids.altcanvas.cnbrowse		= 'cn_browse';
-	</script>
-
-	<!--#if expr="$FRONT_PAGE!='true'"-->
-		<!--#include virtual="holds.xml"-->
-		<!-- #include virtual="cn_browse.xml"-->
-	<!--#endif-->
-
-	<div id='loading_alt' class='hide_me canvas' style='margin-top: 6px;'>
-		<div style='margin-top: 30px; margin-bottom: 30px; text-align: center; font-weight: 700;' class='color_3'>
-			<img src='../../../../images/progressbar_green.gif' style='margin: 5px; height: 32px; width: 32px;' />
-		</div>
-	</div>
-
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/cn_browse.xml b/Open-ILS/web/opac/skin/default/xml/common/cn_browse.xml
deleted file mode 100644
index aea7fa1..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/cn_browse.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<div id='cn_browse' class='hide_me cn_browser' 
-	style='width: 95%; text-align: center; padding: 15px;'>
-	<div id='cn_browse_loading'  class='cn_browse_loading hide_me'>&common.cn.loading;</div>
-	<div id='cn_browse_div'> 
-
-
-		<div style='width: 90%; text-align: center; margin: 10px;' class='color_4'>
-			<span>&common.cn.browsing;</span><b style='margin-left: 6px;' id='cn_browse_where'> </b>
-		</div>
-		<table class='data_grid bookshelf' width='100%'>
-			<thead>
-				<tr>
-					<td><a id='cn_browse_next' class='classic_link' 
-						href='javascript:cnBrowsePrev();'><b>&common.cn.previous;</b></a></td>
-					<td colspan='1' align='center'>&common.cn.shelf;</td>
-					<td><a id='cn_browse_prev' class='classic_link' 
-						href='javascript:cnBrowseNext();'><b>&common.cn.next;</b></a></td>
-				</tr>
-			</thead>
-			<tbody id='cn_tbody'>
-				<tr id='cn_browse_row'>
-					<td id='cn_browse_td' class='cn_browse_item' width='25%' valign='top'>
-						<a><img height='60' width='50' 
-							class='cn_browse_info' name='cn_browse_pic' border='0' /></a>
-						<div style='font-weight: bold;' class='cn_browse_info' name='cn_browse_cn'>  </div>
-						<div class='cn_browse_info'><a name='cn_browse_title' class='classic_link'> </a></div>
-						<div class='cn_browse_info'><a name='cn_browse_author' class='classic_link'>  </a></div>
-						<div class='cn_browse_info' name='cn_browse_lib'>  </div>
-					</td>
-				</tr>
-			</tbody>
-		</table>
-	</div>
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/fonts.xml b/Open-ILS/web/opac/skin/default/xml/common/fonts.xml
deleted file mode 100644
index c7ebef3..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/fonts.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<div id='fonts_div'>
-
-	<div id='text_size_div' style='position:absolute; top: 2px; right: 6px;'>
-		<span style='vertical-align: top;'>&common.textsize.title;</span>
-		<span style='vertical-align: top;'><a href="javascript:void(0);" onclick="setFontSize('regular');"> &common.textsize.regular; </a></span>
-		<span style='vertical-align: top;'> &common.textsize.separator; </span>
-		<span style='vertical-align: top;'><a href="javascript:void(0);" onclick="setFontSize('large');"> &common.textsize.large; </a></span>
-		<span style='vertical-align: top;'> <span style="font-weight:bold;">|</span> </span>
-		<span style='vertical-align: top;'>&common.language;</span>
-		<span id='translation_switch' dojoType="dijit.form.FilteringSelect" store="openils.I18N.localeStore"
-            searchAttr="label" required="false" jsId='opacLocaleSelector'>
-            <script type="text/javascript">
-                dojo.addOnLoad(function() {
-                    opacLocaleSelector.setValue(locale);
-                    dojo.connect(opacLocaleSelector, 'onChange', 
-                        function () {
-                            location.href = location.href.replace(/opac\/[^\/]+\/skin/, 'opac/' + this.getValue() + '/skin');
-                        }
-                    );
-                });
-            </script>
-		</span>
-	</div>
-	
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/format_selector.xml b/Open-ILS/web/opac/skin/default/xml/common/format_selector.xml
deleted file mode 100644
index 6d329a9..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/format_selector.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<select id='<!--#echo var="FORM_SEL_ID"-->' >
-	<option value=''>&opac.search.allFormats;</option>
-	<option value='at'>&opac.search.books;</option>
-	<option value='at-d'>&opac.search.largePrint;</option>
-	<option value='at-s'>&opac.search.ebook;</option>
-	<option value='i'>&opac.search.audioBooks;</option>
-	<option value='g'>&opac.search.videoRecordings;</option>
-	<option value='j'>&opac.search.music;</option>
-	<option value='m'>&opac.search.electronic;</option>
-</select>
-	
diff --git a/Open-ILS/web/opac/skin/default/xml/common/holds.xml b/Open-ILS/web/opac/skin/default/xml/common/holds.xml
deleted file mode 100644
index ff72572..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/holds.xml
+++ /dev/null
@@ -1,253 +0,0 @@
-<div>
-	<div id='xulholds_box' class='hide_me canvas' style='margin-top: 6px;'>
-		<center>
-			<table class='data_grid' style='margin-top: 20px;'>
-				<tbody>
-					<tr>
-						<td>&opac.holds.xulRecipient;:</td>
-						<td><input type='text' id='xul_recipient_barcode' /></td>
-						<td><input type='submit' value='&common.submit;' id='xul_recipient_barcode_submit' /></td>
-						<td><input type='submit' value='&common.cancel;' onclick='showCanvas();' /></td>
-						<td><input type='submit' value='&common.hold.place;' id='xul_recipient_me' /></td>
-					</tr>
-				</tbody>
-			</table>
-		</center>
-	</div>
-
-	<div id='check_holds_box' class='hide_me canvas' 
-		style='margin-top: 6px; width: 100%; text-align: center'>
-		<br/><br/><br/>
-		<b>&common.hold.check;</b>
-	</div>
-
-	<div id='holds_box' class='hide_me canvas' style='margin-top: 6px;'>
-	
-		<br/>
-		<table width='90%'>
-			<tbody>
-				<tr>
-					<td class='holds_cell color_1' 
-						align='center' colspan='2'>&common.hold.create;</td>
-				</tr>
-				<tr>
-					<td class='holds_cell'>&opac.holds.recipient;:</td>
-					<td class='holds_cell' id='holds_recipient'> </td>
-				</tr>
-				<tr>
-					<td class='holds_cell'>&common.title.label;</td>
-					<td class='holds_cell' id='holds_title'> </td>
-				</tr>
-				<tr>
-					<td class='holds_cell'>&common.author;</td>
-					<td class='holds_cell' id='holds_author'> </td>
-				</tr>
-				<tr>
-					<td class='holds_cell'>&common.format;</td>
-					<td class='holds_cell' id='holds_format'> </td>
-				</tr>
-				<tr id='hold_physical_desc_row'>
-					<td class='holds_cell'>&common.physical.label;</td>
-					<td class='holds_cell' id='holds_physical_desc'> </td>
-				</tr>
-
-				<tr class='hide_me' id='holds_parts_row'>
-					<td class='holds_cell'>&common.mono_parts.label;</td>
-					<td class='holds_cell'>
-                        <span class='hide_me' id='holds_parts_label'></span>
-                        <select id='holds_parts_selector' class='hide_me'>
-                            <option value=''></option>
-                        </select>
-                    </td>
-				</tr>
-
-				<tr class='hide_me' id='holds_cn_row'>
-					<td class='holds_cell'>&common.call.number.label;</td>
-					<td class='holds_cell'><b id='holds_cn'/> </td>
-				</tr>
-
-				<tr class='hide_me' id='holds_copy_row'>
-					<td class='holds_cell'>&common.copy.barcode.label;</td>
-					<td class='holds_cell'><b id='holds_copy'/> </td>
-				</tr>
-
-				<tr class='hide_me' id='holds_issuance_row'>
-					<td class='holds_cell'>&common.issuance_label.label;</td>
-					<td class='holds_cell'><b id='holds_issuance_label'/> </td>
-				</tr>
-
-				<tr class='hide_me' id='holds_type_row'>
-					<td class='holds_cell'>&common.hold.type.label;</td>
-					<td class='holds_cell hide_me' id='holds_is_cn'><b>&common.hold.volume;</b></td>
-					<td class='holds_cell hide_me' id='holds_is_copy'><b>&common.hold.copy;</b></td>
-					<td class='holds_cell hide_me' id='holds_is_issuance'><b>&common.hold.issuance;</b></td>
-				</tr>
-
-				<tr>
-					<td class='holds_cell'>&opac.holds.contactPhone;:</td>
-					<td class='holds_cell'>
-						<input id='holds_phone' size='13' maxlength='12'/>
-						<span style='margin-left: 4px; font-size: 7pt;'>&common.phone.format;</span>
-					</td>
-				</tr>
-				<tr>
-					<td class='holds_cell'>&common.phone.enable;</td>
-					<td class='holds_cell'>
-						<input type='checkbox' id='holds_enable_phone'  checked='checked'
-							onchange='
-								if (this.checked) $("holds_phone").disabled=false; 
-								else $("holds_phone").disabled = true;'/>
-					</td>
-				</tr>
-
-				<tr>
-					<td class='holds_cell'>&opac.holds.contactEmail;:</td>
-					<td class='holds_cell' id='holds_email'> 
-                        <span class='hide_me' id='holds.no_email'>
-                           &common.email.none;<br/>
-                           &common.email.set;
-                        </span>
-                        <span class='hide_me' id='holds.no_email.xul'>
-                           &common.email.none; 
-                        </span>
-
-                    </td>
-				</tr>
-				<tr>
-					<td class='holds_cell'>&common.email.enable;</td>
-					<td class='holds_cell'>
-						<input type='checkbox' id='holds_enable_email' checked='checked'/>
-					</td>
-				</tr>
-				<!--
-				<tr id='holds_depth_selector_row' class='hide_me'>
-					<td class='holds_cell'>Hold Range</td>
-					<td class='holds_cell'>
-						<select id='holds_depth_selector'></select>
-					</td>
-				</tr>
-				-->
-				<tr>
-					<td class='holds_cell'>&opac.holds.pickupLocation;</td>
-					<td class='holds_cell'>
-						<select id='holds_org_selector'> </select>
-					</td>
-				</tr>
-
-				<tr>
-					<td class='holds_cell'>&opac.holds.expire_time;</td>
-					<td class='holds_cell'>
-                        <input dojoType="dijit.form.DateTextBox" size='10' maxlength='10' id='holds_expire_time' />
-					</td>
-				</tr>
-
-                <tr>
-                    <td class='holds_cell'>
-                        &opac.holds.freeze;
-                        <a class='classic_link' href='javascript:alert("&opac.holds.freeze.help;");'>&common.help;</a>
-                        </td>
-                    <td class='holds_cell'>
-                        <input type='checkbox' id='holds_frozen_chkbox' 
-                            onchange='
-                                if($("holds_frozen_chkbox").checked) 
-                                    unHideMe($("hold_frozen_thaw_row"));
-                                else
-                                    hideMe($("hold_frozen_thaw_row"));
-                            ' /> 
-                    </td>
-                </tr>
-
-                <tr id='hold_frozen_thaw_row' class='hide_me'>
-                    <td class='holds_cell'>
-                        <script language='javascript' type='text/javascript'> if($('holds_frozen_chkbox').checked) unHideMe($("hold_frozen_thaw_row"));</script>
-                        &opac.holds.freeze.thaw_date;
-                    </td>
-                    <td class='holds_cell'>
-                        <input dojoType="dijit.form.DateTextBox" size='10' maxlength='10' id='holds_frozen_thaw_input' />
-                    </td>
-                </tr>
-
-				<tr id='holds_alt_formats_row_extras' class='hide_me'>
-					<td colspan='2' align='center'>
-						<div style='padding: 8px;'>
-							<a class='classic_link' href='javascript:void(0);' style='padding: 5px;'
-								onclick='unHideMe($("holds_alt_formats_row"));'>&common.hold.advanced;</a>
-						</div>
-					</td>
-				</tr>
-
-				<tr id='holds_alt_formats_row' class='hide_me'>
-
-					<td class='holds_cell'>
-						<div style='margin-bottom: 5px;'>
-							<span>&common.format.alternatives; </span>
-							<span> <a class='classic_link' style='color:red;' href='javascript:void(0);' 
-								onclick='alert($("holds_explain_adv").innerHTML)'>&common.help;</a></span>
-						</div>
-						<div>&common.control.click;</div>
-					</td>
-
-					<td class='holds_cell'>
-						<select id='hold_alt_form_selector' multiple='multiple' style='width: 14em;'>
-							<option value='at'	class='hide_me'>&opac.search.books;</option>
-							<option value='at-d' class='hide_me'>&opac.search.largePrint;</option>
-							<option value='at-s' class='hide_me'>&opac.search.ebook;</option>
-							<option value='i'		class='hide_me'>&opac.search.audioBooks;</option>
-							<option value='g'		class='hide_me'>&opac.search.videoRecordings;</option>
-							<option value='j'		class='hide_me'>&opac.search.music;</option>
-						</select>
-					</td>
-				</tr>
-
-				<tr>
-					<td class='holds_cell' align='center' colspan='2'>
-						<button id='holds_submit'>&opac.holds.placeHold;</button>
-						<button class='hide_me' id='holds_update'>&common.hold.update;</button>
-						<span style='padding: 20px;'> </span>
-						<button id='holds_cancel'>&common.cancel;</button>
-					</td>
-				</tr>
-			</tbody>
-		</table>
-	
-		<div class='hide_me' id='holds_success'>&opac.holds.success;</div>
-		<div class='hide_me' id='holds_failure'>&opac.holds.failure;</div>
-		<span class='hide_me' id='holds_bad_phone'>
-			&common.phone.format.help;
-		</span>
-
-		<span class='hide_me' id='hold_not_allowed'>
-			&common.hold.failed;
-		</span>
-        <span class='hide_me' id='hold_has_parts'>&opac.hold.has_parts;</span>
-
-	</div>
-
-	<span class='hide_me' id='format_words'>
-		<span name='at'>&opac.search.books;</span>
-		<span name='at-d'>&opac.search.largePrint;</span>
-		<span name='i'>&opac.search.audioBooks;</span>
-		<span name='g'>&opac.search.videoRecordings;</span>
-		<span name='j'>&opac.search.music;</span>
-		<span name='m'>&opac.search.electronic;</span>
-	</span>
-
-	<span class='hide_me' id='holds_explain_adv'>&holds.advanced_options;</span>
-
-	<span class='hide_me' id='holds_pick_good_org'>&common.hold.delivery;</span>
-
-	<span class='hide_me' id='hold_dup_exists'>&common.hold.exists;</span>
-	<span class='hide_me' id='hold_checked_out'>&common.hold.checked_out;</span>
-
-	<span class='hide_me' id='hold_dup_exists_override'>&common.hold.exists.override;</span>
-	<span class='hide_me' id='hold_checked_out_override'>&common.hold.checked_out.override;</span>
-	<span class='hide_me' id='hold_age_protected_override'>&common.hold.age_protect.override;</span>
-	<span class='hide_me' id='hold_place_unfillable_override'>&common.hold.place_unfillable.override;</span>
-
-	<span id='hold_failed_patron_barred' class='hide_me'>&common.hold.barred;</span>
-
-	<span id='invalid_hold' class='hide_me'>&common.hold.item.invalid;</span>
-
-	<span id='holds_invalid_recipient' class='hide_me'>&common.hold.patron.invalid;</span>
-
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/ilsevents.xml b/Open-ILS/web/opac/skin/default/xml/common/ilsevents.xml
deleted file mode 100644
index dcef13f..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/ilsevents.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<span class='hide_me'>
-	<span id='ilsevent.1000'>&ilsevent.1000;</span>
-	<span id='ilsevent.1001'>&ilsevent.1001;</span>
-	<span id='ilsevent.1002'>&ilsevent.1002;</span>
-	<span id='ilsevent.1200'>&ilsevent.1200;</span>
-	<span id='ilsevent.5000'>&ilsevent.5000;</span>
-	<span id='ilsperm.CREATE_HOLD'>&ilsperm.CREATE_HOLD;</span>
-
-	<!-- Local OPAC Specific strings/events -->
-	<span id='auth_session_expiring'>&opac.session_expiring;</span>
-	<span id='auth_session_expired'>&opac.session_expired;</span>
-	<span id='user_not_found'>&common.user_not_found;</span>
-</span>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/libselect.xml b/Open-ILS/web/opac/skin/default/xml/common/libselect.xml
deleted file mode 100644
index 45a7da7..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/libselect.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<span>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/depth_selector.js'></script>
-	<span class='hide_me' id='depth_selector_span'>
-		<!--#if expr="$SHOW_DEPTHSEL_TEXT='true'"-->
-		<span>&library.select; </span>
-		<!--#endif-->
-		<select id='depth_selector' >
-			<option value='new'>&library.select.label;</option>
-		</select>
-	</span>
-	<span class='hide_me' id='lib_selector_span'>
-		<a id='lib_selector_link' class='classic_link' href='javascript:void(0)'>&library.select.help;</a>
-	</span>
-</span>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/login.xml b/Open-ILS/web/opac/skin/default/xml/common/login.xml
deleted file mode 100644
index e59ba29..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/login.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-
-<div id='login_box' class='hide_me canvas' style='margin-top: 6px;'>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.login = {};
-		config.css.login = {};
-		config.ids.login.form			= "login_form";
-		config.ids.login.box			= "login_box";
-		config.ids.login.tbody			= "login_tbody";
-		config.ids.login.username	= "login_username";
-		config.ids.login.password	= "login_password";
-		config.ids.login.button		= "login_button";
-		config.ids.login.cancel		= "login_cancel_button";
-		config.ids.altcanvas.login			= config.ids.login.box;
-	</script>
-	<script type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/password_reset.js'></script>
-
-	<br/>
-
-	<div class='login_text color_1' style='padding: 4px; text-align: center;'>
-		<span>&opac.login.login;</span>
-	</div>
-
-	<br/>
-
-    <form id='login_form' method='POST' action='javascript:loginDance();'>
-        <table id='login_table' class='data_grid' style='margin-left: 20px;' width='95%'>
-            <tbody id='login_tbody'>
-                <tr>
-                    <td><span class='login_text'>&login.username;</span></td>
-                    <td>
-                        <span class='login_text'>
-                            <input id='login_username' name='login_username' type='text' size='16'></input>
-                        </span>
-                    </td>
-                </tr>
-                <tr>
-                    <td>
-                        <span class='login_text'>&common.password;</span>
-                    </td>
-                    <td>
-                        <span class='login_text'>
-                            <input id='login_password' name='login_password' type='password' size='16'></input>
-                        </span>
-                    </td>
-                </tr>
-                <tr><td><br/></td><td/></tr>
-                <tr class='color_1'>
-                    <td colspan='2' align='center'>
-                        <span class='login_text' style='margin-right: 20px;'>
-                        <input type='submit' value='&common.login;' name='login_button' id='login_button'></input>
-                        </span>
-                        <span class='login_text' style='margin-left: 20px;'>
-                            <input type='submit' name='login_cancel_button' id='login_cancel_button' value='&common.cancel;'></input>
-                        </span>
-                    </td>
-                </tr>
-            </tbody>
-        </table>
-    </form>
-
-	<table id='change_pw_table' class='data_grid hide_me' style='margin-left: 20px;' width='95%'>
-		<thead>
-			<tr><td colspan='2' align='center'><b>&login.password;</b></td></tr>
-		</thead>
-		<tbody>
-
-			<tr>
-				<td colspan='2' style='padding:10px;'>
-					&login.first.time;
-					&common.password_criteria;
-				</td>
-			</tr>
-
-			<tr>
-				<td>&login.password.current.enter;</td>
-				<td><input type='password' id='change_pw_current'/></td>
-			</tr>
-
-			<tr>
-				<td>&login.password.new.enter;</td>
-				<td><input type='password' id='change_pw_1'/></td>
-			</tr>
-			<tr>
-				<td>&login.password.new.reenter;</td>
-				<td><input type='password' id='change_pw_2'/></td>
-			</tr>
-			<tr><td><br/></td><td/></tr>
-			<tr class='color_1'>
-				<td colspan='2' align='center'>
-					<span class='login_text' style='margin-right: 20px;'>
-						<input type='submit' value='&login.password.update;'  id='change_pw_button'/>
-					</span>
-				</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<span id='pw_no_match' class='hide_me'>&login.password.nomatch;</span>
-	<span id='pw_update_successful' class='hide_me'>&login.password.success;</span>
-
-	<span id='pw_not_strong' class='hide_me'>
-		&login.password.strength;
-		&common.password_criteria;
-	</span>
-
-	<span id='patron_card_inactive_alert' class='hide_me'>&login.barcode.inactive;</span>
-
-	<span id='patron_inactive_alert' class='hide_me'>&login.account.inactive;</span>
-
-	<span id='patron_login_failed' class='hide_me'>&login.failed;</span>
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/logo.xml b/Open-ILS/web/opac/skin/default/xml/common/logo.xml
deleted file mode 100644
index fffec7f..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/logo.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<div id='logo_div'>
-	<script language='javascript' type='text/javascript'>config.ids.common.top_logo = "top_left_logo";</script>
-	<img style='margin-right: 4px; height: 48px; width: 187px;' src='<!--#echo var="OILS_BASE"-->/images/small_logo.jpg' id='top_left_logo' border='0' class='logo' />
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/orgtree.xml b/Open-ILS/web/opac/skin/default/xml/common/orgtree.xml
deleted file mode 100644
index d4008d3..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/orgtree.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-<!-- the org tree -->
-<div id='org_container' class='hide_me canvas'>
-
-	<div id='org_link_container' class='color_1'>
-		<span class='org_link'>
-			<a onclick='orgTreeSelector.expandAll();' 
-				href='javascript:void(0);'>&common.org.openAll;</a>
-		</span>
-		<span class='org_link'>
-			<a onclick='orgTreeSelector.closeAll();' 
-				href='javascript:void(0);'>&common.org.closeAll;</a>
-		</span>
-		<span class='org_link'>
-			<a onclick='showCanvas();' href='javascript:void(0);'>&common.org.cancel;</a>
-		</span>
-	</div>
-
-	<div id='org_loading_div'><br/><span>&common.org.loading;</span></div>
-	<br/>
-	<div id='org_selector_tip' class='tips hide_me'><b>&common.org.note;</b>
-		<span>&common.org.notetext;</span>
-	</div>
-	<br/>
-	<div id='org_tree' class='org_tree'> </div>
-	<br/>
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/searchbar.xml b/Open-ILS/web/opac/skin/default/xml/common/searchbar.xml
deleted file mode 100644
index 1638370..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/searchbar.xml
+++ /dev/null
@@ -1,96 +0,0 @@
-
-<!-- Searchbar for doing metarecord searches -->
-
-<div id='searchbar' dojoType="openils.widget.Searcher" basicTextBox='search_box'>
-    <script type='dojo/method' event='performSearch'>
-        this.compileFullSearch();
-        dojo.byId(this.basicTextBox).value = this.basic_query;
-        dojo.byId(this.facetTextBox).value += this.facet_query;
-        dojo.byId('search_submit').click();
-    </script>
-    <script type='dojo/method' event='populate'><![CDATA[
-        var searcher = this;
-        attachEvt("result", "allRecordsReceived", function () {
-            if(!resultCompiledSearch) {
-                return;
-            }
-        
-            var all_search = dojo.query( '.classedSearch', searcher.classedSearches );
-            if (all_search.length > 1) {
-                for (var i = 1; i < all_search.length; i++) {
-                    dojo.destroy(all_search[i]);
-                }
-            }
-
-            var csearch = dijit.byNode(dojo.query( '.classedSearch', searcher.classedSearches )[0]);
-        
-            for (var type in resultCompiledSearch.searches) {
-                csearch.matchIndex.attr('value',type);
-                csearch.searchValue.attr('value',resultCompiledSearch.searches[type].term);
-                csearch = searcher.addClassAnd();
-            }
-        });
-    ]]></script>
-
-
-	<!-- load my js -->
-	<script language='javascript' type='text/javascript'>
-		config.ids.searchbar = {};
-		config.css.searchbar = {};
-		config.ids.searchbar.text				= 'search_box';	
-		config.ids.searchbar.facets				= 'facet_box';	
-		config.ids.searchbar.submit			= 'search_submit';	
-		config.ids.searchbar.type_selector	= 'search_type_selector';
-		config.ids.searchbar.depth_selector	= 'depth_selector';
-		config.ids.searchbar.form_selector	= 'form_selector';
-		config.ids.searchbar.extra_row		= 'searchbar_extra';
-		config.ids.searchbar.main_row			= 'searchbar_main_row';
-		config.ids.searchbar.table				= 'searchbar_table';
-		config.ids.searchbar.location_tag	= 'search_location_tag_link';
-		config.ids.searchbar.lib_sel_span	= 'lib_selector_span';
-		config.ids.searchbar.lib_sel_link	= 'lib_selector_link';
-		config.ids.searchbar.depth_sel_span	= 'depth_selector_span';
-	</script>
-
-
-	<table class='color_1 color_border1' width='100%' style='border-collapse: collapse;'>
-		<tbody>
-			<tr>
-
-				<td nowrap='nowrap' align='center'  class='search_box_container color_2'>
-
-					<input id='search_box' type='text' onkeyup='dojo.byId("facet_box").value = "";'/>
-					<input id='facet_box' type='hidden' />
-					<span style='padding-left: 6px;'>
-						<input type='button' style='width: 40px;' id='search_submit' value='&button.go;' />
-					</span>
-				</td>
-
-				<td nowrap='nowrap' style='padding: 3px;' align='right' >
-
-					<span style='padding-right:9px;'>
-						<!--
-						<span>&common.type;: </span>
-						-->
-						<!--#include virtual="stypes_selector.xml"-->
-					</span>
-
-					<span style='padding-right:9px;'>
-						<!--#set var='FORM_SEL_ID' value='form_selector'-->
-						<!--#include virtual="format_selector.xml"-->
-					</span>
-
-					<!--#include virtual="libselect.xml"-->
-
-				</td>
-			</tr>
-		</tbody>
-	</table>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/search_bar.js'></script>
-</div>
-
-
-
-
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/sidebar.xml b/Open-ILS/web/opac/skin/default/xml/common/sidebar.xml
deleted file mode 100644
index f15fc27..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/sidebar.xml
+++ /dev/null
@@ -1,196 +0,0 @@
-
-<!-- Navigation bar -->
-
-<div id="sidebar_div" class="sidebar_div" xmlns:xi="http://www.w3.org/2001/XInclude">
-
-	<div class='sidebar_chunk'>
-
-		<div title="&navigate.home.title;" 
-			id='home_link_div' class="side_bar_item ">
-			<a id='home_link' href='index.xml'>&navigate.home;</a>
-		</div>
-	
-		<div title="&opac.navigate.advanced.title;"
-			id='advanced_link_div' class="side_bar_item ">
-			<a id='advanced_link' href='advanced.xml'>&opac.navigate.advanced;</a>
-		</div>
-
-		<div title="&navigate.myopac.title;"
-			id='myopac_link_div' class="side_bar_item ">
-			<a  id='myopac_link' href='myopac/myopac.xml'>&navigate.myopac;</a>
-		</div>
-
-		<div title="&navigate.login.title;"
-			id='login_link_div' class="side_bar_item ">
-			<a id='login_link' href='javascript:void(0);'>&navigate.login;</a>
-		</div>
-
-		<div title="&navigate.logout.title;"
-			id='logout_link_div' class="side_bar_item hide_me ">
-			<a id='logout_link' href='javascript:void(0);'>&navigate.logout;</a>
-		</div>
-
-
-		<!-- Informational sidebar components -->
-
-		<div id='logged_in_as_div' title="&navigate.loggedinas.title;" class="side_bar_item hide_me">
-			<span>&navigate.loggedinas;<b id='username_dest'> </b></span>
-		</div>
-
-		<div id='sidebar_results_wrapper' class='hide_me border_1'>
-			<div title="&navigate.titleGroupResults;" 
-				id='mresult_link_div' class="side_bar_item hide_me">
-				<a id='sidebar_title_group_results'>&navigate.titleGroupResults;</a>
-			</div>
-		
-			<div title="&navigate.titleResults;"
-				id='result_link_div' class="side_bar_item hide_me">
-				<a id='sidebar_title_results'>&navigate.titleResults;</a>
-			</div>
-	
-			<div title="&navigate.record.details;"
-				id='rdetail_link_div' class="side_bar_item hide_me">
-				<span>&navigate.title.details;</span>
-			</div>
-		</div>
-	</div>
-
-    <div id='facetSidebarContainer' class='hide_me'>
-
-   	 <div class="side_bar_item" style="margin-top: 10px; font-weight: bold;">
-      <span>&navigate.facetRefine;</span>
-	</div>
-
-     <div dojoType='openils.widget.FacetSidebar' searchBox='facet_box' searchSubmit='search_submit' facetLimit='5' classOrder='["author","subject","series","title","keyword"]'>
-            <script type='dojo/method' event='populate'><![CDATA[
-                var fblob = this;
-                attachEvt("result", "allRecordsReceived", function () {
-                    if(!resultFacetKey) return;
-                    if (fblob.facetCacheKey) return; // already rendered it
-
-                    dojo.removeClass('facetSidebarContainer','hide_me');
-
-                    fblob.facetCacheKey = resultFacetKey;
-                    fblob.render();
-                });
-            ]]></script>
-        </div>
-	</div>
-
-	<div id='adv_quick_search_sidebar' class='sidebar_chunk hide_me' 
-		style='text-align:center; margin-top: 20px;'> 
-		<hr/>
-		<div id='adv_quick_search'>
-			<div class='adv_quick_search color_4'><b>&sidebar.quick.search;</b></div>
-			<div style='margin-top: 8px;'>
-				<table><tbody><tr>
-					<td>
-						<select id='adv_quick_type' style='width: 6em;'>
-							<option value='isbn'>&opac.advanced.quick.isbn;</option>
-							<option value='issn'>&opac.advanced.quick.issn;</option>
-							<option value='cn'>&opac.advanced.quick.cn;</option>
-							<option value='lccn'>&opac.advanced.quick.lccn;</option>
-							<option value='tcn'>&opac.advanced.quick.tcn;</option>
-							<option value='barcode'>&opac.advanced.quick.barcode;</option>
-						</select>
-					</td><td>
-						<input type='text' id='adv_quick_text' size='16' />
-					</td>
-				</tr></tbody></table>
-			</div>
-
-            <span class='hide_me' id='myopac.copy.not.found'>&sidebar.copy.not.found;</span>
-            <span class='hide_me' id='myopac.copy.not.cataloged'>&sidebar.copy.not.cataloged;</span>
-			<div style='margin-top: 8px;' class='adv_quick_search_submit'>
-				<a id='adv_quick_submit' href='javascript:advGenericSearch();' class='classic_link'>&common.submit;</a>
-			</div>
-		</div>
-	</div>
-
-    <div id='adv_authority_browse_sidebar' style='text-align: center'
-        class='sidebar_chunk hide_me'>
-
-        <hr />
-        <div class='adv_quick_search color_4'>
-            <b>&sidebar.authority.browse;</b>
-        </div>
-
-        <div style="text-align: left">
-            <select id="authority_browse_axis"></select><input
-                id="authority_browse_term" type="text" size="16"/>
-        </div>
-
-        <div style="margin-top: 8px;">
-            <a id="authority_browse_submit" class="classic_link" href="javascript:advAuthorityBrowse();">&common.submit;</a>
-        </div>
-    </div>
-
-	<div id='adv_marc_search_sidebar' class='sidebar_chunk hide_me' 
-		style='text-align:center; margin-top: 20px;'> 
-		<hr/>
-		<div class='adv_quick_search color_4'><b>&search.marc;</b></div>
-		<table style='margin: 3px; width: 100%;' id='adv_sdbar_table' class='border_4_3'>
-			<tbody>
-				<tr>
-					<td>&search.marc.tag;</td>
-					<td><input name='advanced.marc.tag' maxlength='3' size='3' /></td>
-					<td>&search.marc.subfield;</td>
-					<td><input name='advanced.marc.subfield' maxlength='1' size='1' /></td>
-				</tr>
-				<tr>
-					<td>&search.marc.value;</td>
-					<td colspan='3'><input name='advanced.marc.value' size='18' /></td>
-				</tr>
-				<tr name='crow' class='hide_me'>
-					<td colspan='4' align='center'>
-					<a href='javascript:void(0);' class='classic_link'
-						onclick='
-							var div = $("adv_marc_search_sidebar");
-							if( div.getElementsByTagName("table").length > 1 )
-								div.removeChild(this.parentNode.parentNode.parentNode.parentNode);'>&common.close;</a>
-					</td>
-				</tr>
-								
-			</tbody>
-		</table>
-		<div id='adv_marc_submit' class='adv_quick_search_submit'>
-			<a style='margin-right: 4px;' class='classic_link' href='javascript:advAddMARC();'>&search.marc.add.row;</a>
-			<a style='margin-left: 4px;' class='classic_link' href='javascript:advMARCRun();'>&common.submit;</a>
-		</div>
-	</div>
-
-
-
-
-	<!-- ============================================================================= -->
-	<!-- Our javascript -->
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar.js'></script>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.sidebar = {};
-		config.css.sidebar = {};
-		config.names.sidebar = {};
-		config.css.sidebar.item = {};
-		config.ids.sidebar.home				= 'home_link_div';
-		config.ids.sidebar.advanced		= 'advanced_link_div';
-		config.ids.sidebar.myopac			= 'myopac_link_div';
-		config.ids.sidebar.prefs			= 'prefs_link_div';
-		config.ids.sidebar.mresult			= 'mresult_link_div';
-		config.ids.sidebar.rresult			= 'result_link_div';
-		config.ids.sidebar.rdetail			= "rdetail_link_div"; 
-		config.ids.sidebar.login			= 'login_link';
-		config.ids.sidebar.logout			= 'logout_link';
-		config.ids.sidebar.logoutbox		= 'logout_link_div';
-		config.ids.sidebar.loginbox		= 'login_link_div';
-		config.ids.sidebar.logged_in_as	= 'logged_in_as_div';
-		config.ids.sidebar.username_dest	= 'username_dest';
-		
-		config.ids.sidebar.home_link		= 'home_link'
-		config.ids.sidebar.advanced_link	= 'advanced_link'
-		config.ids.sidebar.myopac_link	= 'myopac_link'
-		
-		config.css.encircled				= 'encircled';
-	</script>
-
-</div>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/statusbar.xml b/Open-ILS/web/opac/skin/default/xml/common/statusbar.xml
deleted file mode 100644
index 237be62..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/statusbar.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-<div id='statusbar' style='margin-bottom: 6px; margin-top: 6px;'>
-
-	<table width='100%'>
-		<tbody>
-			<tr>
-				<td align='left'>
-					<b>
-					<span style='padding: 1px; ' id='now_searching_location'>  </span>
-					</b>
-					<i id='including_results_for' class='hide_me'>
-						<span>&status.results;</span> <b id='including_results_location'> </b>
-					</i>
-				</td>
-                <td align='right'>
-                    <!--#if expr="$OILS_PAGE='rresult.xml' || $OILS_PAGE='mresult.xml'"-->
-                    <!--#include virtual="../result/filtersort.xml" -->
-                    <!--#endif -->
-                </td>
-			</tr>
-		</tbody>
-	</table>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.common.now_searching = 'now_searching_location';
-	</script>
-
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/common/stypes_selector.xml b/Open-ILS/web/opac/skin/default/xml/common/stypes_selector.xml
deleted file mode 100644
index 588030c..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/stypes_selector.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<select id='search_type_selector'>
-	<option value='keyword' selected='selected'>&common.keyword;</option>
-	<option value='title'>&common.title;</option>
-	<option value='author'>&common.author;</option>
-	<option value='subject'>&common.subject;</option>
-	<option value='series'>&common.series;</option>
-</select>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/common/tips.xml b/Open-ILS/web/opac/skin/default/xml/common/tips.xml
deleted file mode 100644
index 84919f5..0000000
--- a/Open-ILS/web/opac/skin/default/xml/common/tips.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-<div id='tips' class='tips hide_me'>
-	<div class='hide_me'>
-		<span>&common.tips.tip1;</span>
-		<span>&common.tips.tip2;</span>
-	</div>
-	<span style="font-weight: bold;">&tips.label;  </span>
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/footer.xml b/Open-ILS/web/opac/skin/default/xml/footer.xml
deleted file mode 100644
index 71d77c3..0000000
--- a/Open-ILS/web/opac/skin/default/xml/footer.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<div id='copyright_block'>
-		<div id='footer_links'>
-				<span class='footer_link'>
-					<a class='classic_link' href='/eg/opac/home'>&opac.basic;</a>
-				</span> 
-				<span> | </span>
-				<span class='footer_link'>
-					<a target='_blank' class='classic_link'
-						href='&footer.find.url;'>&footer.find.library;</a>
-				</span> 
-				<span> | </span>
-				<span class='footer_link'>
-					<a target='_blank' class='classic_link'
-						href='&footer.help.url;'>&footer.help;</a>
-				</span>
-				<span> | </span>
-				<span class='footer_link'>
-					<a target='_blank' class='classic_link'
-						href='&footer.library.url;'>&footer.library.about;</a>
-				</span>
-				<span> | </span>
-				<span class='footer_link'>
-					<a target='_blank' class='classic_link' id='eg_gal_link'
-						href='&footer.union.url;'>&footer.union;</a>
-				</span>
-		</div>
-        <div id='copyright_text'>
-            <span>&footer.copyright;</span>
-        </div>
-        <div id='footer_logo'>&footer.logo;
-            <a href='http://open-ils.org'><img style='border:none; width: 94px; height: 16px;' src='../../../../images/eg_tiny_logo.jpg'/></a>
-        </div>
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/header.xml b/Open-ILS/web/opac/skin/default/xml/header.xml
deleted file mode 100644
index 3f312b4..0000000
--- a/Open-ILS/web/opac/skin/default/xml/header.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<head>
-    <meta http-equiv="X-UA-Compatible" content="chrome=1"></meta>
-	<!-- Set the page title -->
-
-	<!--#include virtual="common/css_common.xml"-->
-
-	<title>&<!--#echo var="OILS_TITLE"-->;</title>
-	<link rel="unapi-server" type="application/xml" title="unAPI" href="http://<!--#echo var='HTTP_HOST'-->/opac/extras/unapi"/>
-    	<link rel="icon" type="image/ico" href="/favicon.ico"/>
-
-	<!--#if expr="$slimpac!='true'"-->
-		<!--#include virtual="common/js_common.xml"-->
-	<!--#endif-->
-
-</head>
diff --git a/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml b/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml
deleted file mode 100644
index 30ca9a3..0000000
--- a/Open-ILS/web/opac/skin/default/xml/home/homesearch.xml
+++ /dev/null
@@ -1,135 +0,0 @@
-
-<div id='canvas_main' class='home_search canvas'
-	style='-moz-border-radius: 6px; padding: 6px; margin-top: 65px;' 
-	xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude">
-
-	<!-- load my js -->
-	<script language='javascript' type='text/javascript'
-		src="<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/depth_selector.js"> </script>
-	<script language='javascript' type='text/javascript'
-		src="<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/search_bar.js"> </script>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.searchbar = {};
-		config.css.searchbar = {};
-		config.ids.searchbar.text				= 'search_box';	
-		config.ids.searchbar.submit			= 'search_submit';	
-		config.ids.searchbar.type_selector	= 'search_type_selector';
-		config.ids.searchbar.depth_selector	= 'depth_selector';
-		config.ids.searchbar.form_selector	= 'form_selector';
-		config.ids.searchbar.extra_row		= 'searchbar_extra';
-		config.ids.searchbar.main_row			= 'searchbar_main_row';
-		config.ids.searchbar.table				= 'searchbar_table';
-		config.ids.searchbar.location_tag	= 'search_location_tag_link';
-		config.ids.searchbar.lib_sel_span	= 'lib_selector_span';
-		config.ids.searchbar.lib_sel_link	= 'lib_selector_link';
-		config.ids.searchbar.depth_sel_span	= 'depth_selector_span';
-	</script>
-
-
-	<div style='width: 100%; text-align: center'>
-		<img src='<!--#echo var="OILS_BASE"-->/images/main_logo.jpg' />
-	</div>
-
-	<style type="text/css">.rowpad { height: 20px; }</style>
-
-	<table id='frontsearch_table' height='100%' width='100%' 
-		style='margin-top: 10px; border-collapse: collapse;'>
-
-		<tbody>
-
-			<tr class='color_3'>
-
-				<script language='javascript' type='text/javascript'>
-					config.ids.common.now_searching = 'now_searching_location';
-				</script>
-
-				<td style='padding: 6px;' class='border_5' align='center'>
-					<span>&opac.search.nowSearching;</span>
-					<span style='padding: 1px;' id='now_searching_location'>  </span>
-				</td>
-			</tr>
-
-
-			<tr class='rowpad'><td></td></tr>
-
-			<tr>
-				<td nowrap='nowrap' align='center' class='color_1 border_5'>
-					<input id='search_box' style='width: 300px;' type='text' />
-					<span style='padding-left: 6px;'>
-						<input type='button' style='width: 40px;' id='search_submit' value='Go!' />
-					</span>
-				</td>
-			</tr>
-
-			<tr class='rowpad'><td></td></tr>
-
-			<tr class='color_3 border_5'>
-
-				<td nowrap='nowrap' align='center' style='padding: 4px;'>
-
-					<span style='padding-right:40px;'>
-						<!--#include virtual="../common/stypes_selector.xml"-->
-					</span>
-
-					<span>
-						<!--
-						<span>&common.format;: </span>
-						-->
-						<!--#set var='FORM_SEL_ID' value='form_selector'-->
-						<!--#include virtual="../common/format_selector.xml"-->
-					</span>
-
-				</td>
-			</tr>
-
-			<tr class='rowpad'><td></td></tr>
-
-			<tr class='color_1 border_5'>
-				<td align='center' style='padding: 4px; padding-bottom: 6px;'>
-					<span style='padding-right: 15px;'>
-						<a id='home_adv_search_link' href='javascript:void(0);'>&opac.navigate.advanced;</a></span>
-					<span>
-						<span class='hide_me' id='depth_selector_span'>
-							<select id='depth_selector' >
-								<option value='new'>&opac.navigate.selectNewOrg;...</option>
-							</select>
-						</span>
-						<span class='hide_me' id='lib_selector_span'>
-							<a id='lib_selector_link' href='javascript:void(0)'>&opac.navigate.selectOrg;</a>
-						</span>
-					</span>
-					<span style='padding-left: 15px;'>
-						<a id='home_myopac_link' href='javascript:void(0);'>&opac.navigate.myopac;</a>
-					</span>
-				</td>
-			</tr>
-
-            <!-- locale picker -->
-            <tr><td align='center' valign='bottom' style='padding-top:10px;'>
-		        <span style='vertical-align: top;'>&common.language;</span>
-		        <span dojoType="dijit.form.FilteringSelect" store="openils.I18N.localeStore" 
-                    searchAttr="label" required="false" jsId='opacLocaleSelector'>
-                    <script type="text/javascript">
-                        dojo.addOnLoad(function() {
-                            opacLocaleSelector.setValue(locale);
-                            dojo.connect(opacLocaleSelector, 'onChange', 
-                                function () {
-					                location.href = location.href.replace(/opac\/[^\/]+\/skin/, 'opac/' + this.getValue() + '/skin');
-                                }
-                            );
-                        });
-                    </script>
-		        </span>
-            </td></tr>
-
-		</tbody>
-	</table>
-
-</div>
-
-
-
-
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/home/index_body.xml b/Open-ILS/web/opac/skin/default/xml/home/index_body.xml
deleted file mode 100644
index d65a6f7..0000000
--- a/Open-ILS/web/opac/skin/default/xml/home/index_body.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<body class="tundra">
-
-	<noscript>
-		<style type="text/css">#toptable { display: none; }</style>
-		<p style="font-size: 1.3em; padding: 3em; text-align: center;">
-		&home.js.disabled;
-        <a href="/eg/opac/home" class="classic_link">&opac.basic;</a>
-		</p>
-	</noscript>
-
-<!--#if expr="$MAINTENANCE_MESSAGE"-->
-    <div style="padding: 5px; width: 100%; background-color: #f00; color: #fff; text-align: center;">
-            <!--#echo var="MAINTENANCE_MESSAGE"-->
-    </div>
-<!--#endif-->
-
-	<table id='toptable' width='100%' style='border-collapse: collapse;'>
-		<tbody>
-			<tr>
-				<td width='10%'> </td>
-				<td width='80%'>
-					<div id='canvas'>
-						<!--#include virtual="../common/altcanvas.xml"-->
-						<!--#include virtual="homesearch.xml"-->
-					</div>
-				</td>
-				<td width='10%'> </td>
-			</tr>
-		</tbody>
-	</table>
-	<!--#include virtual='../footer.xml'-->
-    <center>
-        <div id='gcfPrompt' class='hide_me'>
-            <script>dojo.require('dojo.cookie');</script>
-            <div><span>&common.googlechromeframe.why;</span></div>
-            <button onclick='CFInstall.check({preventPrompt: false, mode: "popup"});'>&common.googlechromeframe.install;</button>
-            <button onclick='dojo.cookie("noGCF", "true", {path:"/", expires: 365}); hideMe($("gcfPrompt"));'>&common.googlechromeframe.dontask;</button>
-        </div>
-    </center>
-    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script>
-    <script><![CDATA[ 
-        CFInstall.check({
-            preventPrompt: true,
-            onmissing: function() {
-                if (dojo.cookie("noGCF") != "true")
-                    unHideMe($('gcfPrompt'));
-            }
-        });]]>
-    </script>
-
-    <script language="javascript" type="text/javascript">
-        isFrontPage = true;
-        dojo.addOnLoad(init);
-        dojo.addOnLoad(home_init);
-
-        try { 
-            dojo.style(dojo.byId('toptable'), 'display', 'table'); 
-        } catch(e) {
-            try {
-                dojo.style(dojo.byId('toptable'), 'display', ''); 
-            } catch(ee) {}
-        }
-
-        dojo.require("dijit._Calendar");
-        dojo.require("dijit.form.DateTextBox");
-        dojo.require("dijit.form.FilteringSelect");
-        dojo.require("dojo.date.locale");
-        dojo.require("dojo.date.stamp");
-        dojo.require("dojo.parser");
-        dojo.require("openils.widget.FacetSidebar"); // pulls in Searcher and I18N
-    </script>
-</body>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/html_xsl.xml b/Open-ILS/web/opac/skin/default/xml/html_xsl.xml
deleted file mode 100644
index f223320..0000000
--- a/Open-ILS/web/opac/skin/default/xml/html_xsl.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-<xsl:stylesheet version="1.0"
-	xmlns:xlink="http://www.w3.org/1999/xlink" 
-	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
-	<xsl:output method="html" indent="yes" encoding="utf-8"/>
-	<xsl:template match="/">
-		<xsl:copy-of select='/*[local-name()="html"]'/>
-	</xsl:template>
-</xsl:stylesheet>   
diff --git a/Open-ILS/web/opac/skin/default/xml/index.xml b/Open-ILS/web/opac/skin/default/xml/index.xml
deleted file mode 100644
index f3e84e5..0000000
--- a/Open-ILS/web/opac/skin/default/xml/index.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Loads the environment -->
-<!--#include virtual="setenv.xml"-->
-
-<!DOCTYPE html PUBLIC 
-	"-//W3C//DTD XHTML 1.0 Transitional//EN" 
-	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [
-	<!--#include virtual="/opac/locale/${locale}/opac.dtd"-->
-]>
-
-
-<html xmlns='http://www.w3.org/1999/xhtml'>
-	<!--#include virtual="header.xml"-->
-	<!--#if expr="$OILS_PAGE='index.xml'"-->
-		<!--#include virtual="home/index_body.xml"-->
-	<!--#else-->
-		<!--#include virtual="body.xml"-->
-	<!--#endif-->
-</html>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_bookbags.xml b/Open-ILS/web/opac/skin/default/xml/myopac/myopac_bookbags.xml
deleted file mode 100644
index d4c6d3f..0000000
--- a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_bookbags.xml
+++ /dev/null
@@ -1,136 +0,0 @@
-
-<div id='myopac_bookbag_div' class='hide_me' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/container.js'> </script>
-
-	<div id='myopac_delete_bookbag_warn' class='hide_me'>
-		&myopac.delete.bookbag;
-	</div>
-
-	<div style='text-align: center; font-weight: bold;' 
-		class='hide_me' id='myopac_bookbags_none'>&myopac.no.bookbags;</div>
-
-	<div style='width: 99%; text-align: center; margin-bottom: 10px;'> 
-		<b>&myopac.bookbags.title;</b>
-		<!--
-		<a class='classic_link' style='margin-left: 5px; font-size: 8pt;'
-			href='javascript:alert($("myopac_bb_what_are").innerHTML);'>(What are Bookbags?)</a>
-			-->
-	</div>
-
-	<table width='100%' class='data_grid data_grid_center hide_me' id='myopac_bookbag_table'>
-		<thead>
-			<tr><td>&common.name;</td><td>&myopac.bookbag.items;</td><td>&myopac.bookbag.shared;</td><td>&myopac.bookbag.toggle;</td><td>&myopac.bookbag.delete;</td></tr>
-		</thead>
-		<tbody id='myopac_bookbag_tbody'>
-			<tr id='myopac_bookbag_tr'>
-				<td>
-					<a href='javascript:void(0);' class='classic_link' name='myopac_expand_bookbag'> </a>
-				</td>
-				<td><span name='myopac_bookbag_item_count'> </span> <span> &myopac.items;</span></td>
-				<td>
-					<span name='myopac_bb_published_no' class='hide_me'>&common.no;</span>
-					<span name='myopac_bb_published_yes' class='hide_me'>&common.yes;</span>
-					<a name='myopac_bb_published_view' class='classic_link hide_me'>&myopac.view;</a>
-					<a name='myopac_bb_published_atom' class='unadorned_link hide_me'>
-						<img border="0" src="/opac/images/small-rss.png" title="&myopac.atom.feed;" alt="&myopac.atom.feed;"/>
-					</a>
-					<br/><a name='myopac_bb_exp_refworks' class='classic_link hide_me'>&myopac.bookbag.refworks;</a>
-				</td>
-
-				<td>
-					<a name='myopac_bb_make_unpublished' class='classic_link hide_me'>&myopac.bookbag.hide;</a>
-					<a name='myopac_bb_make_published' class='classic_link hide_me'>&myopac.bookbag.share;</a>
-				</td>
-
-				<td>
-					<a class='classic_link' href='javascript:void(0);' name='myopac_container_delete'>&myopac.delete;</a>
-				</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<table width='100%' class='data_grid data_grid_center' style='margin-top: 10px;'>
-		<thead>
-			<tr><td>&myopac.bookbag.create;</td></tr>
-		</thead>
-		<tbody>
-			<tr>
-				<td> 
-					<span style='padding-right: 5px;'>&myopac.bookbag.naming;</span>
-					<input id='myopac_bookbag_new_name' type='text' /> 
-				</td>
-			</tr>
-			<tr>
-				<td>
-					<span style='padding: 5px;'>&myopac.bookbag.share;</span>
-					<a class='classic_link' href='javascript:alert($("bb_publish_text").innerHTML);'><b>&common.help;</b></a>
-					<span>&common.yes;</span> <input type='radio' name='bb_public' id='bb_public_yes'/>
-					<span>&common.no;</span> <input type='radio' name='bb_public' id='bb_public_no' checked='checked'/>
-					<input style='padding-left: 10px;' onclick='myOPACCreateBookbag();' 
-						type='submit' value='&common.submit;' />
-				</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<!--
-	<div style='overflow: auto; max-height: 200px;' class='hide_me'>
-	-->
-	<div style='width: 99%; text-align: center'> <b id='myopac_bookbag_items_name'> </b></div>
-
-	<div class='hide_me' style='width: 100%; text-align: center; font-weight: 700; margin-top: 10px;'
-		id='myopac_bookbag_no_items'>&myopac.bookbag.no.items;</div>
-
-	<table width='100%' class='hide_me data_grid data_grid_center' id='myopac_bookbag_items_table'>
-		<thead> 
-			<tr> <td>&common.title;</td> <td>&common.authors;</td> <td>&myopac.bookbag.remove;</td> </tr> 
-		</thead>
-		<tbody id='myopac_bookbag_items_tbody'>
-			<tr id='myopac_bookbag_items_row'>
-				<td> <a name='myopac_bookbag_items_title' class='classic_link'> </a> </td>
-				<!--
-				<td> <a name='myopac_bookbag_items_author' class='classic_link'> </a> </td>
-				-->
-				<td name='myopac_bookbag_items_author'> </td>
-				<td><a name='myopac_bookbag_items_remove' class='classic_link'>&myopac.remove.link;</a></td>	
-			</tr>
-		</tbody>
-	</table>
-	<!--</div>-->
-
-	<span id='bb_publish_text' class='hide_me'>
-		&myopac.publish.text;
-	</span>
-
-	<span id='myopac_remove_bb_item_confirm' class='hide_me'>
-		&myopac.item.confirm;
-	</span>
-
-	<span id='myopac_make_published_confirm' class='hide_me'>
-		&myopac.publish.confirm;
-	</span>
-
-	<span id='myopac_make_unpublished_confirm' class='hide_me'>
-		&myopac.unpublish.confirm;
-	</span>
-
-	<span id='myopac_bb_update_success' class='hide_me'>
-		&myopac.update.success;
-	</span>
-
-	<span id='bb_create_warning' class='hide_me'>
-		&myopac.create.warning;
-	</span>
-
-	<span id='myopac_bb_what_are' class='hide_me'>
-		&myopac.describe.bookbags;
-	</span>
-
-	<span class='hide_me' id='bb_update_success'>
-		&myopac.updated.success;
-	</span>
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_checked.xml b/Open-ILS/web/opac/skin/default/xml/myopac/myopac_checked.xml
deleted file mode 100644
index 2849ffd..0000000
--- a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_checked.xml
+++ /dev/null
@@ -1,104 +0,0 @@
-
-<div id='myopac_checked_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-
-   <table width='100%'><tbody>
-      <tr>
-         <td aligh='left' class='data_grid'>
-               <!--
-               Total items out: <b id='mo_items_out_count' style='padding-right: 20px;'>0</b>
-               -->
-               &myopac.checked.out; <b id='mo_items_out_count' style='padding: 5px;'>0</b> / 
-               &myopac.checked.overdue; <b id='mo_items_overdue_count' style='padding: 5px;'>0</b>
-         </td>
-         <td align='right'>
-            <button onclick='myOPACRenewSelected();' id='mo_renew_button' disabled='disabled'>&myopac.checked.renew;</button>
-         </td>
-      </tr>
-       <tr id='my_renewing' class='hide_me'><td align='center'><b>&myopac.checked.renewing;</b></td></tr>
-   </tbody></table>
-
-	<table width='100%' class='light_border data_grid'>
-
-		<thead class='color_3'>
-			<tr>
-				<td width='45%'>&common.title;</td>
-				<td width='20%'>&common.author;</td>
-				<td width='10%' nowrap='nowrap' align='center'>&myopac.fines.due;</td>
-				<td width='10%' nowrap='nowrap' align='center'>&myopac.checked.renew.remaining;</td>
-            <td width='15%'>&common.select;
-               (<a id='myopac_select_all_checked' onclick='myopacSelectAllChecked();' 
-                  class='classic_link' href='javascript:void(0);'>&common.all;</a>/<a id='myopac_select_none_checked' 
-                  onclick='myopacSelectNoneChecked();' class='classic_link'   href='javascript:void(0);'>&common.none;</a>)
-            </td>
-			</tr>
-		</thead>
-
-
-		<tbody id='myopac_checked_tbody'>
-
-			<tr id='myopac_checked_none' class='hide_me'>
-				<td colspan='10' align='center'><b>&myopac.checked.noitems;</b></td>
-			</tr>
-
-
-			<tr id='myopac_checked_loading'><td>&common.loading;</td></tr>
-
-			<tr id='myopac_checked_row' class='light_border hide_me'>
-
-				<td name='myopac_checked_title' class='light_border'>
-					<a href='javascript:void(0);' name='myopac_checked_title_link'> </a>
-				</td>
-
-				<td name='myopac_checked_author' class='light_border'>
-					<a href='javascript:void(0);' name='myopac_checked_author_link'> </a>
-				</td>
-
-				<td align='center' name='myopac_checked_due' class='light_border'> </td>
-				<td align='center' name='myopac_checked_renewals' class='light_border'> </td>
-
-            <!--
-				<td align='center' name='myopac_checked_renew' class='light_border'>
-					<a style='text-decoration:underline;' href='javascript:void(0);' 
-						name='myopac_checked_renew_link' class='class_link'>Renew</a>
-				</td>
-            -->
-
-            <td align='center'><input type='checkbox' name='selectme'/></td>
-
-			</tr>
-		</tbody>
-	</table>
-
-	<div id='non_cat_circs_div' class='hide_me'>
-		<br/>
-		<div style='text-align: center'><b>&myopac.common.other.circ;</b></div>
-		<table class='data_grid' width='100%'>
-			<thead>
-				<tr>	
-					<td>&myopac.checked.circ.lib;</td>
-					<td>&myopac.checked.item.type;</td>
-					<td>&myopac.checked.circ.time;</td>
-				</tr>
-			</thead>
-			<tbody id='non_cat_circs_tbody'>
-				<tr id='non_cat_circs_row'>
-					<td name='circ_lib'/>
-					<td name='item_type'/>
-					<td name='circ_time'/>
-				</tr>
-			</tbody>
-		</table>
-	</div>
-
-	<div id='myopac_renew_success' class='hide_me'>&myopac.checked.renew.success;</div>
-
-	<span class='hide_me' id='myopac_renew_confirm'>&myopac.checked.renew.confirm;</span>
-
-	<span class='hide_me' id='myopac_renew_fail'>&myopac.checked.renew.fail;</span>
-
-   <span class='hide_me' id='myopac_renew_fail2'>&myopac.checked.renew.fail2;</span>
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_fines.xml b/Open-ILS/web/opac/skin/default/xml/myopac/myopac_fines.xml
deleted file mode 100644
index db129c0..0000000
--- a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_fines.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-
-<div id='myopac_fines_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-	<table width='100%' class='data_grid data_grid_center'>
-
-		<thead class='color_3'>
-			<tr><td colspan='3' style='padding: 6px'><b>&myopac.fines.title;</b></td></tr>
-			<tr>
-				<td width='33%'>&myopac.fines.owed;</td>
-				<td width='33%'>&myopac.fines.paid;</td>
-				<td width='33%'>&myopac.fines.balance;</td>
-			</tr>
-		</thead>
-
-		<tbody id='myopac_fines_summary_tbody'>
-			<tr id='myopac_fines_summary_loading'><td>&myopac.fines.status;</td></tr>
-			<tr id='myopac_fines_summary_row' class='hide_me'>
-				<td id='myopac_fines_summary_total' >&common.currency;</td>
-				<td id='myopac_fines_summary_paid' >&common.currency;</td>
-				<td id='myopac_fines_summary_balance' style='color:red;font-weight: bold;'>&common.currency;</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<!--
-	<div id='accrue_explanation' class='hide_me'>
-		<span>Transactions whose balances are marked with a</span>
-		<span style='color:red; font-weight: bold'>*</span>
-		<span>will continue to accrue fines until the checked out item is returned.</span>
-	</div>
-	-->
-
-
-	<!-- Table for circulation transactions only -->
-	<div id='myopac_circ_trans_div' class='hide_me'>
-		<br/><hr/><br/>
-		<table width='100%' class='data_grid data_grid_center' id='myopac_circ_trans_table'>
-			<thead>
-				<tr><td colspan='10' style='padding: 6px'><b>&myopac.fines.overdue;</b></td></tr>
-				<tr>
-					<td>&common.title;</td>
-					<td>&common.author;</td>
-					<td>&myopac.fines.checkout;</td>
-					<td>&myopac.fines.due;</td>
-					<td>&myopac.fines.returned;</td>
-					<td>&myopac.fines.balance;</td>
-				</tr>
-			</thead>
-			<tbody id='myopac_circ_trans_tbody'>
-				<tr id='myopac_circ_trans_row'>
-					<td><a class='classic_link' name='myopac_circ_trans_title'> </a></td>
-					<td name='myopac_circ_trans_author'> </td>
-					<td name='myopac_circ_trans_start'> </td>
-					<td name='myopac_circ_trans_due'> </td>
-					<td name='myopac_circ_trans_finished'><span style='color:red;'>&myopac.fines.accruing;</span></td>
-					<td>
-						<span style='color: red; font-weight: bold;' 
-							name='myopac_circ_trans_balance'>&common.currency;</span>
-					</td>
-				</tr>
-			</tbody>
-		</table>
-	</div>
-
-	<!-- Table for all non-circulation transactions -->
-	<div id='myopac_trans_div' class='hide_me'>
-		<br/><hr/><br/>
-		<table width='100%' class='data_grid data_grid_center' id='myopac_trans_table'>
-			<thead>
-				<tr><td colspan='8' style='padding: 6px'><b>&myopac.fines.other;</b></td></tr>
-				<tr>
-					<td width='12%'>&myopac.fines.time.start;</td>
-					<td width='12%'>&myopac.fines.time.paid;</td>
-					<td width='12%'>&myopac.fines.owed.initial;</td>
-					<td width='12%'>&myopac.fines.paid.amount;</td>
-					<td width='12%'>&myopac.fines.balance;</td>
-					<td width='12%'>&myopac.fines.type;</td>
-				</tr>
-			</thead>
-	
-			<tbody id='myopac_trans_tbody'>
-				<tr id='myopac_trans_row'>
-					<td name='myopac_trans_start'> </td>
-					<td name='myopac_trans_last_payment'> </td>
-					<td name='myopac_trans_init_amount'>&common.currency;</td>
-					<td name='myopac_trans_total_paid'>&common.currency;</td>
-					<td style='color:red; font-weight: bold;'>
-						<span name='myopac_trans_balance_recur' class='hide_me'> * </span>
-						<span name='myopac_trans_balance'>&common.currency;</span>
-					</td>
-					<td name='myopac_trans_bill_type'> </td>
-				</tr>
-			</tbody>
-		</table>
-	</div>
-	
-	<br/>
-	
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml b/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml
deleted file mode 100644
index 5a07d9e..0000000
--- a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml
+++ /dev/null
@@ -1,124 +0,0 @@
-
-<div id='myopac_holds_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'> </script>
-
-	<table width='100%'>
-        <tbody><tr><td width='100%' align='right'>
-            <select id='myopac_holds_actions' onchange='myopacDoHoldAction();'>
-                <option id='myopac_holds_actions_none' value=''>-- &myopac.holds.actions; --</option>
-                <option value='freeze'>&myopac.holds.freeze_selected;</option>
-                <option value='thaw'>&myopac.holds.thaw_selected;</option>
-                <option value='thaw_date'>&myopac.holds.thaw_date_selected;</option>
-                <option value='cancel'>&myopac.holds.cancel_selected;</option>
-            </select>
-        </td></tr></tbody>
-        <script language='javascript' type='text/javascript'>$('myopac_holds_actions_none').selected = true;</script>
-    </table>
-
-    <span id='myopac.holds.cancel.confirm' class='hide_me'>&myopac.holds.cancel.confirm;</span>
-    <span id='myopac.holds.freeze.confirm' class='hide_me'>&myopac.holds.freeze.confirm;</span>
-    <span id='myopac.holds.thaw.confirm' class='hide_me'>&myopac.holds.thaw.confirm;</span>
-    <span id='myopac.holds.thaw_date.confirm' class='hide_me'>&myopac.holds.thaw_date.confirm;</span>
-    <span id='myopac.holds.freeze.select_thaw' class='hide_me'>&myopac.holds.freeze.select_thaw;</span>
-
-    <table width='100%' id='myopac_holds_processing' class='hide_me'>
-        <tr><td>&myopac.holds.processing;</td></tr>
-    </table>
-
-    <div id='myopac_holds_thaw_date_form' class='hide_me'>
-        <div id='myopac_holds_freeze_select_thaw'>&myopac.holds.freeze.select_thaw;</div>
-        <p>
-            <input dojoType="dijit.form.DateTextBox" size='10' maxlength='10' type='text' id='myopac_holds_thaw_date_input' /> 
-        </p>
-        <p>
-            <button onclick='myopacApplyThawDate();'>&common.submit;</button>
-        </p>
-    </div>
-
-	<table width='100%' class='light_border data_grid data_grid_center' id='myopac_holds_main_table'>
-
-		<thead class='color_3'>
-			<tr>
-				<td width=''>&common.title;</td>
-				<td width=''>&common.author;</td>
-				<td>&myopac.holds.formats;</td>
-				<td>&myopac.holds.location;</td>
-				<td>&common.status;</td>
-				<td class='hide_me' id='myopac_holds_estimated_wait_column'>&myopac.holds.estimated_wait;</td>
-				<td>&myopac.holds.unfrozen;</td>
-				<td>&myopac.holds.frozen.until;</td>
-				<td>&opac.holds.expire_time;</td>
-                <td width=''>&common.select;
-                    (<a id='myopac_select_all_holds' onclick='myopacSelectAllHolds();' 
-                        class='classic_link' href='javascript:void(0);'>&common.all;</a>/<a id='myopac_select_none_holds' 
-                        onclick='myopacSelectNoneHolds();' class='classic_link'  href='javascript:void(0);'>&common.none;</a>)
-                </td>
-
-				<td>&myopac.holds.edit;</td>
-			</tr>
-		</thead>
-
-		<tbody id='myopac_holds_tbody'>
-
-			<tr id='myopac_holds_none' class='hide_me'>
-				<td colspan='10'><b>&myopac.holds.status.none;</b></td>
-			</tr>
-			<tr id='myopac_holds_loading'><td>&myopac.loading;</td></tr>
-
-			<tr id='myopac_holds_row' class='hide_me'>
-
-				<td name='myopac_holds_title'>
-					<a href='javascript:void(0);' name='myopac_holds_title_link'> </a>
-					<div name='vol_copy' style='border: 1px solid #808080; width:98%; margin-top: 2px;' class='hide_me'>
-						<div style='font-size: 90%' name='part'></div>
-						<div style='font-size: 90%' name='volume'></div>
-						<div style='font-size: 90%' name='copy'></div>
-					</div>
-				</td>
-
-				<td name='myopac_holds_author'>
-					<a href='javascript:void(0);' name='myopac_holds_author_link'> </a>
-				</td>
-
-				<td name='myopac_holds_formats'> </td>
-
-				<td name='myopac_holds_location'></td>
-				<td>
-					<span class='hide_me' name='hold_status_suspended'>&myopac.holds.status.suspended;</span>
-					<span class='hide_me' name='hold_status_waiting'>&myopac.holds.status.waiting;</span>
-					<span class='hide_me' name='hold_status_transit'>&myopac.holds.status.intransit;</span>
-					<span class='hide_me' name='hold_status_available'><b style='color:red'>&myopac.holds.status.available;</b></span>
-					<span class='hide_me' name='hold_qstats'></span>
-				</td>
-                <td class='hide_me' name='myopac_holds_estimated_wait'/>
-
-                <td>
-                    <!-- These characaters do not display in Internet Exploror, *sigh*
-                    <span name='myopac_hold_unfrozen_false' class='x_mark'>&#x2717;</span>
-                    <span name='myopac_hold_unfrozen_true' class='hide_me check_mark'>&#x2713;</span>
-                    -->
-                    <span name='myopac_hold_unfrozen_false' class='x_mark'>&common.no;</span>
-                    <span name='myopac_hold_unfrozen_true' class='hide_me check_mark'>&common.yes;</span>
-                </td>
-
-
-                <td name='myopac_holds_frozen_until'></td>
-                <td name='myopac_hold_expire_time'></td>
-                <td><input type='checkbox' name='myopac_holds_selected_chkbx'/></td>
-
-				<td name='myopac_holds_cancel' style='border-left: 3px solid #E0E0E0; border-right: 3px solid #E0E0E0;'>
-					<a href='javascript:void(0);' 
-						name='myopac_holds_edit_link' class='classic_link'>&myopac.holds.edit;</a>
-				</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<span class='hide_me' id='myopac_holds_cancel_verify'>
-		&myopac.holds.verify;
-	</span>
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_prefs.xml b/Open-ILS/web/opac/skin/default/xml/myopac/myopac_prefs.xml
deleted file mode 100644
index 0687aa6..0000000
--- a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_prefs.xml
+++ /dev/null
@@ -1,105 +0,0 @@
-
-<div id='myopac_prefs_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-	<table width='100%' class='data_grid'>
-
-		<thead>
-			<tr>
-				<td colspan='2' align='center'>
-					<b>&myopac.prefs.title;</b>
-				</td>
-			</tr>
-		</thead>
-
-		<tbody id='myopac_prefs_tbody'>
-			<tr id='myopac_prefs_loading'><td colspan='3'><b>&myopac.loading;</b></td></tr>
-			<tr id='myopac_prefs_row'>
-				<td width='50%'>&myopac.prefs.hits;</td>
-				<td>
-					<select id='prefs_hits_per'>
-						<option value='5'>5</option>
-						<option value='8'>8</option>
-						<option value='10'>10</option>
-						<option value='15'>15</option>
-						<option value='20'>20</option>
-						<option value='25'>25</option>
-						<option value='50'>50</option>
-					</select>
-				</td>
-			</tr>
-
-			<!-- FONT size preference -->
-			<tr>
-				<td>&myopac.prefs.font;</td>
-				<td>
-					<select id='prefs_def_font'>
-						<option value='regular'>&myopac.prefs.font.regular;</option>
-						<option value='large'>&myopac.prefs.font.large;</option>
-					</select>
-				</td>
-			</tr>
-
-			<!-- default hold notification type -->
-			<tr>
-				<td>
-					<span>&myopac.prefs.holds.notify;</span>
-					<a class='classic_link' href='javascript:void(0);' 
-						onclick='alert($("myopac_pref_hold_notify_alert").textContent);' >&common.help;</a>
-				</td>
-				<td>
-					<select id='prefs_hold_notify'>
-						<option value='phone:email' selected='selected'>&myopac.prefs.holds.both;</option>
-						<option value='phone'>&myopac.prefs.holds.phone;</option>
-						<option value='email'>&myopac.prefs.holds.email;</option>
-					</select>
-				</td>
-			</tr>
-
-
-			<tr id='prefs_def_location_row'>
-				<td>&myopac.prefs.search.location;</td>
-				<td>
-					<div style='margin-bottom: 5px;'>
-						<input type='checkbox' id='myopac_pref_home_lib' 
-							onclick='
-								if( this.checked ) $("prefs_def_location").disabled = true;
-								else $("prefs_def_location").disabled = false;
-							' /> &myopac.prefs.search.home; 
-					</div>
-					<select id='prefs_def_location'>
-					</select>
-				</td>
-			</tr>
-
-			<tr id='prefs_def_range_row'>
-				<td>&myopac.prefs.search.range;</td>
-				<td>
-					<select id='prefs_def_range'>
-					</select>
-				</td>
-			</tr>
-
-
-
-			<!-- Save the preferences -->
-			<tr><td colspan='2'><br/></td></tr>
-
-			<tr>
-				<td align='center' class='color_3' colspan='2'>
-					<button onclick='myOPACSavePrefs();' 
-						id='myopac_prefs_submit'>&myopac.prefs.save;</button>
-				</td>
-			</tr>
-
-		</tbody>
-	</table>
-
-	<div class='hide_me' id='prefs_update_success'>&myopac.prefs.save.success;</div>
-	<div class='hide_me' id='prefs_update_failure'>&myopac.prefs.save.failed;</div>
-	<span class='hide_me' id='myopac_pref_hold_notify_alert'>
-		&myopac.prefs.help;
-	</span>
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_summary.xml b/Open-ILS/web/opac/skin/default/xml/myopac/myopac_summary.xml
deleted file mode 100644
index 821f870..0000000
--- a/Open-ILS/web/opac/skin/default/xml/myopac/myopac_summary.xml
+++ /dev/null
@@ -1,311 +0,0 @@
-
-<div id='myopac_summary_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-
-    <div id='myopac.expired.alert' class='hide_me' style='margin-bottom: 20px;'>
-		<table class='data_grid' width='100%'>
-            <tbody>
-                <tr>
-                    <td width='100%' style='color:red;'>
-		    	&myopac.summary.expired;
-                    </td>
-                </tr>
-            </tbody>
-        </table>
-    </div>
-
-	<div id='myopac.notes.div' class='hide_me'>
-		<table class='data_grid' width='100%'>
-			<thead>
-				<tr>
-					<td colspan='2'><b> &myopac.summary.notes;</b></td>
-				</tr>
-			</thead>
-			<tbody id='myopac.notes.tbody'>
-				<tr id='myopac.notes.tr'>
-					<td>
-						<b name='title'/> : <span name='value'/>
-					</td>
-				</tr>
-			</tbody>
-		</table>
-		<br/>
-	</div>
-
-	<table width='70%' class='light_border myopac_summary_table'>
-		<tbody id='myopac_summary_tbody'>
-			<tr>
-				<td width='30%' class='color_4 light_border'>&common.name;</td>
-				<td class='light_border'>
-					<span id='myopac_summary_prefix' style='padding-right: 5px;'> </span> 
-					<span id='myopac_summary_first' style='padding-right: 5px;'> </span> 
-					<span id='myopac_summary_middle' style='padding-right: 5px;'> </span> 
-					<span id='myopac_summary_last' style='padding-right: 5px;'> </span> 
-					<span id='myopac_summary_suffix'> </span> 
-				</td>
-			</tr>
-
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.phone.day;</td>
-				<td class='light_border' id='myopac_summary_dayphone'> </td>
-			</tr>
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.phone.evening;</td>
-				<td class='light_border' id='myopac_summary_eveningphone'> </td>
-			</tr>
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.phone.other;</td>
-				<td class='light_border' id='myopac_summary_otherphone'> </td>
-			</tr>
-			<tr>
-				<td class='color_4 light_border'>&common.username;</td>
-				<td class='light_border' id='myopac_summary_username'> </td>
-				<td class='light_border'><a href='javascript:void(0);' 
-					onclick='unHideMe($("myopac_update_username_row"));$("myopac_username_current_password").focus();'
-					id='myopac_summary_username_change' style='text-decoration: underline;'>&myopac.summary.change;</a></td>
-			</tr>
-
-			<tr id='myopac_update_username_row' class='hide_me'>
-				<td class='myopac_update_cell' colspan='3'>
-
-					<table><tbody>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.password.current; </span></td>
-							<td><input type='password' size='24' id='myopac_username_current_password'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdateUsername();' /></td>
-						</tr>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.username.enter; </span></td>
-							<td><input type='text' size='24' id='myopac_new_username'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdateUsername();' /></td>
-						</tr>
-					</tbody></table>
-
-					<span class='myopac_update_span'>
-						<button onclick='myOPACUpdateUsername();'>&common.submit;</button>
-					</span>
-					<span class='myopac_update_span'>
-						<button onclick='hideMe($("myopac_update_username_row"));'>&common.cancel;</button>
-					</span>
-				</td>
-			</tr>
-
-
-			<tr>
-				<td class='color_4 light_border'>&common.password;</td>
-				<td class='light_border' id='myopac_summary_password'>&myopac.summary.password.text;</td>
-				<td class='light_border'><a href='javascript:void(0);' 
-					onclick='unHideMe($("myopac_update_password_row"));$("myopac_current_password").focus();'
-					id='myopac_summary_password_change' style='text-decoration: underline;'>&myopac.summary.change;</a></td>
-			</tr>
-
-			<tr id='myopac_update_password_row' class='hide_me'>
-				<td class='myopac_update_cell' colspan='3'>
-
-					<table><tbody>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.password.current; </span></td>
-							<td><input type='password' size='24' id='myopac_current_password'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();' /></td>
-						</tr>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.password.new; </span></td>
-							<td><input type='password' size='24' id='myopac_new_password'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();' /></td>
-						</tr>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.password.reenter; </span></td>
-							<td><input type='password' size='24' id='myopac_new_password2'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();' /></td>
-						</tr>
-					</tbody></table>
-
-					<span class='myopac_update_span'>
-						<button onclick='myOPACUpdatePassword();'>&common.submit;</button>
-					</span>
-					<span class='myopac_update_span'>
-						<button onclick='hideMe($("myopac_update_password_row"));'>&common.cancel;</button>
-					</span>
-				</td>
-			</tr>
-
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.email;</td>
-				<td class='light_border' id='myopac_summary_email'> </td>
-				<td class='light_border'><a href='javascript:void(0);' 
-					onclick='unHideMe($("myopac_update_email_row"));$("myopac_email_current_password").focus();'
-					id='myopac_summary_email_change' style='text-decoration: underline;'>&myopac.summary.change;</a></td>
-			</tr>
-
-			<tr id='myopac_update_email_row' class='hide_me'>
-				<td class='myopac_update_cell' colspan='3'>
-
-					<table><tbody>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.password.current; </span></td>
-							<td><input type='password' size='24' id='myopac_email_current_password'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdateEmail();' /></td>
-						</tr>
-						<tr>
-							<td><span class='myopac_update_span'>&myopac.summary.email.new; </span></td>
-							<td><input type='text' size='24' id='myopac_new_email'
-								onkeydown='if(userPressedEnter(event)) myOPACUpdateEmail();' /></td>
-						</tr>
-					</tbody></table>
-
-					<span class='myopac_update_span'>
-						<button onclick='myOPACUpdateEmail();'>&common.submit;</button>
-					</span>
-					<span class='myopac_update_span'>
-						<button onclick='hideMe($("myopac_update_email_row"));'>&common.cancel;</button>
-					</span>
-				</td>
-			</tr>
-
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.id.primary;</td>
-				<td class='light_border' id='myopac_summary_ident1'> </td>
-			</tr>
-			<!--
-			<tr>
-				<td class='color_4 light_border'>Secondary Identification</td>
-				<td class='light_border' id='myopac_summary_ident2'> </td>
-			</tr>
-			-->
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.barcode;</td>
-				<td class='light_border' id='myopac_summary_barcode'> </td>
-			</tr>
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.home;</td>
-				<td class='light_border' id='myopac_summary_homelib'> </td>
-			</tr>
-			<tr>
-				<td class='color_4 light_border'>&myopac.summary.genesis;</td>
-				<td class='light_border' id='myopac_summary_create_date'> </td>
-			</tr>
-
-		</tbody>
-	</table>
-
-
-	<br/><hr/><br/>
-
-	<table width='100%' class='light_border data_grid'>
-        <thead>
-            <tr>
-                <td>&myopac.summary.addresses;</td>
-                <td id='myopac_pending_addr_td' class='hide_me'>&myopac.summary.addresses.pending;</td>
-            </tr>
-        </thead>
-		<tbody id='myopac_addr_tbody'>
-			<tr id='myopac_addr_row' class='light_border'>
-                <td>
-                    <table>
-                        <tr>
-                            <td>&myopac.summary.address.type;</td>
-                            <td name='myopac_addr_type'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.street;</td>
-                            <td name='myopac_addr_street'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.street;</td>
-                            <td name='myopac_addr_street2'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.city;</td>
-                            <td name='myopac_addr_city'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.county;</td>
-                            <td name='myopac_addr_county'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.state;</td>
-                            <td name='myopac_addr_state'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.country;</td>
-                            <td name='myopac_addr_country'> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.zip;</td>
-                            <td name='myopac_addr_zip'> </td>
-                        </tr>
-                        <tr name='myopac_invalid_addr_row' class='hide_me'>
-                            <td colspan='2'>&myopac.summary.address.invalid;</td>
-                        </tr>
-                        <tr>
-                            <td name='myopac_addr_edit_td' colspan='2' class='hide_me'>
-                                <a class='classic_link' name='myopac_addr_edit_link' href='javascript:void(0);'>&myopac.summary.address.edit;</a>
-                            </td>
-                        </tr>
-                    </table>
-                </td>
-                <td class='hide_me' name='myopac_pending_addr_td'>
-                    <table>
-                        <tr>
-                            <td>&myopac.summary.address.type;</td>
-                            <td><input name='myopac_pending_addr_type'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.street;</td>
-                            <td><input name='myopac_pending_addr_street'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.street;</td>
-                            <td><input name='myopac_pending_addr_street2'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.city;</td>
-                            <td><input name='myopac_pending_addr_city'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.county;</td>
-                            <td><input name='myopac_pending_addr_county'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.state;</td>
-                            <td><input name='myopac_pending_addr_state'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.country;</td>
-                            <td><input name='myopac_pending_addr_country'/> </td>
-                        </tr>
-                        <tr>
-                            <td>&myopac.summary.address.zip;</td>
-                            <td><input name='myopac_pending_addr_zip'/> </td>
-                        </tr>
-                        <tr>
-                            <td name='myopac_addr_edit_td' colspan='2'>
-                                <a class='classic_link' name='myopac_pending_addr_edit_link' href='javascript:void(0);'>Save Changes</a>
-                                <a style='padding-left:10px;' class='classic_link' name='myopac_pending_addr_del_link' href='javascript:void(0);'>Discard Pending Address</a>
-                            </td>
-                        </tr>
-                    </table>
-                </td>
-            </tr>
-		</tbody>
-	</table>
-
-	<div class='hide_me' id='myopac_username_error'>&myopac.summary.username.error;</div>
-	<div class='hide_me' id='myopac_username_dup'>
-		&myopac.summary.username.dup;
-	</div>
-	<div class='hide_me' id='myopac_username_success'>&myopac.summary.username.success;</div>
-	<div class='hide_me' id='myopac_username_failure'>&myopac.summary.username.failure;</div>
-
-	<div class='hide_me' id='myopac_email_error'>&myopac.summary.email.error;</div>
-	<div class='hide_me' id='myopac_email_success'>&myopac.summary.email.success;</div>
-	<div class='hide_me' id='myopac_email_failure'>&myopac.summary.email.failed;</div>
-
-	<div class='hide_me' id='myopac_password_error'>&myopac.summary.password.error;</div>
-	<div class='hide_me' id='myopac_password_success'>&myopac.summary.password.success;</div>
-	<div class='hide_me' id='myopac_password_failure'>&myopac.summary.password.failure;</div>
-	<span class='hide_me' id='myopac_invalid_username'>&myopac.summary.username.invalid;</span>
-	<span class='hide_me' id='myopac_addr_changes_saved'>Address Saved</span>
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/page_advanced.xml b/Open-ILS/web/opac/skin/default/xml/page_advanced.xml
deleted file mode 100644
index 0218dfb..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_advanced.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<div id='canvas_main' class='canvas' style='margin-top: 20px;'>
-
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/advanced.js'></script>
-
-	<style type='text/css'>
-		.advanced_div { text-align: center; margin: 8px; margin-left: 2px; width: 95%; padding: 5px; }
-	</style>
-
-	<div class='advanced_div'>
-		<!--#include virtual="advanced/advanced_global.xml"-->
-	</div>
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml b/Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml
deleted file mode 100644
index f8c8897..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<div id='canvas_main' class='canvas' style='margin-top: 20px;'>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/authbrowse.js'></script>
-
-    <div class="authority-pager">
-        <a id="authority-page-up" href="#" class="hide_me classic_link">&common.cn.previous;</a>
-    </div>
-
-    <div id="authority-record-holder"></div>
-
-    <div class="authority-pager">
-        <a id="authority-page-down" href="#" class="hide_me classic_link">&common.cn.next;</a>
-    </div>
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/page_cnbrowse.xml b/Open-ILS/web/opac/skin/default/xml/page_cnbrowse.xml
deleted file mode 100644
index cc2c4a4..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_cnbrowse.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<div id='canvas_main' class='canvas' style='margin-top: 20px;'>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/cn_browse.js'></script>
-	<!--#include virtual="common/cn_browse.xml"-->
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/page_mresult.xml b/Open-ILS/web/opac/skin/default/xml/page_mresult.xml
deleted file mode 100644
index b507d42..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_mresult.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<div>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/mresult.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/tips.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'></script>   
-	<!--#include virtual="result/result_common.xml"-->
-</div>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/page_myopac.xml b/Open-ILS/web/opac/skin/default/xml/page_myopac.xml
deleted file mode 100644
index e7d86ac..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_myopac.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<div id='canvas_main' class='canvas hide_me'>
-
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/myopac.js'></script>
-
-	<script language='javascript' type='text/javascript'> config.ids.altcanvas.myopac_reload = 'myopac_reloading'; </script>
-	<div id='myopac_reloading' class='hide_me canvas'> &common.loading; </div>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.myopac = {};
-		config.css.myopac = {};
-		config.names.myopac = {};
-	</script>
-
-	<br/>
-	<table style='width: 98%; text-align: center;'>
-		<tbody>
-			<tr id='myopac_nav_row'>
-
-				<td class='myopac_link border_6' id='myopac_summary_td' >
-					<a href='javascript:void(0);' 
-						onclick='myOPACChangePage("summary");'>&myopac.account;</a>
-				</td>
-
-				<td class='myopac_link border_6' id='myopac_checked_td' >
-					<a href='javascript:void(0);' 
-						onclick='myOPACChangePage("checked");'>&myopac.checkouts;</a>
-				</td>
-
-				<td class='myopac_link border_6' id='myopac_holds_td' >
-					<a href='javascript:void(0);' 
-						onclick='myOPACChangePage("holds");'>&myopac.holds;</a>
-				</td>
-
-				<td class='myopac_link border_6' id='myopac_fines_td' >
-					<a href='javascript:void(0);' 
-						onclick='myOPACChangePage("fines");'>&myopac.fines;</a>
-				</td>
-
-				<td class='myopac_link border_6' id='myopac_prefs_td' >
-					<a href='javascript:void(0);' 
-						onclick='myOPACChangePage("prefs");'>&myopac.preferences;</a>
-				</td>
-
-				<td class='myopac_link border_6' id='myopac_bookbag_td' nowrap='nowrap'>
-					<a href='javascript:void(0);' 
-						onclick='myOPACChangePage("bookbag");'>&myopac.bookbags;</a>
-
-				</td>
-
-			</tr>
-		</tbody>
-	</table>
-
-	<br/>
-
-	<div id='myopac_main_div'>
-		<!--#include virtual="myopac/myopac_summary.xml"-->
-		<!--#include virtual="myopac/myopac_checked.xml"-->
-		<!--#include virtual="myopac/myopac_holds.xml"-->
-		<!--#include virtual="myopac/myopac_fines.xml"-->
-		<!--#include virtual="myopac/myopac_prefs.xml"-->
-		<!--#include virtual="myopac/myopac_bookbags.xml"-->
-	</div>
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/page_rdetail.xml b/Open-ILS/web/opac/skin/default/xml/page_rdetail.xml
deleted file mode 100644
index f676a72..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_rdetail.xml
+++ /dev/null
@@ -1,93 +0,0 @@
-<div id='canvas_main' class='canvas'>
-
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rresult.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rdetail.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/cn_browse.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/container.js'></script>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.rdetail = {};
-		config.ids.rdetail.view_marc = "rdetail_view_marc";
-	</script>
-
-	<table width='100%' id='np_table' class='hide_me' style='margin-top: 3px;'>
-		<tbody>
-			<tr class='color_4' style='height: 1em;'>
-				<td style='vertical-align: top;'>
-
-					<span>
-						&rdetail.result; <span id='np_offset'> </span>
-						<span> &common.of; </span>
-						<span id='np_count'> </span>
-					</span>
-	
-					<span style='padding-left: 40px;' >
-						<a class='np_nav_link classic_link hide_me' id='np_start'
-							href='javascript:rdetailStart();' title="&rdetail.page.results;">&rdetail.start;</a>
-						<a class='np_nav_link classic_link hide_me' id='np_prev'
-							href='javascript:rdetailPrev();' title='&rdetail.page.previous;'>&rdetail.page.previous.short;</a>
-						<span> </span>
-						<a  class='np_nav_link classic_link hide_me' id='np_next'
-							href='javascript:rdetailNext();' title='&rdetail.page.next;'>&rdetail.page.next.short;</a>
-						<a class='np_nav_link classic_link hide_me' id='np_end'
-							href='javascript:rdetailEnd();' title="&rdetail.page.last;">&rdetail.end;</a>
-					</span>
-	
-				</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<table style='' class='rdetail_header color_1' width='100%'>
-		<tbody>
-
-			<tr>
-				<td width='33%' align='left'>
-					<span>&rdetail.detailMain.headerLabel;</span>
-				</td>
-
-				<td align='right' style='padding-right: 7px;' width='33%'>
-					<span id='rdetail_exp_refworks_span' class='hide_me' style='padding-right: 7px;'>
-						<a id='rdetail_exp_refworks'>&opac.holds.exportRefWorks;</a>
-					</span>
-					<span style='padding-right: 7px;'>
-						<a id='rdetail_place_hold' class='classic_link' href='javascript:;'>&opac.holds.placeHold;</a>
-					</span>
-					<span style='padding-right: 7px;' class='hide_me' id='rdetail_more_actions'>
-						<select id='rdetail_more_actions_selector' style='max-width: 11em;'>
-							<option value='start'>&rdetail.more;</option>
-							<option disabled='disabled'>--------------</option>
-							<option disabled='disabled'>&rdetail.bookbag.add;</option>
-							<option disabled='disabled'>--------------</option>
-							<option value='new_bookbag' onclick='rdetailNewBookbag();'>&rdetail.bookbag.create;</option>
-							<option disabled='disabled'>--------------</option>
-						</select>
-					</span>
-
-				</td>
-			</tr>
-		</tbody>
-	</table>
-
-	<div style='font-weight: bold; padding: 5px; margin: 5px; width: 100%;' 
-		class='hide_me color_4' id='rdetail_deleted_exp'>
-		&rdetail.record.deleted;
-	</div>
-
-	<!--#include virtual="rdetail/rdetail_summary.xml"-->
-	<br/><br/>
-	<!--#include virtual="rdetail/rdetail_extras.xml"-->
-
-	<div class='hide_me' id='rdetail_bb_none'>&rdetail.none;</div>
-	<div class='hide_me' id='rdetail_bb_item_success'>&rdetail.bookbag.add.success;</div>
-	<div dojoType='dijit.Dialog' id='newBBDialog' jsId='newBBDialog' title='&rdetail.bookbag.name;' style="width: 20em;">
-        <input id='bbName' jsId='bbName' dojoType='dijit.form.TextBox'></input><br/>
-        <button id='bbok' dojoType='dijit.form.Button' onClick='finishBookbag(0);' type='button'>&common.submit;</button>
-        <button id='bbca' dojoType='dijit.form.Button' onClick='finishBookbag(1);' type='button'>&common.cancel;</button>
-    </div>
-	<div class='hide_me' id='rdetail_bb_success'>&rdetail.bookbag.create.success;</div>
-
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/page_rresult.xml b/Open-ILS/web/opac/skin/default/xml/page_rresult.xml
deleted file mode 100644
index 2d0f2f6..0000000
--- a/Open-ILS/web/opac/skin/default/xml/page_rresult.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<div>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rresult.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/tips.js'></script>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'></script>   
-	<!--#include virtual="result/result_common.xml"-->
-</div>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_altcanvas.xml b/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_altcanvas.xml
deleted file mode 100644
index ff17d17..0000000
--- a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_altcanvas.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-<!-- record details alternate canvases -->
-<div class=''>
-
-	<!--
-	<script language='javascript' type='text/javascript'>
-		config.ids.rdetail.view_marc_div = 'view_marc_div';
-		config.ids.altcanvas.view_marc_div = config.ids.rdetail.view_marc_div; 
-		config.ids.rdetail.hide_marc = "rdetail_hide_marc";
-		config.ids.rdetail.view_marc_box = "rdetail_view_marc_box";
-	</script>
-
-	<div class='hide_me canvas' id='view_marc_div'> 
-		<div>
-			<table width='100%'><tbody><tr>
-				<td class='color_1' align='left' style='padding-left: 7px;text-decoration: underline;'>
-					<a href="javascript:void(0);" id='rdetail_hide_marc'>&rdetail.detailMain.hideMarc;</a>
-				</td>
-			</tr></tbody></table>
-		</div>
-		<br/>
-		<div id='rdetail_view_marc_box'> </div>
-		<br/><br/>
-	</div>
-	-->
-	
-</div>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml b/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml
deleted file mode 100644
index 294f4fe..0000000
--- a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml
+++ /dev/null
@@ -1,110 +0,0 @@
-<table class='hide_me'>
-	<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/copy_details.js'></script>
-	<tbody>
-		<tr style='border: 3px solid #E0E0E0;' id='rdetail_volume_details_row' templateRow='1'>
-			<td colspan='10'>
-				<div style='text-align: center; margin-top: 6px; margin-bottom: 6px'>
-				
-					<a name='print' href='javascript:void(0);' class='classic_link'>&rdetail.print;</a>
-					<table class='data_grid data_grid_center' style='width: 100%'>
-						<thead>
-							<tr>
-								<td width='33%'>&rdetail.cn.barcode;</td>
-								<td>&common.status;</td>
-								<td>&rdetail.cn.location;</td>
-								<td name='copy_part_label' class='hide_me'>&rdetail.cn.part;</td>
-								<td name='age_protect_label' class='hide_me'>&rdetail.cn.hold.age;</td>
-								<td name='create_date_label' class='hide_me'>&rdetail.cn.genesis;</td>
-                                <td name='active_date_label' class='hide_me'>&rdetail.cn.active;</td>
-								<td name='holdable_label' class='hide_me'>&rdetail.cn.holdable;</td>
-								<td name='due_date_label' class='hide_me'>&rdetail.cn.due;</td>
-							</tr>
-						</thead>
-						<tbody name='copies_tbody' class='copy_details_table' width='100%'>
-
-							<tr name='copies_row'>
-
-								<td>
-									<span name='barcode'> </span>
-									<a class='hide_me classic_link copy_more_info' name='details_link'>&rdetail.cn.more;</a>
-									<a class='hide_me classic_link copy_more_info' name='less_details_link'>&rdetail.cn.less;</a>
-									<a class='hide_me classic_link copy_more_info' name='copy_hold_link' 
-										href='javascript:void(0);'>&rdetail.cn.hold;</a>
-									<a class='hide_me classic_link copy_more_info' name='copy_reserve_link' 
-										href='javascript:void(0);'>&rdetail.cn.reserve;</a>
-									<a class='hide_me classic_link copy_more_info' name='copy_multi_home'
-										href='javascript:void(0);'>&rdetail.cn.multi_home;</a>
-								</td>
-
-								<td name='status'> </td>
-								<td name='location'> </td>
-								<td name='copy_part' class='hide_me'> </td>
-								<td name='age_protect_value' class='hide_me'>&rdetail.cn.disabled;</td>
-								<td name='create_date_value' class='hide_me'> </td>
-                                <td name='active_date_value' class='hide_me'> </td>
-
-								<td name='copy_holdable_td' class='hide_me'>
-									<span name='copy_is_holdable'> </span>
-								</td>
-
-								<td name='copy_due_date_td' class='hide_me'>
-									<span name='copy_due_date'> </span>
-								</td>
-
-							</tr>
-
-							<tr name='copy_extras_row' class='hide_me'>
-								<td colspan='10'>
-									<table width='100%' class='data_grid'>
-										<tbody name='extras_tbody'>
-											<tr name='extras_row' class='hide_me'>
-												<td name='type' width='20%'> 
-													<span name='note' class='hide_me'><b>&rdetail.cn.note;</b></span>
-													<span name='cat' class='hide_me'><b>&rdetail.cn.category;</b></span>
-												</td>
-												<td>
-													<span name='key'> </span> : <span name='value'> </span>
-												</td>
-											</tr>
-										</tbody>
-									</table>
-								</td>
-							</tr>
-
-						</tbody>
-					</table>
-				</div>
-			</td>
-		</tr>
-	</tbody>
-</table>
-
-<span class='hide_me' id='rdetail.yes'>&common.yes;</span>
-<span class='hide_me' id='rdetail.no'>&common.no;</span>
-
-
-<div id='rdetail_print_details' class='hide_me'>
-	<div style='text-align: center; padding: 20px; width: 100%'>
-		<div style='width:100%; border: 2px solid #E0F0E0; margin-bottom: 20px;'>
-			<input type='submit' value='&rdetail.cn.print;' onclick='window.print();'> </input>
-		</div>
-		<div name='body'> 
-			<table>
-				<tbody name='tbody'>
-					<tr><td>&common.library;</td><td colspan='2' name='lib'></td></tr>
-					<tr><td>&common.title;</td><td colspan='2' name='title'></td></tr>
-					<tr><td>&common.author;</td><td colspan='2' name='author'></td></tr>
-					<tr><td>&common.edition;</td><td colspan='2' name='edition'></td></tr>
-					<tr><td>&common.pubdate;</td><td colspan='2' name='pubdate'></td></tr>
-					<tr><td>&common.publisher;</td><td colspan='2' name='publisher'></td></tr>
-					<tr><td>&common.physical;</td><td colspan='2' name='phys'></td></tr>
-					<tr>
-						<td colspan='3' style='background: #E0F0E0;'> </td>
-					</tr>
-					<tr name='cnrow'><td><b>&common.callnumber;</b></td><td><b colspan='2' name='cn'></b></td></tr>
-				</tbody>
-			</table>
-		</div>
-	</div>
-</div>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_copyinfo.xml b/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_copyinfo.xml
deleted file mode 100644
index 01e463b..0000000
--- a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_copyinfo.xml
+++ /dev/null
@@ -1,89 +0,0 @@
-
-<!-- This holds information for copies attached to this record -->
-<div id='rdetail_copy_info_div' class='rdetail_extras_div'>
-
-	<div style='width: 100%; text-align: center; padding-bottom: 5px;'>
-		<span>
-			<a href='javascript:void(0);' id='copy_info_local_link' 
-				class='rdetail_copy_nav_link hide_me classic_link'><b>&rdetail.copyInfo.local;</b></a>
-		</span>
-		<span width=''>
-			<a href='javascript:void(0);' id='copy_info_all_link' 
-				class='rdetail_copy_nav_link classic_link'><b>&rdetail.copyInfo.all;</b></a>
-		</span>
-	</div>
-
-	<table id='rdetail_copy_info_table' class='data_grid'>
-		<thead>
-
-			<tr>
-				<td  class='rdetail_copy_info_header_cell'>&rdetail.copyInfo.library;</td>
-				<td  class='rdetail_copy_info_header_cell'>&rdetail.copyInfo.callnumber;</td>
-				<td  name='rdetail_copylocation_header' class='rdetail_copy_info_header_cell hide_me'>&rdetail.copyInfo.copylocation;</td>
-				<td  class='rdetail_copy_info_header_cell'>&rdetail.copyInfo.actions;</td>
-				<td  nowrap='nowrap' class='rdetail_copy_info_header_cell' id='rdetail_copy_info_status'> 
-					<div name='rdetail_status_cell'> </div>
-				</td>
-			</tr>
-
-		</thead>
-		<tbody id='rdetail_copy_info_tbody'>
-			<tr id='rdetail_copy_info_row' class='hide_me'>
-				<td name='rdetail_library_cell'>
-					<a name='lib_print_link' class='hide_me classic_link' style='font-size: 8pt; padding-left: 20px;'>
-						&rdetail.copyInfo.print;
-					</a>
-				</td>
-				<td name='rdetail_callnumber_cell'> </td>
-				<td class="hide_me" name='rdetail_copylocation_cell'> </td>
-				<td name='rdetail_actions_cell'> 
-					<div style='padding-bottom: 1px;'>
-						<a style='font-size: 8pt;'
-							name='details' class='hide_me classic_link'>&rdetail.copyInfo.details;</a>
-					</div>
-					<div style='margin-top: 2px;'>
-						<a name='browse' style='font-size: 8pt;'
-							class='hide_me classic_link'>&rdetail.copyInfo.browse;</a>
-					</div>
-					<div style='margin-top: 2px;' name='hold_div' class='hide_me'>
-						<a name='hold' style='font-size: 8pt;' href='javascript:void(0);'
-							class='classic_link'>&rdetail.copyInfo.hold;</a>
-					</div>
-				</td>
-				<td nowrap='nowrap' class='rdetail_copy_count_cell vertical' 
-					name='rdetail_copy_count_cell'> </td>
-			</tr>
-
-			<tr id='rdetail_copy_info_loading'><td>&rdetail.loading;</td></tr>
-
-		</tbody>
-	</table>
-
-	<!--
-	<table class='hide_me'>
-		<tbody>
-		<tr style='border: 3px solid #E0E0E0;' id='rdetail_volume_details_row'><td colspan='10'></td></tr>
-		</tbody>
-	</table>
-	-->
-
-	<br/><br/>
-
-	<div id='rdetail_copy_info_none' class='hide_me'>&rdetail.noneAvailable;</div>
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.rdetail.cp_status			= "rdetail_copy_info_status";
-		config.ids.rdetail.cp_info_row		= "rdetail_copy_info_row";
-		config.ids.rdetail.cp_info_loading	= "rdetail_copy_info_loading";
-		config.ids.rdetail.cp_info_local		= "copy_info_local_link";
-		config.ids.rdetail.cp_info_all		= "copy_info_all_link";
-		config.ids.rdetail.cp_info_none		= "rdetail_copy_info_none";
-		config.names.rdetail.lib_cell			= "rdetail_library_cell";
-		config.names.rdetail.cn_cell			= "rdetail_callnumber_cell";
-		config.names.rdetail.cp_count_cell	= "rdetail_copy_count_cell";
-		config.names.rdetail.cp_status		= 'rdetail_status_cell';
-	</script>
-
-</div> <!-- copy info -->
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_extras.xml b/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_extras.xml
deleted file mode 100644
index 47382b6..0000000
--- a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_extras.xml
+++ /dev/null
@@ -1,184 +0,0 @@
-
-<div xmlns:xi="http://www.w3.org/2001/XInclude">
-
-	<table class='rdetails_extra_links'>
-		<thead>
-			<tr>
-				<td id='rdetail_copy_info_link' class='rdetail_extras_td rdetail_extras_selected' 
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("copyinfo");' 
-						class='classic_link'>&rdetail.extras.summary;</a>
-				</td>
-
-				<td id='rdetail_viewcn_link' class='rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("cn");' 
-						class='classic_link'>&rdetail.extras.browser;</a>
-				</td>
-
-				<td id='rdetail_summary_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("summary");' 
-						class='classic_link'>&rdetail.extras.bib_summary;</a>
-				</td>
-
-				<td id='rdetail_reviews_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("reviews");' 
-						class='classic_link'>&rdetail.extras.reviews;</a>
-				</td>
-
-				<td id='rdetail_toc_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("toc");' 
-						class='classic_link'>&rdetail.extras.toc;</a>
-				</td>
-
-				<td id='rdetail_excerpt_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("excerpt");' 
-						class='classic_link'>&rdetail.extras.excerpt;</a>
-				</td>
-
-				<td id='rdetail_preview_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("preview");' 
-						class='classic_link'>&rdetail.extras.preview;</a>
-				</td>
-
-				<td id='rdetail_anotes_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("anotes");' 
-						class='classic_link'>&rdetail.extras.author.notes;</a>
-				</td>
-
-				<td id='rdetail_annotation_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("annotation");' 
-						class='classic_link'>&rdetail.extras.annotation;</a>
-				</td>
-
-				<td id='rdetail_viewmarc_link' class='rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("marc");' 
-						class='classic_link'>&rdetail.extras.marc;</a>
-				</td>
-
-				<td id='rdetail_novelist_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("novelist");' 
-						class='classic_link'>&rdetail.extras.novelist;</a>
-				</td>
-
-				<td id='rdetail_foreign_items_link' class='hide_me rdetail_extras_td'
-					style='padding-right: 15px; padding-left: 15px;' >
-					<a href='javascript:rdetailShowExtra("foreign_items");'
-						class='classic_link'>&rdetail.extras.foreign_items;</a>
-				</td>
-
-			</tr>
-		</thead>
-	</table>
-
-	<div id='rdetail_extras_div' style='width: 95%;'> 
-		<div id='rdetail_extras_loading' class='hide_me' 
-			style='padding: 10px;'>&common.loading;</div>
-		<!--#include virtual="rdetail_copyinfo.xml"-->
-
-		<div id='rdetail_summary_div' class='rdetail_extras_div hide_me'> </div>
-
-		<div id='rdetail_reviews_div' class='rdetail_extras_div hide_me'> 
-			<div id='rdetail_review_container'/>
-			<!--
-			<div id='rdetail_review_template' style='width: 100%;'>
-				<div name='review_header' style='width: 100%; padding: 15px; border: 1px solid #E0E0E0;'> </div>
-				<div name='review_text' style='width: 100%; padding: 15px; border: 1px solid #E0E0E0;'> </div>
-			</div>
-			-->
-            <div id='rdetail_chilifresh_reviews' class='hide_me'>
-                <div id='chilifreshReviewLink' name='chilifreshReviewLink' class='chili_review'></div>
-                <div id='chilifreshReviewResult' name='chilifreshReviewResult' style='display:none'></div>
-            </div>
-		</div>
-		
-		<div id='rdetail_toc_div' class='rdetail_extras_div hide_me'> </div>
-
-		<div id='rdetail_excerpt_div' class='rdetail_extras_div hide_me'> </div>
-
-		<div id='rdetail_preview_div' class='rdetail_extras_div hide_me'> </div>
-
-		<div id='rdetail_anotes_div' class='rdetail_extras_div hide_me'> </div>
-
-		<div id='rdetail_marc_div' class='rdetail_extras_div hide_me'> 
-			<div id='rdetail_view_marc_box'> </div>
-		</div>
-
-        <div id='rdetail_novelist_div' class='rdetail_extras_div hide_me'>
-            <div id="NoveListSelect" class="NoveListSelect">
-                <div id="NoveListAnchor" class="NoveListSelect"></div>
-                <div id="novsuggestions"></div>
-                <div id="nextreads"></div>
-                <div id="novrelatedauthors"></div>
-               <div id="novrelateditems"></div>
-            </div>
-        </div>
-
-		<div id='rdetail_foreign_items_div' class='rdetail_extras_div hide_me'>
-            <table width='100%' class='data_grid data_grid_center' id='rdetail_foreign_items_table'>
-                <thead>
-                    <tr> <td>&common.title;</td> <td>&common.authors;</td> <td> </td></tr>
-                </thead>
-                <tbody id='rdetail_foreign_items_tbody'>
-                </tbody>
-            </table>
-        </div>
- 
-		<div id='rdetail_cn_browse_div' style='text-align: center;' class='hide_me'>
-
-			<div id='cn_browse_none' class='hide_me color_4' style='width: 90%; text-align: center; margin: 10px;'>
-				&rdetail.extras.call.null;
-			</div>
-
-			<div id='rdetail_cn_browse_select_div' 
-				style='width: 100%; border: 1px solid black; padding: 6px; margin-top: 5px;'>
-				<span>&rdetail.extras.call.local; </span>
-				<select id='cn_browse_selector'>
-				</select>
-			</div>
-			
-			<!--#include virtual="../common/cn_browse.xml"-->
-		</div>
-
-		<!--#include virtual="rdetail_cn_details.xml"-->
-
-	</div>
-	<!-- Text for dynamic JavaScript -->
-	<div id='rdetail_preview_full_text' class='hide_me'>&rdetail.extras.preview.fulltext;</div>
-	<div id='rdetail_preview_title' class='hide_me'>&rdetail.extras.preview.title;</div>
-	<div id='rdetail_preview_badge' class='hide_me'>&rdetail.extras.preview.badge;</div>
-
-    <!-- ChiliFresh setup -->
-    <script language='javascript' type='text/javascript'>
-        var chilifresh = '<!--#echo var="OILS_CHILIFRESH_ACCOUNT"-->';
-        if (chilifresh == '(none)') { chilifresh = false; }
-    </script>
-    <!--#if expr="${OILS_CHILIFRESH_ACCOUNT} && ${OILS_CHILIFRESH_ACCOUNT}!='(none)'"-->
-        <input type="hidden" id="chilifresh_account" name="chilifresh_account"
-            value="<!--#echo var='OILS_CHILIFRESH_ACCOUNT'-->" />
-        <input type="hidden" id="chilifresh_profile" name="chilifresh_profile"
-            value="<!--#echo var='OILS_CHILIFRESH_PROFILE'-->" />
-        <input type="hidden" id="chilifresh_version" name="chilifresh_version" value="onsite_v1" />
-        <input type="hidden" id="chilifresh_type" name="chilifresh_type" value="search" />
-        <script language="javascript" type="text/javascript" src="<!--#echo var='OILS_CHILIFRESH_URL'-->"></script>
-    <!--#endif-->
-
-    <!-- Novelist setup -->
-    <!--#if expr="${OILS_NOVELIST_URL} && ${OILS_NOVELIST_URL}!='(none)'"-->
-        <script type="text/javascript" id="EIT" src="<!--#echo var='OILS_NOVELIST_URL'-->"></script>
-    <!--#endif-->
-    <script language='javascript' type='text/javascript'>
-        var novelist = '<!--#echo var="OILS_NOVELIST_URL"-->';
-        if (novelist == '(none)') { novelist = false; }
-    </script>
-
-</div>
diff --git a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml b/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml
deleted file mode 100644
index d869f38..0000000
--- a/Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml
+++ /dev/null
@@ -1,231 +0,0 @@
-
-<abbr class="unapi-id" title='tag:<!--#echo var="HTTP_HOST"-->,<!--#echo var="OILS_TIME_YEAR"-->:biblio-record_entry/<!--#echo var="OILS_OPAC_RID"-->'></abbr>
-<!-- This holds the record summary information -->
-<div>
-	<!-- temporary hack to give IE somewhere to put these things; should just rip out from rdetail.js 
-		See https://bugs.launchpad.net/evergreen/+bug/532217 -->
-	<span class='hide_me' id='rdetail_title'></span>
-	<table id='rdetail_details_table'>
-		<tbody id='rdetail_details_tbody'>
-
-			<tr>
-				<td id='rdetail_image_cell' rowspan='30'>
-					<a id='rdetail_img_link'>
-						<img style='border: none;' id='rdetail_image' 
-                            onerror='
-                                hideMe($("rdetail.jacket_attrib_div"));
-                                hideMe($("rdetail_img_link"));'/>
-					</a>
-                    <!-- vendor attribution link -->
-                    <div class='jacket_attrib hide_me' id='rdetail.jacket_attrib_div'>
-                        <div>&opac.image_provided;</div>
-                        <div><a target='_blank' href='&vendor.base_link;' 
-                            class='classic_link' id='rdetail.jacket_attrib_link'>&vendor.name;</a></div>
-                    </div>
-				</td>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.title;</td>		
-                <!-- *** Example of how to use the openils.BibTemplate infrastructure to augment the stock
-                     *** summary screen with more and/or different information.  In this case, the raw MARC 245. -->
-                <td type='opac/slot-data' query='datafield[tag="245"]' class='rdetail_item'>
-                    <script type='opac/slot-format'><![CDATA[
-                        var out = '';
-                        var list = dojo.query( 'subfield', item );
-                        for (var i = 0; i < list.length; i++) {
-                            out += BT.textContent(list[i]) + ' ';
-                        }
-                        document.title += ': ' + out;
-                        return out;
-                    ]]></script>
-                </td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.author;</td>		
-				<td class='rdetail_item'>
-					<a title='&rdetail.author.search;' id='rdetail_author'> </a>
-				</td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.isbn;</td>			
-				<td class='rdetail_item' id='rdetail_isbn'> </td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.edition;</td>		
-				<td class='rdetail_item' id='rdetail_edition'> </td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.pubdate;</td>		
-				<td class='rdetail_item' id='rdetail_pubdate'> </td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.publisher;</td>		
-				<td class='rdetail_item' id='rdetail_publisher'> </td>
-			</tr>
-
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.physical;</td>		
-				<td class='rdetail_item' id='rdetail_physical_desc'> </td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&common.format;</td>			
-				<td class='rdetail_item'>
-					<img id='rdetail_tor_pic' class='tor_pic' />
-					<span id='rdetail_tor' style='padding-left: 5px;'> </span>
-				</td>
-			</tr>
-
-			<tr>
-				<td nowrap='nowrap' class='rdetail_desc'>&rdetail.detailMain.abstract;</td>	
-				<td class='rdetail_item' id='rdetail_abstract'> </td>
-			</tr>
-
-            <!-- *** Example of how to use the openils.BibTemplate infrastructure to augment the stock
-                 *** summary screen with complex information, such as new search links on subjects. -->
-            <tr>
-                <td nowrap='nowrap' class='rdetail_desc'>&rdetail.summary.subjects;</td>
-                <td type='opac/slot-data' query='datafield[tag^="6"]' class='rdetail_item'>
-                    <script type='opac/slot-format'><![CDATA[
-                        var cgi = new CGI();
-                        var other_params = [ 'd', 'l', 'r', 'av', 's', 'sd', 'ol' ];
-                        var total = '';
-                        var output = [];
-                        var list = dojo.query( 'subfield', item );
-                        for (var i = 0; i < list.length; i++) {
-                            var sub_code = list[i].getAttribute('code');
-                            if ( sub_code.match(/[a-z]/i) ) {
-                                var current = '';
-                                if ( sub_code.match(/[vxyz]/) ) {
-                                    current += '&#x2d;&#x2d; ';
-                                }
-                                total += BT.textContent(list[i]) + ' ';
-                                current += '<a href="rresult.xml?rt=subject&tp=subject&t=' + total.replace(/\s+$/, '');
-                                for (var p in other_params) {
-                                    if (cgi.param(other_params[p]))
-                                        current += '&' + other_params[p] + '=' + cgi.param(other_params[p]);
-                                }
-                                current += '">' + BT.textContent(list[i]) + '</a>'
-                                output.push(current);
-                            }
-                        }
-                        return '<span>' + output.join(' ') + '</span><br/>';
-                    ]]></script>
-                </td>
-            </tr>
-
-			<tr class='hide_me' id='rdetail_online_row'>
-				<!-- *** Example of how to use the openils.BibTemplate infrastructure to augment the stock
-				     *** summary screen with complex information, such as location-specific URIs (856$9). -->
-   				<td nowrap='nowrap' class='rdetail_desc'>&rdetail.summary.online;</td>
-				<td class='rdetail_item' id='rdetail_online' type='opac/slot-data' query='volumes volume uris uri' join=", ">
-					<script type='opac/slot-format'><![CDATA[
-						var link = '<a href="' + item.getAttribute('href') + '">' + item.getAttribute('label') + '</a>';
-						if (item.getAttribute('use_restriction'))
-							link += ' (Use restriction: ' + item.getAttribute('use_restriction') + ')';
-						return link;
-					]]></script>
-				</td>
-			</tr>
-			<tr name="serial_holdings_label"
-				class="result_table_title_cell hide_me">
-                <td class="rdetail_desc">&rdetail.summary.issues_held;</td>
-                <td templated="true" type="opac/slot-data"
-                    query="datafield[tag='901'] subfield[code='c']"
-                    class="rdetail_item">
-                    ${holdingsStatement}
-					<span class="hide_me" name="holdingsStatement" type="opac/template-value"><![CDATA[
-                        if (fetchOrgSettingDefault(
-                            getLocation(),
-                            "opac.fully_compressed_serial_holdings"
-                        )) {
-                            var bibid = BT.textContent(item_list[0]);
-                            var blob = fieldmapper.standardRequest(
-                                ["open-ils.serial",
-                                    "open-ils.serial.bib.summary_statements"],
-                                [bibid, {
-                                    "orgid": getLocation(), "depth": getDepth()
-                                }]
-                            );
-
-                            var fake = dojo.create("td");
-                            var something = false;
-
-                            for (var i in blob) {
-                                if (!blob[i].length) continue;
-                                if (something) dojo.create("br", null, fake);
-                                something = true;
-
-                                var a = dojo.create(
-                                    "a", {
-                                        "innerHTML": "[+]",
-                                        "href": "javascript:void(0);",
-                                        "onclick":
-                                            "rdetailDrawExpandedHoldings(this,"+
-                                            bibid + ",'" + i + "');",
-                                        "style": {"marginRight": "1.5em"}
-                                    }, fake
-                                );
-                                dojo.create(
-                                    "span", {
-                                        "innerHTML": blob[i].join(", ")
-                                    }, fake
-                                );
-                                dojo.create(
-                                    "span", {"id": "holding_type_" + i}, fake
-                                );
-                            }
-
-                            if (something)
-                                unHideMe(slot.parentNode);
-
-                            return fake.innerHTML;
-                        } else {
-                            return "";
-                        }
-					]]></span>
-				</td>
-			</tr>
-
-		</tbody>
-	</table>
-
-	<!-- Empty span used for creating unAPI links -->
-	<abbr name="unapi" class="unapi-id">
-		<!-- unAPI URI goes here -->
-	</abbr>
-
-	<script language='javascript' type='text/javascript'><![CDATA[
-
-		config.ids.rdetail.details_body		= 'rdetail_details_body'; 
-		config.ids.rdetail.title				= 'rdetail_title';
-		config.ids.rdetail.author				= 'rdetail_author';
-		config.ids.rdetail.isbn					= 'rdetail_isbn';
-		config.ids.rdetail.edition				= 'rdetail_edition';
-		config.ids.rdetail.pubdate				= 'rdetail_pubdate';
-		config.ids.rdetail.publisher			= 'rdetail_publisher';
-		config.ids.rdetail.tor					= 'rdetail_tor';
-		config.ids.rdetail.abstr				= 'rdetail_abstract';
-		config.ids.rdetail.image				= 'rdetail_image';
-		config.ids.rdetail.tor_pic				= 'rdetail_tor_pic';
-
-        dojo.addOnLoad(function() {
-            setTimeout( function () {
-                var here = findOrgUnit(getLocation());
-                if (getDepth() > 0 || getDepth === 0 ) {
-                    while (getDepth() < findOrgDepth(here))
-                        here = findOrgUnit( here.parent_ou() );
-                }
-    
-                dojo.require('openils.BibTemplate');
-                new openils.BibTemplate({ record : new CGI().param('r'), org_unit : here.shortname() }).render();
-            }, 0);
-        });
-	]]></script>
-
-</div> <!-- details_body -->
-
diff --git a/Open-ILS/web/opac/skin/default/xml/result/filtersort.xml b/Open-ILS/web/opac/skin/default/xml/result/filtersort.xml
deleted file mode 100644
index c8b3327..0000000
--- a/Open-ILS/web/opac/skin/default/xml/result/filtersort.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<span>
-    &result.limit2avail;<input type='checkbox' id='opac.result.limit2avail' onclick='searchBarSubmit(true);'/>
-    <select id='opac.result.sort' onchange='searchBarSubmit(true);'>
-        <option selected='selected' value=''>&result.sort_by;</option>
-        <optgroup label='&result.sort_by.title;'>
-            <option id='opac.result.title.a2z' label='&common.a2z.titla;' value='titlesort.asc'>&common.a2z.title;</option>
-            <option id='opac.result.title.z2a' label='&common.z2a.titla;' value='titlesort.desc'>&common.z2a.title;</option>
-        </optgroup>
-        <optgroup label='&result.sort_by.author;'>
-            <option id='opac.result.author.a2z' label='&common.a2z.author;' value='authorsort.asc'>&common.a2z.author;</option>
-            <option id='opac.result.author.z2a' label='&common.z2a.author;' value='authorsort.desc'>&common.z2a.author;</option>
-        </optgroup>
-        <optgroup label='&result.sort_by.pubdate;'>
-            <option id='opac.result.pubdate.new2old' label='&common.new2old.pubdate;' 
-                value='pubdate.desc'>&common.new2old.pubdate;</option>
-            <option id='opac.result.pubdate.old2new' label='&common.old2new.pubdate;' 
-                value='pubdate.asc'>&common.old2new.pubdate;</option>
-        </optgroup>
-    </select>
-</span>
diff --git a/Open-ILS/web/opac/skin/default/xml/result/result_common.xml b/Open-ILS/web/opac/skin/default/xml/result/result_common.xml
deleted file mode 100644
index 86848ab..0000000
--- a/Open-ILS/web/opac/skin/default/xml/result/result_common.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-<div id='canvas_main' class='canvas' xmlns:xi="http://www.w3.org/2001/XInclude" >
-
-	<script language='javascript' type='text/javascript'>
-		config.ids.result = {};
-		config.css.result = {};
-		config.names.result = {};
-		config.ids.result.offset_start	= "offset_start";
-		config.ids.result.offset_end		= "offset_end";
-		config.ids.result.result_count	= "result_count";
-		config.ids.result.next_link		= 'next_link';
-		config.ids.result.prev_link		= 'prev_link';
-		config.ids.result.home_link		= 'search_home_link';
-		config.ids.result.end_link			= 'end_link';
-		config.ids.result.main_table		= 'result_table';
-		config.ids.result.row_template	= 'result_table_template';
-		config.ids.result.num_pages		= 'num_pages';
-		config.ids.result.current_page	= 'current_page';
-		config.css.result.nav_active		= "nav_link_active";
-		config.ids.result.top_div			= "result_table_div";
-		config.ids.result.nav_links		= "search_nav_links";
-		config.ids.result.info				= "result_info_div";
-		config.css.result.cc_cell_even	= "copy_count_cell_even";
-		config.names.result.item_jacket	= "item_jacket";
-		config.names.result.item_title	= "item_title";
-		config.names.result.item_author	= "item_author";
-		config.names.result.counts_row	= "counts_row";
-		config.names.result.count_cell	= "copy_count_cell";
-	</script>
-
-	<!--#include virtual="result_table.xml"-->
-	<!--#include virtual="result_lowhits.xml"-->
-
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/result/result_info.xml b/Open-ILS/web/opac/skin/default/xml/result/result_info.xml
deleted file mode 100644
index 902035b..0000000
--- a/Open-ILS/web/opac/skin/default/xml/result/result_info.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<table style='width: 100%;'>
-	<tbody>
-
-		<tr class='color_4' style='height: 1em;'>
-
-			<td style='vertical-align: top;'  id='next_prev_links'>
-
-				<span class='hide_me' id='result_info_div' style='font-size: 9pt;'>
-					<span> &common.results; </span> 
-					<span id='offset_start'> </span>
-					<span> - </span>
-					<span id='offset_end'> </span>
-					<span> &common.ofAtLeast; </span>
-					<span id='result_count'> </span>
-					<span style='padding-left: 6px;'> (page </span>
-					<span id='current_page'> </span>
-					<span> &common.of; </span>
-					<span id='num_pages'> </span>
-				</span>
-
-				<span id='start_end_links_span' class='hide_me' 
-						style='padding-left: 40px;' >
-					<a class='search_page_nav_link' id='search_home_link' 
-						title="&rdetail.page.results;">&rdetail.start;</a><a class='search_page_nav_link' 
-							id='prev_link' title='&rdetail.page.previous;'>&rdetail.page.previous.short;</a>
-
-					<span class='search_page_nav_link' id='page_numbers'> </span>
-
-					<a  class='search_page_nav_link' id='next_link' 
-						title='&rdetail.page.next;'>&rdetail.page.next.short;</a>
-                        <!--
-                        <a class='search_page_nav_link' 
-							id='end_link' title="&rdetail.page.last;">&rdetail.end;</a>
-                            -->
-				</span>
-
-			</td>
-
-			<td  colspan='5' 
-				style='padding-bottom: 4px; text-align:center; vertical-align: top; border-bottom: 1px solid #E0E0E0;'>
-					<span id='search_info_table' class='hide_me' style='font-size: 8pt;'>
-						<b>&result.info.copies; </b>
-					</span>
-			</td>
-		</tr>
-
-		<tr style='height: 2em;' id='result_thead_row'>
-			<td> 
-				<div class='hide_me' id='no_formats' style='padding: 4px;'>
-					<b>
-						<span style='color:red;'>*</span>
-						&result.info.no.items;
-						<div>&result.info.format.items;</div>
-					</b>
-				</div>
-
-				<div class='hide_me' id='rresult_show_all' style='padding: 4px;'>
-					<a href='javascript:rresultExpandSearch();' id='rresult_show_all_link' 
-						class='classic_link'>&result.info.show; </a>
-				</div>
-
-				<div class='hide_me' id='rresult_show_here' style='padding: 4px;'>
-					<a href='javascript:rresultContractSearch();' id='rresult_show_here_link' 
-						class='classic_link'>&result.info.show; </a>
-				</div>
-
-			</td>
-			<td rowspan='2' style='font-size: 8pt; padding-top: 4px;' class='copy_count_cell' 
-				width='12%' align='center' name='result_thead_ccell'> </td>
-		</tr>
-
-	</tbody>
-</table>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/result/result_lowhits.xml b/Open-ILS/web/opac/skin/default/xml/result/result_lowhits.xml
deleted file mode 100644
index 0933ed1..0000000
--- a/Open-ILS/web/opac/skin/default/xml/result/result_lowhits.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-<div id='result_low_hits' class='hide_me'>
-
-	<br/><br/><br/>
-
-	<div style='text-align: center; padding-bottom: 8px;'>
-		<div id='result_low_hits_msg' class='hide_me'>&result.lowhits.few;</div>
-		<div id='result_zero_hits_msg' class='hide_me'>&result.lowhits.zero;</div>
-	</div>
-
-	<!-- spell checker -->
-	<div id='did_you_mean' class='lowhits_div hide_me'>
-		<span>&result.lowhits.did.you.mean; </span>
-		<a class='classic_link' id='spell_check_link'> </a>
-	</div>
-
-	<div id='low_hits_remove_format' class='lowhits_div hide_me'>
-		<span>&result.lowhits.formats; </span>
-		<a id='low_hits_remove_format_link' class='classic_link'>&result.lowhits.formats.search;</a>
-	</div>
-
-	<div id='low_hits_cross_ref' class='lowhits_div hide_me'>
-		<span>&result.lowhits.related;</span>
-		<div style='padding: 5px;'>
-			<a id='low_hits_xref_link' class='classic_link' style='padding-right: 5px;'> </a>
-		</div>
-	</div>
-
-	<div id='low_hits_expand_range' class='lowhits_div hide_me'>
-		<span>&result.lowhits.expand; </span>
-		<a id='low_hits_expand_link' class='classic_link' style='padding-right: 5px;'> </a>
-	</div>
-
-	<div id='low_hits_search_type' class='lowhits_div hide_me'>
-		<span>&result.lowhits.class;</span>
-		<a id='low_hits_title_search' class='hide_me classic_link' 
-			style='padding-right: 5px;'>&result.lowhits.title;</a>
-		<a id='low_hits_author_search' class='hide_me classic_link' 
-			style='padding-right: 5px;'>&result.lowhits.author;</a>
-		<a id='low_hits_subject_search' class='hide_me classic_link' 
-			style='padding-right: 5px;'>&result.lowhits.subject;</a>
-		<a id='low_hits_series_search' class='hide_me classic_link' 
-				style='padding-right: 5px;'>&result.lowhits.series;</a>
-		<a id='low_hits_keyword_search' class='hide_me classic_link' 
-			style='padding-right: 5px;'>&result.lowhits.keyword;</a>
-	</div>
-
-</div>
-
diff --git a/Open-ILS/web/opac/skin/default/xml/result/result_table.xml b/Open-ILS/web/opac/skin/default/xml/result/result_table.xml
deleted file mode 100644
index d211867..0000000
--- a/Open-ILS/web/opac/skin/default/xml/result/result_table.xml
+++ /dev/null
@@ -1,323 +0,0 @@
-<!-- Search results are spit into this table -->
-
-<div id='result_table_div' xmlns:xi="http://www.w3.org/2001/XInclude">
-
-    <table id='res_table'> 
-
-        <!-- for some reason, this is the only way i can force the cell widths -->
-        <thead id='result_thead'>
-            <tr>
-                <td class='result_table_pic_header'></td>
-                <td> </td>
-            </tr>
-        </thead>
-
-        <tbody id='result_table'>
-            <tr>
-
-                <td class='result_table_row'>
-                    <!--#include virtual="result_info.xml"-->
-                </td>
-            </tr>
-
-            <!-- Template for displaying a search result.  This row template is cloned and inserted
-                    for each result returned -->
-
-            <tr id='result_table_template' class='hide_me'>
-
-                <!-- Jacket image goes here -->
-
-                <td class='result_table_row' align='left'>
-                    <table class='result_table_subtable'>
-                        <tbody class='result_table_subtbody'>
-
-                            <tr style='height: 1em' name='counts_row' valign="top">
-
-                                <td  rowspan='4' class='result_table_pic_header'>
-                                    <a><img name='item_jacket' class='result_table_pic'/></a>
-                                </td>
-
-                                <td class='result_table_title_cell' name='result_table_title_cell'>
-                                    <!-- Title goes here -->
-                                    <a title="&result.table.keyword;" name='item_title' class='search_link'> 
-                                        <!-- Title goes here -->
-                                    </a>
-                                </td>
-
-                                <!-- Empty span used for creating OpenLibrary links -->
-                                <td rowspan='4' name="openLibraryLink" style="text-align: center; vertical-align: middle; width: 15em;" class="hide_me"></td>
-                                <!-- Copy this td for each copy count appended -->
-                                <td  rowspan='4' nowrap='nowrap' name="copy_count_cell" class='copy_count_cell'> 
-                                </td>
-
-                            </tr>
-        
-                            <tr style='height: 1em' >
-                                <td class='result_table_author_cell'>
-                                    <a title="&result.table.author;" name='item_author' class='search_link'> 
-                                        <!-- Author goes here -->
-                                    </a>
-                                    <div>
-                                    <span name='result_table_extra_span' class='hide_me'>
-                                        <span name='result_table_pub_box' style='padding-left: 10px;'> 
-                                            <span name='result_table_edition_span' style='padding-left: 10px;'></span> |
-                                            <span name='result_table_pub_span'> </span> |
-                                            <span name='result_table_phys_span'> </span>
-                                        </span>
-                                    </span>
-                                    </div>
-                                </td>
-                            </tr>
-
-                            <tr style='height:1em;' >
-                                <td name='result_table_format_cell' class='result_table_format_cell'>
-
-                                    <a name='text_link' class='search_link'> 
-                                        <img src='../../../../images/tor/text.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='sound recording-nonmusical_link' class='search_link'> 
-                                        <img src='../../../../images/tor/sound recording-nonmusical.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='moving image_link' class='search_link'> 
-                                        <img src='../../../../images/tor/moving image.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='software, multimedia_link' class='search_link'> 
-                                        <img src='../../../../images/tor/software, multimedia.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='sound recording-musical_link' class='search_link'> 
-                                        <img src='../../../../images/tor/sound recording-musical.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='cartographic_link' class='search_link'> 
-                                        <img src='../../../../images/tor/cartographic.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='mixed material_link' class='search_link'> 
-                                        <img src='../../../../images/tor/mixed material.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='notated music_link' class='search_link'> 
-                                        <img src='../../../../images/tor/notated music.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='sound recording_link' class='search_link'> 
-                                        <img src='../../../../images/tor/sound recording.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='still image_link' class='search_link'> 
-                                        <img src='../../../../images/tor/still images.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <a name='three dimensional object_link' class='search_link'> 
-                                        <img src='../../../../images/tor/three dimensional object.jpg' class='dim tor_pic' />
-                                    </a>
-
-                                    <span class='hide_me' 
-                                        style='color: #9999FF; padding-left: 10px; font-size: 7pt; font-weight: 300;'> 
-                                        <span>&common.relevancy; </span><span name='relevancy_span'> </span>
-                                    </span>
-
-                                    <span class='hide_me' name='place_hold_span'>
-                                        <a style='padding-left: 8px;' href='javascript:void(0);' 
-                                            class='classic_link' name='place_hold_link'>&opac.holds.placeHold;</a>
-                                    </span>
-
-                                    <!-- Empty span used for creating unAPI links -->
-                                    <abbr style='padding-left: 8px;' name="unapi" class="unapi-id">
-                                        <!-- unAPI URI goes here -->
-                                    </abbr>
-
-                                    <!-- Empty span used for creating Google Book Search-->
-                                    <span name="googleBooksLink" class="hide_me">
-                                        <a style='padding-left: 8px;' class='classic_link' name="googleBooks-link">&result.googleBooks.browse;</a>
-                                    </span>
-
-                                </td>
-                            </tr>
-                            <tr name="local_callnumber_list" class="result_table_title_cell">
-                                <td>
-                                <span type='opac/slot-data+holdings_xml-full' query='volumes'>
-                                <span class='hide_me' debug='true' type='opac/slot-format'><![CDATA[
-                                    var output = dojo.create('span'); 
-
-                                    var item_cnt = 0;
-                                    var max_items = 4;
-
-                                    dojo.query('volume', item).forEach(function(vol) {
-                                        if (item_cnt >= max_items) {
-                                            return output.innerHTML;
-                                        }
-                                        if (vol.getAttribute('deleted') == 't') {
-                                            return;
-                                        }
-                                        if (vol.getAttribute('opac_visible') == 'f') {
-                                            return;
-                                        }
-                                        dojo.query('copy', vol).forEach(function (cp) {
-                                            if (item_cnt >= max_items) {
-                                                return;
-                                            }
-                                            if (cp.getAttribute('deleted') == 't') {
-                                                return;
-                                            }
-                                            if (cp.getAttribute('opac_visible') == 'f') {
-                                                return;
-                                            }
-
-                                            /* Ensure the status is visible */
-                                            var visible_status;
-                                            dojo.query('status', cp).forEach(function (status) {
-                                                visible_status = status.getAttribute('opac_visible');
-                                            });
-                                            if (visible_status == 'f') {
-                                                return;
-                                            }
-
-                                            /* Ensure the circulation library is visible */
-                                            var lib_vis;
-                                            dojo.query('circlib', cp).forEach(function (status) {
-                                                lib_vis = status.getAttribute('opac_visible');
-                                            });
-                                            if (lib_vis != 't') {
-                                                return;
-                                            }
-
-                                            var cp_entry = dojo.create('div');
-                                            var loc_visible;
-                                            var vol_appended = false;
-                                            dojo.query('location', cp).forEach(function (location) {
-                                                loc_visible = location.getAttribute('opac_visible');
-                                                if (loc_visible == 't') {
-                                                    if (!vol_appended) {
-                                                        var cn = dojo.create('span', { style: "font-weight: bold;" }, cp_entry);
-                                                        var cn_txt = dojo.doc.createTextNode(vol.getAttribute('label'));
-                                                        cn.appendChild(cn_txt);
-                                                        vol_appended = true;
-                                                    }
-                                                    var loc = dojo.create('span', { "style": "font-weight: bold;"}, cp_entry);
-                                                    var loc_txt = dojo.doc.createTextNode(' - ' + BT.textContent(location));
-                                                    loc.appendChild(loc_txt);
-                                                }
-                                            });
-                                            if (loc_visible != 't') {
-                                                return;
-                                            }
-                                            dojo.query('circ_lib', cp).forEach(function (circ_lib) {
-                                                var cp_lib = dojo.create('span', { "style": "font-weight: bold;" }, cp_entry, "first");
-                                                var cp_lib_txt = dojo.doc.createTextNode(circ_lib.getAttribute('name') + ' - ');
-                                                cp_lib.appendChild(cp_lib_txt);
-                                            });
-                                            dojo.query('status', cp).forEach(function (status) {
-                                                var cp_status = dojo.create('span', { "style": "font-weight: bold;" }, cp_entry);
-                                                var cp_status_txt = dojo.doc.createTextNode(' (' + BT.textContent(status) + ')');
-                                                cp_status.appendChild(cp_status_txt);
-                                            });
-
-                                            item_cnt++;
-                                            if (item_cnt >= max_items) {
-                                                dojo.create('br', null, cp_entry);
-                                                cp_entry.appendChild(dojo.doc.createTextNode(opac_strings.MORE_COPIES_FULL_RECORD));
-                                            }
-                                            output.appendChild(cp_entry);
-                                        });
-                                    });
-
-                                return output.innerHTML;
-                                ]]></span>
-                                </span>
-                                </td>
-                            </tr>
-                            <!-- Placeholder for ChiliFresh Review -->
-                            <tr class="hide_me" name="chilifreshReview">
-                                <td valign="top" colspan="2">
-                                        <span name="chilifreshReviewLink" class="chili_review"></span>
-                                        <div name="chilifreshReviewResult" style="display:none"></div>
-                                </td>
-                            </tr>
-                        </tbody>
-                    </table>
-                </td>
-            </tr>
-        </tbody>
-    </table>
-
-
-   <!-- ====================== -->
-   <table style='width: 100%; margin-top: 12px;' id='result_info_2' class='hide_me'>
-      <tbody>
-               
-          <tr class='color_4' style='height: 1em;'>
-                     
-             <td style='vertical-align: top;'  id='next_prev_links2'>
-                        
-                <span class='hide_me' id='result_info_div2' style='font-size: 9pt;'>
-                   <span> &common.results; </span> 
-                   <b id='offset_start2'> </b>
-                   <span> - </span>
-                   <b id='offset_end2'> </b>
-                   <span> &common.ofAtLeast; </span>
-                   <b id='result_count2'> </b>
-                   <span style='padding-left: 6px;'> (page </span>
-                   <span id='current_page2'> </span>
-                   <span> &common.of; </span>
-                   <span id='num_pages2'> </span>
-                </span>
-                           
-                <span id='start_end_links_span2' class='hide_me' 
-                   style='padding-left: 40px;' >
-                <a class='search_page_nav_link' id='search_home_link2' 
-                   title="&rdetail.page.results;">&rdetail.start;</a><a class='search_page_nav_link' 
-                   id='prev_link2' title='&rdetail.page.previous;'>&rdetail.page.previous.short;</a>
-            
-                <span class='search_page_nav_link' id='page_numbers2'> </span>
-                   <a  class='search_page_nav_link' id='next_link2' 
-                      title='&rdetail.page.next;'>&rdetail.page.next.short;</a>
-                      <!--
-                      <a class='search_page_nav_link' 
-                      id='end_link2' title="&rdetail.page.last;">&rdetail.end;</a>
-                      -->
-                </span>
-                        
-             </td>
-                        
-             <td  colspan='5' 
-                style='padding-bottom: 4px; text-align:center; vertical-align: top; border-bottom: 1px solid #E0E0E0;'>
-               <!--
-                <span id='search_info_table2' style='font-size: 8pt;'>
-                <b>Available copies / Total copies </b>
-                </span>
-               -->
-             </td>
-          </tr>
-      </tbody>
-   </table>
-   <!-- ====================== -->
-
-
-    <script language='javascript' type='text/javascript'>
-        config.names.result.format_cell = 'result_table_format_cell';
-        config.names.result.format_link = 'resource_link'
-        config.names.result.format_pic = 'format_pic'
-    </script>
-
-    <!-- ChiliFresh setup -->
-    <script language='javascript' type='text/javascript'>
-        var chilifresh = '<!--#echo var="OILS_CHILIFRESH_ACCOUNT"-->';
-        if (chilifresh=='(none)') { chilifresh = false; }
-    </script>
-    <!--#if expr="${OILS_CHILIFRESH_ACCOUNT} && ${OILS_CHILIFRESH_ACCOUNT}!='(none)'"-->
-        <input type="hidden" id="chilifresh_account" name="chilifresh_account"
-            value="<!--#echo var='OILS_CHILIFRESH_ACCOUNT'-->" />
-        <input type="hidden" id="chilifresh_profile" name="chilifresh_profile"
-            value="<!--#echo var='OILS_CHILIFRESH_PROFILE'-->" />
-        <input type="hidden" id="chilifresh_version" name="chilifresh_version" value="onsite_v1" />
-        <input type="hidden" id="chilifresh_type" name="chilifresh_type" value="search" />
-        <script language="javascript" type="text/javascript" src="<!--#echo var='OILS_CHILIFRESH_URL'-->"></script>
-    <!--#endif-->
-</div>
-
-
diff --git a/Open-ILS/web/opac/skin/default/xml/setenv.xml b/Open-ILS/web/opac/skin/default/xml/setenv.xml
deleted file mode 100644
index ac2975d..0000000
--- a/Open-ILS/web/opac/skin/default/xml/setenv.xml
+++ /dev/null
@@ -1,77 +0,0 @@
-<!-- Sets our environment variables for convenience and determining which page we're on -->
-
-<!--#set var='OILS_PAGE' value="$DOCUMENT_NAME"-->
-
-<!--#if expr="$DOCUMENT_NAME='index.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.home'-->
-	<!--#set var='FRONT_PAGE' value='true'-->
-
-<!--#elif expr="$DOCUMENT_NAME='mresult.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.mresult'-->
-	
-
-<!--#elif expr="$DOCUMENT_NAME='rresult.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.rresult'-->
-
-<!--#elif expr="$DOCUMENT_NAME='rdetail.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.rdetail'-->
-
-<!--#elif expr="$DOCUMENT_NAME='myopac.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.myopac'-->
-
-<!--#elif expr="$DOCUMENT_NAME='advanced.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.advanced'-->
-
-<!--#elif expr="$DOCUMENT_NAME='reqitems.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.reqitems'-->
-
-<!--#elif expr="$DOCUMENT_NAME='authbrowse.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.cnbrowse'-->
-
-<!--#elif expr="$DOCUMENT_NAME='cnbrowse.xml'"-->
-	<!--#set var='OILS_TITLE' value='opac.title.cnbrowse'-->
-
-<!--#endif-->
-
-<!--#if expr="$HTTPS"-->
-	<!--#set var="OILS_PROTOCOL" value="https"-->
-	<!--#if expr="$OILS_OPAC_BYPASS_STATIC_FOR_HTTPS=='yes'"-->
-		<!--#set var="OILS_OPAC_CSS_HOST" value=""-->
-		<!--#set var="OILS_OPAC_JS_HOST" value=""-->
-	<!--#endif-->
-<!--#else-->
-	<!--#set var="OILS_PROTOCOL" value="http"-->
-<!--#endif-->
-
-<!--#if expr="$OILS_OPAC_STATIC_PROTOCOL"-->
-
-<!--#else-->
-	<!--#set var="OILS_OPAC_STATIC_PROTOCOL" value="$OILS_PROTOCOL"-->
-<!--#endif-->
-
-<!--#set var="OILS_BASE" value="${OILS_PROTOCOL}://${SERVER_NAME}/${OILS_OPAC_BASE}"-->
-<!--#set var="OILS_XML_BASE" value="${OILS_BASE}/common/xml"--> 
-
-
-<!-- Javascript host -->
-<!--#if expr="$OILS_OPAC_JS_HOST"-->
-    <!--#set var="OILS_OPAC_JS_HOST" value="${OILS_OPAC_STATIC_PROTOCOL}://${OILS_OPAC_JS_HOST}"-->
-<!--#else -->
-    <!--#set var="OILS_OPAC_JS_HOST" value="$OILS_BASE"-->
-<!--#endif -->
-<!--#set var="OILS_JS_BASE" value="${OILS_OPAC_JS_HOST}/common/js"-->
-
-
-<!--#if expr="$OILS_OPAC_CSS_HOST"-->
-    <!--#set var="OILS_OPAC_CSS_HOST" value="${OILS_OPAC_STATIC_PROTOCOL}://${OILS_OPAC_CSS_HOST}"-->
-<!--#else -->
-    <!--#set var="OILS_OPAC_CSS_HOST" value="$OILS_BASE"-->
-<!--#endif -->
-<!--#set var="OILS_THEME_BASE" value="${OILS_OPAC_CSS_HOST}/theme"--> 
-<!--#set var="OILS_SKIN_BASE" value="${OILS_OPAC_CSS_HOST}/skin"--> 
-<!--#set var="OILS_CSS_BASE" value="${OILS_OPAC_CSS_HOST}/common/css"--> 
-
-
-<!--#if expr="!$locale || $locale=''"-->
-	<!--#set var="locale" value="en-US"-->
-<!--#endif-->

commit c6870e2347cb0616912a3c75cfbafe9dbe17f7a7
Author: Jeff Godin <jgodin at tadl.org>
Date:   Thu May 14 11:25:22 2015 -0700

    LP#1312309: JSPAC: remove index.xml from apache example configs and examples in documentation
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/examples/apache/eg.conf.in b/Open-ILS/examples/apache/eg.conf.in
index 368b057..19d8736 100644
--- a/Open-ILS/examples/apache/eg.conf.in
+++ b/Open-ILS/examples/apache/eg.conf.in
@@ -145,7 +145,7 @@ NameVirtualHost *:443
 	ServerName localhost:80
 	ServerAlias 127.0.0.1:80
  	DocumentRoot @localstatedir@/web/
-	DirectoryIndex index.xml index.html index.xhtml
+	DirectoryIndex index.html index.xhtml
     # - absorb the shared virtual host settings
     Include eg_vhost.conf
 </VirtualHost>
diff --git a/Open-ILS/examples/apache_24/eg.conf.in b/Open-ILS/examples/apache_24/eg.conf.in
index 33f7d03..72bcd5e 100644
--- a/Open-ILS/examples/apache_24/eg.conf.in
+++ b/Open-ILS/examples/apache_24/eg.conf.in
@@ -139,7 +139,7 @@ ExpiresByType text/css "access plus 50 minutes"
 	ServerName localhost:80
 	ServerAlias 127.0.0.1:80
  	DocumentRoot @localstatedir@/web/
-	DirectoryIndex index.xml index.html index.xhtml
+	DirectoryIndex index.html index.xhtml
     # - absorb the shared virtual host settings
     Include eg_vhost.conf
 </VirtualHost>
diff --git a/docs/TechRef/KidsOPAC.txt b/docs/TechRef/KidsOPAC.txt
index 832dd8e..a9293d9 100644
--- a/docs/TechRef/KidsOPAC.txt
+++ b/docs/TechRef/KidsOPAC.txt
@@ -105,7 +105,7 @@ along the lines of:
 <VirtualHost *:80>
     ServerName xyz.dev198.esilibrary.com:80
     DocumentRoot /openils/var/web/
-    DirectoryIndex index.xml index.html index.xhtml
+    DirectoryIndex index.html index.xhtml
     Include eg_vhost.conf
     <Location /eg/kpac>
 	#Point to a different kpac.xml config file if needed
diff --git a/docs/admin/template_toolkit.txt b/docs/admin/template_toolkit.txt
index 75391a5..9022466 100644
--- a/docs/admin/template_toolkit.txt
+++ b/docs/admin/template_toolkit.txt
@@ -187,7 +187,7 @@ we only show the configuration for port 80.
 <VirtualHost *:80>
     ServerName br1.concat.ca
     DocumentRoot /openils/var/web/
-    DirectoryIndex index.xml index.html index.xhtml
+    DirectoryIndex index.html index.xhtml
     Include eg_vhost.conf
     <Location /eg>
         PerlAddVar OILSWebTemplatePath "/openils/var/templates_BR1"
@@ -197,7 +197,7 @@ we only show the configuration for port 80.
 <VirtualHost *:80>
     ServerName br2.concat.ca
     DocumentRoot /openils/var/web/
-    DirectoryIndex index.xml index.html index.xhtml
+    DirectoryIndex index.html index.xhtml
     Include eg_vhost.conf
     <Location /eg>
         PerlAddVar OILSWebTemplatePath "/openils/var/templates_BR2"

commit f73de8199d8fa4400bdb3a462e7d1d50fc6bdc3e
Author: Jeff Godin <jgodin at tadl.org>
Date:   Thu May 14 17:35:47 2015 -0700

    LP#1312309: remove dtree.js -- unused for a while now
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/.gitignore b/.gitignore
index 073c02d..cbb45c3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -284,7 +284,6 @@ Open-ILS/xul/staff_client/chrome/content/OpenILS/util/JSON_v1.js
 Open-ILS/xul/staff_client/chrome/content/OpenILS/util/RemoteRequest.js
 Open-ILS/xul/staff_client/chrome/content/OpenILS/util/added_content.js
 Open-ILS/xul/staff_client/chrome/content/OpenILS/util/config.js
-Open-ILS/xul/staff_client/chrome/content/OpenILS/util/dtree.js
 Open-ILS/xul/staff_client/chrome/content/OpenILS/util/fm_table.js
 Open-ILS/xul/staff_client/chrome/content/OpenILS/util/fm_table_conf.js
 Open-ILS/xul/staff_client/chrome/content/OpenILS/util/fmgen.js
diff --git a/Open-ILS/web/opac/common/css/dtree.css b/Open-ILS/web/opac/common/css/dtree.css
deleted file mode 100644
index b201c2f..0000000
--- a/Open-ILS/web/opac/common/css/dtree.css
+++ /dev/null
@@ -1,34 +0,0 @@
-/*--------------------------------------------------|
-| dTree 2.05 | www.destroydrop.com/javascript/tree/ |
-|---------------------------------------------------|
-| Copyright (c) 2002-2003 Geir Landrö               |
-|--------------------------------------------------*/
-
-.dtree {
-	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
-	font-size: 11px;
-	color: #666;
-	white-space: nowrap;
-}
-.dtree img {
-	border: 0px;
-	vertical-align: middle;
-}
-.dtree a {
-	color: #333;
-	text-decoration: none;
-}
-.dtree a.node, .dtree a.nodeSel {
-	white-space: nowrap;
-	padding: 1px 2px 1px 2px;
-}
-.dtree a.node:hover, .dtree a.nodeSel:hover {
-	color: #333;
-	text-decoration: underline;
-}
-.dtree a.nodeSel {
-	background-color: #c0d2ec;
-}
-.dtree .clip {
-	overflow: hidden;
-}
\ No newline at end of file
diff --git a/Open-ILS/web/opac/common/js/dtree.js b/Open-ILS/web/opac/common/js/dtree.js
deleted file mode 100644
index 974f5de..0000000
--- a/Open-ILS/web/opac/common/js/dtree.js
+++ /dev/null
@@ -1,324 +0,0 @@
-/*--------------------------------------------------|
-| dTree 2.05 | www.destroydrop.com/javascript/tree/ |
-|---------------------------------------------------|
-| Copyright (c) 2002-2003 Geir Landrö               |
-|                                                   |
-| This script can be used freely as long as all     |
-| copyright messages are intact.                    |
-|                                                   |
-| Updated: 17.04.2003                               |
-|--------------------------------------------------*/
-
-function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
-	this.id = id;
-	this.pid = pid;
-	this.name = name;
-	this.url = url;
-	this.title = title;
-	this.target = target;
-	this.icon = icon;
-	this.iconOpen = iconOpen;
-	this._io = open || false;
-	this._is = false;
-	this._ls = false;
-	this._hc = false;
-	this._ai = 0;
-	this._p;
-};
-
-function dTree(objName) {
-	this.config = {
-		target					: null,
-		folderLinks			: true,
-		useSelection		: true,
-		useCookies			: true,
-		useLines				: true,
-		useIcons				: true,
-		useStatusText		: false,
-		closeSameLevel	: false,
-		inOrder					: false
-	}
-	this.icon = {
-		root				: '../../../images/orgtree/base.gif',
-		folder			: '../../../images/orgtree/folder.gif',
-		folderOpen		: '../../../images/orgtree/folderopen.gif',
-		node				: '../../../images/orgtree/page.gif',
-		empty				: '../../../images/orgtree/empty.gif',
-		line				: '../../../images/orgtree/line.gif',
-		join				: '../../../images/orgtree/join.gif',
-		joinBottom		: '../../../images/orgtree/joinbottom.gif',
-		plus				: '../../../images/orgtree/plus.gif',
-		plusBottom		: '../../../images/orgtree/plusbottom.gif',
-		minus				: '../../../images/orgtree/minus.gif',
-		minusBottom		: '../../../images/orgtree/minusbottom.gif',
-		nlPlus			: '../../../images/orgtree/nolines_plus.gif',
-		nlMinus			: '../../../images/orgtree/nolines_minus.gif'
-	};
-	this.obj = objName;
-	this.aNodes = [];
-	this.aIndent = [];
-	this.root = new Node(-1);
-	this.selectedNode = null;
-	this.selectedFound = false;
-	this.completed = false;
-};
-
-dTree.prototype.add = function(id, pid, name, url, title, target, icon, iconOpen, open) {
-	this.aNodes[this.aNodes.length] = new Node(id, pid, name, url, title, target, icon, iconOpen, open);
-};
-
-dTree.prototype.openAll = function() {
-	this.oAll(true);
-};
-dTree.prototype.closeAll = function() {
-	this.oAll(false);
-};
-
-dTree.prototype.toString = function() {
-	var str = '<div class="dtree">\n';
-	if (document.getElementById) {
-		if (this.config.useCookies) this.selectedNode = this.getSelected();
-		str += this.addNode(this.root);
-	} else str += 'Browser not supported.';
-	str += '</div>';
-	if (!this.selectedFound) this.selectedNode = null;
-	this.completed = true;
-	return str;
-};
-
-dTree.prototype.addNode = function(pNode) {
-	var str = '';
-	var n=0;
-	if (this.config.inOrder) n = pNode._ai;
-	for (n; n<this.aNodes.length; n++) {
-		if (this.aNodes[n].pid == pNode.id) {
-			var cn = this.aNodes[n];
-			cn._p = pNode;
-			cn._ai = n;
-			this.setCS(cn);
-			if (!cn.target && this.config.target) cn.target = this.config.target;
-			if (cn._hc && !cn._io && this.config.useCookies) cn._io = this.isOpen(cn.id);
-			if (!this.config.folderLinks && cn._hc) cn.url = null;
-			if (this.config.useSelection && cn.id == this.selectedNode && !this.selectedFound) {
-					cn._is = true;
-					this.selectedNode = n;
-					this.selectedFound = true;
-			}
-			str += this.node(cn, n);
-			if (cn._ls) break;
-		}
-	}
-	return str;
-};
-
-dTree.prototype.node = function(node, nodeId) {
-	var str = '<div class="dTreeNode">' + this.indent(node, nodeId);
-	if (this.config.useIcons) {
-		if (!node.icon) node.icon = (this.root.id == node.pid) ? this.icon.root : ((node._hc) ? this.icon.folder : this.icon.node);
-		if (!node.iconOpen) node.iconOpen = (node._hc) ? this.icon.folderOpen : this.icon.node;
-		if (this.root.id == node.pid) {
-			node.icon = this.icon.root;
-			node.iconOpen = this.icon.root;
-		}
-		str += '<img id="i' + this.obj + nodeId + '" src="' + ((node._io) ? node.iconOpen : node.icon) + '" alt="" />';
-	}
-	if (node.url) {
-		str += '<a id="s' + this.obj + nodeId + '" class="' + ((this.config.useSelection) ? ((node._is ? 'nodeSel' : 'node')) : 'node') + '" href="' + node.url + '"';
-		if (node.title) str += ' title="' + node.title + '"';
-		if (node.target) str += ' target="' + node.target + '"';
-		if (this.config.useStatusText) str += ' onmouseover="window.status=\'' + node.name + '\';return true;" onmouseout="window.status=\'\';return true;" ';
-		if (this.config.useSelection && ((node._hc && this.config.folderLinks) || !node._hc))
-			str += ' onclick="javascript: ' + this.obj + '.s(' + nodeId + ');"';
-		str += '>';
-	}
-	else if ((!this.config.folderLinks || !node.url) && node._hc && node.pid != this.root.id)
-		str += '<a href="javascript: ' + this.obj + '.o(' + nodeId + ');" class="node">';
-	str += node.name;
-	if (node.url || ((!this.config.folderLinks || !node.url) && node._hc)) str += '</a>';
-	str += '</div>';
-	if (node._hc) {
-		str += '<div id="d' + this.obj + nodeId + '" class="clip" style="display:' + ((this.root.id == node.pid || node._io) ? 'block' : 'none') + ';">';
-		str += this.addNode(node);
-		str += '</div>';
-	}
-	this.aIndent.pop();
-	return str;
-};
-
-dTree.prototype.indent = function(node, nodeId) {
-	var str = '';
-	if (this.root.id != node.pid) {
-		for (var n=0; n<this.aIndent.length; n++)
-			str += '<img src="' + ( (this.aIndent[n] == 1 && this.config.useLines) ? this.icon.line : this.icon.empty ) + '" alt="" />';
-		(node._ls) ? this.aIndent.push(0) : this.aIndent.push(1);
-		if (node._hc) {
-			str += '<a href="javascript: ' + this.obj + '.o(' + nodeId + ');"><img  id="j' + this.obj + nodeId + '" src="';
-			if (!this.config.useLines) str += (node._io) ? this.icon.nlMinus : this.icon.nlPlus;
-			else str += ( (node._io) ? ((node._ls && this.config.useLines) ? this.icon.minusBottom : this.icon.minus) : ((node._ls && this.config.useLines) ? this.icon.plusBottom : this.icon.plus ) );
-			str += '" alt="" /></a>';
-		} else str += '<img src="' + ( (this.config.useLines) ? ((node._ls) ? this.icon.joinBottom : this.icon.join ) : this.icon.empty) + '" alt="" />';
-	}
-	return str;
-};
-
-dTree.prototype.setCS = function(node) {
-	var lastId;
-	for (var n=0; n<this.aNodes.length; n++) {
-		if (this.aNodes[n].pid == node.id) node._hc = true;
-		if (this.aNodes[n].pid == node.pid) lastId = this.aNodes[n].id;
-	}
-	if (lastId==node.id) node._ls = true;
-};
-
-dTree.prototype.getSelected = function() {
-	var sn = this.getCookie('cs' + this.obj);
-	return (sn) ? sn : null;
-};
-
-dTree.prototype.s = function(id) {
-	if (!this.config.useSelection) return;
-	var cn = this.aNodes[id];
-	if (cn._hc && !this.config.folderLinks) return;
-	if (this.selectedNode != id) {
-		if (this.selectedNode || this.selectedNode==0) {
-			eOld = document.getElementById("s" + this.obj + this.selectedNode);
-			eOld.className = "node";
-		}
-		eNew = document.getElementById("s" + this.obj + id);
-		eNew.className = "nodeSel";
-		this.selectedNode = id;
-		if (this.config.useCookies) this.setCookie('cs' + this.obj, cn.id);
-	}
-};
-
-dTree.prototype.o = function(id) {
-	var cn = this.aNodes[id];
-	this.nodeStatus(!cn._io, id, cn._ls);
-	cn._io = !cn._io;
-	if (this.config.closeSameLevel) this.closeLevel(cn);
-	if (this.config.useCookies) this.updateCookie();
-};
-
-dTree.prototype.oAll = function(status) {
-	for (var n=0; n<this.aNodes.length; n++) {
-		if (this.aNodes[n]._hc && this.aNodes[n].pid != this.root.id) {
-			this.nodeStatus(status, n, this.aNodes[n]._ls)
-			this.aNodes[n]._io = status;
-		}
-	}
-	if (this.config.useCookies) this.updateCookie();
-};
-
-dTree.prototype.openTo = function(nId, bSelect, bFirst) {
-	if (!bFirst) {
-		for (var n=0; n<this.aNodes.length; n++) {
-			if (this.aNodes[n].id == nId) {
-				nId=n;
-				break;
-			}
-		}
-	}
-	var cn=this.aNodes[nId];
-	if (cn.pid==this.root.id || !cn._p) return;
-	cn._io = true;
-	cn._is = bSelect;
-	if (this.completed && cn._hc) this.nodeStatus(true, cn._ai, cn._ls);
-	if (this.completed && bSelect) this.s(cn._ai);
-	else if (bSelect) this._sn=cn._ai;
-	this.openTo(cn._p._ai, false, true);
-};
-
-dTree.prototype.closeLevel = function(node) {
-	for (var n=0; n<this.aNodes.length; n++) {
-		if (this.aNodes[n].pid == node.pid && this.aNodes[n].id != node.id && this.aNodes[n]._hc) {
-			this.nodeStatus(false, n, this.aNodes[n]._ls);
-			this.aNodes[n]._io = false;
-			this.closeAllChildren(this.aNodes[n]);
-		}
-	}
-}
-
-dTree.prototype.closeAllChildren = function(node) {
-	for (var n=0; n<this.aNodes.length; n++) {
-		if (this.aNodes[n].pid == node.id && this.aNodes[n]._hc) {
-			if (this.aNodes[n]._io) this.nodeStatus(false, n, this.aNodes[n]._ls);
-			this.aNodes[n]._io = false;
-			this.closeAllChildren(this.aNodes[n]);		
-		}
-	}
-}
-
-dTree.prototype.nodeStatus = function(status, id, bottom) {
-	eDiv	= document.getElementById('d' + this.obj + id);
-	eJoin	= document.getElementById('j' + this.obj + id);
-	if (this.config.useIcons) {
-		eIcon	= document.getElementById('i' + this.obj + id);
-		eIcon.src = (status) ? this.aNodes[id].iconOpen : this.aNodes[id].icon;
-	}
-	eJoin.src = (this.config.useLines)?
-	((status)?((bottom)?this.icon.minusBottom:this.icon.minus):((bottom)?this.icon.plusBottom:this.icon.plus)):
-	((status)?this.icon.nlMinus:this.icon.nlPlus);
-	eDiv.style.display = (status) ? 'block': 'none';
-};
-
-
-dTree.prototype.clearCookie = function() {
-	var now = new Date();
-	var yesterday = new Date(now.getTime() - 1000 * 60 * 60 * 24);
-	this.setCookie('co'+this.obj, 'cookieValue', yesterday);
-	this.setCookie('cs'+this.obj, 'cookieValue', yesterday);
-};
-
-dTree.prototype.setCookie = function(cookieName, cookieValue, expires, path, domain, secure) {
-	document.cookie =
-		encodeURIComponent(cookieName) + '=' + encodeURIComponent(cookieValue)
-		+ (expires ? '; expires=' + expires.toGMTString() : '')
-		+ (path ? '; path=' + path : '')
-		+ (domain ? '; domain=' + domain : '')
-		+ (secure ? '; secure' : '');
-};
-
-dTree.prototype.getCookie = function(cookieName) {
-	var cookieValue = '';
-	var posName = document.cookie.indexOf(encodeURIComponent(cookieName) + '=');
-	if (posName != -1) {
-		var posValue = posName + (encodeURIComponent(cookieName) + '=').length;
-		var endPos = document.cookie.indexOf(';', posValue);
-		if (endPos != -1) cookieValue = decodeURIComponent(document.cookie.substring(posValue, endPos));
-		else cookieValue = decodeURIComponent(document.cookie.substring(posValue));
-	}
-	return (cookieValue);
-};
-
-dTree.prototype.updateCookie = function() {
-	var str = '';
-	for (var n=0; n<this.aNodes.length; n++) {
-		if (this.aNodes[n]._io && this.aNodes[n].pid != this.root.id) {
-			if (str) str += '.';
-			str += this.aNodes[n].id;
-		}
-	}
-	this.setCookie('co' + this.obj, str);
-};
-
-dTree.prototype.isOpen = function(id) {
-	var aOpen = this.getCookie('co' + this.obj).split('.');
-	for (var n=0; n<aOpen.length; n++)
-		if (aOpen[n] == id) return true;
-	return false;
-};
-
-if (!Array.prototype.push) {
-	Array.prototype.push = function array_push() {
-		for(var i=0;i<arguments.length;i++)
-			this[this.length]=arguments[i];
-		return this.length;
-	}
-};
-if (!Array.prototype.pop) {
-	Array.prototype.pop = function array_pop() {
-		lastElement = this[this.length-1];
-		this.length = Math.max(this.length-1,0);
-		return lastElement;
-	}
-};

commit bcd6bb62f5f18ddb267a5ccccfc54118cce26dba
Author: Jeff Godin <jgodin at tadl.org>
Date:   Fri May 15 16:16:50 2015 -0700

    LP#1312309: Remove old bbags.xml interface, apache config
    
    Remove the XML and Javascript for the old JSPAC book bags / bbags / list
    display.
    
    Also, remove <Location> block in Apache example configs for /opac/extras, as
    the only things requiring it were the (now removed) legacy self checkout
    interface, and this bbags interface.
    
    Signed-off-by: Jeff Godin <jgodin at tadl.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/examples/apache/eg_vhost.conf.in b/Open-ILS/examples/apache/eg_vhost.conf.in
index 8530e6b..c692fd7 100644
--- a/Open-ILS/examples/apache/eg_vhost.conf.in
+++ b/Open-ILS/examples/apache/eg_vhost.conf.in
@@ -278,14 +278,6 @@ Options -Indexes
     SSLRequireSSL
 </LocationMatch>
 
-<LocationMatch /opac/extras/>
-    # Force to en-US for now to satisfy bbags.xml
-    SetEnv locale en-US
-    Options +Includes
-    AddOutputFilter INCLUDES .xml
-    AddType application/xhtml+xml .xml
-</LocationMatch>
-
 RewriteCond %{QUERY_STRING} locale=([^&]*)
 RewriteRule ^/opac/[a-z]{2}-[A-Z]{2}/extras/slimpac/(.*)$ /opac/%1/extras/slimpac/$1? [redirect]
 <LocationMatch /opac/[a-z]{2}-[A-Z]{2}/extras/slimpac/>
diff --git a/Open-ILS/examples/apache_24/eg_vhost.conf.in b/Open-ILS/examples/apache_24/eg_vhost.conf.in
index 6e8980e..28b8c17 100644
--- a/Open-ILS/examples/apache_24/eg_vhost.conf.in
+++ b/Open-ILS/examples/apache_24/eg_vhost.conf.in
@@ -279,15 +279,6 @@ Options -Indexes
     SSLRequireSSL
 </LocationMatch>
 
-<LocationMatch /opac/extras/>
-    SSILegacyExprParser on
-    # Force to en-US for now to satisfy bbags.xml
-    SetEnv locale en-US
-    Options +Includes
-    AddOutputFilter INCLUDES .xml
-    AddType application/xhtml+xml .xml
-</LocationMatch>
-
 RewriteCond %{QUERY_STRING} locale=([^&]*)
 RewriteRule ^/opac/[a-z]{2}-[A-Z]{2}/extras/slimpac/(.*)$ /opac/%1/extras/slimpac/$1? [redirect]
 <LocationMatch /opac/[a-z]{2}-[A-Z]{2}/extras/slimpac/>
diff --git a/Open-ILS/web/opac/extras/bbags.js b/Open-ILS/web/opac/extras/bbags.js
deleted file mode 100644
index be5fdc1..0000000
--- a/Open-ILS/web/opac/extras/bbags.js
+++ /dev/null
@@ -1,47 +0,0 @@
-
-/* XXX allow to pass in a 'local' var so the links back into the opac can be localized */
-/* maybe also a 'skin' var */
-
-function bbInit() {
-	var cgi	= new CGI();
-	var bb	= cgi.param('bb');
-	if(!bb) { unHideMe($('not_found')); return; }
-	var req = new Request(FLESH_PUBLIC_CONTAINER, 'biblio', bb);
-	req.callback( bbShow );
-	req.send();
-}
-
-
-var template;
-function bbShow(r) {
-
-	var bb = r.getResultObject();
-	if(!bb || !bb.pub()) { unHideMe($('not_found')); return; }
-	$('bb_name').appendChild(text(bb.name()));
-
-	var tbody = $('tbody');
-	if(!template) template = tbody.removeChild($('row_template'));
-
-	for( var i in bb.items() ) 
-		tbody.appendChild(bbShowItem( template, bb.items()[i] ));
-}
-
-function bbShowItem( template, item ) {
-	var row = template.cloneNode(true);
-
-	var req = new Request( FETCH_RMODS, item.target_biblio_record_entry() );
-	req.request.tlink = $n(row, 'title');
-	req.request.alink = $n(row, 'author');
-	req.request.blink = $n(row, 'by');
-
-	req.callback( function(r) { 
-		var rec = r.getResultObject();
-		buildTitleDetailLink(rec, r.tlink); 
-		r.tlink.setAttribute('href', '/opac/en-US/skin/default/xml/rdetail.xml?r='+rec.doc_id());
-		r.alink.appendChild(text(rec.author()));
-		unHideMe(r.blink);
-	});
-
-	req.send();
-	return row;
-}
diff --git a/Open-ILS/web/opac/extras/bbags.xml b/Open-ILS/web/opac/extras/bbags.xml
deleted file mode 100644
index 2b6ecf7..0000000
--- a/Open-ILS/web/opac/extras/bbags.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
-<!DOCTYPE html PUBLIC 
-	"-//W3C//DTD XHTML 1.0 Transitional//EN" 
-	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-	<head>
-		<title>Evergreen: Bookbag Viewer</title>
-		<script language='javascript' src='/opac/common/js/utils.js'> </script>
-		<script language='javascript' src='/opac/common/js//config.js'> </script> 
-		<script language='javascript' src='/opac/common/js/CGI.js'> </script>
-	
-		<script language='javascript' src='/opac/common/js/slimtree.js'> </script>
-		<script language='javascript' src='/opac/common/js/JSON_v1.js'> </script>
-		<script language='javascript' src='/opac/common/js/fmall.js'> </script>
-		<script language='javascript' src='/opac/common/js/fmgen.js'> </script>
-		<script language='javascript' src='/opac/common/js/opac_utils.js'> </script>
-		<script language='javascript' src='/opac/common/js/<!--#echo var="locale"-->/OrgTree.js'> </script>
-		<script language='javascript' src='/opac/common/js/org_utils.js'> </script>
-		<script language='javascript' src='/opac/common/js/init.js'> </script>
-		<script language='javascript' src='/opac/common/js/RemoteRequest.js'> </script>
-		<script language='javascript' src='bbags.js'> </script>
-
-		<style type='text/css'>
-			.hide_me { visibility: hidden; display: none }
-			.has_color { background: #E0F0E0; color: #000000; }
-			.data_grid { font-weight: 500; border-collapse: collapse;}
-			.data_grid thead tr { background: #E0F0E0; color: #000000; }
-			.data_grid thead td { border: 1px solid #808080; padding-right: 5px; padding-left: 5px;}
-			.data_grid tbody td { border: 1px solid #E0E0E0; padding: 10px; }
-			.data_grid_center { text-align: center; }
-		</style>
-
-	</head>
-
-	<body onload='bbInit();'>
-		<center>
-			<table class='data_grid data_grid_center' width='80%' style='margin-top: 30px;'>
-				<thead>
-					<tr>
-						<td id='view_bookbags'>
-							<span>Items in  Bookbag </span>
-							<b><span id='bb_name'> </span></b>
-						</td>
-					</tr>
-				</thead>
-				<tbody id='tbody'>
-					<tr id='row_template'>
-						<td>
-							<b><a href='javascript:void(0);' name='title'> </a></b>
-							<span name='by' class='hide_me'> By </span><b><span name='author'> </span></b>
-						</td>
-					</tr>
-				</tbody>
-			</table>
-			<span id='not_found' class='hide_me'><b>No Bookbag found!</b></span>
-		</center>
-	</body>
-
-
-</html>
-

commit f4c415a1e68fa1721b6be1b5c80593c59c7a470a
Author: Bill Erickson <berickxx at gmail.com>
Date:   Wed May 13 14:25:48 2015 -0400

    LP#1312297 remove selfcheck.xml legacy selfcheck
    
    Signed-off-by: Bill Erickson <berickxx at gmail.com>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/examples/apache/eg_vhost.conf.in b/Open-ILS/examples/apache/eg_vhost.conf.in
index 1144f4c..8530e6b 100644
--- a/Open-ILS/examples/apache/eg_vhost.conf.in
+++ b/Open-ILS/examples/apache/eg_vhost.conf.in
@@ -538,22 +538,6 @@ RewriteRule .? - [E=locale:%{HTTP:Accept-Language}]
 </Location>
 
 # ----------------------------------------------------------------------------------
-# Selfcheck interface
-# ----------------------------------------------------------------------------------
-<LocationMatch .*/selfcheck.xml>
-    AuthType Basic
-    AuthName "Self-check Login"
-    PerlOptions +GlobalRequest
-    PerlSetVar OILSProxyPermissions "STAFF_LOGIN"
-    PerlAuthenHandler OpenILS::WWW::Proxy::Authen
-    require valid-user
-    Options +ExecCGI
-    PerlSendHeader On
-    allow from all
-</LocationMatch>
-
-
-# ----------------------------------------------------------------------------------
 # Reports GUI
 # ----------------------------------------------------------------------------------
 <LocationMatch /reports>
diff --git a/Open-ILS/examples/apache_24/eg_vhost.conf.in b/Open-ILS/examples/apache_24/eg_vhost.conf.in
index 851db16..6e8980e 100644
--- a/Open-ILS/examples/apache_24/eg_vhost.conf.in
+++ b/Open-ILS/examples/apache_24/eg_vhost.conf.in
@@ -537,21 +537,6 @@ RewriteRule .? - [E=locale:%{HTTP:Accept-Language}]
 </Location>
 
 # ----------------------------------------------------------------------------------
-# Selfcheck interface
-# ----------------------------------------------------------------------------------
-<LocationMatch .*/selfcheck.xml>
-    AuthType Basic
-    AuthName "Self-check Login"
-    PerlOptions +GlobalRequest
-    PerlSetVar OILSProxyPermissions "STAFF_LOGIN"
-    PerlAuthenHandler OpenILS::WWW::Proxy::Authen
-    Require valid-user
-    Options +ExecCGI
-    PerlSendHeader On
-</LocationMatch>
-
-
-# ----------------------------------------------------------------------------------
 # Reports GUI
 # ----------------------------------------------------------------------------------
 <LocationMatch /reports>
diff --git a/Open-ILS/web/opac/extras/selfcheck/selfcheck.css b/Open-ILS/web/opac/extras/selfcheck/selfcheck.css
deleted file mode 100644
index 3db3dd7..0000000
--- a/Open-ILS/web/opac/extras/selfcheck/selfcheck.css
+++ /dev/null
@@ -1,102 +0,0 @@
-.hide_me {
-    visibility: hidden;
-    display: none;
-}
-table { border-collapse:collapse; }
-body { font-size: 12pt; }
-.container:after {content: ""; display: block; height: 0; clear: both; }
-
-.biglabel {
-    font-size: 13pt;
-    margin: 5px;
-}
-
-.selfck-link-span {
-    padding: 2px 4px 2px 4px;
-}
-
-#selfck-items-out-table {
-    width: 100%;
-}
-.form_div {
-    width:100%;
-}
-.form_div span {
-    padding: 5px;
-}
-
-#selfck-item-barcode-form {
-    margin-top:20px;
-}
-#selfck-items-out-table thead td {
-    font-weight: bold;
-}
-#selfck-items-out-table thead tr {
-    border-bottom: 2px solid #808080;
-}
-#selfck-items-out-table {
-    margin-top: 20px;
-}
-#selfck-items-out-tbody td { 
-    padding: 4px 0px 4px 0px;
-}
-#selfck-items-out-tbody tr { 
-    border-bottom: 1px solid #808080;
-}
-#selfck-pic-cell { width: 43px;}
-.jacket { height: 50px; width: 40px;  border: none;}
-
-#selfck-logout-div {
-    width: 100%;
-    margin: 0px 0px 0px 0px;
-    padding: 3px;
-    /*border-bottom:2px solid #e0f0e0;*/
-    text-align: right;
-}
-
-#selfck-patron-info-div {
-    text-align: left;
-    float:left;
-}
-#selfck-logout-link-div {
-    text-align: right;
-    float:right;
-}
-
-#selfck-message-div {
-    border: 1px solid #e0f0e0;
-    height: 1.5em;
-    overflow: auto;
-    margin-bottom: 20px;
-}
-#selfck-item-barcode-form-div {
-    text-align: center;
-}
-
-.print {
-    display: none;
-    visibility: hidden;
-}
-.noprint {
-    display: block;
-    visibility: visible;
-}
-#selfck-items-out-done-div {
-    width: 100%;
-    text-align: center;
-    margin-top: 20px;
-}
-
-.selfck-done-link {
-    font-size: 12pt;
-    font-weight: bold;
-}
-
-#selfck-print-queuing {
-    font-size: 110%;
-    border: 2px solid #808080;
-    width: 100%;
-    text-align: center;
-    padding: 10px;
-    margin: 5px;
-}
diff --git a/Open-ILS/web/opac/extras/selfcheck/selfcheck.js b/Open-ILS/web/opac/extras/selfcheck/selfcheck.js
deleted file mode 100644
index d1b9f08..0000000
--- a/Open-ILS/web/opac/extras/selfcheck/selfcheck.js
+++ /dev/null
@@ -1,504 +0,0 @@
-/* -----------------------------------------------------------------
-* Copyright (C) 2008  Equinox Software, Inc.
-* Bill Erickson <erickson at esilibrary.com>
-* 
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-* 
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU General Public License for more details.
-* 
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  
-* 02110-1301, USA
------------------------------------------------------------------ */
-
-var STAFF_SES_PARAM = 'ses';
-var PATRON_BARCODE_COOKIE = 'pbcc';
-var patron = null
-var itemBarcode = null;
-var itemsOutTemplate = null;
-var isRenewal = false;
-var pendingXact = false;
-var patronTimeout = 600000; /* 10 minutes */
-var timerId = null;
-var printWrapper;
-var printTemplate;
-var successfulItems = {};
-var scanTimeout = 800;
-var scanTimeoutId;
-var patronBarcodeRegex;
-var orgUnit;
-var orgUnitAddress;
-var orgUnitHours;
-var alertOnCheckoutEvent = false;
-var overrideCircEvents = [];
-var SET_PATRON_TIMEOUT = 'circ.selfcheck.patron_login_timeout';
-var SET_BARCODE_REGEX = 'opac.barcode_regex';
-var SET_ALERT_ON_CHECKOUT_EVENT = 'circ.selfcheck.alert_on_checkout_event';
-var SET_AUTO_OVERRIDE_EVENTS = 'circ.selfcheck.auto_override_checkout_events';
-
-
-function selfckInit() {
-    dojo.require('dojo.cookie');
-    var cgi = new CGI();
-    var staff = grabUser(dojo.cookie(STAFF_SES_PARAM) || cgi.param(STAFF_SES_PARAM));
-
-    selfckSetupPrinter();
-
-    orgUnit = findOrgUnitSN(cgi.param('l')) || globalOrgTree;
-    selfckFetchOrgDetails();
-
-    // fetch the relevent org-unit setting
-    var settings = fetchBatchOrgSetting(orgUnit.id(), 
-        [SET_PATRON_TIMEOUT, SET_BARCODE_REGEX, SET_ALERT_ON_CHECKOUT_EVENT, SET_AUTO_OVERRIDE_EVENTS]);
-    if(settings[SET_PATRON_TIMEOUT])
-        patronTimeout = parseInt(settings[SET_PATRON_TIMEOUT].value) * 1000;
-    if(settings[SET_BARCODE_REGEX])
-        patronBarcodeRegex = new RegExp(settings[SET_BARCODE_REGEX].value);
-    if(settings[SET_ALERT_ON_CHECKOUT_EVENT])
-        alertOnCheckoutEvent = (settings[SET_ALERT_ON_CHECKOUT_EVENT].value) ? true : false;
-    if(settings[SET_AUTO_OVERRIDE_EVENTS])
-        overrideCircEvents = settings[SET_AUTO_OVERRIDE_EVENTS].value;
-
-    if(!staff) {
-        // should not happen when behind the proxy
-        return alert('Staff must login');
-    }
-
-    unHideMe($('selfck-patron-login-container'));
-    $('selfck-patron-login-input').focus();
-
-    $('selfck-patron-login-input').onkeypress = function(evt) {
-        if(userPressedEnter(evt)) 
-            selfckPatronLogin();
-    };
-
-    $('selfck-item-barcode-input').onkeypress = selfckItemBarcodeKeypress;
-
-    // for debugging, allow passing the user barcode via param
-    var urlbc = new CGI().param('patron');
-    if(urlbc)
-        selfckPatronLogin(urlbc);
-
-    selfckStartTimer();
-
-    printWrapper = $('selfck-print-items-list');
-    printTemplate = printWrapper.removeChild($n(printWrapper, 'selfck-print-items-template'));
-    itemsOutTemplate = $('selfck-items-out-tbody').removeChild($('selfck-items-out-row'));
-
-    selfckTryPatronCookie();
-
-//    selfckMkDummyCirc(); // testing only
-    
-}
-
-function selfckFetchOrgDetails() {
-    var hreq = new Request('open-ils.actor:open-ils.actor.org_unit.hours_of_operation.retrieve', G.user.session, orgUnit.id());
-    hreq.callback(function(r) { orgUnitHours = r.getResultObject(); });
-    hreq.send();
-
-    var areq = new Request('open-ils.actor:open-ils.actor.org_unit.address.retrieve', orgUnit.mailing_address());
-    areq.callback(function(r) { orgUnitAddress = r.getResultObject(); });
-    areq.send();
-}
-
-function selfckSetupPrinter() {
-    try { // Mozilla only
-		netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
-        netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
-        netscape.security.PrivilegeManager.enablePrivilege('UniversalPreferencesRead');
-        netscape.security.PrivilegeManager.enablePrivilege('UniversalPreferencesWrite');
-        var pref = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
-        if (pref)
-            pref.setBoolPref('print.always_print_silent', true);
-    } catch(E) {
-        
-    }
-}
-
-function selfckTryPatronCookie() {
-    var pb = dojo.cookie(PATRON_BARCODE_COOKIE);
-    if(pb) {
-        dojo.cookie(PATRON_BARCODE_COOKIE, null, {'expires':-1});
-        $('selfck-patron-login-input').value = pb;
-        selfckPatronLogin();
-    }
-}
-
-
-function selfckItemBarcodeKeypress(evt) {
-    if(userPressedEnter(evt)) {
-        clearTimeout(scanTimeoutId);
-        selfckCheckout();
-    } else {
-        /*  If scanTimeout milliseconds have passed and there is
-            still data in the input box, it's a likely indication
-            of a partial scan. Select the text so the next scan
-            will replace the value */
-        clearTimeout(scanTimeoutId);
-        scanTimeoutId = setTimeout(
-            function() {
-                if($('selfck-item-barcode-input').value) {
-                    $('selfck-item-barcode-input').select();
-                }
-            },
-            scanTimeout
-        );
-    }
-}
-
-/*
- * Start the logout timer
- */
-function selfckStartTimer() {
-    timerId = setTimeout(
-        function() {
-            selfckLogoutPatron();
-        },
-        patronTimeout
-    );
-
-}
-
-/*
- * Reset the logout timer
- */
-function selfckResetTimer() {
-    clearTimeout(timerId);
-    selfckStartTimer();
-}
-
-/*
- * Clears fields and "logs out" the patron by reloading the page
- */
-function selfckLogoutPatron() {
-    $('selfck-item-barcode-input').value = ''; // prevent browser caching
-    $('selfck-patron-login-input').value = '';
-    if(patron) {
-        var numItems = selfckPrint();
-        var sleepTime = 1000;
-        if(numItems > 0) sleepTime += (numItems / 2) * 1000;
-        setTimeout(
-            function() { location.href = location.href; },
-            sleepTime // give the browser time to send the page to the printer
-        );
-    }
-}
-
-/*
- * Fetches the user by barcode and displays the item barcode input
- */
-
-function selfckPatronLogin(barcode) {
-    barcode = barcode || $('selfck-patron-login-input').value;
-    if(!barcode) return;
-
-    var bcReq = new Request(
-        'open-ils.actor:open-ils.actor.user.fleshed.retrieve_by_barcode',
-        G.user.session, barcode);
-
-	bcReq.request.alertEvent = false;
-
-    bcReq.callback(function(r) {
-        patron = r.getResultObject();
-        if(checkILSEvent(patron)) {
-            if(patron.textcode == 'ACTOR_USER_NOT_FOUND') {
-                unHideMe($('selfck-patron-not-found'));
-                $('selfck-patron-login-input').select();
-                return;
-            }
-
-            if(patron.textcode == 'NO_SESSION') 
-                return selfckLogoutStaff();
-
-            return alert(patron.textcode);
-        }
-
-        if(!isTrue(patron.active())) {
-            unHideMe($('selfck-patron-not-found'));
-            $('selfck-patron-login-input').select();
-            return;
-        }
-        for (var i =0; i < patron.cards().length; i++) {
-            if (patron.cards()[i].barcode() == barcode) {
-                if (!isTrue(patron.cards()[i].active())) {
-                    unHideMe($('selfck-patron-not-found'));
-                    $('selfck-patron-login-input').select();
-                    return;
-                }
-            }
-        }
-
-        $('selfck-patron-login-input').value = ''; // reset the input
-        hideMe($('selfck-patron-login-container'));
-        unHideMe($('selfck-patron-checkout-container'));
-        $('selfck-patron-name-span').appendChild(text(patron.usrname()));
-        $('selfck-item-barcode-input').focus();
-    });
-
-    bcReq.send();
-}
-
-function selfckLogoutStaff() {
-    dojo.cookie(STAFF_SES_PARAM,null,{'expires':-1});
-    location.reload(true);
-}
-
-/**
-  * If a user barcode was scanned into the item barcode
-  * input, log out the current user and log in the new user
-  */
-function selfckCheckPatronBarcode(itemBc) {
-    if(patronBarcodeRegex) {
-        if(itemBc.match(patronBarcodeRegex)) {
-            dojo.cookie(PATRON_BARCODE_COOKIE, itemBc);
-            selfckLogoutPatron();
-            return true;
-        }
-    }
-    return false;
-}
-
-/**
-  * Sends the checkout request
-  */
-function selfckCheckout(override) {
-    if(pendingXact) return;
-    selfckResetTimer();
-    pendingXact = true;
-    isRenewal = false;
-
-    removeChildren($('selfck-event-time'));
-    removeChildren($('selfck-event-span'));
-
-    itemBarcode = $('selfck-item-barcode-input').value;
-    if(!itemBarcode) return;
-
-    if(selfckCheckPatronBarcode(itemBarcode))
-        return;
-
-    if (itemBarcode in successfulItems) {
-        selfckShowMsgNode({textcode:'dupe-barcode'});
-        $('selfck-item-barcode-input').select();
-        pendingXact = false;
-        return;
-    }
-
-    var coReq = new Request(
-        'open-ils.circ:open-ils.circ.checkout.full' + ((override) ? '.override' : ''),
-        G.user.session, {patron_id:patron.id(), copy_barcode:itemBarcode});
-
-	coReq.request.alertEvent = false;
-    coReq.callback(selfckHandleCoResult);
-    coReq.send();
-}
-
-/**
-  * Handles the resulting event.  If the item is already checked out,
-  * attempts renewal.  Any other events will display a message
-  */
-function selfckHandleCoResult(r) {
-    var evt;
-
-    try {
-        evt = r.getResultObject();
-    } catch(E) {
-        pendingXact = false;
-        selfckShowMsgNode({textcode:'UNKNOWN'});
-        appendClear($('selfck-errors'), text(E.toString()));
-        return;
-    }
-
-    if(evt.textcode == 'SUCCESS') {
-        selfckDislplayCheckout(evt);
-        selfckShowMsgNode(evt);
-        successfulItems[itemBarcode] = 1;
-
-    } else if(evt.textcode == 'OPEN_CIRCULATION_EXISTS') {
-        selfckRenew();
-
-    } else if(evt.textcode == 'NO_SESSION') {
-        
-        return selfckLogoutStaff();
-
-    } else {
-        pendingXact = false;
-
-        if(!evt.length) evt = [evt];
-        if(overrideCircEvents.length) {
-
-            // see if the events we received are all in the list of 
-            // events to override
-            var override = true;
-            for(var i = 0; i < evt.length; i++) {
-                var match = overrideCircEvents.filter(
-                    function(e) { return (e == evt[i].textcode); })[0];
-                if(!match) {
-                    override = false;
-                    break;
-                }
-            }
-
-            if(override)
-                return selfckCheckout(true);
-        }
-
-        selfckShowMsgNode(evt);
-        $('selfck-item-barcode-input').select();
-    }
-}
-
-/**
-  * Display event text in the messages block
-  */
-function selfckShowMsgNode(evt) {
-    var code = evt.textcode;
-    var msgspan = $('selfck-event-span');
-
-    // if we're not explicitly handling the event, just say "copy cannot circ"
-    if(!$('selfck-event-' + code)) 
-        code = 'COPY_CIRC_NOT_ALLOWED';
-
-    appendClear($('selfck-event-time'), text(new Date().toLocaleString()));
-    appendClear($('selfck-event-span'), text($('selfck-event-' + code).innerHTML));
-
-    if(code != 'SUCCESS' && alertOnCheckoutEvent)
-        alert($('selfck-event-' + code).innerHTML);
-}
-
-/**
-  * Renders a row in the checkouts table for the current circulation
-  */
-function selfckDislplayCheckout(evt) {
-    unHideMe($('selfck-items-out-table-wrapper'));
-
-    var template = itemsOutTemplate.cloneNode(true);
-    var copy = evt.payload.copy;
-    var record = evt.payload.record;
-    var circ = evt.payload.circ;
-
-    if(record.isbn()) {
-	    var pic = $n(template, 'selfck.jacket');
-	    pic.setAttribute('src', '../ac/jacket/small/'+cleanISBN(record.isbn()));
-    }
-    $n(template, 'selfck.barcode').appendChild(text(copy.barcode()));
-    $n(template, 'selfck.title').appendChild(text(record.title()));
-    $n(template, 'selfck.author').appendChild(text(record.author()));
-    $n(template, 'selfck.due_date').appendChild(text(circ.due_date().replace(/T.*/,'')));
-    $n(template, 'selfck.remaining').appendChild(text(circ.renewal_remaining()));
-    if(isRenewal) {
-        hideMe($n(template, 'selfck.cotype_co'));
-        unHideMe($n(template, 'selfck.cotype_rn'));
-    }
-
-    var tbody = $('selfck-items-out-tbody');
-    tbody.insertBefore(template, tbody.getElementsByTagName('tr')[0]);
-    $('selfck-item-barcode-input').value = '';
-
-
-    // flesh out the printable version of the page as well
-    var ptemplate = printTemplate.cloneNode(true);
-    $n(ptemplate, 'title').appendChild(text(record.title()));
-    $n(ptemplate, 'barcode').appendChild(text(copy.barcode()));
-    $n(ptemplate, 'due_date').appendChild(text(circ.due_date().replace(/T.*/,'')));
-    printWrapper.insertBefore(ptemplate, printWrapper.getElementsByTagName('li')[0]);
-
-    pendingXact = false;
-}
-
-/**
-  * Checks to see if this item is checked out to the current patron.  If so, 
-  * this sends the renewal request.
-  */
-function selfckRenew() {
-
-    // first, make sure the item is checked out to this patron
-    var detailReq = new Request(
-        'open-ils.circ:open-ils.circ.copy_details.retrieve.barcode',
-        G.user.session, itemBarcode);
-
-    detailReq.callback(
-        function(r) {
-            var details = r.getResultObject();
-            if(details.circ.usr() == patron.id()) {
-                // OK, this is our item, renew it
-                isRenewal = true;
-                var rnReq = new Request(
-                    'open-ils.circ:open-ils.circ.renew',
-                    G.user.session, {copy_barcode:itemBarcode});
-                rnReq.request.alertEvent = false;
-                rnReq.callback(selfckHandleCoResult);
-                rnReq.send();
-            } else {
-                pendingXact = false;
-                selfckShowMsgNode({textcode:'already-out'});
-            }
-        }
-    );
-
-    detailReq.send();
-}
-
-/**
-  * Sets the print date and prints the page
-  */
-function selfckPrint() {
-
-    var numItems = 0;
-    for(var x in successfulItems)  
-        numItems++;
-
-    if(numItems > 0) {
-        hideMe($('selfck-patron-checkout-container'));
-        unHideMe($('selfck-print-queuing'));
-        appendClear($('selfck-print-date'), text(new Date().toLocaleString()));
-        appendClear($('selfck-print-lib-name'), text(orgUnit.name()));
-        if(orgUnitAddress) {
-            appendClear($('selfck-print-lib-addr-street'), text(orgUnitAddress.street1()+' '+orgUnitAddress.street2()));
-            appendClear($('selfck-print-lib-addr-city'), text(orgUnitAddress.city()));
-            appendClear($('selfck-print-lib-addr-state'), text(orgUnitAddress.state()));
-            appendClear($('selfck-print-lib-addr-post-code'), text(orgUnitAddress.post_code()));
-        }
-        appendClear($('selfck-print-lname'), text(patron.family_name()));
-        appendClear($('selfck-print-fname'), text(patron.first_given_name()));
-        appendClear($('selfck-print-lib-phone'), text(orgUnit.phone()));
-        if(orgUnitHours) {
-            for(var i in [0, 1, 2, 3, 4, 5, 6]) {
-                appendClear($('selfck-print-dow_'+i+'_open'), text(orgUnitHours['dow_'+i+'_open']()));
-                appendClear($('selfck-print-dow_'+i+'_close'), text(orgUnitHours['dow_'+i+'_close']()));
-            }
-        }
-        window.print();
-    }
-
-    return numItems;
-}
-
-
-/**
-  * Test method for generating dummy data in the checkout tables
-  */
-function selfckMkDummyCirc() {
-    unHideMe($('selfck-items-out-table'));
-
-    var template = itemsOutTemplate.cloneNode(true);
-    $n(template, 'selfck.barcode').appendChild(text('123456789'));
-    $n(template, 'selfck.title').appendChild(text('Test Title'));
-    $n(template, 'selfck.author').appendChild(text('Test Author'));
-    $n(template, 'selfck.due_date').appendChild(text('2008-08-01'));
-    $n(template, 'selfck.remaining').appendChild(text('1'));
-    $('selfck-items-out-tbody').appendChild(template);
-
-    // flesh out the printable version of the page as well
-    var ptemplate = printTemplate.cloneNode(true);
-    $n(ptemplate, 'title').appendChild(text('Test Title'));
-    $n(ptemplate, 'barcode').appendChild(text('123456789'));
-    $n(ptemplate, 'due_date').appendChild(text('2008-08-01'));
-    printWrapper.appendChild(ptemplate);
-}
diff --git a/Open-ILS/web/opac/extras/selfcheck/selfcheck.xml b/Open-ILS/web/opac/extras/selfcheck/selfcheck.xml
deleted file mode 100644
index d78f05e..0000000
--- a/Open-ILS/web/opac/extras/selfcheck/selfcheck.xml
+++ /dev/null
@@ -1,228 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- ***********************************************************************
-* Copyright (C) 2008  Equinox Software, Inc.
-* Bill Erickson <erickson at esilibrary.com>
-* 
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-* 
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU General Public License for more details.
-* 
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  
-* 02110-1301, USA
-************************************************************************ -->
-
-<!DOCTYPE html PUBLIC 
-	"-//W3C//DTD XHTML 1.0 Transitional//EN" 
-	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [
-	<!--#include virtual="/opac/locale/${locale}/opac.dtd" -->
-]>
-
-<!--#include virtual="../../skin/default/xml/setenv.xml"-->
-
-<html xmlns='http://www.w3.org/1999/xhtml'>
-
-    <head>
-    	<script type="text/javascript" src='/js/dojo/dojo/dojo.js'></script>
-
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/utils.js'></script>
-	    <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/config.js'></script>
-	    <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/CGI.js'></script>
-	    <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/md5.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/JSON_v1.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/fmcore.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/fmgen.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/opac_utils.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/<!--#echo var="locale"-->/OrgTree.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/OrgLasso.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/org_utils.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/RemoteRequest.js'></script>
-        <script language='javascript' type='text/javascript' 
-            src='<!--#echo var="OILS_OPAC_JS_HOST"-->/extras/selfcheck/selfcheck.js'></script>
-        <link type='text/css' rel='stylesheet' title='Regular'
-            href="<!--#echo var='OILS_OPAC_CSS_HOST'-->/extras/selfcheck/selfcheck.css"/>
-        <link type='text/css' rel='stylesheet' media='print'
-            href="<!--#echo var='OILS_OPAC_CSS_HOST'-->/extras/selfcheck/selfcheck_print.css"/>
-        <link type='text/css' rel='alternate stylesheet' title='Printable'
-            href="<!--#echo var='OILS_OPAC_CSS_HOST'-->/extras/selfcheck/selfcheck_print.css"/>
-    </head>
-
-    <body onload='selfckInit();'>
-
-        <div class='noprint'>
-
-            <!--***********************************************************************
-                Form for patron "login"
-                *********************************************************************** -->
-            <div id='selfck-patron-login-container' class='hide_me form_div'>
-                <span>&selfck.patron_barcode_label;</span>
-                <span><input type='text' id='selfck-patron-login-input'> </input></span>
-                <span><button onclick='selfckPatronLogin();'>&selfck.submit;</button></span>
-                <span id='selfck-patron-not-found' class='hide_me'>&selfck.event.patron_not_found;</span>
-            </div>
-
-            <div id='selfck-print-queuing' class='hide_me'>
-                <div><img src='../../../images/small_logo.jpg'/></div>
-                <div>&selfck.printing;</div>
-            </div>
-
-            <!--***********************************************************************
-                Checkout form
-                *********************************************************************** -->
-            <div id='selfck-patron-checkout-container' class='hide_me'>
-
-                <!--***********************************************************************
-                    Header
-                    *********************************************************************** -->
-                <div id='selfck-logout-div' class='container'>
-                    <div id='selfck-patron-info-div'> 
-                        <!-- not really i18n friendly, but better than nothing -->
-                        &selfck.welcome; <span id='selfck-patron-name-span'></span>!
-                    </div>
-                    <div id='selfck-logout-link-div'>
-                        <span class='selfck-link-span'>
-                            <a href='javascript:void(0);' class='selfck-done-link' 
-                                onclick='selfckLogoutPatron();'>&selfck.done;</a>
-                        </span>
-                    </div>
-                </div>
-
-                <!--***********************************************************************
-                    Display messages here
-                    *********************************************************************** -->
-                <div id='selfck-message-div' class='form_div'>
-                    <span class='' id='selfck-event-time'></span>
-                    <span class='biglabel' id='selfck-event-span'> </span>
-                    <span class='hide_me'>
-                        <span id='selfck-event-SUCCESS'>&selfck.event.co_success;</span>
-                        <span id='selfck-event-UNKNOWN'>&selfck.event.co_unknown;</span>
-                        <span id='selfck-event-ACTOR_USER_NOT_FOUND'>&selfck.event.patron_not_found;</span>
-                        <span id='selfck-event-COPY_CIRC_NOT_ALLOWED'>&selfck.event.item_nocirc;</span>
-                        <span id='selfck-event-ITEM_NOT_CATALOGED'>&selfck.event.item_noncat;</span>
-                        <span id='selfck-event-already-out'>&selfck.event.already_out;</span>
-                        <span id='selfck-event-dupe-barcode'>&selfck.event.dupe_barcode;</span>
-                    </span>
-                </div>
-
-                <!--***********************************************************************
-                    This is where patrons scan in the item barcodes
-                    *********************************************************************** -->
-                <div id='selfck-item-barcode-form-div' class='form_div'>
-                    <div>
-                        <img src='../../../images/small_logo.jpg'/>
-                        <div class='biglabel'>&selfck.item_barcode_label;</div>
-                        <div id='selfck-item-barcode-form'>
-                            <span><input type='text' id='selfck-item-barcode-input'> </input></span>
-                            <span><button onclick='selfckCheckout();'>&selfck.submit;</button></span>
-                            <span><button onclick='$("selfck-item-barcode-input").value = "";'>&selfck.clear;</button></span>
-                        </div>
-                    </div>
-                </div>
-
-                <!--***********************************************************************
-                    This is where patrons scan in the item barcodes
-                    *********************************************************************** -->
-                <div id='selfck-items-out-table-wrapper' class='hide_me'>
-                    <table id='selfck-items-out-table'>
-                        <thead>
-                            <tr>
-                                <td id='selfck-pic-cell'></td>
-                                <td>&selfck.barcode;</td>
-                                <td>&selfck.title;</td>
-                                <td>&selfck.author;</td>
-                                <td>&selfck.due_date;</td>
-                                <td>&selfck.remaining;</td>
-                                <td>&selfck.cotype;</td>
-                            </tr>
-                        </thead>
-                        <tbody id='selfck-items-out-tbody'>
-                            <tr id='selfck-items-out-row'>
-                                <td><img class='jacket' name='selfck.jacket'></img></td>
-                                <td name='selfck.barcode'></td>
-                                <td name='selfck.title'></td>
-                                <td name='selfck.author'></td>
-                                <td name='selfck.due_date'></td>
-                                <td name='selfck.remaining'></td>
-                                <td>
-                                    <span name='selfck.cotype_co'>&selfck.cotype_co;</span>
-                                    <span name='selfck.cotype_rn' class='hide_me'>&selfck.cotype_rn;</span>
-                                </td>
-                            </tr>
-                            <tr class='hide_me'> </tr>
-                        </tbody>
-                    </table>
-                    <div id='selfck-items-out-done-div'>
-                        <a href='javascript:void(0);' id='selfck-print-co-button' 
-                            class='selfck-done-link' onclick='selfckLogoutPatron();'>&selfck.done;</a>
-                    </div>
-                </div>
-            </div>
-        </div>
-
-        <div class='hide_me' id='selfck-errors'/>
-
-        <!--***********************************************************************
-            Generate the printable version of the checked out list here
-            *********************************************************************** -->
-        <div class='print' id='selfck-print-div'>
-            <div>
-                <div id='selfck-print-date'/>
-                <div id='selfck-print-lib-name'/>
-                <div id='selfck-print-lib-addr-street'/>
-                <div>
-                    <span id='selfck-print-lib-addr-city'/>
-                    <span id='selfck-print-lib-addr-state'/> 
-                    <span id='selfck-print-lib-addr-post-code'/>
-                </div>
-                <br/>
-                <div id='selfck-print-patron-info'>
-                    <div><span id='selfck-print-lname'/>, <span id='selfck-print-fname'/></div>
-                    &selfck.items_out;
-                    <ol id='selfck-print-items-list'>
-                        <li name='selfck-print-items-template'>
-                            <div name='title'/>
-                            &selfck.barcode;: <span name='barcode'/>
-                            &selfck.due_date;: <span name='due_date'/>
-                        </li>
-                        <li class='hide_me'> </li>
-                    </ol>
-                </div>
-                <br/>
-                <div>&selfck.org_phone; <span id='selfck-print-lib-phone'/></div>
-                <br/>
-                <div>
-                    <div>&selfck.org_hours;</div>
-                    <table id='selfck-print-hours'>
-                        <tr><td>&selfck.day0;</td><td id='selfck-print-dow_0_open'/><td id='selfck-print-dow_0_close'/></tr>
-                        <tr><td>&selfck.day1;</td><td id='selfck-print-dow_1_open'/><td id='selfck-print-dow_1_close'/></tr>
-                        <tr><td>&selfck.day2;</td><td id='selfck-print-dow_2_open'/><td id='selfck-print-dow_2_close'/></tr>
-                        <tr><td>&selfck.day3;</td><td id='selfck-print-dow_3_open'/><td id='selfck-print-dow_3_close'/></tr>
-                        <tr><td>&selfck.day4;</td><td id='selfck-print-dow_4_open'/><td id='selfck-print-dow_4_close'/></tr>
-                        <tr><td>&selfck.day5;</td><td id='selfck-print-dow_5_open'/><td id='selfck-print-dow_5_close'/></tr>
-                        <tr><td>&selfck.day6;</td><td id='selfck-print-dow_6_open'/><td id='selfck-print-dow_6_close'/></tr>
-                    </table>
-                </div>
-            </div>
-        </div>
-    </body>
-</html>
-
diff --git a/Open-ILS/web/opac/extras/selfcheck/selfcheck_print.css b/Open-ILS/web/opac/extras/selfcheck/selfcheck_print.css
deleted file mode 100644
index c5ea5e2..0000000
--- a/Open-ILS/web/opac/extras/selfcheck/selfcheck_print.css
+++ /dev/null
@@ -1,22 +0,0 @@
-.noprint {
-    display: none;
-    visibility: hidden;
-}
-.print {
-    display: block;
-    visibility: visible;
-    width: 100%;
-    font-size: 7pt;
-    color: black;
-    font-family: Arial;
-    background-color: white;
-    page-break-after: always;
-}
-#selfck-print-patron-info { font-size: 8pt; }
-
-/* strange that the table does not inherit the .print css */
-#selfck-print-hours { 
-    font-size: 7pt; 
-    font-family: Arial;
-}
-

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

Summary of changes:
 .gitignore                                         |    1 -
 Open-ILS/examples/apache/eg.conf.in                |    2 +-
 Open-ILS/examples/apache/eg_vhost.conf.in          |   24 -
 Open-ILS/examples/apache_24/eg.conf.in             |    2 +-
 Open-ILS/examples/apache_24/eg_vhost.conf.in       |   24 -
 Open-ILS/images/opac/orgtree/base.gif              |  Bin 1040 -> 0 bytes
 Open-ILS/images/opac/orgtree/cd.gif                |  Bin 239 -> 0 bytes
 Open-ILS/images/opac/orgtree/empty.gif             |  Bin 62 -> 0 bytes
 Open-ILS/images/opac/orgtree/folder.gif            |  Bin 372 -> 0 bytes
 Open-ILS/images/opac/orgtree/folderopen.gif        |  Bin 376 -> 0 bytes
 Open-ILS/images/opac/orgtree/globe.gif             |  Bin 1095 -> 0 bytes
 Open-ILS/images/opac/orgtree/imgfolder.gif         |  Bin 622 -> 0 bytes
 Open-ILS/images/opac/orgtree/join.gif              |  Bin 69 -> 0 bytes
 Open-ILS/images/opac/orgtree/joinbottom.gif        |  Bin 66 -> 0 bytes
 Open-ILS/images/opac/orgtree/line.gif              |  Bin 66 -> 0 bytes
 Open-ILS/images/opac/orgtree/minus.gif             |  Bin 86 -> 0 bytes
 Open-ILS/images/opac/orgtree/minusbottom.gif       |  Bin 85 -> 0 bytes
 Open-ILS/images/opac/orgtree/musicfolder.gif       |  Bin 633 -> 0 bytes
 Open-ILS/images/opac/orgtree/nolines_minus.gif     |  Bin 861 -> 0 bytes
 Open-ILS/images/opac/orgtree/nolines_plus.gif      |  Bin 870 -> 0 bytes
 Open-ILS/images/opac/orgtree/page.gif              |  Bin 582 -> 0 bytes
 Open-ILS/images/opac/orgtree/plus.gif              |  Bin 89 -> 0 bytes
 Open-ILS/images/opac/orgtree/plusbottom.gif        |  Bin 88 -> 0 bytes
 Open-ILS/images/opac/orgtree/question.gif          |  Bin 1044 -> 0 bytes
 Open-ILS/images/opac/orgtree/trash.gif             |  Bin 1051 -> 0 bytes
 Open-ILS/images/opac/tor/cartographic.jpg          |  Bin 690 -> 0 bytes
 Open-ILS/images/opac/tor/mixed material.jpg        |  Bin 525 -> 0 bytes
 Open-ILS/images/opac/tor/moving image.jpg          |  Bin 540 -> 0 bytes
 Open-ILS/images/opac/tor/notated music.jpg         |  Bin 1826 -> 0 bytes
 Open-ILS/images/opac/tor/software, multimedia.jpg  |  Bin 442 -> 0 bytes
 .../images/opac/tor/sound recording-musical.jpg    |  Bin 168 -> 0 bytes
 .../images/opac/tor/sound recording-nonmusical.jpg |  Bin 168 -> 0 bytes
 Open-ILS/images/opac/tor/sound recording.jpg       |  Bin 168 -> 0 bytes
 Open-ILS/images/opac/tor/still images.jpg          |  Bin 287 -> 0 bytes
 .../images/opac/tor/three dimensional object.jpg   |  Bin 1964 -> 0 bytes
 Open-ILS/src/extras/autogen.sh                     |   43 -
 Open-ILS/web/Makefile.am                           |    3 -
 Open-ILS/web/opac/common/css/dtree.css             |   34 -
 Open-ILS/web/opac/common/css/largefont.css         |   13 -
 Open-ILS/web/opac/common/css/mediumfont.css        |   20 -
 Open-ILS/web/opac/common/css/smallfont.css         |   13 -
 Open-ILS/web/opac/common/js/dtree.js               |  324 ----
 Open-ILS/web/opac/common/xml/item_lang_options.xml |   28 -
 Open-ILS/web/opac/extras/bbags.js                  |   47 -
 Open-ILS/web/opac/extras/bbags.xml                 |   64 -
 Open-ILS/web/opac/extras/selfcheck/selfcheck.css   |  102 --
 Open-ILS/web/opac/extras/selfcheck/selfcheck.js    |  504 ------
 Open-ILS/web/opac/extras/selfcheck/selfcheck.xml   |  228 ---
 .../web/opac/extras/selfcheck/selfcheck_print.css  |   22 -
 Open-ILS/web/opac/images/advancedsearch-icon.gif   |  Bin 431 -> 0 bytes
 Open-ILS/web/opac/images/bg.gif                    |  Bin 287 -> 0 bytes
 Open-ILS/web/opac/images/blank.gif                 |  Bin 43 -> 0 bytes
 Open-ILS/web/opac/images/cancel-icon-u.gif         |  Bin 332 -> 0 bytes
 Open-ILS/web/opac/images/cancel-icon-u.png         |  Bin 506 -> 0 bytes
 Open-ILS/web/opac/images/cancel-icon.gif           |  Bin 332 -> 0 bytes
 Open-ILS/web/opac/images/cancel-icon.png           |  Bin 507 -> 0 bytes
 Open-ILS/web/opac/images/cartographic.jpg          |  Bin 674 -> 0 bytes
 Open-ILS/web/opac/images/chooselibrary-icon.gif    |  Bin 547 -> 0 bytes
 Open-ILS/web/opac/images/chooselibrary-icon.png    |  Bin 1490 -> 0 bytes
 Open-ILS/web/opac/images/closeall-icon-u.gif       |  Bin 367 -> 0 bytes
 Open-ILS/web/opac/images/closeall-icon-u.png       |  Bin 552 -> 0 bytes
 Open-ILS/web/opac/images/closeall-icon.gif         |  Bin 367 -> 0 bytes
 Open-ILS/web/opac/images/closeall-icon.png         |  Bin 548 -> 0 bytes
 Open-ILS/web/opac/images/content-bg.gif            |  Bin 279 -> 0 bytes
 Open-ILS/web/opac/images/content-bg.jpg            |  Bin 368 -> 0 bytes
 Open-ILS/web/opac/images/details-f-bg-u.gif        |  Bin 261 -> 0 bytes
 Open-ILS/web/opac/images/details-f-bg.gif          |  Bin 261 -> 0 bytes
 Open-ILS/web/opac/images/details-headers-bg.gif    |  Bin 152 -> 0 bytes
 Open-ILS/web/opac/images/earth-icon.png            |  Bin 1206 -> 0 bytes
 Open-ILS/web/opac/images/eg_tiny_logo.gif          |  Bin 1164 -> 0 bytes
 Open-ILS/web/opac/images/expandall-icon-u.gif      |  Bin 380 -> 0 bytes
 Open-ILS/web/opac/images/expandall-icon-u.png      |  Bin 618 -> 0 bytes
 Open-ILS/web/opac/images/expandall-icon.gif        |  Bin 382 -> 0 bytes
 Open-ILS/web/opac/images/expandall-icon.png        |  Bin 607 -> 0 bytes
 Open-ILS/web/opac/images/footer-bg.gif             |  Bin 268 -> 0 bytes
 Open-ILS/web/opac/images/footer-bl.gif             |  Bin 100 -> 0 bytes
 Open-ILS/web/opac/images/footer-bottom.gif         |  Bin 50 -> 0 bytes
 Open-ILS/web/opac/images/footer-br.gif             |  Bin 100 -> 0 bytes
 Open-ILS/web/opac/images/footer-corners.gif        |  Bin 131 -> 0 bytes
 Open-ILS/web/opac/images/footer-left.gif           |  Bin 43 -> 0 bytes
 Open-ILS/web/opac/images/footer-right.gif          |  Bin 43 -> 0 bytes
 Open-ILS/web/opac/images/footer-tl.gif             |  Bin 99 -> 0 bytes
 Open-ILS/web/opac/images/footer-top.gif            |  Bin 50 -> 0 bytes
 Open-ILS/web/opac/images/footer-tr.gif             |  Bin 99 -> 0 bytes
 Open-ILS/web/opac/images/header-bg.gif             |  Bin 510 -> 0 bytes
 Open-ILS/web/opac/images/header-shadow.gif         |  Bin 63 -> 0 bytes
 Open-ILS/web/opac/images/home-bottom-tag-bg.gif    |  Bin 169 -> 0 bytes
 Open-ILS/web/opac/images/home-icon-u.gif           |  Bin 592 -> 0 bytes
 Open-ILS/web/opac/images/home-icon-u.png           |  Bin 1605 -> 0 bytes
 Open-ILS/web/opac/images/home-icon.gif             |  Bin 596 -> 0 bytes
 Open-ILS/web/opac/images/home-icon.png             |  Bin 1594 -> 0 bytes
 Open-ILS/web/opac/images/inner-account-icon-u.gif  |  Bin 468 -> 0 bytes
 Open-ILS/web/opac/images/inner-account-icon-u.png  |  Bin 1210 -> 0 bytes
 Open-ILS/web/opac/images/inner-account-icon.gif    |  Bin 465 -> 0 bytes
 Open-ILS/web/opac/images/inner-account-icon.png    |  Bin 1181 -> 0 bytes
 Open-ILS/web/opac/images/inner-advanced-icon-u.gif |  Bin 431 -> 0 bytes
 Open-ILS/web/opac/images/inner-advanced-icon-u.png |  Bin 1137 -> 0 bytes
 Open-ILS/web/opac/images/inner-advanced-icon.gif   |  Bin 431 -> 0 bytes
 Open-ILS/web/opac/images/inner-advanced-icon.png   |  Bin 1114 -> 0 bytes
 Open-ILS/web/opac/images/lg-txt.gif                |  Bin 826 -> 0 bytes
 Open-ILS/web/opac/images/libselect-btn.gif         |  Bin 2970 -> 0 bytes
 Open-ILS/web/opac/images/list-icon.gif             |  Bin 128 -> 0 bytes
 Open-ILS/web/opac/images/list-icon.png             |  Bin 272 -> 0 bytes
 Open-ILS/web/opac/images/login-icon-u.gif          |  Bin 462 -> 0 bytes
 Open-ILS/web/opac/images/login-icon-u.png          |  Bin 1332 -> 0 bytes
 Open-ILS/web/opac/images/login-icon.gif            |  Bin 462 -> 0 bytes
 Open-ILS/web/opac/images/login-icon.png            |  Bin 1332 -> 0 bytes
 Open-ILS/web/opac/images/loginas-icon.gif          |  Bin 431 -> 0 bytes
 Open-ILS/web/opac/images/loginas-icon.png          |  Bin 966 -> 0 bytes
 Open-ILS/web/opac/images/logo.gif                  |  Bin 2250 -> 0 bytes
 Open-ILS/web/opac/images/logo.png                  |  Bin 4421 -> 0 bytes
 Open-ILS/web/opac/images/logout-icon-u.gif         |  Bin 420 -> 0 bytes
 Open-ILS/web/opac/images/logout-icon-u.png         |  Bin 858 -> 0 bytes
 Open-ILS/web/opac/images/logout-icon.gif           |  Bin 418 -> 0 bytes
 Open-ILS/web/opac/images/logout-icon.png           |  Bin 830 -> 0 bytes
 Open-ILS/web/opac/images/mix-icon.png              |  Bin 1591 -> 0 bytes
 Open-ILS/web/opac/images/mixed material.jpg        |  Bin 784 -> 0 bytes
 Open-ILS/web/opac/images/mov-icon.png              |  Bin 1532 -> 0 bytes
 Open-ILS/web/opac/images/moving image.jpg          |  Bin 745 -> 0 bytes
 Open-ILS/web/opac/images/mussymbol-icon.png        |  Bin 1029 -> 0 bytes
 Open-ILS/web/opac/images/myaccount-icon.gif        |  Bin 468 -> 0 bytes
 Open-ILS/web/opac/images/myaccount-icon.png        |  Bin 1210 -> 0 bytes
 Open-ILS/web/opac/images/noimg.gif                 |  Bin 385 -> 0 bytes
 Open-ILS/web/opac/images/nonmusic-icon.png         |  Bin 1217 -> 0 bytes
 Open-ILS/web/opac/images/notated music.jpg         |  Bin 601 -> 0 bytes
 Open-ILS/web/opac/images/pic-icon.png              |  Bin 1849 -> 0 bytes
 Open-ILS/web/opac/images/placeholder-icon.png      |  Bin 891 -> 0 bytes
 Open-ILS/web/opac/images/recsound-icon.png         |  Bin 1512 -> 0 bytes
 Open-ILS/web/opac/images/reg-txt.gif               |  Bin 827 -> 0 bytes
 Open-ILS/web/opac/images/relevant-icon-u.gif       |  Bin 532 -> 0 bytes
 Open-ILS/web/opac/images/relevant-icon-u.png       |  Bin 1383 -> 0 bytes
 Open-ILS/web/opac/images/relevant-icon.gif         |  Bin 535 -> 0 bytes
 Open-ILS/web/opac/images/relevant-icon.png         |  Bin 1349 -> 0 bytes
 Open-ILS/web/opac/images/search-btn.gif            |  Bin 1463 -> 0 bytes
 Open-ILS/web/opac/images/searchbar-bg.gif          |  Bin 2610 -> 0 bytes
 Open-ILS/web/opac/images/searchbox-bg.gif          |  Bin 270 -> 0 bytes
 Open-ILS/web/opac/images/series-icon-u.gif         |  Bin 532 -> 0 bytes
 Open-ILS/web/opac/images/series-icon-u.png         |  Bin 1004 -> 0 bytes
 Open-ILS/web/opac/images/series-icon.gif           |  Bin 532 -> 0 bytes
 Open-ILS/web/opac/images/series-icon.png           |  Bin 1004 -> 0 bytes
 Open-ILS/web/opac/images/sidebar-bg.gif            |  Bin 98 -> 0 bytes
 Open-ILS/web/opac/images/software, multimedia.jpg  |  Bin 650 -> 0 bytes
 Open-ILS/web/opac/images/software-icon.png         |  Bin 955 -> 0 bytes
 .../web/opac/images/sound recording-musical.jpg    |  Bin 773 -> 0 bytes
 .../web/opac/images/sound recording-nonmusical.jpg |  Bin 651 -> 0 bytes
 Open-ILS/web/opac/images/sound recording.jpg       |  Bin 733 -> 0 bytes
 Open-ILS/web/opac/images/sound-icon.png            |  Bin 1440 -> 0 bytes
 Open-ILS/web/opac/images/still images.jpg          |  Bin 287 -> 0 bytes
 Open-ILS/web/opac/images/subject-icon-u.gif        |  Bin 477 -> 0 bytes
 Open-ILS/web/opac/images/subject-icon-u.png        |  Bin 1158 -> 0 bytes
 Open-ILS/web/opac/images/text.jpg                  |  Bin 773 -> 0 bytes
 .../web/opac/images/three dimensional object.jpg   |  Bin 694 -> 0 bytes
 Open-ILS/web/opac/images/threed-icon.png           |  Bin 1339 -> 0 bytes
 Open-ILS/web/opac/images/title-icon-u.gif          |  Bin 554 -> 0 bytes
 Open-ILS/web/opac/images/title-icon-u.png          |  Bin 1106 -> 0 bytes
 Open-ILS/web/opac/images/title-icon.gif            |  Bin 536 -> 0 bytes
 Open-ILS/web/opac/images/title-icon.png            |  Bin 1092 -> 0 bytes
 Open-ILS/web/opac/images/titledetails-icon-u.gif   |  Bin 486 -> 0 bytes
 Open-ILS/web/opac/images/titledetails-icon-u.png   |  Bin 771 -> 0 bytes
 Open-ILS/web/opac/images/titledetails-icon.gif     |  Bin 472 -> 0 bytes
 Open-ILS/web/opac/images/titledetails-icon.png     |  Bin 760 -> 0 bytes
 Open-ILS/web/opac/images/tor/book-icon.gif         |  Bin 544 -> 0 bytes
 Open-ILS/web/opac/images/tor/book-icon.png         |  Bin 1538 -> 0 bytes
 Open-ILS/web/opac/images/tor/earth-icon.gif        |  Bin 509 -> 0 bytes
 Open-ILS/web/opac/images/tor/earth-icon.png        |  Bin 1206 -> 0 bytes
 Open-ILS/web/opac/images/tor/mix-icon.gif          |  Bin 545 -> 0 bytes
 Open-ILS/web/opac/images/tor/mix-icon.png          |  Bin 1591 -> 0 bytes
 Open-ILS/web/opac/images/tor/mov-icon.gif          |  Bin 592 -> 0 bytes
 Open-ILS/web/opac/images/tor/mov-icon.png          |  Bin 1532 -> 0 bytes
 Open-ILS/web/opac/images/tor/mussymbol-icon.gif    |  Bin 460 -> 0 bytes
 Open-ILS/web/opac/images/tor/mussymbol-icon.png    |  Bin 1029 -> 0 bytes
 Open-ILS/web/opac/images/tor/nonmusic-icon.gif     |  Bin 490 -> 0 bytes
 Open-ILS/web/opac/images/tor/nonmusic-icon.png     |  Bin 1217 -> 0 bytes
 Open-ILS/web/opac/images/tor/pic-icon.gif          |  Bin 604 -> 0 bytes
 Open-ILS/web/opac/images/tor/pic-icon.png          |  Bin 1849 -> 0 bytes
 Open-ILS/web/opac/images/tor/placeholder-icon.gif  |  Bin 424 -> 0 bytes
 Open-ILS/web/opac/images/tor/placeholder-icon.png  |  Bin 891 -> 0 bytes
 Open-ILS/web/opac/images/tor/recsound-icon.gif     |  Bin 634 -> 0 bytes
 Open-ILS/web/opac/images/tor/recsound-icon.png     |  Bin 1512 -> 0 bytes
 .../web/opac/images/tor/software, multimedia.jpg   |  Bin 650 -> 0 bytes
 Open-ILS/web/opac/images/tor/software-icon.gif     |  Bin 471 -> 0 bytes
 Open-ILS/web/opac/images/tor/software-icon.png     |  Bin 955 -> 0 bytes
 Open-ILS/web/opac/images/tor/sound-icon.gif        |  Bin 598 -> 0 bytes
 Open-ILS/web/opac/images/tor/sound-icon.png        |  Bin 1440 -> 0 bytes
 Open-ILS/web/opac/images/tor/threed-icon.gif       |  Bin 526 -> 0 bytes
 Open-ILS/web/opac/images/tor/threed-icon.png       |  Bin 1339 -> 0 bytes
 Open-ILS/web/opac/skin/default/js/adv_global.js    |  337 ----
 Open-ILS/web/opac/skin/default/js/advanced.js      |  212 ---
 Open-ILS/web/opac/skin/default/js/authbrowse.js    |  262 ---
 Open-ILS/web/opac/skin/default/js/cn_browse.js     |  145 --
 Open-ILS/web/opac/skin/default/js/container.js     |   69 -
 Open-ILS/web/opac/skin/default/js/copy_details.js  |  483 ------
 .../web/opac/skin/default/js/depth_selector.js     |  129 --
 Open-ILS/web/opac/skin/default/js/holds.js         | 1188 -------------
 Open-ILS/web/opac/skin/default/js/mresult.js       |  141 --
 Open-ILS/web/opac/skin/default/js/myopac.js        | 1738 --------------------
 .../web/opac/skin/default/js/password_reset.js     |  114 --
 Open-ILS/web/opac/skin/default/js/rdetail.js       | 1409 ----------------
 Open-ILS/web/opac/skin/default/js/result_common.js |  995 -----------
 Open-ILS/web/opac/skin/default/js/rresult.js       |  359 ----
 Open-ILS/web/opac/skin/default/js/search_bar.js    |  128 --
 Open-ILS/web/opac/skin/default/js/sidebar.js       |  240 ---
 .../web/opac/skin/default/js/sidebar_extras.js     |  243 ---
 Open-ILS/web/opac/skin/default/js/tips.js          |   19 -
 .../skin/default/xml/advanced/adv_global_row.xml   |   36 -
 .../skin/default/xml/advanced/advanced_global.xml  |  309 ----
 .../skin/default/xml/advanced/advanced_marc.xml    |   46 -
 .../skin/default/xml/advanced/advanced_quick.xml   |   30 -
 Open-ILS/web/opac/skin/default/xml/body.xml        |   60 -
 .../web/opac/skin/default/xml/common/altcanvas.xml |   37 -
 .../web/opac/skin/default/xml/common/cn_browse.xml |   34 -
 .../opac/skin/default/xml/common/css_common.xml    |   23 -
 .../web/opac/skin/default/xml/common/fonts.xml     |   25 -
 .../skin/default/xml/common/format_selector.xml    |   11 -
 .../web/opac/skin/default/xml/common/holds.xml     |  253 ---
 .../web/opac/skin/default/xml/common/ilsevents.xml |   14 -
 .../web/opac/skin/default/xml/common/js_common.xml |   76 -
 .../web/opac/skin/default/xml/common/libselect.xml |   15 -
 .../web/opac/skin/default/xml/common/login.xml     |  115 --
 Open-ILS/web/opac/skin/default/xml/common/logo.xml |    4 -
 .../web/opac/skin/default/xml/common/orgtree.xml   |   27 -
 .../web/opac/skin/default/xml/common/searchbar.xml |   96 --
 .../web/opac/skin/default/xml/common/sidebar.xml   |  196 ---
 .../web/opac/skin/default/xml/common/statusbar.xml |   28 -
 .../skin/default/xml/common/stypes_selector.xml    |    8 -
 Open-ILS/web/opac/skin/default/xml/common/tips.xml |    8 -
 Open-ILS/web/opac/skin/default/xml/footer.xml      |   33 -
 Open-ILS/web/opac/skin/default/xml/header.xml      |   15 -
 .../web/opac/skin/default/xml/home/homesearch.xml  |  135 --
 .../web/opac/skin/default/xml/home/index_body.xml  |   74 -
 Open-ILS/web/opac/skin/default/xml/html_xsl.xml    |   10 -
 Open-ILS/web/opac/skin/default/xml/index.xml       |   21 -
 .../skin/default/xml/myopac/myopac_bookbags.xml    |  136 --
 .../skin/default/xml/myopac/myopac_checked.xml     |  104 --
 .../opac/skin/default/xml/myopac/myopac_fines.xml  |  101 --
 .../opac/skin/default/xml/myopac/myopac_holds.xml  |  124 --
 .../opac/skin/default/xml/myopac/myopac_prefs.xml  |  105 --
 .../skin/default/xml/myopac/myopac_summary.xml     |  311 ----
 .../web/opac/skin/default/xml/page_advanced.xml    |   14 -
 .../web/opac/skin/default/xml/page_authbrowse.xml  |   13 -
 .../web/opac/skin/default/xml/page_cnbrowse.xml    |    6 -
 .../web/opac/skin/default/xml/page_mresult.xml     |    9 -
 Open-ILS/web/opac/skin/default/xml/page_myopac.xml |   67 -
 .../web/opac/skin/default/xml/page_rdetail.xml     |   93 --
 .../web/opac/skin/default/xml/page_rresult.xml     |    9 -
 .../skin/default/xml/rdetail/rdetail_altcanvas.xml |   28 -
 .../default/xml/rdetail/rdetail_cn_details.xml     |  110 --
 .../skin/default/xml/rdetail/rdetail_copyinfo.xml  |   89 -
 .../skin/default/xml/rdetail/rdetail_extras.xml    |  184 ---
 .../skin/default/xml/rdetail/rdetail_summary.xml   |  231 ---
 .../opac/skin/default/xml/result/filtersort.xml    |   20 -
 .../opac/skin/default/xml/result/result_common.xml |   36 -
 .../opac/skin/default/xml/result/result_info.xml   |   74 -
 .../skin/default/xml/result/result_lowhits.xml     |   49 -
 .../opac/skin/default/xml/result/result_table.xml  |  323 ----
 Open-ILS/web/opac/skin/default/xml/setenv.xml      |   77 -
 Open-ILS/web/opac/theme/default/css/colors.css     |  139 --
 Open-ILS/web/opac/theme/reddish/css/colors.css     |   96 --
 .../OPAC/removal-of-deprecated-jspac.txt           |   29 +
 .../OPAC/removal-of-legacy-selfcheck.txt           |   28 +
 docs/TechRef/KidsOPAC.txt                          |    2 +-
 docs/admin/template_toolkit.txt                    |    4 +-
 262 files changed, 62 insertions(+), 13997 deletions(-)
 delete mode 100644 Open-ILS/images/opac/orgtree/base.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/cd.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/empty.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/folder.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/folderopen.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/globe.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/imgfolder.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/join.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/joinbottom.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/line.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/minus.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/minusbottom.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/musicfolder.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/nolines_minus.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/nolines_plus.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/page.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/plus.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/plusbottom.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/question.gif
 delete mode 100644 Open-ILS/images/opac/orgtree/trash.gif
 delete mode 100644 Open-ILS/images/opac/tor/cartographic.jpg
 delete mode 100644 Open-ILS/images/opac/tor/mixed material.jpg
 delete mode 100644 Open-ILS/images/opac/tor/moving image.jpg
 delete mode 100644 Open-ILS/images/opac/tor/notated music.jpg
 delete mode 100644 Open-ILS/images/opac/tor/software, multimedia.jpg
 delete mode 100644 Open-ILS/images/opac/tor/sound recording-musical.jpg
 delete mode 100644 Open-ILS/images/opac/tor/sound recording-nonmusical.jpg
 delete mode 100644 Open-ILS/images/opac/tor/sound recording.jpg
 delete mode 100644 Open-ILS/images/opac/tor/still images.jpg
 delete mode 100644 Open-ILS/images/opac/tor/three dimensional object.jpg
 delete mode 100644 Open-ILS/web/opac/common/css/dtree.css
 delete mode 100644 Open-ILS/web/opac/common/css/largefont.css
 delete mode 100644 Open-ILS/web/opac/common/css/mediumfont.css
 delete mode 100644 Open-ILS/web/opac/common/css/smallfont.css
 delete mode 100644 Open-ILS/web/opac/common/js/dtree.js
 delete mode 100644 Open-ILS/web/opac/common/xml/item_lang_options.xml
 delete mode 100644 Open-ILS/web/opac/extras/bbags.js
 delete mode 100644 Open-ILS/web/opac/extras/bbags.xml
 delete mode 100644 Open-ILS/web/opac/extras/selfcheck/selfcheck.css
 delete mode 100644 Open-ILS/web/opac/extras/selfcheck/selfcheck.js
 delete mode 100644 Open-ILS/web/opac/extras/selfcheck/selfcheck.xml
 delete mode 100644 Open-ILS/web/opac/extras/selfcheck/selfcheck_print.css
 delete mode 100644 Open-ILS/web/opac/images/advancedsearch-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/bg.gif
 delete mode 100644 Open-ILS/web/opac/images/blank.gif
 delete mode 100644 Open-ILS/web/opac/images/cancel-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/cancel-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/cancel-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/cancel-icon.png
 delete mode 100644 Open-ILS/web/opac/images/cartographic.jpg
 delete mode 100644 Open-ILS/web/opac/images/chooselibrary-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/chooselibrary-icon.png
 delete mode 100644 Open-ILS/web/opac/images/closeall-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/closeall-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/closeall-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/closeall-icon.png
 delete mode 100644 Open-ILS/web/opac/images/content-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/content-bg.jpg
 delete mode 100644 Open-ILS/web/opac/images/details-f-bg-u.gif
 delete mode 100644 Open-ILS/web/opac/images/details-f-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/details-headers-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/earth-icon.png
 delete mode 100644 Open-ILS/web/opac/images/eg_tiny_logo.gif
 delete mode 100644 Open-ILS/web/opac/images/expandall-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/expandall-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/expandall-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/expandall-icon.png
 delete mode 100644 Open-ILS/web/opac/images/footer-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-bl.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-bottom.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-br.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-corners.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-left.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-right.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-tl.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-top.gif
 delete mode 100644 Open-ILS/web/opac/images/footer-tr.gif
 delete mode 100644 Open-ILS/web/opac/images/header-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/header-shadow.gif
 delete mode 100644 Open-ILS/web/opac/images/home-bottom-tag-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/home-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/home-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/home-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/home-icon.png
 delete mode 100644 Open-ILS/web/opac/images/inner-account-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/inner-account-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/inner-account-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/inner-account-icon.png
 delete mode 100644 Open-ILS/web/opac/images/inner-advanced-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/inner-advanced-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/inner-advanced-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/inner-advanced-icon.png
 delete mode 100644 Open-ILS/web/opac/images/lg-txt.gif
 delete mode 100644 Open-ILS/web/opac/images/libselect-btn.gif
 delete mode 100644 Open-ILS/web/opac/images/list-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/list-icon.png
 delete mode 100644 Open-ILS/web/opac/images/login-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/login-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/login-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/login-icon.png
 delete mode 100644 Open-ILS/web/opac/images/loginas-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/loginas-icon.png
 delete mode 100644 Open-ILS/web/opac/images/logo.gif
 delete mode 100644 Open-ILS/web/opac/images/logo.png
 delete mode 100644 Open-ILS/web/opac/images/logout-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/logout-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/logout-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/logout-icon.png
 delete mode 100644 Open-ILS/web/opac/images/mix-icon.png
 delete mode 100644 Open-ILS/web/opac/images/mixed material.jpg
 delete mode 100644 Open-ILS/web/opac/images/mov-icon.png
 delete mode 100644 Open-ILS/web/opac/images/moving image.jpg
 delete mode 100644 Open-ILS/web/opac/images/mussymbol-icon.png
 delete mode 100644 Open-ILS/web/opac/images/myaccount-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/myaccount-icon.png
 delete mode 100644 Open-ILS/web/opac/images/noimg.gif
 delete mode 100644 Open-ILS/web/opac/images/nonmusic-icon.png
 delete mode 100644 Open-ILS/web/opac/images/notated music.jpg
 delete mode 100644 Open-ILS/web/opac/images/pic-icon.png
 delete mode 100644 Open-ILS/web/opac/images/placeholder-icon.png
 delete mode 100644 Open-ILS/web/opac/images/recsound-icon.png
 delete mode 100644 Open-ILS/web/opac/images/reg-txt.gif
 delete mode 100644 Open-ILS/web/opac/images/relevant-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/relevant-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/relevant-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/relevant-icon.png
 delete mode 100644 Open-ILS/web/opac/images/search-btn.gif
 delete mode 100644 Open-ILS/web/opac/images/searchbar-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/searchbox-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/series-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/series-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/series-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/series-icon.png
 delete mode 100644 Open-ILS/web/opac/images/sidebar-bg.gif
 delete mode 100644 Open-ILS/web/opac/images/software, multimedia.jpg
 delete mode 100644 Open-ILS/web/opac/images/software-icon.png
 delete mode 100644 Open-ILS/web/opac/images/sound recording-musical.jpg
 delete mode 100644 Open-ILS/web/opac/images/sound recording-nonmusical.jpg
 delete mode 100644 Open-ILS/web/opac/images/sound recording.jpg
 delete mode 100644 Open-ILS/web/opac/images/sound-icon.png
 delete mode 100644 Open-ILS/web/opac/images/still images.jpg
 delete mode 100644 Open-ILS/web/opac/images/subject-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/subject-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/text.jpg
 delete mode 100644 Open-ILS/web/opac/images/three dimensional object.jpg
 delete mode 100644 Open-ILS/web/opac/images/threed-icon.png
 delete mode 100644 Open-ILS/web/opac/images/title-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/title-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/title-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/title-icon.png
 delete mode 100644 Open-ILS/web/opac/images/titledetails-icon-u.gif
 delete mode 100644 Open-ILS/web/opac/images/titledetails-icon-u.png
 delete mode 100644 Open-ILS/web/opac/images/titledetails-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/titledetails-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/book-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/book-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/earth-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/earth-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/mix-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/mix-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/mov-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/mov-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/mussymbol-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/mussymbol-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/nonmusic-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/nonmusic-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/pic-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/pic-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/placeholder-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/placeholder-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/recsound-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/recsound-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/software, multimedia.jpg
 delete mode 100644 Open-ILS/web/opac/images/tor/software-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/software-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/sound-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/sound-icon.png
 delete mode 100644 Open-ILS/web/opac/images/tor/threed-icon.gif
 delete mode 100644 Open-ILS/web/opac/images/tor/threed-icon.png
 delete mode 100644 Open-ILS/web/opac/skin/default/js/adv_global.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/advanced.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/authbrowse.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/cn_browse.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/container.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/copy_details.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/depth_selector.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/holds.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/mresult.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/myopac.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/password_reset.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/rdetail.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/result_common.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/rresult.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/search_bar.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/sidebar.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/sidebar_extras.js
 delete mode 100644 Open-ILS/web/opac/skin/default/js/tips.js
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/advanced/adv_global_row.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/advanced/advanced_global.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/advanced/advanced_marc.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/advanced/advanced_quick.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/body.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/altcanvas.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/cn_browse.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/css_common.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/fonts.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/format_selector.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/holds.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/ilsevents.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/js_common.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/libselect.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/login.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/logo.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/orgtree.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/searchbar.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/sidebar.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/statusbar.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/stypes_selector.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/common/tips.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/footer.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/header.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/home/homesearch.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/home/index_body.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/html_xsl.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/index.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/myopac/myopac_bookbags.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/myopac/myopac_checked.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/myopac/myopac_fines.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/myopac/myopac_holds.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/myopac/myopac_prefs.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/myopac/myopac_summary.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_advanced.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_authbrowse.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_cnbrowse.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_mresult.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_myopac.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_rdetail.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/page_rresult.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_altcanvas.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_cn_details.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_copyinfo.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_extras.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/rdetail/rdetail_summary.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/result/filtersort.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/result/result_common.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/result/result_info.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/result/result_lowhits.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/result/result_table.xml
 delete mode 100644 Open-ILS/web/opac/skin/default/xml/setenv.xml
 delete mode 100644 Open-ILS/web/opac/theme/default/css/colors.css
 delete mode 100644 Open-ILS/web/opac/theme/reddish/css/colors.css
 create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/removal-of-deprecated-jspac.txt
 create mode 100644 docs/RELEASE_NOTES_NEXT/OPAC/removal-of-legacy-selfcheck.txt


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list