title = ' '; // intentionally left blank as it's hidden with css $isWritable = Piwik::hasUserSuperUserAccess() && CoreAdminController::isGeneralSettingsAdminEnabled(); $this->trustedHostnames = $this->createTrustedHostnames(); $this->trustedHostnames->setIsWritableByCurrentUser($isWritable); $isWritable = Piwik::hasUserSuperUserAccess(); $this->corsDomains = $this->createCorsDomains(); $this->corsDomains->setIsWritableByCurrentUser($isWritable); } private function createCorsDomains() { return $this->makeSettingManagedInConfigOnly('General', 'cors_domains', $default = [], FieldConfig::TYPE_ARRAY, function (FieldConfig $field) { $field->introduction = Piwik::translate('CoreAdminHome_CorsDomains'); $field->uiControl = FieldConfig::UI_CONTROL_FIELD_ARRAY; $arrayField = new FieldConfig\ArrayField(Piwik::translate('Overlay_Domain'), FieldConfig::UI_CONTROL_TEXT); $field->uiControlAttributes['field'] = $arrayField->toArray(); $field->inlineHelp = Piwik::translate('CoreAdminHome_CorsDomainsHelp'); $field->transform = function($values) { return array_filter($values); }; }); } private function createTrustedHostnames() { return $this->makeSettingManagedInConfigOnly('General', 'trusted_hosts', $default = [], FieldConfig::TYPE_ARRAY, function (FieldConfig $field) { $field->introduction = Piwik::translate('CoreAdminHome_TrustedHostSettings'); $field->uiControl = FieldConfig::UI_CONTROL_FIELD_ARRAY; $arrayField = new FieldConfig\ArrayField(Piwik::translate('CoreAdminHome_ValidPiwikHostname'), FieldConfig::UI_CONTROL_TEXT); $field->uiControlAttributes['field'] = $arrayField->toArray(); $field->transform = function($values) { return array_filter($values); }; }); } public function save() { parent::save(); Cache::deleteTrackerCache(); } }