Bug 22190: Add column configuration to patron category administration
authorOwen Leonard <oleonard@myacpl.org>
Wed, 23 Jan 2019 14:48:31 +0000 (14:48 +0000)
committerNick Clemens <nick@bywatersolutions.com>
Wed, 30 Jan 2019 12:01:34 +0000 (12:01 +0000)
This patch adds column configuration to the table of patron categories
in administration. No new defaults for the table are defined.

To test, apply the patch and clear your browser cache if necessary.

 - Go to Administration -> Patron categoires.
   - Test that the "Column visibility" button works to show and hide
     columns. The "actions" column should be excluded.
   - Test that export options (Excel, CSV, etc) exclude the "actions"
     column.
 - Go to Administration -> Columns settings and edit the default
   configuration of the patron categories table. Confirm that these
   changes are reflected in patron category administration.

Signed-off-by: Jose-Mario Monteiro-Santos <jose-mario.monteiro-santos@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
admin/columns_settings.yml
koha-tmpl/intranet-tmpl/prog/en/modules/admin/categories.tt
koha-tmpl/intranet-tmpl/prog/js/categories.js

index 8176529..8d636f1 100644 (file)
@@ -124,6 +124,40 @@ modules:
         -
           columnname: actions
 
+    categories:
+      patron_categories:
+        -
+          columnname: code
+        -
+          columnname: category_name
+        -
+          columnname: type
+        -
+          columnname: enrollment_period
+        -
+          columnname: age_required
+        -
+          columnname: upper_age_limit
+        -
+          columnname: enrollment_fee
+        -
+          columnname: overdue
+        -
+          columnname: lost_items
+        -
+          columnname: hold_fee
+        -
+          columnname: messaging
+        -
+          columnname: branches_limitations
+        -
+          columnname: default_privacy
+        -
+          columnname: actions
+          cannot_be_toggled: 1
+          cannot_be_modified: 1
+
+
   catalogue:
     detail:
       acquisitiondetails-table:
index fd656f4..d50e406 100644 (file)
@@ -3,6 +3,7 @@
 [% USE Koha %]
 [% USE KohaDates %]
 [% USE Price %]
+[% USE ColumnsSettings %]
 [% SET footerjs = 1 %]
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Administration &rsaquo; Patron categories &rsaquo; [% IF op == 'add_form' %][% IF ( categorycode ) %]Modify category '[% categorycode | html %]'[% ELSE %]New category[% END %][% END %]
         You Searched for [% searchfield | html %]</span>
     [% END %]
     [% IF categories%]
-        <table id="table_categorie">
+        <table id="patron_categories">
             <thead>
                 <tr>
                     <th scope="col">Code</th>
     [% Asset.js("js/messaging-preference-form.js") | $raw %]
     [% INCLUDE 'calendar.inc' %]
     [% INCLUDE 'datatables.inc' %]
+    [% INCLUDE 'columns_settings.inc' %]
     <script>
         var MSG_CATEGORYCODE_CHARS = _("Category code can only contain the following characters: letters, numbers, - and _.");
         var MSG_ONE_ENROLLMENTPERIOD = ("Please choose an enrollment period in months OR by date.");
+        var columns_settings = [% ColumnsSettings.GetColumns( 'admin', 'categories', 'patron_categories', 'json' ) | $raw %];
     </script>
     [% Asset.js("js/categories.js") | $raw %]
 [% END %]
index 2751afd..fb6aafb 100644 (file)
@@ -21,7 +21,7 @@ jQuery.validator.addMethod( "enrollment_period", function(){
 
 
 $(document).ready(function() {
-    $("#table_categorie").dataTable($.extend(true, {}, dataTablesDefaults, {
+    KohaTable("patron_categories", {
         "aoColumnDefs": [{
             "aTargets": [-1],
             "bSortable": false,
@@ -33,8 +33,9 @@ $(document).ready(function() {
         "aaSorting": [
             [1, "asc"]
         ],
-        "sPaginationType": "four_button"
-    }));
+        "sPaginationType": "four_button",
+        "exportColumns": [0,1,2,3,4,5,6,7,8,9,10,11,12],
+    }, columns_settings);
 
     $("#enrolmentperioddate").datepicker({
         minDate: 1