/** * {@inheritdoc} */ public function frontend_validate(array $item, $input_value) { $options = $item['options']; $messages = array('required' => str_replace(array('{label}'), array($options['label']), __('The {label} field is required', 'fw')), 'incorrect' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain a valid email', 'fw'))); if ($options['required'] && !fw_strlen(trim($input_value))) { return $messages['required']; } if (!empty($input_value) && !filter_var($input_value, FILTER_VALIDATE_EMAIL)) { return $messages['incorrect']; } }
/** * {@inheritdoc} */ public function frontend_validate(array $item, $input_value) { $options = $item['options']; $messages = array('required' => str_replace(array('{label}'), array($options['label']), __('The {label} field is required', 'fw')), 'incorrect' => str_replace(array('{label}'), array($options['label']), __('The {label} field must be a valid website name', 'fw'))); if (!$options['required'] && !fw_strlen(trim($input_value))) { return null; } if ($options['required'] && !fw_strlen(trim($input_value))) { return $messages['required']; } if (!preg_match('/^https?:\\/\\//', $input_value)) { $input_value = 'http://' . $input_value; } if (!empty($input_value) && !filter_var($input_value, FILTER_VALIDATE_URL)) { return $messages['incorrect']; } }
/** * {@inheritdoc} */ public function frontend_validate(array $item, $input_value) { $options = $item['options']; $messages = array('invalid' => str_replace(array('{label}'), array($options['label']), __('The {label} field must be a valid number', 'fw')), 'required' => str_replace(array('{label}'), array($options['label']), __('The {label} field is required', 'fw')), 'digits_min_singular' => str_replace(array('{label}'), array($options['label']), __('The {label} field must have minimum %d digit', 'fw')), 'digits_min_plural' => str_replace(array('{label}'), array($options['label']), __('The {label} field must have minimum %d digits', 'fw')), 'digits_max_singular' => str_replace(array('{label}'), array($options['label']), __('The {label} field must have maximum %d digit', 'fw')), 'digits_max_plural' => str_replace(array('{label}'), array($options['label']), __('The {label} field must have maximum %d digits', 'fw')), 'value_min' => str_replace(array('{label}'), array($options['label']), __('The {label} field minimum value must be %s', 'fw')), 'value_max' => str_replace(array('{label}'), array($options['label']), __('The {label} field maximum value must be %s', 'fw'))); if ($options['required'] && !fw_strlen(trim($input_value))) { return $messages['required']; } if (!empty($input_value) && !preg_match($this->number_regex, $input_value)) { return $messages['invalid']; } if (!empty($input_value) && !empty($options['constraints']['constraint'])) { $constraint = $options['constraints']['constraint']; $constraint_data = $options['constraints'][$constraint]; switch ($constraint) { case 'digits': $length = fw_strlen(str_replace(array(',', '.', '-'), '', $input_value)); if ($constraint_data['min'] && $length < $constraint_data['min']) { return sprintf($messages['digits_min_' . ($constraint_data['min'] == 1 ? 'singular' : 'plural')], $constraint_data['min']); } if ($constraint_data['max'] && $length > $constraint_data['max']) { return sprintf($messages['digits_max_' . ($constraint_data['max'] == 1 ? 'singular' : 'plural')], $constraint_data['max']); } break; case 'value': $value = doubleval($input_value); if (!is_null($constraint_data['min']) && $value < $constraint_data['min']) { return sprintf($messages['value_min'], $constraint_data['min'], $constraint_data['min'] == 1 ? '' : 's'); } if (!is_null($constraint_data['max']) && $value > $constraint_data['max']) { return sprintf($messages['value_max'], $constraint_data['max'], $constraint_data['max'] == 1 ? '' : 's'); } break; default: return 'Unknown constraint: ' . $constraint; } } }
/** * {@inheritdoc} */ public function frontend_validate(array $item, $input_value) { $options = $item['options']; $messages = array('required' => str_replace(array('{label}'), array($options['label']), __('The {label} field is required', 'fw')), 'characters_min_singular' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain minimum %d character', 'fw')), 'characters_min_plural' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain minimum %d characters', 'fw')), 'characters_max_singular' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain maximum %d character', 'fw')), 'characters_max_plural' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain maximum %d characters', 'fw')), 'words_min_singular' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain minimum %d word', 'fw')), 'words_min_plural' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain minimum %d words', 'fw')), 'words_max_singular' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain maximum %d word', 'fw')), 'words_max_plural' => str_replace(array('{label}'), array($options['label']), __('The {label} field must contain maximum %d words', 'fw'))); if ($options['required'] && !fw_strlen(trim($input_value))) { return $messages['required']; } $length = fw_strlen($input_value); if ($length && !empty($options['constraints']['constraint'])) { $constraint = $options['constraints']['constraint']; $constraint_data = $options['constraints'][$constraint]; switch ($constraint) { case 'characters': if ($constraint_data['min'] && $length < $constraint_data['min']) { return sprintf($messages['characters_min_' . ($constraint_data['min'] == 1 ? 'singular' : 'plural')], $constraint_data['min']); } if ($constraint_data['max'] && $length > $constraint_data['max']) { return sprintf($messages['characters_max_' . ($constraint_data['max'] == 1 ? 'singular' : 'plural')], $constraint_data['max']); } break; case 'words': $words_length = count(preg_split('/\\s+/', $input_value)); if ($constraint_data['min'] && $words_length < $constraint_data['min']) { return sprintf($messages['words_min_' . ($constraint_data['min'] == 1 ? 'singular' : 'plural')], $constraint_data['min']); } if ($constraint_data['max'] && $words_length > $constraint_data['max']) { return sprintf($messages['words_max_' . ($constraint_data['max'] == 1 ? 'singular' : 'plural')], $constraint_data['max']); } break; default: return 'Unknown constraint: ' . $constraint; } } }