Bug 9429 [Revised] Use DataTables on Authorized Values page origin/new/bug_9429
authorOwen Leonard <oleonard@myacpl.org>
Fri, 18 Jan 2013 19:28:36 +0000 (14:28 -0500)
committerJared Camins-Esakov <jcamins@cpbibliography.com>
Thu, 7 Mar 2013 15:52:15 +0000 (10:52 -0500)
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>
koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt

index 8b6aeb2..790f0b5 100644 (file)
@@ -5,27 +5,32 @@
 [% IF ( delete_confirm ) %] &rsaquo; Confirm deletion[% END %]
 [% IF ( else ) %]Authorized values[% END %]</title>
 [% INCLUDE 'doc-head-close.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.pager.js"></script>
-<script type="text/javascript" id="js">$(document).ready(function() {
-       // call the tablesorter plugin
-       $("#table_authorized_values").tablesorter({
-               sortList: [[1,0]],
-               headers: { 4: { sorter: false}, 5: { sorter: false}}
-                               }).tablesorterPager({container: $("#pagertable_authorized_values"),positionFixed: false,size: 50});
+
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
+<script type="text/javascript">
+//<![CDATA[
+ $(document).ready(function() {
+    $("#table_authorized_values").dataTable($.extend(true, {}, dataTablesDefaults, {
+        "aoColumnDefs": [
+            { "aTargets": [ -1, -2 ], "bSortable": false, "bSearchable": false },
+        ],
+        "aaSorting": [[ 1, "asc" ]],
+        "iDisplayLength": 20,
+        "aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
+        "sPaginationType": "four_button"
+    }));
 
     if ( $("#branches option:selected").length < 1 ) {
         $("#branches option:first").attr("selected", "selected");
     }
-}); </script>
-
-<script type="text/JavaScript" language="JavaScript">
-//<![CDATA[
-     $(document).ready(function() {
-        $('#icons').tabs();
-     });
+    $('#icons').tabs();
+});
 //]]>
 </script>
+
 [% IF ( else ) %]
 <script type="text/javascript">
 //<![CDATA[
@@ -234,7 +239,6 @@ $(document).ready(function() {
 <h3>Authorized values for category [% category %]:</h3>
 
 [% IF ( loop ) %]<div id="pagertable_authorized_values">
-[% INCLUDE 'table-pager.inc' perpage='50' %]
 </div>[% END %]
 
 [% IF ( loop ) %]<table id="table_authorized_values" class="tablesorter">