From a980af85a6b8487918b7595a14e87b13ddd53043 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 22 Oct 2019 12:00:18 +0200 Subject: [PATCH] Bug 23594: Restore previous view after delete or update itemtype MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We want to restore the previous view when suggestions are deleted or their itemtypes are updated. To avoid c/p the code is moved to a new subroutine. Signed-off-by: Séverine QUEUNE --- suggestion/suggestion.pl | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/suggestion/suggestion.pl b/suggestion/suggestion.pl index 9653e69..011a54d 100755 --- a/suggestion/suggestion.pl +++ b/suggestion/suggestion.pl @@ -224,25 +224,12 @@ elsif ($op eq "update_status" ) { $suggestion->{suggestionid} = $suggestionid; &ModSuggestion($suggestion); } - my $params = ''; - foreach my $key ( - qw( - displayby branchcode title author isbn publishercode copyrightdate - collectiontitle suggestedby suggesteddate_from suggesteddate_to - manageddate_from manageddate_to accepteddate_from - accepteddate_to budgetid - ) - ) - { - $params .= $key . '=' . uri_escape($input->param($key)) . '&' - if defined($input->param($key)); - } - print $input->redirect("/cgi-bin/koha/suggestion/suggestion.pl?$params"); + redirect_with_params($input); }elsif ($op eq "delete" ) { foreach my $delete_field (@editsuggestions) { &DelSuggestion( $borrowernumber, $delete_field,'intranet' ); } - $op = 'else'; + redirect_with_params($input); } elsif ( $op eq 'update_itemtype' ) { my $new_itemtype = $input->param('suggestion_itemtype'); @@ -250,6 +237,7 @@ elsif ( $op eq 'update_itemtype' ) { next unless $suggestionid; &ModSuggestion({ suggestionid => $suggestionid, itemtype => $new_itemtype }); } + redirect_with_params($input); } elsif ( $op eq 'show' ) { $suggestion_ref=&GetSuggestion($$suggestion_ref{'suggestionid'}); @@ -413,3 +401,21 @@ $template->param( SuggestionStatuses => GetAuthorisedValues('SUGGEST_STATUS'), ); output_html_with_http_headers $input, $cookie, $template->output; + +sub redirect_with_params { + my ( $input ) = @_; + my $params = ''; + foreach my $key ( + qw( + displayby branchcode title author isbn publishercode copyrightdate + collectiontitle suggestedby suggesteddate_from suggesteddate_to + manageddate_from manageddate_to accepteddate_from + accepteddate_to budgetid + ) + ) + { + $params .= $key . '=' . uri_escape(scalar $input->param($key)) . '&' + if defined($input->param($key)); + } + print $input->redirect("/cgi-bin/koha/suggestion/suggestion.pl?$params"); +} -- 2.1.4