hypejunction / hypeprototypervalidators
hypePrototyper validation rules
Package info
github.com/hypeJunction/hypePrototyperValidators
Type:elgg-plugin
pkg:composer/hypejunction/hypeprototypervalidators
Requires
- php: >=8.3
- composer/installers: ^2.0
- elgg/elgg: ^7.0
- hypejunction/hypeprototyper: *
- respect/validation: ^2.0
Suggests
- hypejunction/forms_validation: Client-side validation via forms_validation
This package is auto-updated.
Last update: 2026-05-13 09:46:34 UTC
README
Predefined Validators
type
Asserts that user input is expected to be of a certain type.
stringalnum- allows only alphanumeric characters and whitespacesalpha- allows only alpha characters and whitespacesint- allow only integer valuesnumeric- allows numeric valuesdate- allows date/time strings and objectsurl- allows only valid URLsemail- allows only valid email addresses
$field = array( 'type' => 'text', 'validation_rules' => array( 'type' => 'alnum', ), );
min and max
Asserts that user input is between min and max values
$field = array( 'type' => 'text', 'validation_rules' => array( 'type' => 'int', 'min' => 10, 'max' => 20, ), );
minlength and maxlength
Asserts that the length of user input is between min and max values
$field = array( 'type' => 'password', 'validation_rules' => array( 'type' => 'string', 'minlength' => 6, 'maxlength' => 25, ), );
contains
Asserts that user input contains a predefined string
$field = array( 'type' => 'text', 'validation_rules' => array( 'type' => 'string', 'contains' => 'hello world', ), );
regex
Asserts that user input matches a regex pattern
$field = array( 'type' => 'time', 'validation_rules' => array( 'type' => 'string', 'regex' => '^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$', ), );
Custom Validators
You can define custom validation rules, using the following pattern:
// Callback for validating user input elgg_register_plugin_hook_handler('validate:my_rule', 'prototyper', 'my_callback'); // Register the validation rule to make it available in hypePrototyperUI hypePrototyper()->config->registerValidationRule('my_rule');
Client-Side Validation
Partial client-side validation is available through Parsley.js. Do enable validation,
add data-parsley-validate to your form attributes.
echo elgg_view_form('my_prototyped_form', array( 'enctype' => 'multipart/form-data', 'data-parsley-validate' => true, ), $vars);
Compatibility
| Plugin version | Elgg version |
|---|---|
| 7.0.0 | 7.x |
| 6.0.0 | 6.x |
| 5.0.0 | 5.x |
| 4.0.0 | 4.x |
| 3.0.0 | 3.x |