From: Chris Sharp Date: Tue, 11 Sep 2012 12:45:31 +0000 (-0400) Subject: adding ability to update email addresses X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=refs%2Fheads%2Fadd_schedule;p=contrib%2Fpines.git adding ability to update email addresses --- diff --git a/change_reports_owner.pl b/change_reports_owner.pl index 86219ee..ddad2eb 100755 --- a/change_reports_owner.pl +++ b/change_reports_owner.pl @@ -32,7 +32,7 @@ use warnings; use strict; use DBI; -my $select_query = qq/SELECT u.id, u.first_given_name, u.second_given_name, u.family_name +my $select_query = qq/SELECT u.id, u.first_given_name, u.second_given_name, u.family_name, u.email FROM actor.usr u JOIN actor.card cd on (cd.usr = u.id and cd.active) WHERE cd.barcode = ?/; @@ -56,25 +56,25 @@ my $dbh = DBI->connect("DBI:Pg:dbname=$db_name;host=$db_host", "$db_user", "$db_ # execute SELECT query my $sth = $dbh->prepare("$select_query"); $sth->execute($old_barcode); -my ($user_id1, $first_name1, $middle_name1, $last_name1); +my ($user_id1, $first_name1, $middle_name1, $last_name1, $email1); # iterate through resultset # print values -my $ref = $sth->bind_columns(\($user_id1, $first_name1, $middle_name1, $last_name1)); +my $ref = $sth->bind_columns(\($user_id1, $first_name1, $middle_name1, $last_name1, $email1)); while ($sth->fetch) { - print "The old user has ID $user_id1, barcode $old_barcode and is named $first_name1 $middle_name1 $last_name1.\n"; + print "The old user has ID $user_id1, barcode $old_barcode and is named $first_name1 $middle_name1 $last_name1 with an email address of $email1.\n"; } # execute SELECT query #$sth = $dbh->prepare("$select_query2"); $sth->execute($new_barcode); -my ($user_id2, $first_name2, $middle_name2, $last_name2); +my ($user_id2, $first_name2, $middle_name2, $last_name2, $email2); # iterate through resultset # print values -$ref = $sth->bind_columns(\($user_id2, $first_name2, $middle_name2, $last_name2)); +$ref = $sth->bind_columns(\($user_id2, $first_name2, $middle_name2, $last_name2, $email2)); while ($sth->fetch) { - print "The new user has ID $user_id2, barcode $new_barcode and is named $first_name2 $middle_name2 $last_name2.\n"; + print "The new user has ID $user_id2, barcode $new_barcode and is named $first_name2 $middle_name2 $last_name2 with an email address of $email2.\n"; } print "We will be transferring all report templates and report definitions from $first_name1 $middle_name1 $last_name1 ($old_barcode) to $first_name2 $middle_name2 $last_name2 ($new_barcode). Is that correct (y/n)? "; @@ -102,7 +102,11 @@ foreach my $table (@tables) { print "Setting new owner for $table.\n"; } -my $update_schedule = qq/UPDATE reporter.schedule SET runner = $user_id2 WHERE runner = $user_id1 AND complete_time IS NULL/; +print "Updating reporter.schedule with new runner and replacing email addresses.\n"; + +my $update_schedule = qq/UPDATE reporter.schedule SET runner = ?, email = regexp_replace(email, ?, ?) WHERE runner = ? AND complete_time IS NULL/; +$sth = $dbh->prepare("$update_schedule"); +$sth->execute($user_id2, $email1, $email2, $user_id1); $dbh->commit;