WHERE name = {?}',
$new_alias, $user->id(), $user->mainEmailDomain());
}
+
+ // XXX: Improve this when we optimize names handling.
+ // Updates accounts firt and last names.
+ XDB::execute('UPDATE accounts AS a
+ INNER JOIN account_profiles AS ap ON (ap.uid = a.uid AND FIND_IN_SET(\'owner\', ap.perms))
+ INNER JOIN profile_name_enum AS le ON (le.type = \'lastname\')
+ INNER JOIN profile_name_enum AS ce ON (ce.type = \'lastname_ordinary\')
+ INNER JOIN profile_name AS l ON (ap.pid = l.pid AND le.id = l.typeid)
+ LEFT JOIN profile_name AS c ON (ap.pid = c.pid AND ce.id = c.typeid)
+ SET a.lastname = IF(c.pid IS NULL, IF(l.particle != \'\', l.name, CONCAT(l.particle, \' \', l.name)),
+ IF(c.particle != \'\', c.name, CONCAT(c.particle, \' \', c.name)))
+ WHERE a.uid = {?}',
+ $user->id());
+
+ XDB::execute('UPDATE accounts AS a
+ INNER JOIN account_profiles AS ap ON (ap.uid = a.uid AND FIND_IN_SET(\'owner\', ap.perms))
+ INNER JOIN profile_name_enum AS fe ON (fe.type = \'firstname\')
+ INNER JOIN profile_name_enum AS ce ON (ce.type = \'firstname_ordinary\')
+ INNER JOIN profile_name AS f ON (ap.pid = f.pid AND fe.id = f.typeid)
+ LEFT JOIN profile_name AS c ON (ap.pid = c.pid AND ce.id = c.typeid)
+ SET a.firstname = IF(c.pid IS NULL, f.name, c.name)
+ WHERE a.uid = {?}',
+ $user->id());
+
Profile::rebuildSearchTokens($pid, false);
return $has_new;
}