Use a centralized function to delete delayed entries

This commit is contained in:
Michael 2021-08-02 20:56:34 +00:00
parent 5a2fa2f81a
commit 6c8a4a2552
3 changed files with 28 additions and 25 deletions

View file

@ -25,6 +25,7 @@ use Friendica\App\Router;
use Friendica\Core\System;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Model\Post;
use Friendica\Module\BaseApi;
/**
@ -49,19 +50,11 @@ class ScheduledStatuses extends BaseApi
DI::mstdnError()->UnprocessableEntity();
}
$condtion = ['id' => $parameters['id'], 'uid' => $uid];
$post = DBA::selectFirst('delayed-post', ['id', 'wid'], $condtion);
if (empty($post['id'])) {
if (!DBA::exists('delayed-post', ['id' => $parameters['id'], 'uid' => $uid])) {
DI::mstdnError()->RecordNotFound();
}
if (!DBA::delete('delayed-post', $condtion)) {
DI::mstdnError()->RecordNotFound();
}
if (!DBA::delete('workerqueue', ['id' => $post['wid']])) {
DI::mstdnError()->RecordNotFound();
}
Post\Delayed::deleteById($parameters['id']);
System::jsonExit([]);
}