class CvCoreMaximumLengthValidator in Clientside Validation 7.2
Hierarchy
Expanded class hierarchy of CvCoreMaximumLengthValidator
1 string reference to 'CvCoreMaximumLengthValidator'
- maximumlength.inc in plugins/
validator/ maximumlength.inc
File
- plugins/
validator/ maximumlength.inc, line 11
View source
class CvCoreMaximumLengthValidator extends ClientsideValidationValidator {
public function supports(array $element, array &$form_state) {
if (!parent::supports($element, $form_state)) {
return FALSE;
}
return isset($element['#maxlength']) && $element['#maxlength'] > 0 || isset($element['#type']) && $element['#type'] == 'select' && $element['#multiple'];
}
public function getJavascriptSettings(array &$element, array &$form_state) {
if ($element['#type'] == 'select') {
$max = count($element['#options']);
if (isset($element['#entity_type'])) {
$field = field_widget_field($element, $form_state);
// If field cardinality equals 1, only one option can be selected.
// If field cardinality is unlimited, it is set to -1.
if ($field['cardinality'] > 1) {
$max = $field['cardinality'];
}
}
}
else {
$max = $element['#maxlength'];
}
$name = $this
->getName($element);
$element['#cv_data']['maxlength'] = $max;
return array(
'rules' => array(
$name => array(
'maxlength' => (int) $max,
),
),
'messages' => array(
$name => array(
'maxlength' => $this
->getMessage($element),
),
),
);
}
public function getMessage(array $element) {
if ($element['#type'] == 'select') {
return t('!title field has to have maximum @max values.', array(
'!title' => $element['#title'],
'@max' => $element['#cv_data']['maxlength'],
));
}
return t('!title field has a maximum length of @max.', array(
'!title' => $element['#title'],
'@max' => $element['#cv_data']['maxlength'],
));
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ClientsideValidationValidator:: |
public | function | 1 | |
ClientsideValidationValidator:: |
public | function | 27 | |
ClientsideValidationValidator:: |
public | function | 7 | |
ClientsideValidationValidator:: |
public | function | 3 | |
CvCoreMaximumLengthValidator:: |
public | function |
Overrides ClientsideValidationValidator:: |
|
CvCoreMaximumLengthValidator:: |
public | function |
Overrides ClientsideValidationValidator:: |
|
CvCoreMaximumLengthValidator:: |
public | function |
Overrides ClientsideValidationValidator:: |