Bug 9450 [Revised] Use DataTables in cataloging Z39.50 search results

Replace the tablesorter plugin with the DataTables plugin in cataloging
Z39.50 search results.

Structural changes were made to the table markup to deal with a
DataTables bug which prevents it from properly parsing a <th> with a
colspan.

To test, go to cataloging and perform a Z39.50 search. Confirm that
table sorting works correctly. In this configuration there
should be no pager and no results filtering.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Sorting works. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9450' into 3.12-master
Bug 9446 [Revised] Use DataTables on Z39.50 servers administration page

Replace the tablesorter plugin with the DataTables plugin on the
Z39.50 servers administration page. Structural changes were made to
deal with a DataTables bug which prevents it from properly parsing a
<th> with a colspan.

This patch also moves embedding of the toolbar and table-sorting JS from
within the body of the page to the <head> for sake of consistency.

To test, open the Z39.50 servers administration page (Administration ->
Z39.50 client targets). Confirm that table sorting works
correctly.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Table sorting works. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Add the aLengthMenu key for DataTables
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9446' into 3.12-master
Bug 9444 [Revised] Use DataTables in system preferences editor

Replace the tablesorter plugin with the DataTables plugin in the
"new" system preferences editor.

To test, open the system preferences editor on any tab other than Local
Use. Confirm that table sorting works correctly within each section. In
this configuration there should be no pager and no results filtering.

Revision corrects template path to datatables assets.
Further revision fixes section-collapse JS

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Work as described. Collapsing restored. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9444' into 3.12-master
Bug 9437 [Revised] Use DataTables on itemtypes administration page

Replace the tablesorter plugin with the DataTables plugin on the
itemtypes administration page.

To test, open the itemtypes administration page (Administration
-> Item types). Confirm that table sorting works correctly.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Sorting works. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Delete an unused div block (used for pager).
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9437' into 3.12-master
Bug 9430 [Revised] Use DataTables on library transfer limits page

Replace the tablesorter plugin with the DataTables plugin on the
library transfer limits page.

Also made minor changes to "check/uncheck all" function to prevent page
from jumping on click, and removed unused function.

To test, open the library transfer limits page (Administration ->
Library transfer limits). Confirm that table sorting works correctly for
all tables.

Test that the "check all/uncheck all" links still work correctly.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Work as described. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Add the aLengthMenu key for DataTables + delete an unused
div block (used for pager)
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9430' into 3.12-master
Bug 9429 [Revised] Use DataTables on Authorized Values page

Replace the tablesorter plugin with the DataTables plugin on the
Authorized Values page.

To test, open the Authorized Values page (Administration -> Authorized
values). Confirm that table sorting works correctly.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Work as described. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Add the aLengthMenu key for DataTables
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9429' into 3.12-master
Bug 9428 [Revised] Use DataTables in Authority MARC frameworks page

Replace the tablesorter plugin with the DataTables plugin on the
Authority MARC frameworks page.

To test, open the Authority MARC frameworks page (Authority types ->
MARC structure). Confirm that table sorting works correctly.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Work as described. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Add the aLengthMenu key for DataTables
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9428' into 3.12-master
Bug 9435 [Revised] Use DataTables on libraries and groups administration page

Replace the tablesorter plugin with the DataTables plugin on the
libraries and groups administration page.

To test, open the libraries and groups administration page (Administration
-> Libraries and groups). Confirm that table sorting works correctly.

Revision corrects template path to datatables assets.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Sort works. No errors.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Add the aLengthMenu key for DataTables + delete an unused
div block (used for pager)
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_9435' into 3.12-master
Bug 7387 : Adding a caching plugin for Template::Toolkit

To use this you need to do something like

-[% INCLUDE 'doc-head-open.inc' %]
+[% USE cache = Cache %]
+[% cache.inc(
+    'template' => 'doc-head-open.inc',
+    'keys' => {'dochead' => 'dochead'},
+    'ttl' => 360
+    )
+%]

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Works. Tested modifying as described opac-main.tt
Follow up to fix tabulations.

Signed-off-by: Elliott Davis <elliott@bywatersolions.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Follow-up Bug 7387 - Add Template::Toolkit plugin to allow caching of includes

Fixes tabulations.

Signed-off-by: Elliott Davis <elliott@bywatersolions.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Merge branch 'bug_7387' into 3.12-master
Bug 5079 - Make display of shelving location and call number in XSLT results controlled by sysprefs

* Don't show the Location line if there are no copies available, since it
  will inevitably be blank

* Also, don't show locations for Checked Out, Lost, Damaged, Withdrawn,
  On Hold or In transit items; it doesn't really make sense, since the
  items aren't actually there, and it results in repetitive listing of
  the shelving location

* Added system preference to display shelving location of an item on opac
  results. The system preference is called OpacItemLocation. I also moved
  the call number to a new line called Location along with the shelving
  location if it is enabled.

To Test:
  1) Run database update script to add syspref.
  2) Set OpacItemLocation to show locations or collection codes on the
     opac-search page.

  If it is working you should see the shelving location of the item
  before the call number. Multiple home branch shelving locations
  are seperated by a pipe character ( i.e. '|' ).

Based on code by Elliot Davis <tdavis@uttyler.edu>

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works as advertised.

Signed-off-by: Ed Veal <ed.veal@bywatersolutions.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>