From: Bernd Bleßmann Date: Wed, 26 Jan 2022 16:17:45 +0000 (+0100) Subject: Rechnungsmaske: "Drucken und Buchen" und Browser-Zurück entschärfen X-Git-Tag: kivitendo-mebil_0.1-0~10^2~2^2~51 X-Git-Url: http://wagnertech.de/git?p=kivitendo-erp.git;a=commitdiff_plain;h=feb6f563968f53e59511578429b1dd61fda52008 Rechnungsmaske: "Drucken und Buchen" und Browser-Zurück entschärfen Wenn nach dem "Drucken und Buchen" in der Rechnungsmaske eine andere Maske aufgerufen wird und dann mit "Browser-Zurück" wieder zur Rechnungsmaske zurückgegangen wird, dann wird im günstigsten Fall erneut gedruckt. Es ist aber auch schon passiert (je nach Browser-Version?), dass eine zweite Rechnung gebucht wurde. Nun wird durch eine Hidden-Variable verhindert, dass der submit erneut durchgeführt wird. Das ist nur ein Hack. Eventuell ist es besser, das resubmit umzustellen auf: - Druckdatei generieren - per js zum Download anbieten und update-Triggern Da ist aber einiges zu beachten durch die verschiedenen Ausgabetypen (media) und $form->parse_template muss so umgestellt werden, dass es die Datei nicht an den Browser schickt. --- diff --git a/templates/webpages/is/form_header.html b/templates/webpages/is/form_header.html index ec575dde0..b155850ab 100644 --- a/templates/webpages/is/form_header.html +++ b/templates/webpages/is/form_header.html @@ -18,6 +18,7 @@ +

[% title %]

@@ -331,8 +332,11 @@ kivi.SalesPurchase.show_print_dialog(); kivi.SalesPurchase.print_record(); [% ELSIF resubmit %] - kivi.SalesPurchase.show_print_dialog(); - kivi.SalesPurchase.print_record(); + if ($('#already_printed_flag').val() === "0") { + kivi.SalesPurchase.show_print_dialog(); + kivi.SalesPurchase.print_record(); + $('#already_printed_flag').val("1"); + } [% ELSIF creditwarning != '' %] alert('[% 'Credit Limit exceeded!!!' | $T8 %]'); [% ELSE %]