diff --git a/webapp/src/Entity/Contest.php b/webapp/src/Entity/Contest.php index 98ec34e1b0..cbc2b3dd39 100644 --- a/webapp/src/Entity/Contest.php +++ b/webapp/src/Entity/Contest.php @@ -1191,7 +1191,8 @@ public function getDataForJuryInterface(): array $showButton = $hasstarted && !$hasended && (empty($this->getFreezetime()) || $hasfrozen); break; case 'deactivate': - $showButton = $hasended && (empty($this->getUnfreezetime()) || $hasunfrozen); + $futureDeactivate = empty($this->getDeactivatetime()) || Utils::difftime((float)$this->getDeactivatetime(), $now) > 0; + $showButton = $hasended && (empty($this->getUnfreezetime()) || $hasunfrozen) && $futureDeactivate; break; case 'freeze': $showButton = $hasstarted && !$hasended && !$hasfrozen;