From ceb0dda4864a09a3daad5827a024cbe60e0ab165 Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 7 Oct 2017 05:20:46 +0000 Subject: [PATCH] Fixes the not changed "addr" entry when an account is imported --- include/uimport.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/include/uimport.php b/include/uimport.php index 78b20bd691..57c5375ef1 100644 --- a/include/uimport.php +++ b/include/uimport.php @@ -125,6 +125,10 @@ function import_account(App $a, $file) { $oldbaseurl = $account['baseurl']; $newbaseurl = System::baseUrl(); + + $oldaddr = str_replace('http://', '@', normalise_link($oldbaseurl)); + $newaddr = str_replace('http://', '@', normalise_link($newbaseurl)); + $olduid = $account['user']['uid']; unset($account['user']['uid']); @@ -133,7 +137,7 @@ function import_account(App $a, $file) { unset($account['user']['expire_notification_sent']); foreach ($account['user'] as $k => &$v) { - $v = str_replace($oldbaseurl, $newbaseurl, $v); + $v = str_replace(array($oldbaseurl, $oldaddr), array($newbaseurl, $newaddr), $v); } // import user @@ -153,7 +157,7 @@ function import_account(App $a, $file) { foreach ($account['profile'] as &$profile) { foreach ($profile as $k => &$v) { - $v = str_replace($oldbaseurl, $newbaseurl, $v); + $v = str_replace(array($oldbaseurl, $oldaddr), array($newbaseurl, $newaddr), $v); foreach (array("profile", "avatar") as $k) { $v = str_replace($oldbaseurl . "/photo/" . $k . "/" . $olduid . ".jpg", $newbaseurl . "/photo/" . $k . "/" . $newuid . ".jpg", $v); } @@ -172,7 +176,7 @@ function import_account(App $a, $file) { foreach ($account['contact'] as &$contact) { if ($contact['uid'] == $olduid && $contact['self'] == '1') { foreach ($contact as $k => &$v) { - $v = str_replace($oldbaseurl, $newbaseurl, $v); + $v = str_replace(array($oldbaseurl, $oldaddr), array($newbaseurl, $newaddr), $v); foreach (array("profile", "avatar", "micro") as $k) { $v = str_replace($oldbaseurl . "/photo/" . $k . "/" . $olduid . ".jpg", $newbaseurl . "/photo/" . $k . "/" . $newuid . ".jpg", $v); }