Bug 21005: Missing row/column defaults cause unexpected results in report wizards
authorDavid Cook <dcook@prosentient.com.au>
Fri, 10 Aug 2018 08:08:13 +0000 (18:08 +1000)
committerNick Clemens <nick@bywatersolutions.com>
Fri, 19 Oct 2018 17:27:36 +0000 (17:27 +0000)
Some report wizards are missing row/column defaults, which sometimes return blank
pages (borrowers_stats.pl) or results always equalling 0, which a non-discerning
user may interpret incorrectly.

If the DEBUG environmental variable is enabled, missing row/column choices will
actually cause fatal software errors as well, which is also undesirable for users.

This patch adds default choices for row and column on
report wizards that had no radio buttons selected, so that a user
can't submit the form without choosing a row and column. This
prevents errors.

To test:
1) Apply patch
2) Visit /cgi-bin/koha/reports/issues_avg_stats.pl
3) Visit /cgi-bin/koha/reports/borrowers_stats.pl
4) Visit /cgi-bin/koha/reports/catalogue_stats.pl
5) Visit /cgi-bin/koha/reports/issues_stats.pl
6) Observe that default choices for row/column are there

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

koha-tmpl/intranet-tmpl/prog/en/modules/reports/borrowers_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/catalogue_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/issues_avg_stats.tt
koha-tmpl/intranet-tmpl/prog/en/modules/reports/issues_stats.tt

index 984aa17..e6986fa 100644 (file)
@@ -77,7 +77,7 @@
             <tr>
                        <td>Patron category</td>
                        <td><input type="radio" name="Line" value="categorycode" /></td>
-                       <td><input type="radio" name="Column" value="categorycode" /></td>
+                       <td><input type="radio" checked="checked" name="Column" value="categorycode" /></td>
             <td>
                 <select name="Filter"  size="1" id="catcode">
                     <option value=""></option>
 
             <tr>
                        <td>Library</td>
-                       <td><input type="radio" name="Line"   value="branchcode" /></td>
+                       <td><input type="radio" checked="checked" name="Line"   value="branchcode" /></td>
                        <td><input type="radio" name="Column" value="branchcode" /></td>
                        <td>
                 <select name="Filter"  size="1" id="branch">
index a3462d6..692b05c 100644 (file)
@@ -99,7 +99,7 @@
                         <tr>
                 <td>Item type</td>
                                <td><input type="radio" name="Line" value="[% item_itype | html %]" /></td>
-                               <td><input type="radio" name="Column" value="[% item_itype | html %]" /></td>
+                               <td><input type="radio" checked="checked" name="Column" value="[% item_itype | html %]" /></td>
                                <td><select name="Filter" id="[% item_itype | html %]">
                                        <option value=""> </option>
                     [% FOREACH itemtype IN itemtypes %]
                        </tr>
                        <tr>
                 <td>Home library</td>
-                               <td><input type="radio" name="Line" value="items.homebranch" /></td>
+                               <td><input type="radio" checked="checked" name="Line" value="items.homebranch" /></td>
                                <td><input type="radio" name="Column" value="items.homebranch" /></td>
                                <td><select name="Filter" id="branch">
                     <option value=""> </option>
index 8dcefd4..09d3966 100644 (file)
@@ -77,7 +77,7 @@
                        <tr class="hilighted">
                                <td>Checkout date</td>
                                <td><input type="radio" name="Line" value="timestamp" /></td>
-                               <td><input type="radio" name="Column" value="timestamp" /></td>
+                               <td><input type="radio" checked="checked" name="Column" value="timestamp" /></td>
                                <td > <label for="from">From</label> <input type="text" size="10" id="from" name="Filter" />
                                        <label for="to">To</label> <input size="10" id="to" name="Filter" value="" type="text" />
                     <span class="hint">[% INCLUDE 'date-format.inc' %]</span>
                        </tr>
                        <tr class="hilighted">
                                <td>Patron category</td>
-                               <td><input type="radio" name="Line" value="borrowers.categorycode" /></td>
+                               <td><input type="radio" checked="checked" name="Line" value="borrowers.categorycode" /></td>
                                <td><input type="radio" name="Column" value="borrowers.categorycode" /></td>
                 <td>
                     <select name="Filter" size="1" id="borcat">
index 5d13e19..c39a606 100644 (file)
         <tr>
             <td>Item type</td>
             <td><input type="radio" name="Line" value="itemtype" /></td>
-            <td><input type="radio" name="Column" value="itemtype" /></td>
+            <td><input type="radio" checked="checked" name="Column" value="itemtype" /></td>
            <td><select name="Filter" id="itemtype">
                <option value=""> </option>
                [% FOREACH itemtype IN itemtypes %]
         </tr>
         <tr>
             <td>Issuing library</td>
-            <td><input type="radio" name="Line" value="branch" /></td>
+            <td><input type="radio" checked="checked" name="Line" value="branch" /></td>
             <td><input type="radio" name="Column" value="branch" /></td>
             <td><select name="Filter" id="branch">
                 <option value=""> </option>