Fix "Return value must be of type int, null returned" in Action Scheduler wrappers

[MAILPOET-6179]
This commit is contained in:
Jan Jakes
2024-08-05 13:06:53 +02:00
committed by alex-mpoet
parent 1a80227b03
commit c8e6c02851
2 changed files with 8 additions and 4 deletions

View File

@@ -8,11 +8,13 @@ class ActionScheduler {
private const GROUP_ID = 'mailpoet-automation'; private const GROUP_ID = 'mailpoet-automation';
public function enqueue(string $hook, array $args = []): int { public function enqueue(string $hook, array $args = []): int {
return as_enqueue_async_action($hook, $args, self::GROUP_ID); $result = as_enqueue_async_action($hook, $args, self::GROUP_ID);
return is_int($result) ? $result : 0;
} }
public function schedule(int $timestamp, string $hook, array $args = []): int { public function schedule(int $timestamp, string $hook, array $args = []): int {
return as_schedule_single_action($timestamp, $hook, $args, self::GROUP_ID); $result = as_schedule_single_action($timestamp, $hook, $args, self::GROUP_ID);
return is_int($result) ? $result : 0;
} }
public function hasScheduledAction(string $hook, array $args = []): bool { public function hasScheduledAction(string $hook, array $args = []): bool {

View File

@@ -17,11 +17,13 @@ class ActionScheduler {
} }
public function scheduleRecurringAction(int $timestamp, int $interval_in_seconds, string $hook, array $args = [], bool $unique = true): int { public function scheduleRecurringAction(int $timestamp, int $interval_in_seconds, string $hook, array $args = [], bool $unique = true): int {
return as_schedule_recurring_action($timestamp, $interval_in_seconds, $hook, $args, self::GROUP_ID, $unique); $result = as_schedule_recurring_action($timestamp, $interval_in_seconds, $hook, $args, self::GROUP_ID, $unique);
return is_int($result) ? $result : 0;
} }
public function scheduleImmediateSingleAction(string $hook, array $args = [], bool $unique = true): int { public function scheduleImmediateSingleAction(string $hook, array $args = [], bool $unique = true): int {
return as_schedule_single_action($this->wp->currentTime('timestamp', true), $hook, $args, self::GROUP_ID, $unique); $result = as_schedule_single_action($this->wp->currentTime('timestamp', true), $hook, $args, self::GROUP_ID, $unique);
return is_int($result) ? $result : 0;
} }
public function unscheduleAction(string $hook, array $args = []): ?int { public function unscheduleAction(string $hook, array $args = []): ?int {