diff --git a/boot.php b/boot.php index 6674c6fc7c..504f997d9f 100644 --- a/boot.php +++ b/boot.php @@ -201,6 +201,7 @@ define('PRIORITY_HIGH', 20); define('PRIORITY_MEDIUM', 30); define('PRIORITY_LOW', 40); define('PRIORITY_NEGLIGIBLE', 50); +define('PRIORITIES', [PRIORITY_CRITICAL, PRIORITY_HIGH, PRIORITY_MEDIUM, PRIORITY_LOW, PRIORITY_NEGLIGIBLE]); /* @}*/ /** diff --git a/src/Core/Worker.php b/src/Core/Worker.php index 4f45527764..4fcca35f12 100644 --- a/src/Core/Worker.php +++ b/src/Core/Worker.php @@ -421,6 +421,11 @@ class Worker // For this reason the variables have to be initialized. DI::profiler()->reset(); + if (!in_array($queue['priority'], PRIORITIES)) { + Logger::warning('Invalid period', ['queue' => $queue, 'callstack' => System::callstack(20)]); + $queue['priority'] = PRIORITY_MEDIUM; + } + $a->queue = $queue; $up_duration = microtime(true) - self::$up_start; @@ -1264,6 +1269,11 @@ class Worker $found = DBA::exists('workerqueue', ['command' => $command, 'parameter' => $parameters, 'done' => false]); $added = false; + if (!in_array($priority, PRIORITIES)) { + Logger::warning('Invalid period', ['priority' => $priority, 'command' => $command, 'callstack' => System::callstack(20)]); + $priority = PRIORITY_MEDIUM; + } + // Quit if there was a database error - a precaution for the update process to 3.5.3 if (DBA::errorNo() != 0) { return false; diff --git a/src/Model/Item.php b/src/Model/Item.php index d41e84c5b9..15ea69eeb9 100644 --- a/src/Model/Item.php +++ b/src/Model/Item.php @@ -1568,7 +1568,7 @@ class Item $item['network'] = Protocol::DFRN; $item['protocol'] = Conversation::PARCEL_DIRECT; - if (is_int($notify)) { + if (in_array($notify, PRIORITIES)) { $priority = $notify; } } else { @@ -2912,7 +2912,7 @@ class Item $_SESSION["authenticated"] = true; $_SESSION["uid"] = $contact['uid']; - return $result; + return (bool)$result; } /** diff --git a/src/Protocol/Feed.php b/src/Protocol/Feed.php index fa568b4c3c..a2e9daaa03 100644 --- a/src/Protocol/Feed.php +++ b/src/Protocol/Feed.php @@ -623,7 +623,7 @@ class Feed 'taglist' => $taglist, 'attachments' => $attachments]; } } else { - Logger::info('Post already crated or exists in the delayed posts queue', ['uid' => $item['uid'], 'uri' => $item["uri"]]); + Logger::info('Post already created or exists in the delayed posts queue', ['uid' => $item['uid'], 'uri' => $item["uri"]]); } } diff --git a/src/Worker/DelayedPublish.php b/src/Worker/DelayedPublish.php index beffb22e30..db37ba3067 100644 --- a/src/Worker/DelayedPublish.php +++ b/src/Worker/DelayedPublish.php @@ -22,9 +22,7 @@ namespace Friendica\Worker; use Friendica\Core\Logger; -use Friendica\Model\Item; use Friendica\Model\Post; -use Friendica\Model\Tag; class DelayedPublish { @@ -40,6 +38,6 @@ class DelayedPublish public static function execute(array $item, int $notify = 0, array $taglist = [], array $attachments = []) { $id = Post\Delayed::publish($item, $notify, $taglist, $attachments); - Logger::notice('Post published', ['id' => $id, 'uid' => $item['uid'], 'cid' => $item['contact-id']]); + Logger::notice('Post published', ['id' => $id, 'uid' => $item['uid'], 'cid' => $item['contact-id'], 'notify' => $notify]); } }