From 5d54b6019eff42900a6e183c1396b181c7b7e9f9 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 7 Sep 2011 18:20:14 -0400 Subject: [PATCH] Move all URL-update scripts to one script --- scripts/updateavatarurl.php | 132 ------------------------------ scripts/updateavatarurl_group.php | 99 ---------------------- scripts/updateprofileurl.php | 99 ---------------------- scripts/updateurls.php | 132 ++++++++++++++++++++++++++++++ 4 files changed, 132 insertions(+), 330 deletions(-) delete mode 100644 scripts/updateavatarurl.php delete mode 100644 scripts/updateavatarurl_group.php delete mode 100644 scripts/updateprofileurl.php create mode 100644 scripts/updateurls.php diff --git a/scripts/updateavatarurl.php b/scripts/updateavatarurl.php deleted file mode 100644 index 3b6681bae9..0000000000 --- a/scripts/updateavatarurl.php +++ /dev/null @@ -1,132 +0,0 @@ -#!/usr/bin/env php -. - */ - -define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); - -$shortoptions = 'i:n:a'; -$longoptions = array('id=', 'nickname=', 'all'); - -$helptext = <<find()) { - while ($user->fetch()) { - updateAvatars($user); - } - } - } else { - show_help(); - exit(1); - } -} catch (Exception $e) { - print $e->getMessage()."\n"; - exit(1); -} - -function updateAvatars($user) -{ - $touched = false; - - if (!have_option('q', 'quiet')) { - print "Updating avatars for user '".$user->nickname."' (".$user->id.")..."; - } - - $avatar = new Avatar(); - - $avatar->profile_id = $user->id; - - if (!$avatar->find()) { - if (have_option('v', 'verbose')) { - print "(none found)..."; - } - } else { - while ($avatar->fetch()) { - if (have_option('v', 'verbose')) { - if ($avatar->original) { - print "original..."; - } else { - print $avatar->width."..."; - } - } - - $orig_url = $avatar->url; - - $avatar->url = Avatar::url($avatar->filename); - - if ($avatar->url != $orig_url) { - $sql = - "UPDATE avatar SET url = '" . $avatar->url . "' ". - "WHERE profile_id = " . $avatar->profile_id . " ". - "AND width = " . $avatar->width . " " . - "AND height = " . $avatar->height . " "; - - if ($avatar->original) { - $sql .= "AND original = 1 "; - } - - if (!$avatar->query($sql)) { - throw new Exception("Can't update avatar for user " . $user->nickname . "."); - } else { - $touched = true; - } - } - } - } - - if ($touched) { - $profile = $user->getProfile(); - common_broadcast_profile($profile); - } - - if (have_option('v', 'verbose')) { - print "DONE."; - } - if (!have_option('q', 'quiet') || have_option('v', 'verbose')) { - print "\n"; - } -} diff --git a/scripts/updateavatarurl_group.php b/scripts/updateavatarurl_group.php deleted file mode 100644 index ada42de202..0000000000 --- a/scripts/updateavatarurl_group.php +++ /dev/null @@ -1,99 +0,0 @@ -#!/usr/bin/env php -. - */ - -define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); - -$shortoptions = 'i:n:a'; -$longoptions = array('id=', 'nickname=', 'all'); - -$helptext = <<find()) { - while ($group->fetch()) { - updateGroupAvatars($group); - } - } - } else { - show_help(); - exit(1); - } -} catch (Exception $e) { - print $e->getMessage()."\n"; - exit(1); -} - -function updateGroupAvatars($group) -{ - if (!have_option('q', 'quiet')) { - print "Updating avatars for group '".$group->nickname."' (".$group->id.")..."; - } - - if (empty($group->original_logo)) { - print "(none found)..."; - } else { - // Using clone here was screwing up the group->find() iteration - $orig = User_group::staticGet('id', $group->id); - - $group->original_logo = Avatar::url(basename($group->original_logo)); - $group->homepage_logo = Avatar::url(basename($group->homepage_logo)); - $group->stream_logo = Avatar::url(basename($group->stream_logo)); - $group->mini_logo = Avatar::url(basename($group->mini_logo)); - - if (!$group->update($orig)) { - throw new Exception("Can't update avatars for group " . $group->nickname . "."); - } - } - - if (have_option('v', 'verbose')) { - print "DONE."; - } - if (!have_option('q', 'quiet') || have_option('v', 'verbose')) { - print "\n"; - } -} diff --git a/scripts/updateprofileurl.php b/scripts/updateprofileurl.php deleted file mode 100644 index 2fc6828e60..0000000000 --- a/scripts/updateprofileurl.php +++ /dev/null @@ -1,99 +0,0 @@ -#!/usr/bin/env php -. - */ - -define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); - -$shortoptions = 'i:n:a'; -$longoptions = array('id=', 'nickname=', 'all'); - -$helptext = <<find()) { - while ($user->fetch()) { - updateProfileURL($user); - } - } - } else { - show_help(); - exit(1); - } -} catch (Exception $e) { - print $e->getMessage()."\n"; - exit(1); -} - -function updateProfileURL($user) -{ - $profile = $user->getProfile(); - - if (empty($profile)) { - throw new Exception("Can't find profile for user $user->nickname ($user->id)"); - } - - $orig = clone($profile); - - $profile->profileurl = common_profile_url($user->nickname); - - if (!have_option('q', 'quiet')) { - print "Updating profile url for $user->nickname ($user->id) ". - "from $orig->profileurl to $profile->profileurl..."; - } - - $result = $profile->update($orig); - - if (!$result) { - print "FAIL.\n"; - common_log_db_error($profile, 'UPDATE', __FILE__); - throw new Exception("Can't update profile for user $user->nickname ($user->id)"); - } - - common_broadcast_profile($profile); - - print "OK.\n"; -} diff --git a/scripts/updateurls.php b/scripts/updateurls.php new file mode 100644 index 0000000000..737adb3f3f --- /dev/null +++ b/scripts/updateurls.php @@ -0,0 +1,132 @@ +#!/usr/bin/env php +. + */ + +define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); + +$shortoptions = ''; +$longoptions = array(); + +$helptext = <<find()) { + while ($user->fetch()) { + printfv("Updating user {$user->nickname}..."); + try { + $profile = $user->getProfile(); + + updateProfileUrl($profile); + updateAvatarUrls($profile); + + // Broadcast for remote users + + common_broadcast_profile($profile); + + } catch (Exception $e) { + printv("Error updating URLs: " . $e->getMessage()); + } + printfv("DONE."); + } + } +} + +function updateProfileUrl($profile) +{ + $orig = clone($profile); + $profile->profileurl = common_profile_url($profile->nickname); + $profile->update($orig); +} + +function updateAvatarUrls($profile) +{ + $avatar = new Avatar(); + + $avatar->profile_id = $profile->id; + if ($avatar->find()) { + while ($avatar->fetch()) { + $orig_url = $avatar->url; + $avatar->url = Avatar::url($avatar->filename); + if ($avatar->url != $orig_url) { + $sql = + "UPDATE avatar SET url = '" . $avatar->url . "' ". + "WHERE profile_id = " . $avatar->profile_id . " ". + "AND width = " . $avatar->width . " " . + "AND height = " . $avatar->height . " "; + + if ($avatar->original) { + $sql .= "AND original = 1 "; + } + + if (!$avatar->query($sql)) { + throw new Exception("Can't update avatar for user " . $profile->nickname . "."); + } else { + $touched = true; + } + } + } + } +} + +function updateGroupUrls() +{ + $group = new User_group(); + + if ($group->find()) { + while ($group->fetch()) { + try { + $orig = User_group::staticGet('id', $group->id); + if (!empty($group->original_logo)) { + $group->original_logo = Avatar::url(basename($group->original_logo)); + $group->homepage_logo = Avatar::url(basename($group->homepage_logo)); + $group->stream_logo = Avatar::url(basename($group->stream_logo)); + $group->mini_logo = Avatar::url(basename($group->mini_logo)); + } + // XXX: this is a hack to see if a group is local or not + $localUri = common_local_url('groupbyid', + array('id' => $group->id)); + if ($group->getUri() != $localUri) { + $group->mainpage = common_local_url('showgroup', + array('nickname' => $group->nickname)); + } + $group->update($orig); + } catch (Exception $e) { + printv("Can't update avatars for group " . $group->nickname . ": ". $e->getMessage()); + } + } + } +}