diff --git a/sources/renderer/bootstrap/fieldrenderer/bssimplefieldrenderer.class.inc.php b/sources/renderer/bootstrap/fieldrenderer/bssimplefieldrenderer.class.inc.php index 172ab6685..1ca50a41d 100644 --- a/sources/renderer/bootstrap/fieldrenderer/bssimplefieldrenderer.class.inc.php +++ b/sources/renderer/bootstrap/fieldrenderer/bssimplefieldrenderer.class.inc.php @@ -195,6 +195,36 @@ EOF break; } + // JS Form field widget construct + $aValidators = array(); + foreach ($this->oField->GetValidators() as $oValidator) + { + $aValidators[$oValidator::GetName()] = array( + 'reg_exp' => $oValidator->GetRegExp(), + 'message' => Dict::S($oValidator->GetErrorMessage()) + ); + } + + $sFormFieldOptions = json_encode(array( + 'validators' => $aValidators + )); + + switch ($sFieldClass) + { + case 'Combodo\\iTop\\Form\\Field\\StringField': + case 'Combodo\\iTop\\Form\\Field\\TextAreaField': + case 'Combodo\\iTop\\Form\\Field\\SelectField': + case 'Combodo\\iTop\\Form\\Field\\HiddenField': + case 'Combodo\\iTop\\Form\\Field\\RadioField': + case 'Combodo\\iTop\\Form\\Field\\CheckboxField': + $oOutput->AddJs( + << '', 'css_inline' => '', 'js_files' => array(), - 'css_files' => array(), - 'validators' => null + 'css_files' => array() ); $sFieldRendererClass = $this->GetFieldRendererClass($oField); @@ -257,18 +256,6 @@ abstract class FormRenderer $output['html'] .= ''; } } - - // Validators - foreach ($oField->GetValidators() as $oValidator) - { - $output['validators'][$oValidator::GetName()] = array( - 'reg_exp' => $oValidator->GetRegExp(), - 'message' => Dict::S($oValidator->GetErrorMessage()) - ); - } - - // Subfields - // TODO } return $output;