From efe6ac273fa3ec9edc48e7d196d59f2e9a82a224 Mon Sep 17 00:00:00 2001 From: Matthew Somerville Date: Wed, 12 Apr 2017 16:18:01 +0100 Subject: Don't error when devolved body, blank send methods The check assumed that if a body was devolved, either the contact or the body would have a send method. Instead, use a contact send method if devolved and it exists, a body send method if it exists or the fallback if neither. Fixes #1374. --- perllib/FixMyStreet/Cobrand/Default.pm | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/perllib/FixMyStreet/Cobrand/Default.pm b/perllib/FixMyStreet/Cobrand/Default.pm index 6d9f38d78..ac70fff08 100644 --- a/perllib/FixMyStreet/Cobrand/Default.pm +++ b/perllib/FixMyStreet/Cobrand/Default.pm @@ -873,13 +873,11 @@ sub get_body_sender { # look up via category my $contact = $body->contacts->search( { category => $category } )->first; - if ( $body->can_be_devolved ) { - if ( $contact->send_method ) { - return { method => $contact->send_method, config => $contact, contact => $contact }; - } else { - return { method => $body->send_method, config => $body, contact => $contact }; - } - } elsif ( $body->send_method ) { + if ( $body->can_be_devolved && $contact->send_method ) { + return { method => $contact->send_method, config => $contact, contact => $contact }; + } + + if ( $body->send_method ) { return { method => $body->send_method, config => $body, contact => $contact }; } -- cgit v1.2.3