Asynchronously add contacts to avoid timeout problems
This commit is contained in:
parent
6347578978
commit
4f362f6693
2 changed files with 25 additions and 1 deletions
|
@ -403,7 +403,7 @@ function settings_post(App $a)
|
||||||
// "http" or "@" to be present in the string.
|
// "http" or "@" to be present in the string.
|
||||||
// All other fields from the row will be ignored
|
// All other fields from the row will be ignored
|
||||||
if ((strpos($csvRow[0],'@') !== false) || (strpos($csvRow[0],'http') !== false)) {
|
if ((strpos($csvRow[0],'@') !== false) || (strpos($csvRow[0],'http') !== false)) {
|
||||||
$arr = Contact::createFromProbe($_SESSION['uid'], $csvRow[0], '', false);
|
Worker::add(PRIORITY_LOW, 'AddContact', $_SESSION['uid'], $csvRow[0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
info(DI::l10n()->t('Importing Contacts done'));
|
info(DI::l10n()->t('Importing Contacts done'));
|
||||||
|
|
24
src/Worker/AddContact.php
Normal file
24
src/Worker/AddContact.php
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @file src/Worker/AddContact.php
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Friendica\Worker;
|
||||||
|
|
||||||
|
use Friendica\Core\Logger;
|
||||||
|
use Friendica\Model\Contact;
|
||||||
|
|
||||||
|
class AddContact
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Add contact data via probe
|
||||||
|
* @param int $uid User ID
|
||||||
|
* @param string $url Contact link
|
||||||
|
*/
|
||||||
|
public static function execute(int $uid, string $url)
|
||||||
|
{
|
||||||
|
$result = Contact::createFromProbe($uid, $url, '', false);
|
||||||
|
Logger::info('Added contact', ['uid' => $uid, 'url' => $url, 'result' => $result]);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue