LP#1865533: save changes on Edit Hold in My Account
authorJeff Davis <jdavis@sitka.bclibraries.ca>
Tue, 28 Apr 2020 20:52:52 +0000 (13:52 -0700)
committerChris Sharp <csharp@georgialibraries.org>
Fri, 1 May 2020 19:10:16 +0000 (15:10 -0400)
When editing a hold in the OPAC, changes are not saved if the SMS field
is blank.  The sms_notify value is being passed as an empty string, and
this non-null value violates the "sms_check" constraint on
action.hold_request.  Replacing the empty string with undef allows the
hold update to succeed.

Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>

Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Account.pm

index e246bd5..6579300 100644 (file)
@@ -1224,7 +1224,7 @@ sub handle_hold_update {
             $val->{"pickup_lib"} = $self->cgi->param("pickup_lib");
             $val->{"email_notify"} = $self->cgi->param("email_notify") ? 1 : 0;
             $val->{"phone_notify"} = $self->cgi->param("phone_notify");
-            $val->{"sms_notify"} = $self->cgi->param("sms_notify");
+            $val->{"sms_notify"} = ( $self->cgi->param("sms_notify") eq '' ) ? undef : $self->cgi->param("sms_notify");
             $val->{"sms_carrier"} = int($self->cgi->param("sms_carrier")) if $val->{"sms_notify"};
 
             for my $field (qw/expire_time thaw_date/) {