X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FWorker%2FRemoveUser.php;h=018d17a46e68e0a415666f2e038395587e8a0128;hb=bf8fb215a9cc554b5ec5b774168a52fb56fa43e6;hp=dfa5ccc097c7e9ea14c2c6f66d8488e22ab2e710;hpb=49dad00570381761c4c73090121ac17d29f1087f;p=friendica.git diff --git a/src/Worker/RemoveUser.php b/src/Worker/RemoveUser.php index dfa5ccc097..018d17a46e 100644 --- a/src/Worker/RemoveUser.php +++ b/src/Worker/RemoveUser.php @@ -1,15 +1,32 @@ . + * */ + namespace Friendica\Worker; use Friendica\Database\DBA; use Friendica\Model\Item; -require_once 'include/dba.php'; - +/** + * Removes orphaned data from deleted users + */ class RemoveUser { public static function execute($uid) { @@ -20,6 +37,13 @@ class RemoveUser { } // Now we delete all user items - Item::delete(['uid' => $uid], PRIORITY_LOW); + $condition = ['uid' => $uid, 'deleted' => false]; + do { + $items = Item::select(['id'], $condition, ['limit' => 100]); + while ($item = Item::fetch($items)) { + Item::markForDeletionById($item['id'], PRIORITY_NEGLIGIBLE); + } + DBA::close($items); + } while (Item::exists($condition)); } }