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

(-)a/installer/data/mysql/db_revs/210600035.pl (-34 / +42 lines)
Lines 6-44 return { Link Here
6
    up => sub {
6
    up => sub {
7
        my ($args) = @_;
7
        my ($args) = @_;
8
        my ($dbh, $out) = @$args{qw(dbh out)};
8
        my ($dbh, $out) = @$args{qw(dbh out)};
9
        $dbh->do(q{
9
        my $attribute = $dbh->do(q{
10
            INSERT IGNORE INTO `message_attributes`
10
                SELECT message_attribute_id
11
                (message_attribute_id, message_name, `takes_days`)
11
                FROM message_attributes
12
            VALUES (10, 'Hold_Reminder', 0)
12
                WHERE message_name = "Hold_Reminder"
13
        });
13
        });
14
        say $out "Message attribute added";
14
        unless( $attribute == 1 ){
15
        $dbh->do(q{
15
            $dbh->do(q{
16
            INSERT IGNORE INTO `message_transports`
16
                INSERT IGNORE INTO `message_attributes`
17
                (`message_attribute_id`, `message_transport_type`, `is_digest`, `letter_module`, `letter_code`)
17
                    (message_attribute_id, message_name, `takes_days`)
18
            VALUES  (10, 'email', 0, 'circulation', 'HOLD_REMINDER'),
18
                VALUES (10, 'Hold_Reminder', 0)
19
                    (10, 'sms', 0, 'circulation', 'HOLD_REMINDER'),
19
            });
20
                    (10, 'phone', 0, 'circulation', 'HOLD_REMINDER'),
20
            say $out "Message attribute added";
21
                    (10, 'itiva', 0, 'circulation', 'HOLD_REMINDER')
21
            $dbh->do(q{
22
        });
22
                INSERT IGNORE INTO `message_transports`
23
        say $out "HOLD_REMINDER added to message_transports";
23
                    (`message_attribute_id`, `message_transport_type`, `is_digest`, `letter_module`, `letter_code`)
24
        $dbh->do(q{
24
                VALUES  (10, 'email', 0, 'circulation', 'HOLD_REMINDER'),
25
                INSERT INTO borrower_message_preferences
25
                        (10, 'sms', 0, 'circulation', 'HOLD_REMINDER'),
26
                ( borrowernumber, categorycode, message_attribute_id, days_in_advance, wants_digest )
26
                        (10, 'phone', 0, 'circulation', 'HOLD_REMINDER'),
27
                SELECT borrowernumber, categorycode, 10, days_in_advance, wants_digest
27
                        (10, 'itiva', 0, 'circulation', 'HOLD_REMINDER')
28
                FROM borrower_message_preferences WHERE message_attribute_id = 4
28
            });
29
        });
29
            say $out "HOLD_REMINDER added to message_transports";
30
        say $out "Hold_Filled message preference copied to Hold_Reminder";
30
            $dbh->do(q{
31
        $dbh->do(q{
31
                    INSERT IGNORE INTO borrower_message_preferences
32
                INSERT INTO borrower_message_transport_preferences
32
                    ( borrowernumber, categorycode, message_attribute_id, days_in_advance, wants_digest )
33
                ( borrower_message_preference_id, message_transport_type )
33
                    SELECT borrowernumber, categorycode, 10, days_in_advance, wants_digest
34
                SELECT b1.borrower_message_preference_id, message_transport_type
34
                    FROM borrower_message_preferences WHERE message_attribute_id = 4
35
                FROM borrower_message_preferences b1
35
            });
36
                JOIN borrower_message_preferences b2 ON
36
            say $out "Hold_Filled message preference copied to Hold_Reminder";
37
                  b1.message_attribute_id = 10 AND b2.message_attribute_id = 4 AND
37
            $dbh->do(q{
38
                  b1.borrowernumber=b2.borrowernumber
38
                    INSERT IGNORE INTO borrower_message_transport_preferences
39
                JOIN borrower_message_transport_preferences bt ON
39
                    ( borrower_message_preference_id, message_transport_type )
40
                  b2.borrower_message_preference_id = bt.borrower_message_preference_id
40
                    SELECT b1.borrower_message_preference_id, message_transport_type
41
        });
41
                    FROM borrower_message_preferences b1
42
        say $out "Hold_Filled message transport preferences copied to Hold_Reminder";
42
                    JOIN borrower_message_preferences b2 ON
43
                      b1.message_attribute_id = 10 AND b2.message_attribute_id = 4 AND
44
                      b1.borrowernumber=b2.borrowernumber
45
                    JOIN borrower_message_transport_preferences bt ON
46
                      b2.borrower_message_preference_id = bt.borrower_message_preference_id
47
            });
48
            say $out "Hold_Filled message transport preferences copied to Hold_Reminder";
49
        } else {
50
            say $out "Hold_Reminder message attribute exists, skipping update";
51
        }
43
    },
52
    },
44
}
53
}
45
- 

Return to bug 28153