get(self::INTEGRATIONS, self::INTEGRATION_DEFAULTS); } public function setIntegrations(array $values) : void { $this->set(self::INTEGRATIONS, $values); } /** * @return bool[] */ public function getDisplay():array { return [self::INTEGRATIONS => $this->getInegrations()]; } /** * @return bool[] */ public function getDisplayCLI():array { return [self::INTEGRATIONS => $this->getInegrations()]; } /** * @return void * @throws AjaxException */ public function validateFields():void { $changedFields = self::getChangedFields($this->getData(), (new Integrations())->getData()); if(in_array(self::INTEGRATIONS, $changedFields)) { $missing = array_diff($this->getInegrations(), self::INTEGRATION_DEFAULTS); if (!empty($missing)) { throw new AjaxException("The following integrations are not supported: " . implode(', ', $missing)); } } } }