You are here

class CvStatesRequiredValidator in Clientside Validation 7.2

Hierarchy

Expanded class hierarchy of CvStatesRequiredValidator

1 string reference to 'CvStatesRequiredValidator'
statesrequired.inc in clientside_validation_states/plugins/validator/statesrequired.inc

File

clientside_validation_states/plugins/validator/statesrequired.inc, line 11

View source
class CvStatesRequiredValidator extends ClientsideValidationValidator {
  public function supports(array $element, array &$form_state) {
    $supports = parent::supports($element, $form_state) && isset($element['#type']) && isset($element['#states']);
    if (!$supports) {
      return FALSE;
    }
    foreach ($element['#states'] as $state => $triggers) {
      while (strpos($state, '!') === 0) {
        $state = drupal_substr($state, 1);
      }
      if ($state == 'required' || $state == 'optional') {
        return TRUE;
      }
    }
    return FALSE;
  }
  public function getJavascriptSettings(array &$element, array &$form_state) {
    $name = $this
      ->getName($element);
    return array(
      'rules' => array(
        $name => array(
          'statesrequired' => TRUE,
        ),
      ),
    );
  }
  public function getMessage(array $element) {
  }
  public function jsFiles(array &$element) {
    $files = parent::jsFiles($element);
    $files[] = drupal_get_path('module', 'clientside_validation_states') . '/plugins/validator/js/states.cv.js';
    return $files;
  }

}

Members