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 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";
    }
}