$display_names['public_name'], $display_names['private_name'],
$display_names['directory_name'], $display_names['short_name'],
$display_names['sort_name'], $pid);
+
+ /* XXX: Inefficient, should directly take the profile as parameter */
+ $profile = Profile::get($pid);
+ $owner = $profile->owner();
+ if ($owner) {
+ XDB::execute('UPDATE accounts
+ SET full_name = {?}
+ WHERE uid = {?}',
+ $display_names['public_name'], $owner->id());
+ }
}
function build_sn_pub($pid)
$this->values['photo_pub'], $this->pid());
}
if ($this->changed['yourself']) {
- XDB::execute('UPDATE accounts
- SET display_name = {?}
- WHERE uid = {?}',
- $this->values['yourself'], $this->owner->id());
+ if ($this->owner) {
+ XDB::execute('UPDATE accounts
+ SET display_name = {?}
+ WHERE uid = {?}',
+ $this->values['yourself'], $this->owner->id());
+ }
+ XDB::execute('UPDATE profile_display
+ SET yourself = {?}
+ WHERE pid = {?}', $this->values['yourself'],
+ $this->pid());
}
if ($this->changed['promo_display']) {
if ($this->values['promo_display']{0} == $this->profile->mainEducation()) {