]> git.mxchange.org Git - friendica.git/commitdiff
Fixes the not changed "addr" entry when an account is imported
authorMichael <heluecht@pirati.ca>
Sat, 7 Oct 2017 05:20:46 +0000 (05:20 +0000)
committerMichael <heluecht@pirati.ca>
Sat, 7 Oct 2017 05:20:46 +0000 (05:20 +0000)
include/uimport.php

index 78b20bd691fefe7694aab86948d74443aba59bc5..57c5375ef1a8bbfa5365b3ec55f1d5cd66a6b6d6 100644 (file)
@@ -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);
                                }