Bug 13420: Sort "Serial enumeration" by published date
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Mon, 29 Apr 2019 02:53:55 +0000 (22:53 -0400)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Thu, 6 Feb 2020 12:36:00 +0000 (12:36 +0000)
So far the sorting on volume information is incorrect. It sorts by the
string displayed in the cell, which may not have any logics.

A better solution would be to use Kyle's suggestion, see comments 7, 8,
but it will need much more work.

This patch suggests to use the publication date to sort this column.
Note: In the code there is a switch depending on the existence of
items.publisheddate, but I do not think it is valid, this valid should
always exist if the item is received (did I miss something?)

Test plan:
You need to have different existing subscription, using different
numbering.
On the detail page of the bibliographic record you should be able to
sort the serials (tab "Holdings") by "Serial enumeration".
The sort will now use the publication dates.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt

index 57f0352..214d09c 100644 (file)
                 <th>Home library</th>
                 [% IF ( itemdata_ccode ) %]<th>Collection</th>[% END %]
                 <th>Call number</th>
-                [% IF ( volinfo ) %]<th>Serial enumeration / chronology</th>[% END %]
+                [% IF volinfo %]<th class="title-string">Serial enumeration / chronology</th>[% END %]
                 <th>Status</th>
                 <th class="title-string">Last seen</th>
                 <th class="title-string">Date accessioned</th>
@@ -286,6 +286,7 @@ Note that permanent location is a code, and location may be an authval.
                     <td class="itemcallnumber">[% IF ( item.itemcallnumber ) %] [% item.itemcallnumber | html %][% END %]</td>
                     [% IF ( volinfo ) %]
                         <td class="enumchron">
+                            <span title="[% item.publisheddate | html %]">
                             [% IF ( itemdata_enumchron ) %]
                                 [% IF item.enumchron && item.serialseq %]
                                     <span class="enum">[% item.enumchron | html %]</span>
@@ -302,6 +303,7 @@ Note that permanent location is a code, and location may be an authval.
                                     <span class="pubdate">([% item.publisheddate | $KohaDates %])</span>
                                 [% END %]
                             [% END %]
+                            </span>
                         </td>
                     [% END %]
                     <td class="status">