public function field_validation_match_property_validator::validate in Field Validation 7.2
Validate field.
Overrides field_validation_validator::validate
File
- plugins/
validator/ field_validation_match_property_validator.inc, line 21
Class
Code
public function validate() {
$settings = $this->rule->settings;
if ($this->value != '') {
$flag = TRUE;
$query = new EntityFieldQuery();
if (!empty($settings['entity_type'])) {
$query
->entityCondition('entity_type', $settings['entity_type']);
}
if (!empty($settings['bundle'])) {
$query
->entityCondition('bundle', $settings['bundle']);
}
if (!empty($settings['property'])) {
$query
->propertyCondition($settings['property'], $this->value);
}
// Always bypass all access checkings.
$query
->addMetaData('account', user_load(1));
$flag = (bool) $query
->range(0, 1)
->count()
->execute();
if (!empty($settings['reverse'])) {
$flag = $flag ? FALSE : TRUE;
}
if (!$flag) {
$this
->set_error();
}
}
}