You are here

function ckeditor_filter_settings_validate in CKEditor Filter 7

Validate filter settings form.

1 string reference to 'ckeditor_filter_settings_validate'
ckeditor_filter_form_filter_admin_format_form_alter in ./ckeditor_filter.module

File

./ckeditor_filter.module, line 277
Provides an input filter that allows site administrators configure which HTML elements, attributes and style properties are allowed.

Code

function ckeditor_filter_settings_validate($form, &$form_state) {
  $values =& $form_state['values']['filters']['ckeditor_filter']['settings'];

  // boolean for errors being thrown
  $errors_thrown = false;

  // *** validate valid_elements ***
  // Check elements against hardcoded backlist.
  $elements_blacklist = ckeditor_filter_get_elements_blacklist();
  $valid_elements = trim($values['valid_elements']);
  $valid_elements = explode(',', $valid_elements);
  $forbidden_elements = array();
  foreach ($valid_elements as $element) {
    if (in_array($element, $elements_blacklist)) {
      $forbidden_elements[] = $element;
    }
  }
  if (!empty($forbidden_elements)) {
    $errors_thrown = true;
    form_set_error('valid_elements', t('The following elements cannot be allowed: %elements.', array(
      '%elements' => implode(', ', $forbidden_elements),
    )));
  }
  if (!$errors_thrown) {
    $form_state['values']['filters']['ckeditor_filter']['settings']['valid_elements'] = trim($values['valid_elements']);
  }
}