X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fuimport.php;h=af4f434d4bb0d65da2477695e7764e740bd577e8;hb=3b2cd854837e5df38f75f323aab24e31098812d4;hp=57c5375ef1a8bbfa5365b3ec55f1d5cd66a6b6d6;hpb=ceb0dda4864a09a3daad5827a024cbe60e0ab165;p=friendica.git diff --git a/include/uimport.php b/include/uimport.php index 57c5375ef1..af4f434d4b 100644 --- a/include/uimport.php +++ b/include/uimport.php @@ -2,6 +2,9 @@ use Friendica\App; use Friendica\Core\System; +use Friendica\Core\PConfig; +use Friendica\Core\Worker; +use Friendica\Database\DBM; require_once("include/Photo.php"); define("IMPORT_DEBUG", False); @@ -14,11 +17,6 @@ function last_insert_id() { return dba::lastInsertId(); } -function last_error() { - global $db; - return $db->error; -} - /** * Remove columns from array $arr that aren't in table $table * @@ -103,22 +101,22 @@ function import_account(App $a, $file) { // check for username $r = q("SELECT uid FROM user WHERE nickname='%s'", $account['user']['nickname']); if ($r === false) { - logger("uimport:check nickname : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:check nickname : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); notice(t('Error! Cannot check nickname')); return; } - if (dbm::is_result($r) > 0) { + if (DBM::is_result($r) > 0) { notice(sprintf(t("User '%s' already exists on this server!"), $account['user']['nickname'])); return; } // check if username matches deleted account $r = q("SELECT id FROM userd WHERE username='%s'", $account['user']['nickname']); if ($r === false) { - logger("uimport:check nickname : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:check nickname : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); notice(t('Error! Cannot check nickname')); return; } - if (dbm::is_result($r) > 0) { + if (DBM::is_result($r) > 0) { notice(sprintf(t("User '%s' already exists on this server!"), $account['user']['nickname'])); return; } @@ -129,6 +127,12 @@ function import_account(App $a, $file) { $oldaddr = str_replace('http://', '@', normalise_link($oldbaseurl)); $newaddr = str_replace('http://', '@', normalise_link($newbaseurl)); + if (!empty($account['profile']['addr'])) { + $old_handle = $account['profile']['addr']; + } else { + $old_handle = $account['user']['nickname'].$oldaddr; + } + $olduid = $account['user']['uid']; unset($account['user']['uid']); @@ -144,13 +148,15 @@ function import_account(App $a, $file) { $r = db_import_assoc('user', $account['user']); if ($r === false) { //echo "
"; var_dump($r, $query, mysql_error()); killme(); - logger("uimport:insert user : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert user : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); notice(t("User creation error")); return; } $newuid = last_insert_id(); //~ $newuid = 1; + PConfig::set($newuid, 'system', 'previous_addr', $old_handle); + // Generate a new guid for the account. Otherwise there will be problems with diaspora q("UPDATE `user` SET `guid` = '%s' WHERE `uid` = %d", dbesc(generate_user_guid()), intval($newuid)); @@ -165,7 +171,7 @@ function import_account(App $a, $file) { $profile['uid'] = $newuid; $r = db_import_assoc('profile', $profile); if ($r === false) { - logger("uimport:insert profile " . $profile['profile-name'] . " : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert profile " . $profile['profile-name'] . " : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); info(t("User profile creation error")); dba::delete('user', array('uid' => $newuid)); return; @@ -188,6 +194,7 @@ function import_account(App $a, $file) { switch ($contact['network']) { case NETWORK_DFRN: + case NETWORK_DIASPORA: // send relocate message (below) break; case NETWORK_ZOT: @@ -208,7 +215,7 @@ function import_account(App $a, $file) { $contact['uid'] = $newuid; $r = db_import_assoc('contact', $contact); if ($r === false) { - logger("uimport:insert contact " . $contact['nick'] . "," . $contact['network'] . " : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert contact " . $contact['nick'] . "," . $contact['network'] . " : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); $errorcount++; } else { $contact['newid'] = last_insert_id(); @@ -222,7 +229,7 @@ function import_account(App $a, $file) { $group['uid'] = $newuid; $r = db_import_assoc('group', $group); if ($r === false) { - logger("uimport:insert group " . $group['name'] . " : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert group " . $group['name'] . " : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); } else { $group['newid'] = last_insert_id(); } @@ -249,7 +256,7 @@ function import_account(App $a, $file) { if ($import == 2) { $r = db_import_assoc('group_member', $group_member); if ($r === false) { - logger("uimport:insert group member " . $group_member['id'] . " : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert group member " . $group_member['id'] . " : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); } } } @@ -266,7 +273,7 @@ function import_account(App $a, $file) { ); if ($r === false) { - logger("uimport:insert photo " . $photo['resource-id'] . "," . $photo['scale'] . " : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert photo " . $photo['resource-id'] . "," . $photo['scale'] . " : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); } } @@ -274,12 +281,12 @@ function import_account(App $a, $file) { $pconfig['uid'] = $newuid; $r = db_import_assoc('pconfig', $pconfig); if ($r === false) { - logger("uimport:insert pconfig " . $pconfig['id'] . " : ERROR : " . last_error(), LOGGER_NORMAL); + logger("uimport:insert pconfig " . $pconfig['id'] . " : ERROR : " . dba::errorMessage(), LOGGER_NORMAL); } } // send relocate messages - proc_run(PRIORITY_HIGH, 'include/notifier.php', 'relocate', $newuid); + Worker::add(PRIORITY_HIGH, 'notifier', 'relocate', $newuid); info(t("Done. You can now login with your username and password")); goaway(System::baseUrl() . "/login");