summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--actions/profilesettings.php46
1 files changed, 24 insertions, 22 deletions
diff --git a/actions/profilesettings.php b/actions/profilesettings.php
index 85e7bd19f..ca17e2323 100644
--- a/actions/profilesettings.php
+++ b/actions/profilesettings.php
@@ -113,6 +113,30 @@ class ProfilesettingsAction extends SettingsAction {
$user->query('BEGIN');
+ $profile = $user->getProfile();
+
+ $orig_profile = clone($profile);
+
+ $profile->nickname = $nickname;
+ $profile->fullname = $fullname;
+ $profile->homepage = $homepage;
+ $profile->bio = $bio;
+ $profile->location = $location;
+ $profile->profileurl = common_profile_url($nickname);
+
+ common_debug('Old profile: ' . common_log_objstring($orig_profile), __FILE__);
+ common_debug('New profile: ' . common_log_objstring($profile), __FILE__);
+
+ $result = $profile->update($orig_profile);
+
+ if (!$result) {
+ common_log_db_error($profile, 'UPDATE', __FILE__);
+ common_server_error(_t('Couldnt save profile.'));
+ return;
+ }
+
+ # Keys don't update correctly, so we have to handle them separately
+
if (strcmp($user->nickname, $nickname) != 0) {
common_debug('Updating user nickname from ' . $user->nickname . ' to ' . $nickname,
@@ -160,28 +184,6 @@ class ProfilesettingsAction extends SettingsAction {
$email);
}
- $profile = $user->getProfile();
-
- $orig_profile = clone($profile);
-
- $profile->nickname = $user->nickname;
- $profile->fullname = $fullname;
- $profile->homepage = $homepage;
- $profile->bio = $bio;
- $profile->location = $location;
- $profile->profileurl = common_profile_url($nickname);
-
- common_debug('Old profile: ' . common_log_objstring($orig_profile), __FILE__);
- common_debug('New profile: ' . common_log_objstring($profile), __FILE__);
-
- $result = $profile->update($orig_profile);
-
- if (!$result) {
- common_log_db_error($profile, 'UPDATE', __FILE__);
- common_server_error(_t('Couldnt save profile.'));
- return;
- }
-
$user->query('COMMIT');
common_broadcast_profile($profile);