/**
* Add default conditions.
* Supports: required, min/maxLength, min, max
*
* @param \Nette\Forms\Controls\BaseControl $input
* @param array $conditions
*/
protected function addConditions(\Nette\Forms\Controls\BaseControl $input, array $conditions)
{
foreach ($conditions as $key => $value) {
switch ($key) {
case 'required':
$input->setRequired();
break;
case 'maxLength':
$input->addRule(Builder\EntityForm::MAX_LENGTH, null, $value);
break;
case 'minLength':
$input->addRule(Builder\EntityForm::MIN_LENGTH, null, $value);
break;
default:
break;
}
}
if (isset($conditions['min']) || isset($conditions['max'])) {
$input->addRule(Builder\EntityForm::RANGE, null, array(isset($conditions['min']) ? $conditions['min'] : null, isset($conditions['max']) ? $conditions['max'] : null));
}
}