Bug 6690: If multiple issues are received in serials-edit.pl, changing the status...
authorFrédérick Capovilla <frederick.capovilla@sys-tech.net>
Sun, 14 Aug 2011 19:42:52 +0000 (21:42 +0200)
committerChris Cormack <chrisc@catalyst.net.nz>
Thu, 25 Aug 2011 22:15:46 +0000 (10:15 +1200)
If multiple issues are in the list, changing the status of any issue in
the table would always change the "Expected on" date of the first issue.
Modified the javascript so the date is modified on the correct row.

Reimplementation of Patch for 3.4.x
Patch for 3.2.x from Frédérick Capovilla

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-edit.tt

index 304c6ca..f82f791 100644 (file)
@@ -61,9 +61,8 @@ function HideItems(index,labelindex) {
 function setStatus(serialid){
     $("#status"+serialid).val("2").attr("selected","selected");
 }
-function changeDate(adate) {
-    var elem = document.getElementById("expecteddate");
-    elem.value = adate;
+function changeDate(elem, adate) {
+    $(elem).closest('tr').find('#expecteddate').val(adate);
 }
 function changeDate2(adate) {
    var elem = document.getElementById("supexpecteddate");
@@ -228,9 +227,9 @@ $(document).ready(function() {
               <select name="status" size="1"  disabled="disabled">
             [% ELSE %]
               [% IF ( serialslis.serialsadditems ) %]
-              <select name="status" size="1" id="status[% serialslis.serialid %]" onchange="if (this.value==2){unHideItems('items'+[% serialslis.subscriptionid %][% serialslis.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]','[% serialslis.serialid %]'); changeDate('[% serialslis.arriveddate %]')} else if (this.value==7){changeDate('[% serialslis.arriveddate %]')} else { HideItems('items'+[% serialslis.subscriptionid %]+[% serialslis.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]'); changeDate('[% serialslis.planneddate %]')}" >
+              <select name="status" size="1" id="status[% serialslis.serialid %]" onchange="if (this.value==2){unHideItems('items'+[% serialslis.subscriptionid %][% serialslis.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]','[% serialslis.serialid %]'); changeDate(this, '[% serialslis.arriveddate %]')} else if (this.value==7){changeDate(this, '[% serialslis.arriveddate %]')} else { HideItems('items'+[% serialslis.subscriptionid %]+[% serialslis.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]'); changeDate(this, '[% serialslis.planneddate %]')}" >
                [% ELSE %]
-              <select name="status" size="1" id="status[% serialslis.serialid %]" onchange="if (this.value==2 || this.value==7){changeDate('[% serialslis.arriveddate %]')} else {changeDate('[% serialslis.planneddate %]')}" >
+              <select name="status" size="1" id="status[% serialslis.serialid %]" onchange="if (this.value==2 || this.value==7){changeDate(this, '[% serialslis.arriveddate %]')} else {changeDate(this, '[% serialslis.planneddate %]')}" >
                [% END %] 
             [% END %]
   [% IF ( serialslis.status1 ) %]