From 07e8c75da8d5fa62f1f78bba5603cb84ae57cac7 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Wed, 25 Jul 2012 11:39:39 -0400 Subject: [PATCH] acq invoice : added save-and-clear button; minor code refactor Signed-off-by: Bill Erickson --- Open-ILS/src/templates/acq/invoice/view.tt2 | 10 ++++++---- Open-ILS/web/js/ui/default/acq/invoice/view.js | 25 +++++++++++++------------ 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/Open-ILS/src/templates/acq/invoice/view.tt2 b/Open-ILS/src/templates/acq/invoice/view.tt2 index 8d6aa72bf3..382f57295f 100644 --- a/Open-ILS/src/templates/acq/invoice/view.tt2 +++ b/Open-ILS/src/templates/acq/invoice/view.tt2 @@ -123,14 +123,16 @@ + dojoType='dijit.form.Button' onclick='saveChanges();'>[% l('Save') %] + + dojoType='dijit.form.Button' onclick='saveChanges({prorate:true});'>[% l('Prorate') %] + dojoType='dijit.form.Button' onclick='saveChanges({close:true});'>[% l('Close') %]
diff --git a/Open-ILS/web/js/ui/default/acq/invoice/view.js b/Open-ILS/web/js/ui/default/acq/invoice/view.js index 6fe4b0e7db..d754c0689e 100644 --- a/Open-ILS/web/js/ui/default/acq/invoice/view.js +++ b/Open-ILS/web/js/ui/default/acq/invoice/view.js @@ -794,12 +794,9 @@ function liMarcAttr(lineitem, name) { return (attr) ? attr.attr_value() : ''; } -function saveChanges(doProrate, doClose, doReopen) { - createExtraCopies( - function() { - saveChangesPartTwo(doProrate, doClose, doReopen); - } - ); +function saveChanges(args) { + args = args || {}; + createExtraCopies(function() { saveChangesPartTwo(args); }); } // Define a helper function to 'unflesh' sub-objects from an fmclass object. @@ -814,10 +811,10 @@ function unflesh() { }); } -function saveChangesPartTwo(doProrate, doClose, doReopen) { - +function saveChangesPartTwo(args) { + args = args || {}; - if(doReopen) { + if(args.reopen) { invoice.complete('f'); } else { @@ -836,7 +833,7 @@ function saveChangesPartTwo(doProrate, doClose, doReopen) { return; } - if(doClose) + if(args.close) invoice.complete('t'); @@ -886,9 +883,13 @@ function saveChangesPartTwo(doProrate, doClose, doReopen) { progressDialog.hide(); var invoice = openils.Util.readResponse(r); if(invoice) { - if(doProrate) + if(args.prorate) return prorateInvoice(invoice); - location.href = oilsBasePath + '/acq/invoice/view/' + invoice.id(); + if (args.clear) { + location.href = oilsBasePath + '/acq/invoice/view?create=1'; + } else { + location.href = oilsBasePath + '/acq/invoice/view/' + invoice.id(); + } } } } -- 2.11.0