From 8a07aa6bdd12fdb24674be02d2e8a220326e94e3 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Fri, 19 Apr 2024 12:29:31 +0000 Subject: [PATCH] Bug 30318: Don't reset messaging preferences when form is empty In testing, the messaging preferences are set in the form when EnhancedMessagingPreferences is enabled. Switching categories silently updates the preferences unless you have made changes, in which case the user is warned and can confirm if they want to reset or not. The code only applies to patron creatoin, and does not seem to be taken into account during OPAC self-registration. It seems the silent defaulting when saving can be removed in favor of the current updates/warns in the actual form. To test: 1 - Set some messaging preferences for at least two categories 2 - Enter a new patron 3 - Confirm switching categories correctly defaults the messaging preferences 4 - Edit the preferences and switch to another category with defaults 5 - Confirm the warning appears, and preferences are set if confirmed and ignored if not 6 - Set to a category with defaults, uncheck all, and save 7 - Ooof, patron is defaulted 8 - Apply patch 9 - Repeat 1-5 and confirm nothing has changed 10 - Set to a category with defaults, uncheck all, save 11 - Confirm patron is saved with no preferences Signed-off-by: Andrew Fuerste Henry Signed-off-by: Martin Renvoize Signed-off-by: Katrin Fischer (cherry picked from commit 70fde44d4f6eef25e177012318e7acaa0ce740c3) Signed-off-by: Fridolin Somers (cherry picked from commit 86cc4b4d245f704a306ee10cc0ebde89cc40273a) Signed-off-by: Lucas Gass --- C4/Form/MessagingPreferences.pm | 9 --------- 1 file changed, 9 deletions(-) diff --git a/C4/Form/MessagingPreferences.pm b/C4/Form/MessagingPreferences.pm index dbac3aceb2..1322c6e260 100644 --- a/C4/Form/MessagingPreferences.pm +++ b/C4/Form/MessagingPreferences.pm @@ -96,15 +96,6 @@ sub handle_form_action { } C4::Members::Messaging::SetMessagingPreference( $updater ); - - if ($query->param( $option->{'message_attribute_id'})){ - $prefs_set = 1; - } - } - if (! $prefs_set && $insert){ - # this is new borrower, and we have no preferences set, use the defaults - $target_params->{categorycode} = $categorycode; - C4::Members::Messaging::SetMessagingPreferencesFromDefaults( $target_params ); } # show the success message $template->param( settings_updated => 1 ); -- 2.39.5