$has_new = false;
foreach ($sn_new as $typeid => $sn) {
if (isset($sn['pub'])) {
- if (isset($sn_old[$typeid]) && ($sn_old[$typeid]['fullname'] == $sn['fullname'] && $update_new)) {
+ if (isset($sn_old[$typeid]) && $update_new) {
XDB::execute("UPDATE profile_name
SET particle = {?}, name = {?}, typeid = {?}
WHERE id = {?} AND pid = {?}",
$sn['particle'], $sn['name'], $typeid, $sn_old[$typeid]['id'], $pid);
unset($sn_old[$typeid]);
- } elseif ($update_new
- || (isset($sn_old[$typeid]) && compare_basename($sn_old[$typeid]['fullname'], $sn['fullname']))) {
- XDB::execute("INSERT INTO profile_name (particle, name, typeid, pid)
- VALUES ({?}, {?}, {?}, {?})",
- $sn['particle'], $sn['name'], $typeid, $pid);
- unset($sn_old[$typeid]);
} else {
$has_new = true;
}
$this->search_names = array();
foreach ($value as &$sn) {
$sn['name'] = trim($sn['name']);
- if ($sn['type'] == 'firstname' || $sn['type'] == 'lastname') {
+ if (S::user()->isMe($this->owner) && ($sn['type'] == 'firstname' || $sn['type'] == 'lastname')) {
$sn['name'] = $this->prepare($page, $sn['type'], $sn['name'],
$initial[$sn['type']], $success_tmp);
$success = $success && $success_tmp;