@@ -, +, @@ -> This link should read "Add ..." if there is no existing note or "Edit ..." if there is. -> The three new columns and their values should appear in the export. --- acqui/lateorders-export.pl | 4 +- acqui/lateorders.pl | 22 ----- .../prog/en/modules/acqui/csv/lateorders.tt | 5 +- .../prog/en/modules/acqui/lateorders.tt | 104 ++++++++++++++------- 4 files changed, 78 insertions(+), 57 deletions(-) --- a/acqui/lateorders-export.pl +++ a/acqui/lateorders-export.pl @@ -53,8 +53,8 @@ for my $ordernumber ( @ordernumbers ) { basketno => $order->{basketno}, claims_count => $order->{claims_count}, claimed_date => $order->{claimed_date}, - internalnote => $order->{internalnote}, - vendornote => $order->{vendornote}, + internalnote => $order->{order_internalnote}, + vendornote => $order->{order_vendornote}, isbn => $order->{isbn}, } ; --- a/acqui/lateorders.pl +++ a/acqui/lateorders.pl @@ -123,28 +123,6 @@ if ($op and $op eq "send_alert"){ } } -if ($op && $op eq "save"){ - my $listorders; - my @orders = $input->param; - - foreach my $order (@orders){ - if ( $order ne "op"){ - my @split = split (/_/,$order); - $listorders->{$split[0]}->{$split[1]} = $input->param($order); - } - } - - my $orders_rs = Koha::Acquisition::Orders->search({ ordernumber => [ keys %$listorders ] }); - while ( my $order = $orders_rs->next ) { - my $internalnote = $listorders->{$order->ordernumber}->{i}; - my $vendornote = $listorders->{$order->ordernumber}->{v}; - - $order->order_internalnote($internalnote) if defined $internalnote; - $order->order_vendornote($vendornote) if defined $vendornote; - $order->store; - } -} - my @parameters = ( $delay ); push @parameters, $estimateddeliverydatefrom_dt ? $estimateddeliverydatefrom_dt->ymd() --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/csv/lateorders.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/csv/lateorders.tt @@ -13,7 +13,10 @@ "[% o.unitpricesupplier | html %] x [% o.quantity_to_receive | html %] = [% o.subtotal | html %] ([% o.budget | html %])"[%- delimiter | html -%] "[% o.basketname | html %] ([% o.basketno | html %])"[%- delimiter | html -%] "[% o.claims_count | html %]"[%- delimiter | html -%] -"[% o.claimed_date | html %]" +"[% o.claimed_date | html %]"[%- delimiter | html -%] +"[% o.internalnote | html %]"[%- delimiter | html -%] +"[% o.vendornote | html %]"[%- delimiter | html -%] +"[% o.isbn | html %]" [%- INCLUDE empty_line.inc -%] [%- END -%] [%- delimiter | html -%] --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/lateorders.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/lateorders.tt @@ -138,8 +138,34 @@ [% END %] - - + + [% IF ( lateorder.internalnote ) %] +

+ [% lateorder.internalnote | html %] + + Edit internal note + +

+ [% ELSE %] + + Add internal note + + [% END %] + + + [% IF ( lateorder.vendornote ) %] +

+ [% lateorder.vendornote | html %] + + Edit vendor note + +

+ [% ELSE %] + + Add vendor note + + [% END %] + [% lateorder.isbn | $raw %] [% END %] @@ -204,6 +230,30 @@ + + + [% MACRO jsinclude BLOCK %] [% Asset.js("js/acquisitions-menu.js") | $raw %] [% INCLUDE 'datatables.inc' %] @@ -263,37 +313,27 @@ location.href = url; return false; }); - // Update all notes - $("#savenotes").click(function(){ - $("#savenotes").after("\"\" "+_("Loading")+""); - var all_nodes = $(late_orderst.fnGetNodes()); - var req = new XMLHttpRequest(); - var url = '/cgi-bin/koha/acqui/lateorders.pl'; - var data = new FormData(); - data.append("op","save"); - for (var i = 0; i < all_nodes.length; i++) { - var order = $(all_nodes[i]).find("input[name='ordernumber']"); - var internalnote = $(all_nodes[i]).find("input[name='internalnote']")[0].value; - var vendornote = $(all_nodes[i]).find("input[name='vendornote']")[0].value; - var internalnote_key = order[0].value + "_i"; - var vendornote_key = order[0].value + "_v"; - data.append(internalnote_key, internalnote); - data.append(vendornote_key, vendornote); - } - req.open("POST",url); - req.send(data); - req.onreadystatechange = function () { - $("#loading").remove(); - if (req.readyState == '4' ){ - if ( req.status == 200 ){ - alert(_("Notes successfully saved")); - } - else { - alert(_("Error while saving the notes. Please try again")); - } - } - } + $(".edit_note").on("click", function(e) { + e.preventDefault(); + var ordernumber = $(this).data("ordernumber"); + var note_type = $(this).data("note_type"); + var modalTitle = $(this).attr("title") + " (order number " + ordernumber + ")"; + var note_text = $( "#" + note_type + "-note-" + ordernumber ).html(); + $("#noteEditor .modal-title").text(modalTitle); + $("#ordernumber").val( ordernumber ); + $("#ordernotes").html( note_text ); + $("#type").val( note_type ); + $("#noteEditor").modal("show"); + $("#ordernotes").focus(); + }); + + $("#noteEditor").on('hidden.bs.modal', function (e) { + $("#noteEditorLabel").html(""); + $("#noteEditor .modal-title").text(""); + $("#ordernotes").html( "" ); + $("#ordernumber").val(""); + $("#type").val(""); }); }); --