/** * Automatically export configuration. * * @param Config $config * The config object. */ protected function autoExportConfig(Config $config) { $config_name = $config->getName(); $file_names = array_filter($this->getSettings()->get('auto_export'), function ($file_name) use($config_name) { return basename($file_name, '.' . FileStorage::getFileExtension()) == $config_name; }); $this->writeBackConfig($config, $file_names); }
/** * {@inheritdoc} */ public function validateForm(array &$form, FormStateInterface $form_state) { foreach (array('auto_import', 'auto_export') as $key) { $form_state->setValue($key, array_filter(preg_split("/\r\n/", $form_state->getValues()[$key]))); } foreach ($form_state->getValues()['auto_import'] as $file) { $name = basename($file, '.' . FileStorage::getFileExtension()); if (in_array($name, array('system.site', 'core.extension', 'simpletest.settings'))) { $form_state->setErrorByName('auto_import', $this->t('@name is not compatible with this module', array('@name' => $name))); } } parent::validateForm($form, $form_state); }