summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Prodromou <evan@controlezvous.ca>2008-06-22 12:49:28 -0400
committerEvan Prodromou <evan@controlezvous.ca>2008-06-22 12:49:28 -0400
commitc1a5e54e67e56cea684d6011d8316d455aae28eb (patch)
treee23ebf4457b316ddafbf82e5dc6215d592843e7b
parent71456d596a584dd083d2669244179a27959b8ebc (diff)
move profile update to front
darcs-hash:20080622164928-34904-77df2f698c617e2788cc0db2d902238a5dd522d1.gz
-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);