View | Details | Raw Unified | Return to bug 30300
Collapse All | Expand All

(-)a/installer/data/mysql/atomicupdate/bug_30300-add_expiration_to_messaging_preferences.pl (-15 / +26 lines)
Lines 1-7 Link Here
1
use Modern::Perl;
1
use Modern::Perl;
2
2
3
use Koha::Patrons;
4
5
return {
3
return {
6
    bug_number  => "30300",
4
    bug_number  => "30300",
7
    description => "Add Patron expiry to messaging preference",
5
    description => "Add Patron expiry to messaging preference",
Lines 48-67 return { Link Here
48
            say $out "MEMBERSHIP_EXPIRY added to message_transports";
46
            say $out "MEMBERSHIP_EXPIRY added to message_transports";
49
47
50
            my $days_notice = C4::Context->preference('MembershipExpiryDaysNotice');
48
            my $days_notice = C4::Context->preference('MembershipExpiryDaysNotice');
51
            if($days_notice) {
49
            if ($days_notice) {
52
                my $patrons = Koha::Patrons->search();
50
53
                while ( my $patron = $patrons->next ) {
51
                $dbh->do(
54
                    C4::Members::Messaging::SetMessagingPreference(
52
                    q{
55
                        {
53
                    INSERT IGNORE INTO borrower_message_preferences
56
                            borrowernumber          => $patron->borrowernumber,
54
                        (`borrower_message_preference_id`, `borrowernumber`, `categorycode`, `message_attribute_id`, `days_in_advance`, `wants_digest`)
57
                            message_attribute_id    => $message_attribute_id,
55
                    SELECT
58
                            message_transport_types => ['email'],
56
                        NULL, borrowernumber, NULL, ?, NULL, NULL
59
                        }
57
                    FROM
60
                    );
58
                        borrowers
61
                }
59
                }, {}, $message_attribute_id
60
                );
61
62
                $dbh->do(
63
                    q{
64
                    INSERT IGNORE INTO borrower_message_transport_preferences
65
                        (`borrower_message_preference_id`, `message_transport_type`)
66
                    SELECT
67
                        borrower_message_preference_id, 'email'
68
                    FROM
69
                        borrower_message_preferences
70
                    WHERE
71
                        message_attribute_id = ?
72
                }, {}, $message_attribute_id
73
                );
62
            }
74
            }
63
        } else {
75
        } else {
64
            say $out "Patron_Expiry message attribute exists, skipping update";
76
            say $out "Patron_Expiry message attribute exists, skipping update";
65
        }
77
        }
66
    },
78
    },
67
    }
79
};
68
- 

Return to bug 30300