You are here

abstract class property_validation_validator in Field Validation 7.2

Hierarchy

Expanded class hierarchy of property_validation_validator

1 string reference to 'property_validation_validator'
property_validation_field_attach_validate in property_validation/property_validation.module
Implements hook_field_attach_validate().

File

property_validation/property_validation_validator.inc, line 11
Basic class for property validation validator.

View source
abstract class property_validation_validator {

  // Variables associated with validation.
  protected $entity_type;
  protected $entity;
  protected $field;
  protected $value;
  protected $rule;
  protected $errors;

  /**
   * Save arguments locally.
   */
  function __construct($entity_type = 'node', $entity = NULL, $value = '', $rule = NULL, &$errors = array()) {
    $this->entity_type = $entity_type;
    $this->entity = $entity;
    $this->value = $value;
    $this->rule = $rule;
    $this->errors =& $errors;
  }

  /**
   * Validate field.
   */
  public function validate() {
  }

  /**
   * Provide settings option.
   */
  function settings_form(&$form, &$form_state) {
  }

  /**
   * Return error message string for the validation rule.
   */
  public function get_error_message() {
    $error_message = $this->rule->error_message;
    return $error_message;
  }

  /**
   * Return error element for the validation rule.
   */
  public function get_error_element() {
    $error_element = $this->rule->property_name;
    return $error_element;
  }

  /**
   * Return default settingsfor the validator.
   */
  public function get_default_settings(&$form, &$form_state) {
    $rule = isset($form_state['item']) ? $form_state['item'] : new stdClass();
    $default_settings = isset($rule->settings) ? $rule->settings : array();
    $default_settings = isset($form_state['values']['settings']) ? $form_state['values']['settings'] : $default_settings;
    return $default_settings;
  }

  /**
   * Set error message.
   */
  public function set_error($tokens = array()) {
    $error_element = $this
      ->get_error_element();
    $error_message = t($this
      ->get_error_message());
    $tokens += array(
      '[entity-type]' => $this->rule->entity_type,
      '[bundle]' => $this->rule->bundle,
      '[property-name]' => $this->rule->property_name,
      '[value]' => $this->value,
    );
    $error_message = strtr($error_message, $tokens);
    form_set_error($error_element, check_plain($error_message));
  }

  /**
   * Provide token help info for error message.
   */
  public function token_help() {
    return array(
      '[entity-type]' => t('Machine name of entity type'),
      '[bundle]' => t('Machine name of bundle'),
      '[property-name]' => t('Name of current property'),
      '[value]' => t('Current value to be validated on'),
    );
  }

}

Members

Namesort descending Modifiers Type Description Overrides
property_validation_validator::$entity protected property
property_validation_validator::$entity_type protected property
property_validation_validator::$errors protected property
property_validation_validator::$field protected property
property_validation_validator::$rule protected property
property_validation_validator::$value protected property
property_validation_validator::get_default_settings public function Return default settingsfor the validator.
property_validation_validator::get_error_element public function Return error element for the validation rule.
property_validation_validator::get_error_message public function Return error message string for the validation rule.
property_validation_validator::settings_form function Provide settings option. 13
property_validation_validator::set_error public function Set error message.
property_validation_validator::token_help public function Provide token help info for error message. 4
property_validation_validator::validate public function Validate field. 16
property_validation_validator::__construct function Save arguments locally.