Bug 24389: Better error handle when claiming late orders

A successful message says that the email has been sent and the order has
been claimed, but nothing happened.

Test plan:
0. Do not apply this patch
1. Create a new vendor, does not create a contact
2. Create some orders, close the basket
3. Go to the late orders page and claims some orders
=> You get a successful message, but the claim has not been done!
4. Apply this patch
5. Claim the orders
=> You get an error
6. Set a contact for the vendor
7. Claim the orders
=> Success

In the docker container, you may need to:
% apt install postfix
% postfix start
Edit /etc/hosts
127.0.0.1       localhost localhost.localdomain

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Joonas Kylmälä <joonas.kylmala@helsinki.fi>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Joy Nelson <joy@bywatersolutions.com>
(cherry picked from commit c2c7c6e754)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 5bccfa152a)
Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>
This commit is contained in:
Jonathan Druart 2019-12-16 17:15:19 +01:00 committed by Hayley Mapley
parent 41213f62d4
commit e4e45fab6c
1 changed files with 3 additions and 3 deletions

View File

@ -111,12 +111,12 @@ if ($op and $op eq "send_alert"){
}
};
if ( $@ ) {
$template->param(error_claim => $@);
} elsif ( ref $err and exists $err->{error} and $err->{error} eq "no_email" ) {
if ( ref $err and exists $err->{error} and $err->{error} eq "no_email" ) {
$template->{VARS}->{'error_claim'} = "no_email";
} elsif ( ref $err and exists $err->{error} and $err->{error} eq "no_order_selected"){
$template->{VARS}->{'error_claim'} = "no_order_selected";
} elsif ( $@ or ref $err and exists $err->{error} ) {
$template->param(error_claim => $@ || $err->{error});
} else {
$template->{VARS}->{'info_claim'} = 1;
}