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

(-)a/misc/maintenance/borrowers-force-messaging-defaults.pl (-18 / +3 lines)
Lines 39-45 sub usage { Link Here
39
39
40
40
41
sub force_borrower_messaging_defaults {
41
sub force_borrower_messaging_defaults {
42
    my ($doit, $truncate, $since, $actives, $no_overwrite) = @_;
42
    my ($doit, $since, $actives, $no_overwrite) = @_;
43
43
44
    $since = '0000-00-00' if (!$since);
44
    $since = '0000-00-00' if (!$since);
45
    print "Since: $since\n";
45
    print "Since: $since\n";
Lines 47-59 sub force_borrower_messaging_defaults { Link Here
47
    my $dbh = C4::Context->dbh;
47
    my $dbh = C4::Context->dbh;
48
    $dbh->{AutoCommit} = 0;
48
    $dbh->{AutoCommit} = 0;
49
49
50
    if ( $doit && $truncate ) {
51
        $dbh->do(q|SET FOREIGN_KEY_CHECKS = 0|);
52
        $dbh->do(q|TRUNCATE borrower_message_transport_preferences|);
53
        $dbh->do(q|TRUNCATE borrower_message_preferences|);
54
        $dbh->do(q|SET FOREIGN_KEY_CHECKS = 1|);
55
    }
56
57
    my $sql = "SELECT borrowernumber, categorycode FROM borrowers bo WHERE dateenrolled >= ?";
50
    my $sql = "SELECT borrowernumber, categorycode FROM borrowers bo WHERE dateenrolled >= ?";
58
    if ($actives) {
51
    if ($actives) {
59
        $sql .= " AND dateexpiry > NOW()"
52
        $sql .= " AND dateexpiry > NOW()"
Lines 75-84 sub force_borrower_messaging_defaults { Link Here
75
}
68
}
76
69
77
70
78
my ( $doit, $truncate, $since, $help, $actives, $no_overwrite );
71
my ( $doit, $since, $help, $actives, $no_overwrite );
79
my $result = GetOptions(
72
my $result = GetOptions(
80
    'doit'        => \$doit,
73
    'doit'        => \$doit,
81
    'truncate'    => \$truncate,
82
    'since:s'     => \$since,
74
    'since:s'     => \$since,
83
    'actives'     => \$actives,
75
    'actives'     => \$actives,
84
    'no_overwrite'  => \$no_overwrite,
76
    'no_overwrite'  => \$no_overwrite,
Lines 87-93 my $result = GetOptions( Link Here
87
79
88
usage() if $help;
80
usage() if $help;
89
81
90
force_borrower_messaging_defaults( $doit, $truncate, $since, $actives, $no_overwrite );
82
force_borrower_messaging_defaults( $doit, $since, $actives, $no_overwrite );
91
83
92
=head1 NAME
84
=head1 NAME
93
85
Lines 98-104 force-borrower-messaging-defaults Link Here
98
  force-borrower-messaging-defaults
90
  force-borrower-messaging-defaults
99
  force-borrower-messaging-defaults --help
91
  force-borrower-messaging-defaults --help
100
  force-borrower-messaging-defaults --doit
92
  force-borrower-messaging-defaults --doit
101
  force-borrower-messaging-defaults --doit --truncate
102
  force-borrower-messaging-defaults --doit --actives
93
  force-borrower-messaging-defaults --doit --actives
103
94
104
=head1 DESCRIPTION
95
=head1 DESCRIPTION
Lines 123-133 Prints this help Link Here
123
114
124
Actually update the borrowers.
115
Actually update the borrowers.
125
116
126
=item B<--truncate>
127
128
Truncate all borrowers transport preferences before (re-)creating them. It
129
affects borrower_message_preferences table.
130
131
=item B<--actives>
117
=item B<--actives>
132
118
133
Will only update active borrowers (borrowers who didn't pass their expiration date).
119
Will only update active borrowers (borrowers who didn't pass their expiration date).
134
- 

Return to bug 19452