Bug 11693: Default emailing preferences not loaded for self registering patron
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Sun, 5 Jul 2015 11:17:02 +0000 (13:17 +0200)
committerTomas Cohen Arazi <tomascohen@theke.io>
Fri, 24 Jul 2015 16:44:39 +0000 (13:44 -0300)
The call to AddMember_Opac does not take care of the messaging prefs
when enhanced messaging is enabled.
This patch adds the call to handle_form_action to do that.

Test plan:
Enable self registering patrons and enhanced messaging.
Check the (default) message prefs for the relevant patron category. At least
enable email for one notice.
Self-register a user with and without verification email enabled.
Check in both cases that the message prefs of the user conform to
those in the patron category. (So at least one enabled.)

Followed test plan, works as expected.
Signed-off-by: Marc VĂ©ron <veron@veron.ch>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
opac/opac-memberentry.pl
opac/opac-registration-verify.pl

index 5a075ba..9a82fc6 100755 (executable)
@@ -24,6 +24,7 @@ use String::Random qw( random_string );
 use C4::Auth;
 use C4::Output;
 use C4::Members;
+use C4::Form::MessagingPreferences;
 use Koha::Borrower::Modifications;
 use C4::Branch qw(GetBranchesLoop);
 use C4::Scrubber;
@@ -146,6 +147,7 @@ if ( $action eq 'create' ) {
                   C4::Context->preference('OpacPasswordChange') );
 
             my ( $borrowernumber, $password ) = AddMember_Opac(%borrower);
+            C4::Form::MessagingPreferences::handle_form_action($cgi, { borrowernumber => $borrowernumber }, $template, 1, C4::Context->preference('PatronSelfRegistrationDefaultCategory') ) if $borrowernumber && C4::Context->preference('EnhancedMessagingPreferences');
 
             $template->param( password_cleartext => $password );
             $template->param(
index eaaf52f..15d57cd 100755 (executable)
@@ -22,6 +22,7 @@ use CGI qw ( -utf8 );
 use C4::Auth;
 use C4::Output;
 use C4::Members;
+use C4::Form::MessagingPreferences;
 use Koha::Borrower::Modifications;
 
 my $cgi = new CGI;
@@ -56,6 +57,7 @@ if ( $m->Verify() ) {
 
     if ($borrowernumber) {
         Koha::Borrower::Modifications->DelModifications({ verification_token => $token });
+        C4::Form::MessagingPreferences::handle_form_action($cgi, { borrowernumber => $borrowernumber }, $template, 1, C4::Context->preference('PatronSelfRegistrationDefaultCategory') ) if C4::Context->preference('EnhancedMessagingPreferences');
 
         $template->param( password_cleartext => $password );
         $template->param(