From c8d0a532208ce13a44108f63b7abe7cda188f489 Mon Sep 17 00:00:00 2001 From: =?utf8?q?St=C3=A9phane=20Jacob?= Date: Wed, 7 Dec 2011 15:27:28 +0100 Subject: [PATCH] Improves and fixes name capitalization script. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Stéphane Jacob --- upgrade/1.1.5/connect.db.inc.php | 1 + upgrade/1.1.5/name.php | 42 ++++++++++++++++++++++++---------------- 2 files changed, 26 insertions(+), 17 deletions(-) create mode 120000 upgrade/1.1.5/connect.db.inc.php diff --git a/upgrade/1.1.5/connect.db.inc.php b/upgrade/1.1.5/connect.db.inc.php new file mode 120000 index 0000000..442fab7 --- /dev/null +++ b/upgrade/1.1.5/connect.db.inc.php @@ -0,0 +1 @@ +../../bin/connect.db.inc.php \ No newline at end of file diff --git a/upgrade/1.1.5/name.php b/upgrade/1.1.5/name.php index e810197..c72f3a6 100755 --- a/upgrade/1.1.5/name.php +++ b/upgrade/1.1.5/name.php @@ -1,19 +1,23 @@ #!/usr/bin/php5 total(); while ($item = $names->next()) { foreach ($name_list as $type) { - if ($item[$type] != '') { - $item[$type] = capitalize_name_checked($item[$type]); - } + $item[$type] = capitalize_name_checked($item[$type]); } XDB::execute('UPDATE profile_public_names @@ -56,22 +59,25 @@ while ($item = $names->next()) { $item['lastname_initial'], $item['lastname_main'], $item['lastname_marital'], $item['lastname_ordinary'], $item['firstname_initial'], $item['firstname_main'], $item['firstname_ordinary'], $item['pseudonym'], $item['pid']); - $profile = Profile::get($pid); + $profile = Profile::get($item['pid']); update_display_names($profile, $item); + printf("\r%u / %u", $conversions, $total); $conversions++; unset($item, $profile); } -echo "$conversions names from profiles properly recapitalized.\n"; +printf("\r%u / %u", $conversions, $total); +echo "\n$conversions names from profiles properly recapitalized.\n"; $conversions = 0; -$names = XDB::iterRow('SELECT uid, firstname, lastname - FROM accounts - WHERE NOT EXISTS (SELECT 1 +$names = XDB::iterator('SELECT uid, firstname, lastname + FROM accounts + WHERE NOT EXISTS (SELECT 1 FROM account_profiles WHERE account_profiles.uid = accounts.uid)'); +$total = $names->total(); while ($item = $names->next()) { $lastname = capitalize_name_checked($item['lastname']); $firstname = capitalize_name_checked($item['firstname']); @@ -83,13 +89,15 @@ while ($item = $names->next()) { XDB::execute('UPDATE accounts SET firstname = {?}, lastname = {?}, full_name = {?}, directory_name = {?}, sort_name = {?} WHERE uid = {?}', - $firstname, $lastname, $full_name, $directory_name, $sort_name); + $firstname, $lastname, $full_name, $directory_name, $sort_name, $item['uid']); + printf("\r%u / %u", $conversions, $total); $conversions++; unset($item); } +printf("\r%u / %u", $conversions, $total); -echo "$conversions names from accounts properly recapitalized.\n"; +echo "\n$conversions names from accounts properly recapitalized.\n"; // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?> -- 2.1.4