From f87d0cb2cc408354873f446691a45402350366af Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Tue, 24 Jun 2025 14:03:34 +0100 Subject: [PATCH] Bug 38728: Add automatic modal popup for cashups on register details page This patch automatically triggers the cashup display modal after a cashup is performed from the individual Register details display page. Test plan: 1. Enable the point of sale system preference 2. Ensure you have permission for cash_management > cashup 3. Create at least one cash register for your current branch 4. Navigate to More > Point of Sale > Cash registers 5. Click on a register name to access the individual register page 6. Perform some transactions to create outstanding amounts 7. Click 'Record cashup' button on the register details page 8. Confirm the cashup in the modal dialog 9. Verify that after page reload, the cashup summary modal automatically opens showing the details of the cashup just performed Signed-off-by: David Nind Signed-off-by: Sally Healey --- koha-tmpl/intranet-tmpl/prog/en/modules/pos/register.tt | 9 +++++++++ pos/register.pl | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/pos/register.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/pos/register.tt index e01152f7515..7ef32771698 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/pos/register.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/pos/register.tt @@ -573,6 +573,15 @@ } ] }, null, 1); + + $(document).ready(function() { + [% IF cashup_id %] + let $button = $('[data-cashup="[% cashup_id | html %]"]'); + if ($button.length) { + $button[0].click(); + } + [% END %] + }); [% END %] diff --git a/pos/register.pl b/pos/register.pl index a215f36267c..d6dd101a162 100755 --- a/pos/register.pl +++ b/pos/register.pl @@ -104,7 +104,7 @@ if ( !$registers->count ) { my $op = $input->param('op') // ''; if ( $op eq 'cud-cashup' ) { if ( $logged_in_user->has_permission( { cash_management => 'cashup' } ) ) { - $cash_register->add_cashup( + my $cashup = $cash_register->add_cashup( { manager_id => $logged_in_user->id, amount => $cash_register->outstanding_accountlines->total @@ -112,7 +112,7 @@ if ( !$registers->count ) { ); # Redirect to prevent duplicate submissions (POST/REDIRECT/GET pattern) - print $input->redirect( "/cgi-bin/koha/pos/register.pl?registerid=" . $registerid ); + print $input->redirect( "/cgi-bin/koha/pos/register.pl?registerid=" . $registerid . "&cashup_id=" . $cashup->id ); exit; } else { $template->param( error_cashup_permission => 1 ); -- 2.51.0