private static function TypeSettingsStorage::sanitizeFields in Node Accessibility 8
Initializes and sanitizes the array of fields to assign.
All existing values are reset to defaults before assigning fields.
Parameters
array $fields: An array of all fields to assign.
return array An array of initialized and sanitized fields.
1 call to TypeSettingsStorage::sanitizeFields()
- TypeSettingsStorage::merge in src/
TypeSettingsStorage.php - Insert or Update an entry to the database.
File
- src/
TypeSettingsStorage.php, line 575
Class
- TypeSettingsStorage
- Class TypeSettingsStorage.
Namespace
Drupal\node_accessibilityCode
private static function sanitizeFields(array $fields) {
$sanitized = [];
$sanitized['node_type'] = NULL;
$sanitized['enabled'] = static::DEFAULT_ENABLED;
$sanitized['method'] = static::DEFAULT_METHOD;
$sanitized['format_content'] = '';
$sanitized['format_results'] = '';
$sanitized['title_block'] = '';
$sanitized['standards'] = json_encode([]);
if (!empty($fields['node_type']) && is_string($fields['node_type'])) {
$sanitized['node_type'] = $fields['node_type'];
}
if (!empty($fields['method']) && is_string($fields['method'])) {
$methods = QuailApiSettings::get_validation_methods_list();
if (array_key_exists($fields['method'], $methods)) {
$sanitized['method'] = $fields['method'];
}
}
if (!empty($fields['format_content']) && is_string($fields['format_content'])) {
$sanitized['format_content'] = $fields['format_content'];
}
if (!empty($fields['format_results']) && is_string($fields['format_results'])) {
$sanitized['format_results'] = $fields['format_results'];
}
if (!empty($fields['title_block']) && is_string($fields['title_block'])) {
if (in_array($fields['title_block'], self::$title_block_options)) {
$sanitized['title_block'] = $fields['title_block'];
}
}
if (!empty($fields['enabled']) && is_string($fields['enabled'])) {
if ($fields['enabled'] == 'disabled' || $fields['enabled'] == 'optional' || $fields['enabled'] == 'required') {
$sanitized['enabled'] = $fields['enabled'];
}
}
if (!empty($fields['standards']) && is_array($fields['standards'])) {
$standards = QuailApiSettings::get_standards_list();
$standards_array = array();
foreach ($fields['standards'] as $standard_name => $standard_value) {
if (is_numeric($standard_value)) {
continue;
}
if (array_key_exists($standard_name, $standards)) {
$standards_array[$standard_name] = $standard_name;
}
}
$sanitized['standards'] = json_encode($standards_array);
}
return $sanitized;
}